docs(design): 重构游戏设计文档,完善核心玩法和英雄体系

- 重写并精简设计文档内容,去除重复和过时信息
- 明确游戏为单局制肉鸽塔防,强调自动战斗与策略奖励选择
- 细化金币经济、特殊事件、评分与成就系统设计
- 详细描述关卡结构、难度递增与游戏进程设计
- 完善英雄分类与成长体系,新增春秋战国及楚汉争霸英雄介绍
- 明确装备与技能系统分级与升级机制
- 设计多样化策略构筑与资源管理方案
- 提供界面和交互设计指导,简化操作并增强反馈
- 删除旧有天赋强化系统相关文档,统一调整为新设计方向
- 更新英雄配置信息,更换主将与刺客为刘邦与荆轲角色
This commit is contained in:
2025-10-24 16:20:02 +08:00
parent 24e6ffc110
commit c03a655f15
5 changed files with 552 additions and 616 deletions

View File

@@ -1,457 +1,101 @@
RED1: "57262A",
RED2: "A92E43",
BLUE1: "3D568D",
BLUE2: "3D75B3",
YELLOW: "DD9304" ,
YELLOW2: "EBB62D" ,
GREEN1: "1F5949",
GREEN2: "00A373",
PURPLE1: "7251A6",
PURPLE2: "906CCE",
# 游戏设计文档
## 游戏核心概念
本游戏是一款单局制肉鸽Roguelike塔防游戏玩家通过策略性地选择每波怪物清理后的奖励来强化自己的英雄队伍最终挑战强大的Boss。
## 核心玩法机制
### 1. 自动战斗系统
- 所有攻击和战斗均为自动进行,玩家无需手动操作
- 玩家只需在每波怪物清理后选择奖励选项
- 英雄会根据配置自动释放技能攻击敌人
### 2. 奖励选择系统
- 每波怪物清理后提供三种奖励选项:弱、一般、强
- 不同奖励选项消耗不同的金币数量
- 奖励类型包括:英雄强化、技能升级、装备获取、属性提升等
- 奖励评分系统,评分越高,消耗的金币越多
### 3. 金币经济系统
- 金币通过击败怪物固定掉落获得
- 总体金币数量是固定的,需要玩家合理分配
- 金币用于购买奖励选项,策略性消费是游戏核心
### 4. 特殊事件系统
- 特定关卡设置事件管卡
- 事件管卡提供特殊奖励:
- 额外金币奖励
- 额外属性加成
- 额外技能奖励
- 稀有装备获取
### 5. 评分与成就系统
- 建立评分机制评价玩家每波奖励选择
- 高评分可解锁特殊成就和奖励
## 游戏进程设计
### 关卡结构
1. **普通关卡**:基础怪物波次,提供常规奖励选择
2. **精英关卡**:更强的精英怪物,提供高级奖励
3. **Boss关卡**强大的Boss敌人胜利后获得丰厚奖励
4. **事件关卡**:特殊事件触发,提供独特奖励或挑战
### 难度递增机制
- 随着关卡推进,怪物强度逐步提升
- 后期关卡出现组合怪物群,需要策略应对
- 特殊机制随进度解锁,增加游戏深度
## 英雄系统设计
### 英雄类型
- **战士型**:高生命值,近战输出
- **远程型**:远程攻击,较高攻击力
- **法师职业**:魔法攻击,范围伤害
- **辅助类型**:支援型技能,团队增益
- **刺客类型**:高爆发,机动性强
### 英雄成长
- 通过消耗金币升级提升基础属性
- 解锁和升级技能获得更强战斗力
- 装备系统提供额外属性加成
## 装备与技能系统
### 装备系统
- 装备分为武器、防具、饰品等类型
- 品质分为绿色、蓝色、紫色、橙色四个等级
- 装备可升级,提升属性效果
- 稀有装备提供特殊被动技能
### 技能系统
- 每个英雄拥有多个技能
- 技能分为主动技能和被动技能
- 技能可升级提升效果
- 特殊技能组合产生协同效应
## 策略深度设计
### Build构筑
- 玩家通过不同奖励选择形成独特的英雄Build
- 鼓励尝试不同的流派和策略组合
- 多样化的成长路径提供重玩价值
### 资源管理
- 固定金币总量要求玩家合理分配资源
- 不同奖励选项的价值评估增加策略性
- 短期收益与长期发展之间的权衡
## 界面与交互设计
### 核心界面
1. **战斗界面**:显示英雄、怪物、战斗过程
2. **奖励选择界面**:三选一奖励展示与选择
3. **英雄信息界面**:查看英雄属性、技能、装备
4. **关卡进度界面**:显示当前关卡进度和目标
### 交互逻辑
- 简化操作,主要通过点击进行选择
- 清晰的视觉反馈显示战斗结果
- 直观的奖励预览帮助玩家决策
# 游戏总设计
## 游戏模式(已确定)
玩家角色固定在左边位置,不可移动,怪物从右边进入,玩家主英雄死亡后,游戏失败,干掉 4个boss后胜利(胜利条件还在设计中),boss随机,怪物随机,通过达成一定条件完成事件,获得特定分值,不管输赢,计算最终分值 并排名
### 玩家角色: 主英雄 + 副英雄
### 装备栏: 武器,盾牌,饰品
### 武器:剑,刀,斧,锤
### 盾牌:盾
### 饰品:饰品
### 武器获取和升级方式:
怪物掉落装备石,达到一定要求数量后可以 选择或升级装备
lv1:10个
lv2:20个
lv3:40个
...以此类推,
每达到一次要求 可以选择获取当前还未获取的装备,或升级现有装备,武器,盾牌,饰品,共用一个装备石要求池(如lv1 选择了1级武器,lv2 可以选择升级武器到lv2,或者获取lv1的盾牌和饰品)
## 关卡系统
每波遇到的怪物随机出现,组合随机,随着波数 怪物等级提升
## 英雄等级成长系统设计文档
### 基础类型 (HType) (英雄职业 暂时 无特殊区别)
- **战士 (warrior = 0)**:
- **远程 (remote = 1)**:
- **法师 (mage = 2)**:
## 经验值系统
### 升级经验计算
- **基础经验值**: 100
- **递增规律**: 每级递增10且递增值本身也会递增
- **公式**: 基础经验值 + 递增值累加
### 升级经验示例
- 1级→2级: 100经验
- 2级→3级: 110经验
- 3级→4级: 120经验
- 4级→5级: 130经验
## 属性增长机制
### 攻击力增长
| 英雄类型 | 增长公式 | 说明 |
|---------|---------|------|
| 战士 | `Math.floor(baseAp * 0.05) + 3` | 固定增长为主 |
| 远程 | `Math.floor(baseAp * 0.10) + 2` | 平衡增长 |
| 法师 | `Math.floor(baseAp * 0.15) + 1` | 百分比增长为主 |
### 生命值增长
| 英雄类型 | 增长公式 | 说明 |
|---------|---------|------|
| 战士 | `Math.floor(baseHp * 0.08) + 10` | 高增长 |
| 远程 | `Math.floor(baseHp * 0.05) + 5` | 中等增长 |
| 法师 | `Math.floor(baseHp * 0.03) + 3` | 低增长 |
## 怪物配置
### 基础属性
- **普通怪物**: HP 25, AP 8, 经验值 15
- **远程怪物**: HP 20, AP 12, 经验值 25
- **法师怪物**: HP 18, AP 15, 经验值 35
### 配置原则
- 怪物HP ≤ 英雄AP × 3 (确保3次攻击击杀)
- 怪物AP = 英雄AP × (0.8-1.5倍)
- 经验值与怪物威胁度成正比
## 怪物波次系统设计
### 游戏模式设定
- **我方阵容**: 2个英雄1主将+1伙伴
- **战斗方式**: 怪物从右侧单线路向我方攻击
- **失败条件**: 主英雄死亡
- **装备系统**: 武器、盾牌、饰品各1件
### 每波怪物数量设计
#### 第1-5波新手期
```typescript
// 单一怪物类型,便于熟悉机制
波次1: 3只普通怪物 (总HP: 75, 总AP: 24)
波次2: 4只普通怪物 (总HP: 100, 总AP: 32)
波次3: 2只普通 + 1只远程 (总HP: 70, 总AP: 28)
波次4: 5只普通怪物 (总HP: 125, 总AP: 40)
波次5: 3只普通 + 1只远程 (总HP: 95, 总AP: 36)
```
#### 第6-10波成长期
```typescript
// 引入法师怪物,增加战术深度
波次6: 2只普通 + 2只远程 (总HP: 90, 总AP: 40)
波次7: 4只普通 + 1只法师 (总HP: 118, 总AP: 47)
波次8: 1只普通 + 3只远程 (总HP: 85, 总AP: 44)
波次9: 3只普通 + 1只远程 + 1只法师 (总HP: 113, 总AP: 51)
波次10: 2只普通 + 2只远程 + 1只法师 (总HP: 108, 总AP: 56)
```
#### 第11-15波挑战期
```typescript
// 混合搭配,考验装备和技能运用
波次11: 6只普通怪物 (总HP: 150, 总AP: 48)
波次12: 2只普通 + 3只远程 (总HP: 110, 总AP: 52)
波次13: 5只普通 + 2只法师 (总HP: 161, 总AP: 70)
波次14: 3只普通 + 2只远程 + 2只法师 (总HP: 151, 总AP: 74)
波次15: 1只普通 + 4只远程 + 2只法师 (总HP: 141, 总AP: 78)
```
#### 第16波+ (无限模式)
```typescript
// 每5波一个难度递增周期
基础公式:
- 普通怪物数 = 3 + floor(波次/5)
- 远程怪物数 = 1 + floor(波次/8)
- 法师怪物数 = 0 + floor(波次/10)
- 最大单波总数限制: 12只
```
### 怪物等级提升机制
#### 每10波等级提升
```typescript
怪物等级 = 1 + floor(波次/10)
// 怪物属性随等级增长
getMonsterStats(baseStats, level) {
return {
hp: Math.floor(baseStats.hp * (1 + (level-1) * 0.3)),
ap: Math.floor(baseStats.ap * (1 + (level-1) * 0.25)),
exp: Math.floor(baseStats.exp * (1 + (level-1) * 0.4))
}
}
```
#### 等级对应的怪物强度示例
| 等级 | 普通怪物 | 远程怪物 | 法师怪物 |
|------|----------|----------|----------|
| 1级 | HP:25, AP:8 | HP:20, AP:12 | HP:18, AP:15 |
| 2级 | HP:33, AP:10 | HP:26, AP:15 | HP:23, AP:19 |
| 3级 | HP:41, AP:12 | HP:32, AP:18 | HP:29, AP:23 |
| 4级 | HP:49, AP:14 | HP:38, AP:21 | HP:35, AP:27 |
| 5级 | HP:57, AP:16 | HP:44, AP:24 | HP:41, AP:31 |
## 装备石系统设计
### 装备石获取机制
```typescript
// 每只怪物掉落装备石数量
getEquipStoneDrops(monsterType, level) {
const baseDrops = {
[HType.warrior]: 2, // 普通怪物
[HType.remote]: 3, // 远程怪物
[HType.mage]: 4 // 法师怪物
};
return Math.floor(baseDrops[monsterType] * (1 + (level-1) * 0.2));
}
```
### 装备获取/升级成本
```typescript
// 装备石需求量
getEquipUpgradeCost(equipLevel, quality) {
const baseCosts = {
[Quality.GREEN]: 50,
[Quality.BLUE]: 80,
[Quality.PURPLE]: 120
};
// 每次升级成本翻倍
return baseCosts[quality] * Math.pow(2, equipLevel - 1);
}
```
### 装备石需求示例
| 装备等级 | 绿色品质 | 蓝色品质 | 紫色品质 |
|----------|----------|----------|----------|
| 1级→2级 | 50石 | 80石 | 120石 |
| 2级→3级 | 100石 | 160石 | 240石 |
| 3级→4级 | 200石 | 320石 | 480石 |
| 4级→5级 | 400石 | 640石 | 960石 |
### 装备掉落策略
```typescript
// 每5波可能掉落新装备类型
每波次奖励:
- 波次5: 解锁绿色武器选择
- 波次10: 解锁绿色盾牌选择
- 波次15: 解锁绿色饰品选择
- 波次20: 解锁蓝色装备选择
- 波次30: 解锁紫色装备选择
```
## 平衡性分析
### 装备影响下的战力增长
```typescript
// 玩家战力发展曲线
初期无装备: AP 20, HP 100
5波后(绿武器1): AP 30, HP 100
10波后(+绿盾1): AP 30, HP 140
15波后(+绿饰品1): AP 36, HP 160
20波后(蓝装备2): AP 50, HP 200
30波后(紫装备3): AP 80, HP 300
```
### 难度递增合理性验证
- **初期(1-5波)**: 怪物总威胁度略低于玩家,学习期
- **成长期(6-15波)**: 怪物威胁度与玩家装备提升同步
- **挑战期(16波+)**: 需要技能配合和装备优化才能通过
## 核心函数
### 经验值相关
- `getUpExp(currentLevel)`: 获取升级所需经验
- `getTotalUpExp(currentLevel, targetLevel)`: 获取总经验需求
### 属性增长相关
- `getUpAp(heroId)`: 获取攻击力增长
- `getUpHp(heroId)`: 获取生命值增长
- `getHeroTotalAp(heroId, level)`: 获取总攻击力
- `getHeroTotalHp(heroId, level)`: 获取总生命值
- `getLevelUpStats(heroId, currentLevel, targetLevel)`: 获取完整属性信息
### 怪物波次相关
- `getWaveMonsters(waveNumber)`: 获取指定波次的怪物配置
- `getMonsterLevel(waveNumber)`: 获取怪物等级
- `getEquipStoneDrops(monsterType, level)`: 计算装备石掉落
- `getEquipUpgradeCost(equipLevel, quality)`: 计算装备升级成本
## 当前设计中的肉鸽元素 ✅
### 已有的肉鸽特征:
1. **随机性**
- 怪物随机出现,组合随机
- Boss随机
- 装备获取随机选择
2. **永久死亡**
- 主英雄死亡后游戏失败
3. **进度系统**
- 装备石积累系统
- 装备升级路径
4. **分数排名**
- 计算最终分值并排名
## 需要强化的肉鸽元素 🔧
### 1. **随机事件系统**
```typescript
// 建议添加的随机事件
const RandomEvents = {
// 战斗事件
BOSS_APPEAR: "随机Boss出现",
ELITE_SPAWN: "精英怪物出现",
WAVE_SKIP: "跳过一波获得奖励",
// 奖励事件
EQUIPMENT_CHEST: "装备宝箱",
SKILL_UPGRADE: "技能升级",
STAT_BOOST: "属性提升",
// 挑战事件
DOUBLE_WAVE: "双倍怪物波次",
TIME_LIMIT: "限时挑战",
RESTRICTED_EQUIP: "装备限制挑战"
}
```
### 2. **Build系统构建路径**
```typescript
// 建议添加的Build要素
const BuildElements = {
// 技能组合
SKILL_SYNERGIES: {
BURN_BUILD: "燃烧流",
CRIT_BUILD: "暴击流",
TANK_BUILD: "坦克流"
},
// 装备组合
EQUIPMENT_SETS: {
WARRIOR_SET: "战士套装",
MAGE_SET: "法师套装",
HYBRID_SET: "混合套装"
},
// 随机天赋
RANDOM_TALENTS: [
"双倍暴击伤害",
"攻击速度提升",
"生命偷取",
"技能冷却减少"
]
}
```
### 3. **关卡多样性**
```typescript
// 建议添加的关卡类型
const LevelTypes = {
NORMAL_WAVE: "普通波次",
BOSS_WAVE: "Boss战",
ELITE_WAVE: "精英怪波次",
EVENT_WAVE: "特殊事件波次",
REST_WAVE: "休息/商店波次"
}
```
### 4. **Meta进度系统**
```typescript
// 建议添加的Meta进度
const MetaProgression = {
// 永久解锁
UNLOCK_HEROES: "解锁新英雄",
UNLOCK_EQUIPMENT: "解锁新装备类型",
UNLOCK_SKILLS: "解锁新技能",
// 起始加成
STARTING_BONUS: "起始装备/属性加成",
REROLL_CHANCES: "重新选择次数",
// 难度调节
DIFFICULTY_MODIFIERS: "难度调节器"
}
```
## 建议的肉鸽塔防改进方案 📋
### 1. **随机地图系统**
```typescript
// 每局游戏随机生成不同的地图布局
const MapVariations = {
LANE_COUNT: [1, 2, 3], // 随机1-3条路径
OBSTACLES: ["障碍物", "减速区", "伤害区"],
SPECIAL_TILES: ["商店", "休息点", "挑战点"]
}
```
### 2. **动态难度调整**
```typescript
// 根据玩家表现动态调整难度
const DynamicDifficulty = {
// 玩家表现评估
ASSESS_PLAYER_STRENGTH: (equipment, level, performance) => {
return difficultyMultiplier;
},
// 动态怪物调整
ADJUST_MONSTER_STATS: (baseStats, difficulty) => {
return adjustedStats;
}
}
```
### 3. **分支选择系统**
```typescript
// 每波结束后提供选择
const WaveChoices = {
// 路径选择
PATH_A: "高风险高回报路径",
PATH_B: "稳定发展路径",
PATH_C: "特殊事件路径",
// 奖励选择
REWARD_CHOICES: [
"装备石 x10",
"技能升级机会",
"属性永久提升",
"跳过下一波"
]
}
```
## 总结建议
当前设计已经具备了肉鸽的基础框架,建议重点强化以下方面:
1. **增加随机事件系统** - 让每局游戏都有不同的体验
2. **完善Build系统** - 提供多样化的构建路径
3. **添加Meta进度** - 让玩家有长期目标
4. **强化选择机制** - 增加策略深度
5. **优化随机性** - 平衡随机性和策略性
这样就能将现有的塔防游戏真正转化为具有深度和重玩价值的肉鸽塔防游戏。
​​「主线固定波次 + 限时远征」双模式​
mermaid图片代码merm复制graph TD
A[新局开始] --> B{主线模式固定30波}
B --> C[击败4个Boss通关]
C --> D[结算基础分+事件分]
C --> E{限时远征模式}
E -->|30秒倒计时| F[无限波次冲刺]
F --> G[每多1波+200分]
G --> H[死亡/超时结算远征分]30秒倒计时
新局开始主线模式固定30波击败4个Boss通关结算基础分+事件分限时远征模式无限波次冲刺每多1波+200分死亡/超时结算远征分
​设计精髓​
​主线固定波次(核心体验)​​
节奏30波5-8分钟含4个Boss
胜利条件击败最终Boss
​核心价值​:
每10波设里程碑事件
事件选择影响Boss特性选A事件→Boss弱火
终点明确激发冲刺动力
​限时远征(延伸体验)​​
触发条件主线通关后自动进入30秒倒计时挑战
​规则​:
继承主线最终Build继续战斗
30秒内击杀怪物可延长倒计时+3秒/怪)
每秒自动累计远征分
​价值​:
神装Build的高光时刻吸血刀1v100
时间压力下极限微操​(冲排名核心区)
自然终结防沉迷(倒计时归零强制结算)
玩家类型主线固定波次限时远征小白专注生存10波解锁第一个里程碑获正反馈可跳过避免因操作弱被扣分进阶20波后策略配装针对Boss弱点用主线Build挑战个人最佳不求排名硬核速通主线冲时间分省资源憋终局神装30秒极限操作刷远征分争夺全球排名
​分数系统精算设计​
​总分 = 主线分 × 远征倍率​
主线分满分1000
(通关波次×10)+(剩余血量×0.2)+∑(事件选择价值)(耗时秒数×0.5)
远征倍率1.0-3.0
倍率=1.0+0.02×远征波次
主线900分 + 远征50波 → 总分 = 900×2.0=1800
→ 避免无限分膨胀,让休闲玩家主线分也能竞争
远征10波 送一张免广告券,最多1张,仅远征中使用
普通小怪冲锋或暂停的微小随机行为(不影响总路线时间和击杀策略)。避免视觉单调
### 装备改成