1664 lines
50 KiB
Markdown
1664 lines
50 KiB
Markdown
|
|
# 文字冒险游戏设计文档 v2.0
|
|||
|
|
|
|||
|
|
## 改进版 - 深度挂机养成系统
|
|||
|
|
|
|||
|
|
## 1. 游戏概述
|
|||
|
|
|
|||
|
|
### 1.1 游戏类型
|
|||
|
|
|
|||
|
|
- **类型**:文字冒险 + 深度挂机养成 + RPG
|
|||
|
|
- **平台**:小程序/网页/app(uni-app框架)
|
|||
|
|
- **风格**:纯文字UI,末世生存主题
|
|||
|
|
- **灵感来源**:Proto23、Yet Another Idle RPG
|
|||
|
|
- **核心理念**:通过技能驱动成长,强调策略性和深度
|
|||
|
|
|
|||
|
|
### 1.2 核心玩法循环
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
获取技能 → 提升技能等级 → 解锁新内容 → 战斗/探索 → 获取更强装备 → 挑战更强敌人
|
|||
|
|
↑ ↓
|
|||
|
|
└──────────────────── 离线收益系统 ──────────────────────────────────┘
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**核心玩法特色**:
|
|||
|
|
|
|||
|
|
1. **技能驱动系统**:几乎所有成长都通过技能提升来实现
|
|||
|
|
2. **深度养成**:技能不仅有等级,还有里程碑奖励和特殊效果
|
|||
|
|
3. **策略性选择**:通过装备、技能搭配、战斗姿态等体现玩家策略
|
|||
|
|
4. **挂机友好**:支持长时间挂机,离线有收益,但在线玩效率更高
|
|||
|
|
5. **渐进式解锁**:新内容通过技能等级、区域通关、NPC对话等方式逐步解锁
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 2. 核心系统设计
|
|||
|
|
|
|||
|
|
### 2.1 玩家属性系统(参考 Yet Another Idle RPG)
|
|||
|
|
|
|||
|
|
#### 主要属性(Primary Stats)
|
|||
|
|
|
|||
|
|
| 属性 | 说明 | 初始值 | 影响因素 |
|
|||
|
|
| ----------------- | --------------------------- | ------ | -------------- |
|
|||
|
|
| 力量(Strength) | 影响物理攻击力 | 10 | 技能加成、装备 |
|
|||
|
|
| 敏捷(Agility) | 影响闪避率 | 8 | 技能加成、装备 |
|
|||
|
|
| 灵巧(Dexterity) | 影响命中率 | 8 | 技能加成、装备 |
|
|||
|
|
| 智力(Intuition) | 影响魔法威力、少量命中/闪避 | 10 | 技能加成、装备 |
|
|||
|
|
| 防御力(Defense) | 减少受到的伤害(仅装备) | 0 | 装备提供 |
|
|||
|
|
|
|||
|
|
#### 次要属性(Secondary Stats)
|
|||
|
|
|
|||
|
|
| 属性 | 说明 | 计算公式 |
|
|||
|
|
| ------------------------ | -------------------- | ------------------------------------ |
|
|||
|
|
| 最大生命(Max HP) | 角色生命上限 | 基础值 + 技能加成 + 装备加成 |
|
|||
|
|
| 攻击力(Attack Power) | 最终攻击力 | 武器攻击力 × (力量系数 或 智力系数) |
|
|||
|
|
| 攻击速度(Attack Speed) | 攻击频率 | 基础速度 × 装备加成 × 技能加成 |
|
|||
|
|
| 暴击率(Crit Rate) | 暴击概率 | 基础值 + 技能加成 |
|
|||
|
|
| 暴击伤害(Crit Mult) | 暴击伤害倍数 | 基础值(1.5) + 技能加成 |
|
|||
|
|
| 命中值(AP) | 攻击点数,影响命中率 | 技能、环境修正等因素综合 |
|
|||
|
|
| 闪避值(EP) | 闪避点数,影响闪避率 | 技能、环境修正等因素综合 |
|
|||
|
|
| 护盾(Shield) | 可吸收伤害 | 装备提供 |
|
|||
|
|
|
|||
|
|
#### 战斗资源
|
|||
|
|
|
|||
|
|
| 资源 | 说明 | 初始值 | 消耗机制 |
|
|||
|
|
| --------------- | ---------------- | ------ | ---------------------- |
|
|||
|
|
| 耐力(Stamina) | 影响战斗效率 | 100 | 攻击消耗、技能训练消耗 |
|
|||
|
|
| 精神(Sanity) | 影响某些事件判断 | 100 | 特殊事件消耗 |
|
|||
|
|
|
|||
|
|
#### 最终属性计算规则
|
|||
|
|
|
|||
|
|
```javascript
|
|||
|
|
// 示例计算逻辑
|
|||
|
|
finalStats = {
|
|||
|
|
// 基础属性 + 技能加成 + 装备加成
|
|||
|
|
strength: baseStats.strength + skills.bonus + equipment.bonus,
|
|||
|
|
|
|||
|
|
// 攻击力 = 武器基础 × (1 + 力量/100)
|
|||
|
|
attackPower: weapon.baseDamage * (1 + finalStats.strength / 100),
|
|||
|
|
|
|||
|
|
// 命中值和闪避值采用非线性计算
|
|||
|
|
attackPoints: calculateAP(dexterity, intuition, skills, environment),
|
|||
|
|
evasionPoints: calculateEP(agility, intuition, skills, environment)
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 主等级系统(简化)
|
|||
|
|
|
|||
|
|
- **定位**:作为整体实力的参考指标,不是主要成长手段
|
|||
|
|
- **经验来源**:
|
|||
|
|
- 技能达到特定等级(里程碑)
|
|||
|
|
- 完成书籍阅读
|
|||
|
|
- 击败新敌人(图鉴解锁)
|
|||
|
|
- 区域首次通关
|
|||
|
|
- **升级效果**:
|
|||
|
|
- 提供少量基础属性加成
|
|||
|
|
- 解锁高级技能的等级上限
|
|||
|
|
- 作为某些内容的前置条件
|
|||
|
|
|
|||
|
|
### 2.2 技能系统(核心深度系统)
|
|||
|
|
|
|||
|
|
#### 技能分类体系
|
|||
|
|
|
|||
|
|
1. **战斗技能(Combat Skills)**
|
|||
|
|
|
|||
|
|
- 武器精通类:木棍精通、剑术、斧头精通等
|
|||
|
|
- 战斗姿态类:攻击姿态、防御姿态、平衡姿态
|
|||
|
|
- 防御类:闪避训练、盾牌掌握、铁皮
|
|||
|
|
- 攻击类:重击、快速打击、连击
|
|||
|
|
2. **生活技能(Life Skills)**
|
|||
|
|
|
|||
|
|
- 阅读类:阅读(提升阅读速度和效率)
|
|||
|
|
- 生存类:饮食、坚韧、夜视
|
|||
|
|
- 资源获取类:采集、狩猎、采矿
|
|||
|
|
3. **特殊技能(Special Skills)**
|
|||
|
|
|
|||
|
|
- 信仰、领导力
|
|||
|
|
- 讨价还价(降低交易差价)
|
|||
|
|
- 一心多用(允许同时进行多个活动)
|
|||
|
|
4. **被动技能(Passive Skills)**
|
|||
|
|
|
|||
|
|
- 被动获得经验,只需满足特定条件
|
|||
|
|
- 示例:在黑暗区域待着自动获得夜视经验
|
|||
|
|
5. **父技能(Parent Skills)**
|
|||
|
|
|
|||
|
|
- 不直接提供属性加成
|
|||
|
|
- **核心功能**:如果子技能等级低于父技能,提供经验倍率加成
|
|||
|
|
- 父技能等级始终等于最高级子技能的等级
|
|||
|
|
- 示例:父技能"战斗"包含子技能"剑术"、"斧头精通"等
|
|||
|
|
|
|||
|
|
#### 技能解锁机制
|
|||
|
|
|
|||
|
|
1. **物品触发解锁**
|
|||
|
|
|
|||
|
|
- 获得书籍 → 解锁"阅读"
|
|||
|
|
- 获得武器 → 解锁对应武器精通
|
|||
|
|
- 获得技能书 → 解锁特殊技能
|
|||
|
|
2. **NPC对话解锁**
|
|||
|
|
|
|||
|
|
- 与特定NPC对话 → 解锁新技能
|
|||
|
|
- 完成特定剧情 → 解锁技能
|
|||
|
|
3. **技能等级解锁**
|
|||
|
|
|
|||
|
|
- 某技能达到X级 → 解锁相关技能
|
|||
|
|
- 示例:阅读5级 → 解锁"快速阅读"
|
|||
|
|
4. **区域解锁**
|
|||
|
|
|
|||
|
|
- 首次进入特定区域 → 解锁相关技能
|
|||
|
|
- 示例:首次进入洞穴 → 解锁"夜视"
|
|||
|
|
|
|||
|
|
#### 技能经验获取机制
|
|||
|
|
|
|||
|
|
1. **主动训练**
|
|||
|
|
|
|||
|
|
- 在训练场消耗耐力训练武器技能
|
|||
|
|
- 阅读书籍获得阅读经验
|
|||
|
|
- 工作获得相关技能经验
|
|||
|
|
2. **战斗获得**
|
|||
|
|
|
|||
|
|
- 使用武器攻击 → 武器技能经验
|
|||
|
|
- 成功闪避 → 闪避技能经验
|
|||
|
|
- 成功格挡 → 盾牌技能经验
|
|||
|
|
3. **被动获得**
|
|||
|
|
|
|||
|
|
- 在特定环境待着 → 环境适应技能经验(如夜视)
|
|||
|
|
- 装备特定装备 → 相关技能经验(如铁皮)
|
|||
|
|
4. **部分效率机制**
|
|||
|
|
|
|||
|
|
- 即使条件未完全满足,也能获得50%经验
|
|||
|
|
- 示例:未命中敌人仍能获得武器技能经验的50%
|
|||
|
|
|
|||
|
|
#### 技能里程碑系统(重要)
|
|||
|
|
|
|||
|
|
每个技能在特定等级提供**永久性全局奖励**:
|
|||
|
|
|
|||
|
|
**示例 - 武器技能里程碑**:
|
|||
|
|
|
|||
|
|
| 等级 | 奖励效果 |
|
|||
|
|
| ----- | ---------------------- |
|
|||
|
|
| Lv.5 | 所有武器暴击率+2% |
|
|||
|
|
| Lv.10 | 所有武器攻击力+5% |
|
|||
|
|
| Lv.15 | 武器熟练度获取速度+20% |
|
|||
|
|
| Lv.20 | 所有武器暴击伤害+0.3 |
|
|||
|
|
|
|||
|
|
**示例 - 阅读技能里程碑**:
|
|||
|
|
|
|||
|
|
| 等级 | 奖励效果 |
|
|||
|
|
| ----- | -------------------------- |
|
|||
|
|
| Lv.3 | 所有技能经验获取+5% |
|
|||
|
|
| Lv.5 | 阅读速度+50% |
|
|||
|
|
| Lv.10 | 完成书籍给予额外主经验+100 |
|
|||
|
|
|
|||
|
|
**示例 - 父技能里程碑**:
|
|||
|
|
|
|||
|
|
| 等级 | 奖励效果 |
|
|||
|
|
| ----- | ------------------ |
|
|||
|
|
| Lv.5 | 子技能升级速度+10% |
|
|||
|
|
| Lv.10 | 子技能升级速度+25% |
|
|||
|
|
| Lv.15 | 子技能升级速度+50% |
|
|||
|
|
|
|||
|
|
#### 技能等级上限与限制
|
|||
|
|
|
|||
|
|
- **基础上限**:每个技能有基础等级上限(如20级)
|
|||
|
|
- **玩家等级限制**:技能等级不能超过玩家等级×2
|
|||
|
|
- **解锁更高上限**:
|
|||
|
|
- 通过特定NPC提升上限
|
|||
|
|
- 通过特殊物品提升上限
|
|||
|
|
- 主等级达到特定等级
|
|||
|
|
|
|||
|
|
### 2.3 物品与装备系统(参考 YAIRPG)
|
|||
|
|
|
|||
|
|
#### 装备品质系统(核心)
|
|||
|
|
|
|||
|
|
所有装备都有**品质(Quality)**参数,直接影响装备属性:
|
|||
|
|
|
|||
|
|
| 品质等级 | 品质范围 | 稀有度 | 颜色 | 额外乘数 | 说明 |
|
|||
|
|
| -------- | -------- | ------ | ---- | -------- | -------------- |
|
|||
|
|
| 1 | 0-49% | 垃圾 | 灰色 | ×1.0 | 几乎无用的装备 |
|
|||
|
|
| 2 | 50-99% | 普通 | 白色 | ×1.0 | 基础装备 |
|
|||
|
|
| 3 | 100-129% | 优秀 | 绿色 | ×1.1 | 略强于普通 |
|
|||
|
|
| 4 | 130-159% | 稀有 | 蓝色 | ×1.3 | 强力装备 |
|
|||
|
|
| 5 | 160-199% | 史诗 | 紫色 | ×1.6 | 非常稀有 |
|
|||
|
|
| 6 | 200-250% | 传说 | 橙色 | ×2.0 | 极其罕见 |
|
|||
|
|
|
|||
|
|
**品质影响**:
|
|||
|
|
|
|||
|
|
1. **基础属性** = 装备基础值 × 品质百分比
|
|||
|
|
- 武器攻击力 = 基础攻击力 × 品质%
|
|||
|
|
- 防具防御力 = 基础防御力 × 品质%
|
|||
|
|
2. **稀有度乘数**(绿色及以上):影响所有属性
|
|||
|
|
- 最终属性 = 基础属性 × 稀有度乘数
|
|||
|
|
3. **价值计算**:
|
|||
|
|
- 装备价值 = 基础价值 × 品质% × 稀有度乘数
|
|||
|
|
|
|||
|
|
**示例计算**:
|
|||
|
|
|
|||
|
|
- 基础攻击力100的剑,品质120%,绿色稀有度
|
|||
|
|
- 最终攻击力 = 100 × 1.2 × 1.1 = 132
|
|||
|
|
- 最终价值 = 基础价值 × 1.2 × 1.1
|
|||
|
|
|
|||
|
|
#### 装备分类
|
|||
|
|
|
|||
|
|
1. **武器(Weapon)**
|
|||
|
|
|
|||
|
|
- 基础属性:攻击力、攻击速度
|
|||
|
|
- 首次装备自动解锁对应武器技能
|
|||
|
|
- 类型:单手武器、双手武器、远程武器
|
|||
|
|
2. **防具(Armor)**
|
|||
|
|
|
|||
|
|
- 部位:头盔、胸甲、护腿、鞋子、手套
|
|||
|
|
- 基础属性:防御力
|
|||
|
|
- **重要**:防御力仅由装备提供,不是基础属性
|
|||
|
|
3. **护盾(Shield)**
|
|||
|
|
|
|||
|
|
- 基础属性:护盾值、格挡率
|
|||
|
|
- 格挡机制:先于防御力计算,可完全吸收伤害
|
|||
|
|
- 示例:格挡率75%,护盾值50 → 有75%几率用护盾吸收最多50点伤害
|
|||
|
|
4. **饰品(Accessory)**
|
|||
|
|
|
|||
|
|
- 类型:戒指、项链
|
|||
|
|
- 提供特殊属性加成
|
|||
|
|
- 可能有特殊效果
|
|||
|
|
5. **书籍(Book)**
|
|||
|
|
|
|||
|
|
- **普通书籍**:只给阅读经验
|
|||
|
|
- **特殊书籍**:多技能经验(圣经→阅读+信仰)
|
|||
|
|
- **完成后奖励**:提供永久性全局加成(重要!)
|
|||
|
|
- 不消耗,读完后收益消失
|
|||
|
|
6. **消耗品(Consumable)**
|
|||
|
|
|
|||
|
|
- 食物:恢复生命值、耐力值
|
|||
|
|
- 战斗中食物提供耐力再生
|
|||
|
|
- 每次使用给饮食经验
|
|||
|
|
- 药水:恢复生命值、精神值
|
|||
|
|
7. **素材(Material)**
|
|||
|
|
|
|||
|
|
- 战斗掉落物
|
|||
|
|
- 用于制作装备
|
|||
|
|
- 可出售给商人
|
|||
|
|
8. **负面状态(Negative Status)**
|
|||
|
|
|
|||
|
|
- 虫子咬、流血等
|
|||
|
|
- 提供被动经验(如坚韧)
|
|||
|
|
- 持续负面效果
|
|||
|
|
|
|||
|
|
#### 装备获取方式
|
|||
|
|
|
|||
|
|
1. **战斗掉落**:随机品质(基于运气)
|
|||
|
|
2. **商店购买**:
|
|||
|
|
- 常规商店:最高120%品质
|
|||
|
|
- 黑市:可能更高品质
|
|||
|
|
3. **制作系统**:品质取决于技能等级和材料
|
|||
|
|
|
|||
|
|
#### 装备系统设计理念
|
|||
|
|
|
|||
|
|
- **无耐久度**:装备永久有效,不会损坏
|
|||
|
|
- **强调收集**:追求更高品质的装备
|
|||
|
|
- **品质随机**:增加重玩价值和刷装备的乐趣
|
|||
|
|
|
|||
|
|
### 2.4 战斗系统(深度优化)
|
|||
|
|
|
|||
|
|
#### 战斗方式
|
|||
|
|
|
|||
|
|
- **实时回合制**:基于攻击速度的实时战斗
|
|||
|
|
- **速度机制**:
|
|||
|
|
- 攻击速度直接决定攻击频率
|
|||
|
|
- 2倍速度 = 2倍攻击频率
|
|||
|
|
- **最快攻击限制**:每秒1次(战斗开始时缩放计时器)
|
|||
|
|
|
|||
|
|
#### 命中与闪避系统(AP/EP系统)
|
|||
|
|
|
|||
|
|
采用**非线性计算**(参考YAIRPG):
|
|||
|
|
|
|||
|
|
| AP与EP比例 | 命中概率 | 说明 |
|
|||
|
|
| -------------- | -------- | ---------- |
|
|||
|
|
| AP = 5 × EP | ~98% | 几乎必中 |
|
|||
|
|
| AP = 2 × EP | ~80% | 高命中率 |
|
|||
|
|
| AP = EP | ~50% | 势均力敌 |
|
|||
|
|
| AP = 0.5 × EP | ~24% | 命中困难 |
|
|||
|
|
| AP = 0.2 × EP | ~5% | 几乎打不中 |
|
|||
|
|
|
|||
|
|
**AP(Attack Points)计算**:
|
|||
|
|
|
|||
|
|
```javascript
|
|||
|
|
AP = 灵巧 + 智力×0.2 + 技能加成 + 装备加成 + 姿态加成 - 敌人数惩罚
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**EP(Evasion Points)计算**:
|
|||
|
|
|
|||
|
|
```javascript
|
|||
|
|
EP = 敏捷 + 智力×0.2 + 技能加成 + 装备加成 + 姿态加成 - 环境惩罚
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**环境惩罚示例**:
|
|||
|
|
|
|||
|
|
- 狭窄区域:EP -30%
|
|||
|
|
- 黑暗区域(无夜视):AP和EP各 -20%
|
|||
|
|
- 多敌人:每多1个敌人,AP -5%
|
|||
|
|
|
|||
|
|
#### 伤害计算(三层防御)
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
步骤1:闪避判定
|
|||
|
|
→ 成功:无伤害
|
|||
|
|
→ 失败:进入步骤2
|
|||
|
|
|
|||
|
|
步骤2:护盾吸收
|
|||
|
|
→ 护盾值完全吸收伤害(可能剩余)
|
|||
|
|
→ 进入步骤3
|
|||
|
|
|
|||
|
|
步骤3:防御力减少
|
|||
|
|
最终伤害 = max(1, (原始伤害 - 护盾吸收 - 防御力) × 暴击倍数)
|
|||
|
|
最小伤害 = max(1, 原始伤害 × 10%) // 防御力最多减少90%
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**示例**:
|
|||
|
|
|
|||
|
|
- 原始伤害:100
|
|||
|
|
- 护盾吸收:30
|
|||
|
|
- 防御力:40
|
|||
|
|
- 暴击倍数:1.5
|
|||
|
|
- 最终伤害 = max(1, (100-30-40) × 1.5) = 45
|
|||
|
|
|
|||
|
|
#### 战斗姿态系统(重要)
|
|||
|
|
|
|||
|
|
| 姿态 | 耐力消耗 | 效果 |
|
|||
|
|
| -------- | -------- | --------------------------------------- |
|
|||
|
|
| 攻击姿态 | 高 | 攻击力+50%,攻击速度+30%,防御-30% |
|
|||
|
|
| 防御姿态 | 中 | 防御力+50%,护盾+30%,攻击力-30% |
|
|||
|
|
| 平衡姿态 | 低 | 无加成,无惩罚 |
|
|||
|
|
| 快速打击 | 很高 | 攻击速度+100%,攻击力-40%(适合多目标) |
|
|||
|
|
| 重击 | 高 | 攻击力+100%,攻击速度-50% |
|
|||
|
|
|
|||
|
|
**姿态切换规则**:
|
|||
|
|
|
|||
|
|
- 可随时切换姿态
|
|||
|
|
- 切换时重置攻击进度(防止姿态滥用)
|
|||
|
|
- 姿态影响耐力消耗速度
|
|||
|
|
|
|||
|
|
#### 耐力系统
|
|||
|
|
|
|||
|
|
- **耐力影响**:
|
|||
|
|
- 耐力 > 50%:正常效率
|
|||
|
|
- 耐力 0-50%:效率逐渐下降
|
|||
|
|
- 耐力 = 0:攻击速度和攻击力减半
|
|||
|
|
- **耐力恢复**:
|
|||
|
|
- 脱离战斗自动恢复
|
|||
|
|
- 食物提供战斗中耐力再生
|
|||
|
|
- **相关技能**:"坚持"技能可在无耐力战斗时升级,降低惩罚
|
|||
|
|
|
|||
|
|
#### 经验获取(优化)
|
|||
|
|
|
|||
|
|
- **每次攻击**:
|
|||
|
|
- 主经验 = 敌人基础经验 × 10%
|
|||
|
|
- 武器技能经验 = 敌人基础经验 × 5%
|
|||
|
|
- **战斗胜利**:
|
|||
|
|
- 主经验 = 敌人基础经验 × 90%
|
|||
|
|
- 武器技能经验 = 敌人基础经验 × 30%
|
|||
|
|
- **难度加成**:更强敌人提供更多经验
|
|||
|
|
- **群体加成**:多敌人时经验 × √敌人数量
|
|||
|
|
- 例:8个敌人,经验倍率 = √8 ≈ 2.83倍
|
|||
|
|
|
|||
|
|
#### 掉落系统(创新)
|
|||
|
|
|
|||
|
|
- **掉落衰减机制**:
|
|||
|
|
- 同种敌人杀得越多,掉落率越低
|
|||
|
|
- 最多降到初始的10%(击杀999+后)
|
|||
|
|
- 避免玩家刷同一个敌人
|
|||
|
|
- **掉落恢复**:
|
|||
|
|
- 随时间缓慢恢复
|
|||
|
|
- 恢复速度很慢,鼓励探索新区域
|
|||
|
|
|
|||
|
|
#### 战斗失败
|
|||
|
|
|
|||
|
|
- **后果**:返回上次休息的城镇/安全区
|
|||
|
|
- **恢复**:回复50%基础生命值
|
|||
|
|
- **惩罚**:不掉落物品(友好的失败惩罚)
|
|||
|
|
|
|||
|
|
### 2.5 经济系统(参考 YAIRPG)
|
|||
|
|
|
|||
|
|
#### 货币系统
|
|||
|
|
|
|||
|
|
- **铜币(Copper)**:基础货币
|
|||
|
|
- **银币(Silver)**:1银币 = 100铜币
|
|||
|
|
- **金币(Gold)**:1金币 = 100银币 = 10,000铜币
|
|||
|
|
|
|||
|
|
#### 市场饱和系统(创新)
|
|||
|
|
|
|||
|
|
**核心机制**:玩家出售同种物品越多,价格越低
|
|||
|
|
|
|||
|
|
1. **价格衰减**:
|
|||
|
|
|
|||
|
|
- 初始价格:100%
|
|||
|
|
- 最低价格:初始价格的10%
|
|||
|
|
- 衰减速度:基于出售数量
|
|||
|
|
- 击杀999+同种敌人后,价格降至最低
|
|||
|
|
2. **价格恢复**:
|
|||
|
|
|
|||
|
|
- 随时间缓慢恢复
|
|||
|
|
- 恢复速度很慢(游戏时间数天)
|
|||
|
|
- 应用于所有商人
|
|||
|
|
3. **设计目的**:
|
|||
|
|
|
|||
|
|
- 鼓励探索不同区域
|
|||
|
|
- 避免刷同一个敌人
|
|||
|
|
- 增加经济深度
|
|||
|
|
|
|||
|
|
#### 交易系统
|
|||
|
|
|
|||
|
|
1. **买卖差价**:
|
|||
|
|
|
|||
|
|
- 商人售价:200%基础价格(通常)
|
|||
|
|
- 商人收购价:30%-50%基础价格
|
|||
|
|
- **讨价还价技能**:降低差价
|
|||
|
|
- 技能Lv.max:售价200% → 150%,差价从100%降至50%
|
|||
|
|
2. **价格波动**:
|
|||
|
|
|
|||
|
|
- 每天刷新一次价格
|
|||
|
|
- 浮动范围:±10% ~ ±50%(商品类型不同)
|
|||
|
|
- 黑市波动更大:±40%
|
|||
|
|
3. **市场类型**:
|
|||
|
|
|
|||
|
|
- **常规市场**:始终开放,商品品质最高120%
|
|||
|
|
- **黑市**:
|
|||
|
|
- 开放时间:周三、周六 20:00-24:00(游戏时间)
|
|||
|
|
- 特殊商品:中级装备、技能书、稀有物品
|
|||
|
|
- 更高品质可能
|
|||
|
|
- 回收价格:50%(优于常规市场30%)
|
|||
|
|
|
|||
|
|
#### NPC服务系统
|
|||
|
|
|
|||
|
|
1. **战斗教练**:
|
|||
|
|
|
|||
|
|
- 购买战斗经验
|
|||
|
|
- 解锁战斗技能
|
|||
|
|
- 提供训练服务
|
|||
|
|
2. **训练假人**:
|
|||
|
|
|
|||
|
|
- 购买武器经验
|
|||
|
|
- 消耗耐力训练
|
|||
|
|
- 不需要战斗
|
|||
|
|
3. **特殊NPC**(黑市):
|
|||
|
|
|
|||
|
|
- 奴隶贩子:触发特殊剧情
|
|||
|
|
- 神秘商人:出售稀有物品
|
|||
|
|
|
|||
|
|
### 2.6 区域与环境系统
|
|||
|
|
|
|||
|
|
#### 区域类型
|
|||
|
|
|
|||
|
|
1. **安全区**:
|
|||
|
|
|
|||
|
|
- 城镇、营地
|
|||
|
|
- 可休息恢复
|
|||
|
|
- 无敌人
|
|||
|
|
2. **普通区域**:
|
|||
|
|
|
|||
|
|
- 日夜循环影响
|
|||
|
|
- 夜间(20:00-04:00)有轻微惩罚
|
|||
|
|
3. **黑暗区域**:
|
|||
|
|
|
|||
|
|
- 洞穴、地下城
|
|||
|
|
- 始终有黑暗惩罚
|
|||
|
|
- 夜视技能可减少惩罚
|
|||
|
|
4. **特殊区域**:
|
|||
|
|
|
|||
|
|
- 狭窄空间:闪避惩罚(EP-30%)
|
|||
|
|
- 开阔空间:无惩罚
|
|||
|
|
- 恶劣环境:各种特殊惩罚
|
|||
|
|
|
|||
|
|
#### 环境惩罚与适应
|
|||
|
|
|
|||
|
|
| 环境 | 惩罚 | 适应技能 |
|
|||
|
|
| -------- | ----------- | -------------------- |
|
|||
|
|
| 黑暗 | AP/EP各-20% | 夜视(被动获得经验) |
|
|||
|
|
| 狭窄 | EP-30% | 狭窄空间战斗 |
|
|||
|
|
| 恶劣天气 | AP/EP各-10% | 恶劣环境生存 |
|
|||
|
|
|
|||
|
|
**技能获得**:
|
|||
|
|
|
|||
|
|
- 在环境中被动获得经验
|
|||
|
|
- 无需额外操作
|
|||
|
|
- 技能等级降低惩罚
|
|||
|
|
|
|||
|
|
#### 区域解锁机制
|
|||
|
|
|
|||
|
|
1. **技能等级解锁**:
|
|||
|
|
|
|||
|
|
- 阅读Lv.5 → 解锁图书馆
|
|||
|
|
- 战斗技能Lv.10 → 解锁高级训练场
|
|||
|
|
2. **区域通关解锁**:
|
|||
|
|
|
|||
|
|
- 击败区域Boss → 解锁下一区域
|
|||
|
|
- 可能需要多次通关
|
|||
|
|
3. **NPC对话解锁**:
|
|||
|
|
|
|||
|
|
- 与特定NPC对话 → 获得新区域信息
|
|||
|
|
- 完成任务 → 解锁新区域
|
|||
|
|
4. **物品解锁**:
|
|||
|
|
|
|||
|
|
- 获得特定物品 → 解锁相关区域
|
|||
|
|
- 例:获得地图 → 解锁新区域
|
|||
|
|
|
|||
|
|
#### 区域活动系统
|
|||
|
|
|
|||
|
|
1. **战斗活动**:
|
|||
|
|
|
|||
|
|
- 探索:随机遇敌
|
|||
|
|
- 剿灭:消灭指定数量敌人
|
|||
|
|
- Boss战:挑战强大敌人
|
|||
|
|
2. **资源活动**:
|
|||
|
|
|
|||
|
|
- 采集:获得素材
|
|||
|
|
- 狩猎:获得食物和素材
|
|||
|
|
- 采矿:获得矿石
|
|||
|
|
3. **工作活动**:
|
|||
|
|
|
|||
|
|
- 时间限制(某些仅在白天开放)
|
|||
|
|
- 获得货币和技能经验
|
|||
|
|
- 可能受技能等级影响收益
|
|||
|
|
|
|||
|
|
### 2.7 挂机任务系统(优化)
|
|||
|
|
|
|||
|
|
#### 任务类型
|
|||
|
|
|
|||
|
|
1. **主动挂机任务**:
|
|||
|
|
|
|||
|
|
- **阅读**:消耗书籍,获得阅读经验
|
|||
|
|
- **训练**:消耗耐力,获得武器技能经验
|
|||
|
|
- **工作**:获得货币和技能经验
|
|||
|
|
- **祈祷**:获得信仰经验(需要圣经)
|
|||
|
|
2. **被动挂机任务**:
|
|||
|
|
|
|||
|
|
- **环境适应**:在特定环境中被动获得经验(夜视等)
|
|||
|
|
- **负面状态**:虫子咬、流血等,获得坚韧经验
|
|||
|
|
- **装备适应**:装备特定装备获得相关经验(铁皮等)
|
|||
|
|
|
|||
|
|
#### 任务互斥规则
|
|||
|
|
|
|||
|
|
1. **完全互斥**:
|
|||
|
|
|
|||
|
|
- 战斗 ↔ 训练
|
|||
|
|
- 不同战斗区域
|
|||
|
|
- 不同工作活动
|
|||
|
|
2. **条件互斥**:
|
|||
|
|
|
|||
|
|
- 阅读 ↔ 其他主动任务
|
|||
|
|
- 有一心多用技能可同时进行1个额外任务
|
|||
|
|
- 战斗 ↔ 阅读
|
|||
|
|
- 有一心多用技能可同时
|
|||
|
|
3. **不互斥**:
|
|||
|
|
|
|||
|
|
- 被动任务可与任何任务同时进行
|
|||
|
|
- 可同时有无数个被动任务
|
|||
|
|
|
|||
|
|
#### 经验获取机制
|
|||
|
|
|
|||
|
|
- **挂机期间**:每秒获得技能经验
|
|||
|
|
- **基础效率**:技能等级影响获取速度
|
|||
|
|
- **父技能加成**:父技能等级高于子技能时,提供经验倍率
|
|||
|
|
- **完成任务**:获得额外经验奖励
|
|||
|
|
|
|||
|
|
### 2.8 时间与离线系统
|
|||
|
|
|
|||
|
|
#### 游戏时间系统
|
|||
|
|
|
|||
|
|
- **时间流速**:现实1秒 = 游戏时间5分钟
|
|||
|
|
- **时间显示**:Day X HH:MM
|
|||
|
|
- **日夜循环**:
|
|||
|
|
- 白天:06:00-20:00
|
|||
|
|
- 夜晚:20:00-06:00
|
|||
|
|
- 夜晚在普通区域有轻微惩罚
|
|||
|
|
|
|||
|
|
#### 时间作用
|
|||
|
|
|
|||
|
|
1. **市场刷新**:
|
|||
|
|
|
|||
|
|
- 每天刷新一次价格
|
|||
|
|
- 黑市在特定时间开放
|
|||
|
|
2. **活动限制**:
|
|||
|
|
|
|||
|
|
- 某些工作仅在白天开放
|
|||
|
|
- 夜晚影响探索效率
|
|||
|
|
3. **事件触发**:
|
|||
|
|
|
|||
|
|
- 特定时间触发特殊事件
|
|||
|
|
- 日夜影响某些敌人
|
|||
|
|
|
|||
|
|
#### 离线收益系统
|
|||
|
|
|
|||
|
|
1. **基础计算时间**:0.5小时(30分钟)
|
|||
|
|
2. **广告延长**:看广告延长至2.5小时
|
|||
|
|
3. **收益计算**:
|
|||
|
|
|
|||
|
|
- 基于挂机任务的正常收益
|
|||
|
|
- 不包括战斗收益
|
|||
|
|
- 技能经验按时间计算
|
|||
|
|
4. **离线惩罚**:
|
|||
|
|
|
|||
|
|
- 超过计算时间的部分不计
|
|||
|
|
- 鼓励定期登录
|
|||
|
|
|
|||
|
|
### 2.9 图鉴与成就系统
|
|||
|
|
|
|||
|
|
#### 敌人图鉴
|
|||
|
|
|
|||
|
|
- **解锁条件**:首次击败敌人
|
|||
|
|
- **显示信息**:
|
|||
|
|
- 敌人属性
|
|||
|
|
- 掉落物品和概率
|
|||
|
|
- 击杀数量
|
|||
|
|
- 击败奖励
|
|||
|
|
|
|||
|
|
#### 物品图鉴
|
|||
|
|
|
|||
|
|
- **解锁条件**:首次获得物品
|
|||
|
|
- **显示信息**:
|
|||
|
|
- 物品属性
|
|||
|
|
- 获取方式
|
|||
|
|
- 用途说明
|
|||
|
|
|
|||
|
|
#### 成就系统
|
|||
|
|
|
|||
|
|
1. **战斗成就**:
|
|||
|
|
|
|||
|
|
- 击败特定敌人
|
|||
|
|
- 击杀数量达到目标
|
|||
|
|
- 无伤通关等
|
|||
|
|
2. **技能成就**:
|
|||
|
|
|
|||
|
|
- 技能达到特定等级
|
|||
|
|
- 解锁所有技能
|
|||
|
|
- 技能里程碑达成
|
|||
|
|
3. **探索成就**:
|
|||
|
|
|
|||
|
|
- 解锁所有区域
|
|||
|
|
- 完成特定探索
|
|||
|
|
- 发现隐藏内容
|
|||
|
|
4. **收集成就**:
|
|||
|
|
|
|||
|
|
- 收集品质达到特定值
|
|||
|
|
- 收集特定装备
|
|||
|
|
- 图鉴完成度
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 3. 数值设计(优化版)
|
|||
|
|
|
|||
|
|
### 3.1 主等级成长
|
|||
|
|
|
|||
|
|
- **经验公式**:100 × 1.2^(等级-1)
|
|||
|
|
- **升级奖励**:少量基础属性 + 解锁高级技能上限
|
|||
|
|
- **定位**:作为参考指标,不是主要成长手段
|
|||
|
|
|
|||
|
|
### 3.2 技能成长
|
|||
|
|
|
|||
|
|
- **经验公式**:等级 × 基础系数
|
|||
|
|
- **玩家等级限制**:技能等级 ≤ 玩家等级 × 2
|
|||
|
|
- **里程碑奖励**:特定等级提供全局加成
|
|||
|
|
|
|||
|
|
### 3.3 战斗数值平衡
|
|||
|
|
|
|||
|
|
- **敌人生成**:基于区域等级范围
|
|||
|
|
- **属性成长**:每级+10%
|
|||
|
|
- **经验曲线**:与敌人强度相关
|
|||
|
|
|
|||
|
|
### 3.4 经济平衡
|
|||
|
|
|
|||
|
|
- **金币获取**:战斗掉落、工作、出售物品
|
|||
|
|
- **金币消耗**:购买装备、书籍、训练服务
|
|||
|
|
- **市场饱和**:防止刷钱机制
|
|||
|
|
- **价格波动**:增加经济深度
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 4. 核心创新点总结
|
|||
|
|
|
|||
|
|
### 4.1 技能里程碑系统
|
|||
|
|
|
|||
|
|
- 技能达到特定等级提供**永久性全局奖励**
|
|||
|
|
- 鼓励玩家提升多种技能
|
|||
|
|
- 提供长期目标感
|
|||
|
|
|
|||
|
|
### 4.2 父技能系统
|
|||
|
|
|
|||
|
|
- 父技能自动继承最高子技能等级
|
|||
|
|
- 为低级子技能提供经验倍率加成
|
|||
|
|
- 增加技能系统深度
|
|||
|
|
|
|||
|
|
### 4.3 装备品质系统
|
|||
|
|
|
|||
|
|
- 6级品质系统(垃圾到传说)
|
|||
|
|
- 品质影响装备所有属性
|
|||
|
|
- 稀有度提供额外乘数
|
|||
|
|
- 增加装备收集乐趣
|
|||
|
|
|
|||
|
|
### 4.4 AP/EP命中系统
|
|||
|
|
|
|||
|
|
- 非线性命中计算
|
|||
|
|
- AP与EP比例决定命中概率
|
|||
|
|
- 环境因素影响AP/EP
|
|||
|
|
- 增加战斗策略性
|
|||
|
|
|
|||
|
|
### 4.5 三层防御机制
|
|||
|
|
|
|||
|
|
1. 闪避(完全避免)
|
|||
|
|
2. 护盾(吸收伤害)
|
|||
|
|
3. 防御力(减少伤害)
|
|||
|
|
|
|||
|
|
### 4.6 市场饱和系统
|
|||
|
|
|
|||
|
|
- 同种物品出售越多,价格越低
|
|||
|
|
- 最低降至原价的10%
|
|||
|
|
- 随时间缓慢恢复
|
|||
|
|
- 鼓励探索不同区域
|
|||
|
|
|
|||
|
|
### 4.7 掉落衰减系统
|
|||
|
|
|
|||
|
|
- 同种敌人杀得越多,掉落率越低
|
|||
|
|
- 最低降至初始的10%
|
|||
|
|
- 随时间缓慢恢复
|
|||
|
|
- 避免刷同一个敌人
|
|||
|
|
|
|||
|
|
### 4.8 部分效率机制
|
|||
|
|
|
|||
|
|
- 即使条件未完全满足,也能获得50%经验
|
|||
|
|
- 降低玩家挫败感
|
|||
|
|
- 保持游戏流畅性
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 5. 设计理念对比
|
|||
|
|
|
|||
|
|
### 5.1 与原设计对比
|
|||
|
|
|
|||
|
|
| 方面 | 原设计 | 新设计 | 改进 |
|
|||
|
|
| -------- | ---------- | --------------------- | -------- |
|
|||
|
|
| 属性系统 | 简单5属性 | 5主属性+5次属性+AP/EP | 更深度 |
|
|||
|
|
| 技能系统 | 简单升级 | 里程碑+父技能+多分类 | 更丰富 |
|
|||
|
|
| 装备系统 | 基础装备 | 6级品质系统 | 更有追求 |
|
|||
|
|
| 战斗系统 | 简单回合制 | AP/EP+姿态+耐力 | 更策略 |
|
|||
|
|
| 经济系统 | 简单买卖 | 市场饱和+价格波动 | 更真实 |
|
|||
|
|
| 掉落系统 | 固定概率 | 衰减+恢复机制 | 更平衡 |
|
|||
|
|
|
|||
|
|
### 5.2 借鉴YAIRPG的核心点
|
|||
|
|
|
|||
|
|
✓ 技能里程碑系统
|
|||
|
|
✓ 父技能系统
|
|||
|
|
✓ 装备品质系统
|
|||
|
|
✓ AP/EP命中系统
|
|||
|
|
✓ 三层防御机制
|
|||
|
|
✓ 市场饱和系统
|
|||
|
|
✓ 掉落衰减系统
|
|||
|
|
✓ 战斗姿态系统
|
|||
|
|
✓ 环境惩罚与适应
|
|||
|
|
✓ 部分效率机制
|
|||
|
|
|
|||
|
|
### 5.3 保持原有特色
|
|||
|
|
|
|||
|
|
✓ 纯文字UI风格
|
|||
|
|
✓ 挂机养成核心
|
|||
|
|
✓ 技能驱动成长
|
|||
|
|
✓ 渐进式解锁
|
|||
|
|
✓ 末世生存主题
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 6. 开发建议
|
|||
|
|
|
|||
|
|
### 6.1 实现优先级
|
|||
|
|
|
|||
|
|
**Phase 1:核心框架(必须)**
|
|||
|
|
|
|||
|
|
1. 玩家数据管理
|
|||
|
|
2. 技能系统(基础)
|
|||
|
|
3. 物品系统(基础)
|
|||
|
|
4. 数据持久化
|
|||
|
|
|
|||
|
|
**Phase 2:核心玩法(必须)**
|
|||
|
|
|
|||
|
|
1. 战斗系统(基础版)
|
|||
|
|
2. 挂机任务系统
|
|||
|
|
3. 经验获取机制
|
|||
|
|
|
|||
|
|
**Phase 3:高级系统(重要)**
|
|||
|
|
|
|||
|
|
1. 装备品质系统
|
|||
|
|
2. 技能里程碑系统
|
|||
|
|
3. AP/EP战斗系统
|
|||
|
|
4. 战斗姿态系统
|
|||
|
|
|
|||
|
|
**Phase 4:扩展系统(可选)**
|
|||
|
|
|
|||
|
|
1. 经济系统(市场饱和)
|
|||
|
|
2. 区域环境系统
|
|||
|
|
3. 图鉴成就系统
|
|||
|
|
4. 父技能系统
|
|||
|
|
|
|||
|
|
**Phase 5:优化打磨(可选)**
|
|||
|
|
|
|||
|
|
1. UI/UX优化
|
|||
|
|
2. 数值平衡调整
|
|||
|
|
3. 性能优化
|
|||
|
|
4. 剧情事件
|
|||
|
|
|
|||
|
|
### 6.2 技术要点
|
|||
|
|
|
|||
|
|
1. **数据结构设计**:
|
|||
|
|
|
|||
|
|
- 灵活的技能系统
|
|||
|
|
- 可扩展的物品系统
|
|||
|
|
- 高效的战斗计算
|
|||
|
|
2. **性能优化**:
|
|||
|
|
|
|||
|
|
- 定时器管理
|
|||
|
|
- 计算属性缓存
|
|||
|
|
- 虚拟列表(长列表)
|
|||
|
|
3. **数据验证**:
|
|||
|
|
|
|||
|
|
- 物品/技能使用前检查
|
|||
|
|
- 防止异常数据
|
|||
|
|
- 定期保存机制
|
|||
|
|
|
|||
|
|
### 6.3 平衡性测试
|
|||
|
|
|
|||
|
|
1. **数值测试**:
|
|||
|
|
|
|||
|
|
- 技能升级速度
|
|||
|
|
- 战斗难度曲线
|
|||
|
|
- 经济平衡
|
|||
|
|
2. **玩法测试**:
|
|||
|
|
|
|||
|
|
- 挂机效率
|
|||
|
|
- 探索动力
|
|||
|
|
- 长期目标感
|
|||
|
|
3. **边界测试**:
|
|||
|
|
|
|||
|
|
- 技能满级
|
|||
|
|
- 物品用完
|
|||
|
|
- 极端数值
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 7. 结语
|
|||
|
|
|
|||
|
|
本设计文档在原有设计基础上,深度借鉴了Yet Another Idle RPG和Proto23的优秀设计理念,创建了一个更加深度、平衡、有策略性的挂机养成游戏系统。
|
|||
|
|
|
|||
|
|
**核心改进**:
|
|||
|
|
|
|||
|
|
1. 从简单升级变为深度技能系统
|
|||
|
|
2. 从基础装备变为品质追求系统
|
|||
|
|
3. 从简单战斗变为策略性战斗
|
|||
|
|
4. 从简单经济变为动态经济系统
|
|||
|
|
|
|||
|
|
**设计目标**:
|
|||
|
|
|
|||
|
|
- 提供长期目标感(技能里程碑、装备品质)
|
|||
|
|
- 保持挂机友好(离线收益、自动战斗)
|
|||
|
|
- 增加策略深度(战斗姿态、装备搭配)
|
|||
|
|
- 鼓励探索(市场饱和、掉落衰减)
|
|||
|
|
|
|||
|
|
这个设计可以作为开发的基础,后续可根据实际情况调整细节和平衡性。
|
|||
|
|
|
|||
|
|
### 5.1 玩家数据结构
|
|||
|
|
|
|||
|
|
```javascript
|
|||
|
|
{
|
|||
|
|
// 基础属性
|
|||
|
|
baseStats: { health, attack, defense, speed, sanity },
|
|||
|
|
|
|||
|
|
// 最终属性
|
|||
|
|
finalStats: { health, attack, defense, speed, sanity, criticalChance },
|
|||
|
|
|
|||
|
|
// 主等级
|
|||
|
|
level: { current, currentExp, maxExp },
|
|||
|
|
|
|||
|
|
// 技能
|
|||
|
|
skills: {
|
|||
|
|
"skillId": { level, exp, unlocked }
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
// 物品
|
|||
|
|
obtainedItems: [],
|
|||
|
|
readBooks: [],
|
|||
|
|
inventory: [
|
|||
|
|
{ itemId, count }
|
|||
|
|
],
|
|||
|
|
|
|||
|
|
// 货币(铜币为单位)
|
|||
|
|
currency: { copper },
|
|||
|
|
|
|||
|
|
// 位置
|
|||
|
|
currentLocation: "locationId",
|
|||
|
|
|
|||
|
|
// 战斗状态
|
|||
|
|
inCombat: false,
|
|||
|
|
combatState: null,
|
|||
|
|
|
|||
|
|
// 挂机任务
|
|||
|
|
activeTasks: [],
|
|||
|
|
negativeStatus: [],
|
|||
|
|
|
|||
|
|
// 市场价格
|
|||
|
|
marketPrices: {
|
|||
|
|
lastRefreshDay: 1,
|
|||
|
|
prices: {}
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
// 离线奖励
|
|||
|
|
offlineReward: {
|
|||
|
|
maxOfflineHours: 0.5,
|
|||
|
|
adBonusTime: 0,
|
|||
|
|
lastAdTime: null
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
// 游戏时间
|
|||
|
|
gameTime: {
|
|||
|
|
day: 1,
|
|||
|
|
hour: 8,
|
|||
|
|
minute: 0,
|
|||
|
|
totalMinutes: 480
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
// 上次登录时间
|
|||
|
|
lastLoginTime: timestamp
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 5.2 配置文件结构
|
|||
|
|
|
|||
|
|
- **items.js**:所有物品配置
|
|||
|
|
- **skills.js**:所有技能配置
|
|||
|
|
- **locations.js**:地点、敌人、掉落配置
|
|||
|
|
- **market.js**:市场、NPC配置
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 6. 扩展性设计
|
|||
|
|
|
|||
|
|
### 6.1 新增技能
|
|||
|
|
|
|||
|
|
1. 在 skills.js 添加配置
|
|||
|
|
2. 在物品中添加解锁条件
|
|||
|
|
3. 实现技能效果(如有特殊效果)
|
|||
|
|
|
|||
|
|
### 6.2 新增物品
|
|||
|
|
|
|||
|
|
1. 在 items.js 添加配置
|
|||
|
|
2. 设置解锁技能或效果
|
|||
|
|
3. 在市场或掉落表中添加
|
|||
|
|
|
|||
|
|
### 6.3 新增地点
|
|||
|
|
|
|||
|
|
1. 在 locations.js 添加地点配置
|
|||
|
|
2. 添加敌人列表
|
|||
|
|
3. 创建掉落表
|
|||
|
|
|
|||
|
|
### 6.4 新增剧情
|
|||
|
|
|
|||
|
|
1. 在物品或NPC中添加 special_event
|
|||
|
|
2. 在 EventManager 中处理事件
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 7. 开发优先级
|
|||
|
|
|
|||
|
|
### Phase 1:核心框架
|
|||
|
|
|
|||
|
|
1. 玩家数据管理
|
|||
|
|
2. 技能系统(解锁、升级)
|
|||
|
|
3. 物品系统(获得、使用)
|
|||
|
|
4. 数据持久化
|
|||
|
|
|
|||
|
|
### Phase 2:核心玩法
|
|||
|
|
|
|||
|
|
1. 战斗系统
|
|||
|
|
2. 任务系统(挂机)
|
|||
|
|
3. 经验获取
|
|||
|
|
|
|||
|
|
### Phase 3:扩展系统
|
|||
|
|
|
|||
|
|
1. 市场系统
|
|||
|
|
2. 地点探索
|
|||
|
|
3. 掉落系统
|
|||
|
|
|
|||
|
|
### Phase 4:UI完善
|
|||
|
|
|
|||
|
|
1. 主界面
|
|||
|
|
2. 状态页
|
|||
|
|
3. 背包页
|
|||
|
|
4. 战斗页
|
|||
|
|
5. 市场页
|
|||
|
|
|
|||
|
|
### Phase 5:优化扩展
|
|||
|
|
|
|||
|
|
1. 离线收益
|
|||
|
|
2. 时间系统
|
|||
|
|
3. 特殊技能(一心多用)
|
|||
|
|
4. 剧情事件
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 8. 技术要点
|
|||
|
|
|
|||
|
|
### 8.1 关键技术
|
|||
|
|
|
|||
|
|
- **框架**:uni-app(Vue 3)
|
|||
|
|
- **存储**:uni.setStorageSync/getStorageSync
|
|||
|
|
- **定时器**:setInterval(游戏循环)
|
|||
|
|
- **计算属性**:动态计算最终属性
|
|||
|
|
|
|||
|
|
### 8.2 注意事项
|
|||
|
|
|
|||
|
|
1. **eval使用**:技能效果公式使用eval,需确保公式安全
|
|||
|
|
2. **数据验证**:物品、技能使用前检查条件
|
|||
|
|
3. **保存频率**:每次状态改变都要保存
|
|||
|
|
4. **内存管理**:定时器注意清理
|
|||
|
|
|
|||
|
|
### 8.3 性能优化
|
|||
|
|
|
|||
|
|
- 节流/防抖:频繁操作(如点击)
|
|||
|
|
- 虚拟列表:物品列表较长时
|
|||
|
|
- 延迟加载:非关键数据
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 9. 测试要点
|
|||
|
|
|
|||
|
|
### 9.1 功能测试
|
|||
|
|
|
|||
|
|
- [ ] 新游戏创建
|
|||
|
|
- [ ] 物品获得和解锁技能
|
|||
|
|
- [ ] 技能升级和属性加成
|
|||
|
|
- [ ] 战斗流程和经验获取
|
|||
|
|
- [ ] 市场交易
|
|||
|
|
- [ ] 任务挂机
|
|||
|
|
- [ ] 离线收益
|
|||
|
|
- [ ] 数据保存和加载
|
|||
|
|
|
|||
|
|
### 9.2 数值平衡
|
|||
|
|
|
|||
|
|
- [ ] 主等级成长速度
|
|||
|
|
- [ ] 技能升级难度
|
|||
|
|
- [ ] 战斗难度曲线
|
|||
|
|
- [ ] 经济平衡(金币获取/消耗)
|
|||
|
|
- [ ] 时间流速
|
|||
|
|
|
|||
|
|
### 9.3 边界情况
|
|||
|
|
|
|||
|
|
- [ ] 物品用完
|
|||
|
|
- [ ] 技能满级
|
|||
|
|
- [ ] 负面状态叠加
|
|||
|
|
- [ ] 数据异常(如负数)
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 10. 未来规划
|
|||
|
|
|
|||
|
|
### 10.1 内容扩展
|
|||
|
|
|
|||
|
|
- 更多技能类型
|
|||
|
|
- 更多地点和敌人
|
|||
|
|
- 更多物品和装备
|
|||
|
|
- 成就系统
|
|||
|
|
- 任务线(剧情)
|
|||
|
|
|
|||
|
|
### 10.2 功能扩展
|
|||
|
|
|
|||
|
|
- 多存档位
|
|||
|
|
- 云存档
|
|||
|
|
- 排行榜
|
|||
|
|
- 社交功能(交易、对比)
|
|||
|
|
|
|||
|
|
### 10.3 优化方向
|
|||
|
|
|
|||
|
|
- UI美化(可选图片)
|
|||
|
|
- 音效
|
|||
|
|
- 动画效果
|
|||
|
|
- 数据统计
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 11. 界面设计规范
|
|||
|
|
|
|||
|
|
### 11.1 整体布局架构
|
|||
|
|
|
|||
|
|
采用**单页面架构**,所有内容在一个页面内通过组件切换实现,保持游戏状态连续性。
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
┌─────────────────────────────────────┐
|
|||
|
|
│ [Tab名称] Day 1 08:00 │ ← 顶部标题栏 (80rpx)
|
|||
|
|
├─────────────────────────────────────┤
|
|||
|
|
│ │
|
|||
|
|
│ │
|
|||
|
|
│ 内容区域 │ ← 中部面板区域
|
|||
|
|
│ (状态 / 地图 / 日志 切换显示) │ (flex: 1)
|
|||
|
|
│ │
|
|||
|
|
│ │
|
|||
|
|
│ │
|
|||
|
|
├─────────────────────────────────────┤
|
|||
|
|
│ [状态] [地图] [日志] │ ← 底部导航 (100rpx)
|
|||
|
|
└─────────────────────────────────────┘
|
|||
|
|
|
|||
|
|
┌─────────────────┐
|
|||
|
|
│ 背包抽屉 │ ← 右侧滑出 (600rpx)
|
|||
|
|
│ InventoryDrawer│ 地图面板「背包」按钮唤出
|
|||
|
|
└─────────────────┘
|
|||
|
|
|
|||
|
|
┌─────────────────┐
|
|||
|
|
│ 事件对话抽屉 │ ← 右侧滑出 (600rpx)
|
|||
|
|
│ EventDrawer │ 事件触发时自动弹出
|
|||
|
|
└─────────────────┘
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 11.2 面板详细设计
|
|||
|
|
|
|||
|
|
#### 11.2.1 状态面板 (StatusPanel)
|
|||
|
|
|
|||
|
|
上下分区布局:
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
┌─────────────────────────────────────┐
|
|||
|
|
│ ▓▓▓▓▓▓▓▓░░ HP 80/100 │ ← 生命值进度条
|
|||
|
|
│ ▓▓▓▓▓▓▓▓▓▓ 耐力 100/100 │ ← 耐力进度条
|
|||
|
|
│ ▓▓▓▓▓▓▓▓▓░ 精神 90/100 │ ← 精神进度条
|
|||
|
|
│ │
|
|||
|
|
│ 力量 12 敏捷 10 灵巧 11 智力 10 │ ← 主属性摘要
|
|||
|
|
│ 💰 0金 5银 230铜 │ ← 货币显示
|
|||
|
|
│ │
|
|||
|
|
│ ▼ 更多属性 ──────────────────────── │ ← Collapse 折叠面板
|
|||
|
|
│ ┌─────────────────────────────────┐ │
|
|||
|
|
│ │ 攻击力: 45 防御力: 12 │ │
|
|||
|
|
│ │ 暴击率: 5% 暴击伤害: 1.5x │ │
|
|||
|
|
│ │ AP: 18 EP: 15 │ │
|
|||
|
|
│ │ 攻击速度: 1.0 │ │
|
|||
|
|
│ │ ─────────────────────────────── │ │
|
|||
|
|
│ │ 装备: 木棍 | 无护甲 │ │
|
|||
|
|
│ └─────────────────────────────────┘ │
|
|||
|
|
│ ─────────────────────────────────── │
|
|||
|
|
│ [全部] [战斗] [生活] [特殊] [被动] │ ← 技能筛选 FilterTabs
|
|||
|
|
│ ┌─────────────────────────────────┐ │
|
|||
|
|
│ │ ⚔ 木棍精通 Lv.1 ▓░░░░ │ │ ← 技能列表
|
|||
|
|
│ │ 📖 阅读 Lv.0 ░░░░░ │ │ scroll-view
|
|||
|
|
│ │ 👁 夜视 Lv.0 ░░░░░ 🔒 │ │ 未解锁显示锁
|
|||
|
|
│ └─────────────────────────────────┘ │
|
|||
|
|
└─────────────────────────────────────┘
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 11.2.2 地图面板 (MapPanel)
|
|||
|
|
|
|||
|
|
顶部战斗状态 + 区域列表 + 操作区:
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
┌─────────────────────────────────────┐
|
|||
|
|
│ 📍 测试营地 [📦 背包] │ ← 当前位置 + 背包按钮
|
|||
|
|
│ 环境: 安全区 │
|
|||
|
|
├─────────────────────────────────────┤
|
|||
|
|
│ ═══ 战斗中 ═══════════════════════ │ ← 战斗状态区(战斗时显示)
|
|||
|
|
│ 🐕 野狗 ▓▓▓▓▓▓░░░░ 18/30 │
|
|||
|
|
│ [攻击] [防御] [平衡] ← 姿态切换 │
|
|||
|
|
├─────────────────────────────────────┤
|
|||
|
|
│ ── 可前往区域 ──────────────────── │
|
|||
|
|
│ ┌─────────────────────────────────┐ │
|
|||
|
|
│ │ 🏪 测试市场 [安全] → │ │ ← 区域列表
|
|||
|
|
│ │ 🌙 测试黑市 [安全] → │ │ scroll-view
|
|||
|
|
│ │ 🌲 测试野外1 [普通] → │ │
|
|||
|
|
│ │ 🦴 测试Boss巢 [危险] 🔒 │ │ 锁=未解锁
|
|||
|
|
│ │ 🕳 地下室 [黑暗] 🔒 │ │
|
|||
|
|
│ └─────────────────────────────────┘ │
|
|||
|
|
├─────────────────────────────────────┤
|
|||
|
|
│ [探索] [剿灭] [工作] [休息] │ ← 区域活动按钮
|
|||
|
|
└─────────────────────────────────────┘
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 11.2.3 日志面板 (LogPanel)
|
|||
|
|
|
|||
|
|
实时战斗日志 + 系统消息:
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
┌─────────────────────────────────────┐
|
|||
|
|
│ ┌─────────────────────────────────┐ │
|
|||
|
|
│ │ [08:00] 你进入了测试野外1 │ │ ← info (灰色)
|
|||
|
|
│ │ [08:01] 遭遇了 野狗! │ │ ← system (青色)
|
|||
|
|
│ │ [08:01] 你攻击野狗,造成12点伤害│ │ ← combat (红色)
|
|||
|
|
│ │ [08:01] 野狗攻击你,你闪避了! │ │ ← combat
|
|||
|
|
│ │ [08:02] 暴击! 造成24点伤害 │ │ ← combat (红色+高亮)
|
|||
|
|
│ │ [08:02] 野狗被击败了! │ │ ← system (青色)
|
|||
|
|
│ │ [08:02] 获得: 狗皮 x1, 15铜币 │ │ ← reward (黄色)
|
|||
|
|
│ │ [08:02] 木棍精通 +5 经验 │ │ ← reward
|
|||
|
|
│ │ │ │
|
|||
|
|
│ │ ▼ │ │ ← 自动滚动到底部
|
|||
|
|
│ └─────────────────────────────────┘ │
|
|||
|
|
└─────────────────────────────────────┘
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 11.3 颜色规范
|
|||
|
|
|
|||
|
|
```scss
|
|||
|
|
// 背景色
|
|||
|
|
$bg-primary: #0a0a0f; // 主背景 - 深黑
|
|||
|
|
$bg-secondary: #1a1a2e; // 次级背景 - 深蓝黑
|
|||
|
|
$bg-tertiary: #252542; // 三级背景 - 卡片/面板
|
|||
|
|
|
|||
|
|
// 文字色
|
|||
|
|
$text-primary: #e0e0e0; // 主文字 - 浅灰白
|
|||
|
|
$text-secondary: #808080; // 次要文字 - 灰色
|
|||
|
|
$text-muted: #4a4a4a; // 禁用文字 - 深灰
|
|||
|
|
|
|||
|
|
// 强调色
|
|||
|
|
$accent: #4ecdc4; // 主强调 - 青色 (系统消息)
|
|||
|
|
$danger: #ff6b6b; // 危险 - 红色 (战斗/HP低)
|
|||
|
|
$warning: #ffe66d; // 警告 - 黄色 (奖励/重要)
|
|||
|
|
$success: #4ade80; // 成功 - 绿色
|
|||
|
|
|
|||
|
|
// 品质颜色
|
|||
|
|
$quality-trash: #808080; // 垃圾 - 灰色
|
|||
|
|
$quality-common: #ffffff; // 普通 - 白色
|
|||
|
|
$quality-good: #4ade80; // 优秀 - 绿色
|
|||
|
|
$quality-rare: #60a5fa; // 稀有 - 蓝色
|
|||
|
|
$quality-epic: #a855f7; // 史诗 - 紫色
|
|||
|
|
$quality-legend: #f97316; // 传说 - 橙色
|
|||
|
|
|
|||
|
|
// 边框色
|
|||
|
|
$border-color: #2a2a3e; // 边框 - 深紫灰
|
|||
|
|
$border-active: #4ecdc4; // 激活边框 - 青色
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 11.4 组件规范
|
|||
|
|
|
|||
|
|
#### 11.4.1 目录结构
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
components/
|
|||
|
|
├── common/
|
|||
|
|
│ ├── ProgressBar.vue // 进度条 (HP/耐力/经验)
|
|||
|
|
│ ├── StatItem.vue // 属性显示行
|
|||
|
|
│ ├── TextButton.vue // 文字按钮
|
|||
|
|
│ ├── Collapse.vue // 折叠面板
|
|||
|
|
│ └── FilterTabs.vue // 筛选标签组
|
|||
|
|
├── layout/
|
|||
|
|
│ ├── TabBar.vue // 底部导航栏
|
|||
|
|
│ └── Drawer.vue // 右侧抽屉
|
|||
|
|
├── panels/
|
|||
|
|
│ ├── StatusPanel.vue // 状态面板
|
|||
|
|
│ ├── MapPanel.vue // 地图面板
|
|||
|
|
│ └── LogPanel.vue // 日志面板
|
|||
|
|
└── drawers/
|
|||
|
|
├── InventoryDrawer.vue // 背包抽屉
|
|||
|
|
└── EventDrawer.vue // 事件对话抽屉
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 11.4.2 组件Props规范
|
|||
|
|
|
|||
|
|
**ProgressBar**
|
|||
|
|
|
|||
|
|
| Prop | Type | Default | Description |
|
|||
|
|
| -------- | ------- | ------- | ------------ |
|
|||
|
|
| value | Number | 0 | 当前值 |
|
|||
|
|
| max | Number | 100 | 最大值 |
|
|||
|
|
| color | String | $accent | 进度条颜色 |
|
|||
|
|
| showText | Boolean | true | 显示数值文本 |
|
|||
|
|
| height | String | '16rpx' | 进度条高度 |
|
|||
|
|
|
|||
|
|
**Collapse**
|
|||
|
|
|
|||
|
|
| Prop | Type | Default | Description |
|
|||
|
|
| -------- | ------- | ------- | ----------- |
|
|||
|
|
| title | String | '' | 折叠标题 |
|
|||
|
|
| expanded | Boolean | false | 是否展开 |
|
|||
|
|
|
|||
|
|
**FilterTabs**
|
|||
|
|
|
|||
|
|
| Prop | Type | Default | Description |
|
|||
|
|
| ---------- | ------ | ------- | ---------------------- |
|
|||
|
|
| tabs | Array | [] | 标签列表 [{id, label}] |
|
|||
|
|
| modelValue | String | '' | 当前选中 |
|
|||
|
|
|
|||
|
|
**Drawer**
|
|||
|
|
|
|||
|
|
| Prop | Type | Default | Description |
|
|||
|
|
| ------- | ------- | -------- | ----------- |
|
|||
|
|
| visible | Boolean | false | 是否显示 |
|
|||
|
|
| width | String | '600rpx' | 抽屉宽度 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 12. 测试场景配置
|
|||
|
|
|
|||
|
|
### 12.1 初始剧情
|
|||
|
|
|
|||
|
|
**「测试实验室」**
|
|||
|
|
|
|||
|
|
> 你在一个废弃的实验室中醒来,记忆模糊。桌上放着一根木棍和一本破旧的日记。
|
|||
|
|
> 门外传来野兽的嚎叫声......
|
|||
|
|
|
|||
|
|
### 12.2 区域地图
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
┌─────────────┐
|
|||
|
|
│ 测试营地 │ ← 起点/安全区
|
|||
|
|
│ (受伤冒险者) │
|
|||
|
|
└──────┬──────┘
|
|||
|
|
┌───────────────┼───────────────┐
|
|||
|
|
▼ ▼ ▼
|
|||
|
|
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
|
|||
|
|
│ 测试市场 │ │ 测试黑市 │ │ 测试野外1 │
|
|||
|
|
│ (商人老张) │ │ (神秘人) │ │ (野狗) │
|
|||
|
|
└─────────────┘ └─────────────┘ └──────┬──────┘
|
|||
|
|
▼
|
|||
|
|
┌─────────────┐
|
|||
|
|
│ 测试Boss巢 │ ← 需击败野狗x5解锁
|
|||
|
|
│ (测试Boss) │
|
|||
|
|
└──────┬──────┘
|
|||
|
|
▼ (需要钥匙)
|
|||
|
|
┌─────────────┐
|
|||
|
|
│ 地下室 │ ← 黑暗区域
|
|||
|
|
│ (黑暗) │
|
|||
|
|
└─────────────┘
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 区域配置表
|
|||
|
|
|
|||
|
|
| 区域ID | 名称 | 类型 | 环境 | 解锁条件 | 活动 |
|
|||
|
|
| ----------- | ---------- | ------- | ---- | ---------- | -------------- |
|
|||
|
|
| camp | 测试营地 | safe | 无 | 初始 | 休息、对话 |
|
|||
|
|
| market | 测试市场 | safe | 无 | 初始 | 交易 |
|
|||
|
|
| blackmarket | 测试黑市 | safe | 无 | 初始 | 特殊交易 |
|
|||
|
|
| wild1 | 测试野外1 | normal | 无 | 初始 | 探索、战斗 |
|
|||
|
|
| boss_lair | 测试Boss巢 | danger | 无 | 击杀野狗x5 | Boss战 |
|
|||
|
|
| basement | 地下室 | dungeon | dark | Boss钥匙 | 探索、阅读测试 |
|
|||
|
|
|
|||
|
|
### 12.3 测试敌人
|
|||
|
|
|
|||
|
|
| 敌人ID | 名称 | 位置 | HP | 攻击力 | 防御 | 速度 | 经验 | 掉落 |
|
|||
|
|
| --------- | -------- | --------- | --- | ------ | ---- | ---- | ---- | --------------------------------------- |
|
|||
|
|
| wild_dog | 野狗 | wild1 | 30 | 8 | 2 | 1.0 | 15 | 狗皮(80%), 狗牙(30%), 5-15铜 |
|
|||
|
|
| test_boss | 测试Boss | boss_lair | 200 | 25 | 10 | 0.8 | 150 | 地下室钥匙(100%), 技能书(50%), 50-100铜 |
|
|||
|
|
|
|||
|
|
### 12.4 测试物品
|
|||
|
|
|
|||
|
|
#### 武器
|
|||
|
|
|
|||
|
|
| 物品ID | 名称 | 类型 | 基础攻击 | 速度 | 解锁技能 | 说明 |
|
|||
|
|
| ------------ | ---- | ------ | -------- | ---- | ------------- | -------- |
|
|||
|
|
| wooden_stick | 木棍 | weapon | 5 | 1.0 | stick_mastery | 初始武器 |
|
|||
|
|
|
|||
|
|
#### 消耗品
|
|||
|
|
|
|||
|
|
| 物品ID | 名称 | 类型 | 效果 | 价值 | 说明 |
|
|||
|
|
| ------------ | ---- | ---------- | ---------- | ---- | -------- |
|
|||
|
|
| bread | 面包 | consumable | 恢复耐力20 | 10铜 | 基础食物 |
|
|||
|
|
| healing_herb | 草药 | consumable | 恢复HP15 | 15铜 | 基础药品 |
|
|||
|
|
|
|||
|
|
#### 书籍
|
|||
|
|
|
|||
|
|
| 物品ID | 名称 | 类型 | 阅读时间 | 经验 | 完成奖励 | 说明 |
|
|||
|
|
| -------- | -------- | ---- | -------- | ------- | -------- | -------- |
|
|||
|
|
| old_book | 破旧书籍 | book | 60秒 | 阅读+10 | 无 | 测试阅读 |
|
|||
|
|
|
|||
|
|
#### 素材/关键道具
|
|||
|
|
|
|||
|
|
| 物品ID | 名称 | 类型 | 价值 | 说明 |
|
|||
|
|
| ------------ | ---------- | -------- | ---- | -------------------- |
|
|||
|
|
| dog_skin | 狗皮 | material | 5铜 | 野狗掉落 |
|
|||
|
|
| dog_tooth | 狗牙 | material | 8铜 | 野狗掉落 |
|
|||
|
|
| basement_key | 地下室钥匙 | key | - | Boss掉落,解锁地下室 |
|
|||
|
|
|
|||
|
|
### 12.5 测试NPC
|
|||
|
|
|
|||
|
|
| NPC ID | 名称 | 位置 | 功能 | 对话 |
|
|||
|
|
| ------------------ | ------------ | ----------- | -------- | ------------------------ |
|
|||
|
|
| injured_adventurer | 受伤的冒险者 | camp | 初始剧情 | 介绍世界观,提示前往野外 |
|
|||
|
|
| merchant_zhang | 商人老张 | market | 交易 | 买卖物品,测试差价 |
|
|||
|
|
| mysterious_man | 神秘人 | blackmarket | 黑市交易 | 特殊物品,更高品质 |
|
|||
|
|
|
|||
|
|
### 12.6 测试事件
|
|||
|
|
|
|||
|
|
| 事件ID | 触发条件 | 类型 | 内容 |
|
|||
|
|
| ------------ | -------------- | ------- | -------------------------- |
|
|||
|
|
| intro | 新游戏 | story | 测试实验室开场剧情 |
|
|||
|
|
| first_combat | 首次进入wild1 | tips | 战斗教程提示 |
|
|||
|
|
| boss_unlock | 击杀野狗x5 | unlock | 解锁Boss巢提示 |
|
|||
|
|
| boss_defeat | 首次击败Boss | story | Boss剧情+获得钥匙 |
|
|||
|
|
| dark_warning | 进入basement | tips | 黑暗惩罚警告 |
|
|||
|
|
| dark_reading | 在basement阅读 | special | 阅读效率-50%,夜视被动获取 |
|
|||
|
|
|
|||
|
|
### 12.7 测试验证清单
|
|||
|
|
|
|||
|
|
| 测试项 | 区域 | 验证内容 | 预期结果 |
|
|||
|
|
| -------- | ---------- | ----------------- | ------------------ |
|
|||
|
|
| 交易 | 测试市场 | 买卖物品、差价 | 买入200%,卖出30% |
|
|||
|
|
| 黑市 | 测试黑市 | 特殊商品 | 更高品质装备可购买 |
|
|||
|
|
| 战斗 | 测试野外1 | AP/EP、姿态、经验 | 正常战斗流程 |
|
|||
|
|
| Boss战 | 测试Boss巢 | 高难战斗 | 击败后掉落钥匙 |
|
|||
|
|
| 环境惩罚 | 地下室 | 黑暗AP/EP-20% | 命中闪避降低 |
|
|||
|
|
| 黑暗阅读 | 地下室 | 阅读效率-50% | 阅读时间翻倍 |
|
|||
|
|
| NPC对话 | 测试营地 | EventDrawer弹出 | 对话正常显示 |
|
|||
|
|
| 物品使用 | 任意 | 装备/使用/出售 | 功能正常 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 13. 开发步骤文档
|
|||
|
|
|
|||
|
|
### Phase 1: 基础框架搭建
|
|||
|
|
|
|||
|
|
**目标**: 项目目录结构、依赖安装、全局样式
|
|||
|
|
|
|||
|
|
#### 任务清单
|
|||
|
|
|
|||
|
|
- [ ] 1.1 创建目录结构
|
|||
|
|
```
|
|||
|
|
components/common/
|
|||
|
|
components/layout/
|
|||
|
|
components/panels/
|
|||
|
|
components/drawers/
|
|||
|
|
store/
|
|||
|
|
config/
|
|||
|
|
utils/
|
|||
|
|
```
|
|||
|
|
- [ ] 1.2 安装 Pinia: `npm install pinia`
|
|||
|
|
- [ ] 1.3 修改 `main.js` 引入 Pinia
|
|||
|
|
- [ ] 1.4 修改 `uni.scss` 添加颜色变量
|
|||
|
|
- [ ] 1.5 修改 `App.vue` 添加全局样式
|
|||
|
|
|
|||
|
|
#### 验收标准
|
|||
|
|
|
|||
|
|
- 项目可正常运行
|
|||
|
|
- 全局样式生效(暗色背景)
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### Phase 2: 通用组件开发
|
|||
|
|
|
|||
|
|
**目标**: 完成所有基础UI组件
|
|||
|
|
|
|||
|
|
#### 任务清单
|
|||
|
|
|
|||
|
|
- [ ] 2.1 `ProgressBar.vue` - 进度条组件
|
|||
|
|
- [ ] 2.2 `StatItem.vue` - 属性显示行
|
|||
|
|
- [ ] 2.3 `TextButton.vue` - 文字按钮
|
|||
|
|
- [ ] 2.4 `Collapse.vue` - 折叠面板
|
|||
|
|
- [ ] 2.5 `FilterTabs.vue` - 筛选标签组
|
|||
|
|
- [ ] 2.6 `TabBar.vue` - 底部导航栏
|
|||
|
|
- [ ] 2.7 `Drawer.vue` - 右侧抽屉
|
|||
|
|
|
|||
|
|
#### 验收标准
|
|||
|
|
|
|||
|
|
- 每个组件可独立使用
|
|||
|
|
- 样式符合设计规范
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### Phase 3: 核心面板开发
|
|||
|
|
|
|||
|
|
**目标**: 完成三大主面板
|
|||
|
|
|
|||
|
|
#### 任务清单
|
|||
|
|
|
|||
|
|
- [ ] 3.1 `StatusPanel.vue` - 状态面板
|
|||
|
|
- 上区:HP/耐力/精神 + 主属性 + 货币 + Collapse更多
|
|||
|
|
- 下区:FilterTabs + 技能列表
|
|||
|
|
- [ ] 3.2 `MapPanel.vue` - 地图面板
|
|||
|
|
- 顶部状态区(位置/战斗状态)
|
|||
|
|
- 区域列表
|
|||
|
|
- 操作按钮 + 背包入口
|
|||
|
|
- [ ] 3.3 `LogPanel.vue` - 日志面板
|
|||
|
|
- scroll-view + 自动滚动
|
|||
|
|
- 分类样式(combat/system/reward/info)
|
|||
|
|
- [ ] 3.4 重构 `pages/index/index.vue` 为游戏容器
|
|||
|
|
- 顶部标题栏
|
|||
|
|
- v-show 面板切换
|
|||
|
|
- TabBar 集成
|
|||
|
|
|
|||
|
|
#### 验收标准
|
|||
|
|
|
|||
|
|
- 三个Tab可正常切换
|
|||
|
|
- 面板布局符合设计稿
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### Phase 4: 抽屉组件开发
|
|||
|
|
|
|||
|
|
**目标**: 完成侧边抽屉
|
|||
|
|
|
|||
|
|
#### 任务清单
|
|||
|
|
|
|||
|
|
- [ ] 4.1 `InventoryDrawer.vue` - 背包抽屉
|
|||
|
|
- FilterTabs 分类
|
|||
|
|
- 物品列表
|
|||
|
|
- 物品详情/操作
|
|||
|
|
- [ ] 4.2 `EventDrawer.vue` - 事件对话抽屉
|
|||
|
|
- NPC信息区
|
|||
|
|
- 对话文本区
|
|||
|
|
- 选项按钮
|
|||
|
|
|
|||
|
|
#### 验收标准
|
|||
|
|
|
|||
|
|
- 地图面板「背包」按钮可打开抽屉
|
|||
|
|
- 抽屉动画流畅
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### Phase 5: 数据层实现
|
|||
|
|
|
|||
|
|
**目标**: Pinia Store + 游戏配置
|
|||
|
|
|
|||
|
|
#### 任务清单
|
|||
|
|
|
|||
|
|
- [ ] 5.1 `store/player.js` - 玩家状态
|
|||
|
|
- baseStats, finalStats, level
|
|||
|
|
- skills, inventory, equipment
|
|||
|
|
- currency, currentLocation
|
|||
|
|
- [ ] 5.2 `store/game.js` - 游戏状态
|
|||
|
|
- currentTab, drawerState
|
|||
|
|
- logs[], gameTime
|
|||
|
|
- inCombat, combatState, activeTasks
|
|||
|
|
- [ ] 5.3 `config/constants.js` - 数值常量
|
|||
|
|
- [ ] 5.4 `config/skills.js` - 技能配置
|
|||
|
|
- [ ] 5.5 `config/items.js` - 物品配置
|
|||
|
|
- [ ] 5.6 `config/locations.js` - 区域配置
|
|||
|
|
- [ ] 5.7 `config/enemies.js` - 敌人配置
|
|||
|
|
- [ ] 5.8 `config/npcs.js` - NPC配置
|
|||
|
|
- [ ] 5.9 `config/events.js` - 事件配置
|
|||
|
|
|
|||
|
|
#### 验收标准
|
|||
|
|
|
|||
|
|
- Store可正常读写
|
|||
|
|
- 配置文件结构完整
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### Phase 6: 核心系统实现
|
|||
|
|
|
|||
|
|
**目标**: 实现核心玩法逻辑
|
|||
|
|
|
|||
|
|
#### 任务清单
|
|||
|
|
|
|||
|
|
- [ ] 6.1 `utils/skillSystem.js` - 技能系统
|
|||
|
|
- 经验添加、升级判定
|
|||
|
|
- 里程碑检测、父技能同步
|
|||
|
|
- [ ] 6.2 `utils/combatSystem.js` - 战斗系统
|
|||
|
|
- AP/EP命中计算
|
|||
|
|
- 三层防御(闪避/护盾/防御)
|
|||
|
|
- 战斗tick、日志输出
|
|||
|
|
- [ ] 6.3 `utils/itemSystem.js` - 物品系统
|
|||
|
|
- 使用、装备、卸下
|
|||
|
|
- 品质属性计算
|
|||
|
|
- [ ] 6.4 `utils/taskSystem.js` - 任务系统
|
|||
|
|
- 挂机任务管理
|
|||
|
|
- 互斥检测
|
|||
|
|
- [ ] 6.5 `utils/eventSystem.js` - 事件系统
|
|||
|
|
- 事件触发检测
|
|||
|
|
- 对话管理
|
|||
|
|
- [ ] 6.6 `utils/environmentSystem.js` - 环境系统
|
|||
|
|
- 环境惩罚计算
|
|||
|
|
- 被动技能获取
|
|||
|
|
|
|||
|
|
#### 验收标准
|
|||
|
|
|
|||
|
|
- 战斗流程完整
|
|||
|
|
- 技能可升级
|
|||
|
|
- 物品可使用/装备
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### Phase 7: 游戏循环实现
|
|||
|
|
|
|||
|
|
**目标**: 主循环、持久化、离线收益
|
|||
|
|
|
|||
|
|
#### 任务清单
|
|||
|
|
|
|||
|
|
- [ ] 7.1 `utils/gameLoop.js` - 游戏主循环
|
|||
|
|
- 每秒tick
|
|||
|
|
- 时间推进、战斗处理
|
|||
|
|
- 任务经验、耐力恢复
|
|||
|
|
- [ ] 7.2 `utils/storage.js` - 存储系统
|
|||
|
|
- saveGame(), loadGame(), resetGame()
|
|||
|
|
- logs[]不持久化
|
|||
|
|
- [ ] 7.3 修改 `App.vue`
|
|||
|
|
- onLaunch: 加载存档 + 启动循环
|
|||
|
|
- onHide: 自动保存
|
|||
|
|
|
|||
|
|
#### 验收标准
|
|||
|
|
|
|||
|
|
- 游戏时间正常流逝
|
|||
|
|
- 关闭后重开数据保留
|
|||
|
|
- 战斗可自动进行
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### Phase 8: 集成测试
|
|||
|
|
|
|||
|
|
**目标**: 按测试清单验证所有功能
|
|||
|
|
|
|||
|
|
#### 任务清单
|
|||
|
|
|
|||
|
|
- [ ] 8.1 新游戏流程测试
|
|||
|
|
- [ ] 8.2 交易系统测试(市场/黑市)
|
|||
|
|
- [ ] 8.3 战斗系统测试(野狗/Boss)
|
|||
|
|
- [ ] 8.4 环境系统测试(黑暗惩罚)
|
|||
|
|
- [ ] 8.5 阅读系统测试(正常/黑暗)
|
|||
|
|
- [ ] 8.6 NPC对话测试
|
|||
|
|
- [ ] 8.7 物品系统测试(使用/装备/出售)
|
|||
|
|
- [ ] 8.8 技能系统测试(升级/里程碑)
|
|||
|
|
- [ ] 8.9 存档系统测试
|
|||
|
|
|
|||
|
|
#### 验收标准
|
|||
|
|
|
|||
|
|
- 所有测试项通过
|
|||
|
|
- 无严重BUG
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### 开发时间估算
|
|||
|
|
|
|||
|
|
| Phase | 预估时间 | 说明 |
|
|||
|
|
| -------------- | ------------- | ---------------- |
|
|||
|
|
| Phase 1 | 0.5天 | 基础配置 |
|
|||
|
|
| Phase 2 | 1天 | 7个组件 |
|
|||
|
|
| Phase 3 | 1.5天 | 3个面板 + 主页面 |
|
|||
|
|
| Phase 4 | 1天 | 2个抽屉 |
|
|||
|
|
| Phase 5 | 1天 | Store + 配置 |
|
|||
|
|
| Phase 6 | 2天 | 核心系统 |
|
|||
|
|
| Phase 7 | 1天 | 循环 + 存储 |
|
|||
|
|
| Phase 8 | 1天 | 测试修复 |
|
|||
|
|
| **总计** | **9天** | - |
|