Files
daluandou/召唤之战-核心玩法塔防版.md
T
huadexuan f77fa20f82 ```
feat: 移除自适应性能相关配置并调整动画控制器

移除了Unity自适应性能(Adaptive Performance)的相关配置文件,
包括Adaptive Performance文件夹及其子目录中的所有配置文件,
同时移除了移动通知(NotificationSettings)相关配置,
以及第一章第一关(level_chapter1_level1)的关卡配置文件,
还删除了多个材质文件如AdjustableGlowOrb、AdjustableGlowOrbHalo
和Arena相关材质。另外微调了base-人类士兵.controller中状态机
的位置坐标,将x坐标从320调整为330。
```
2026-09-27 20:39:00 +08:00

263 lines
13 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 召唤之战-核心玩法塔防版
> 版本:V1.0(2026-09-24 定稿)
>
> 定位:竖版手机**单机**休闲策略小游戏
>
> 单局时长:2~4 分钟
>
> 核心目标:在波次进攻中守住己方半场,出战英雄不被**同时全灭**
>
> 取代关系:本方案取代《召唤之战 - 核心玩法拆家版.md》(该文档已标记作废,拆家版存档到分支,脚本保留作素材)
## 一、核心定位
一句话规则:**开局在己方半场网格部署固定英雄阵容 → 敌人从上方按波次进攻 → 英雄自动走位交战 → 玩家手动放全屏技能 + 选增益卡 → 撑过波次**。
- 英雄由 AI 自动走位和作战,玩家**不微操走位**;
- 玩家的全部操作只有两类:**手动释放全屏技能**、**从 3 选 1 中挑增益卡**;
- 与同类游戏的差异:
- 对比 PvZ:英雄**会走位**自动交战,不是站桩塔;有英雄死亡/复活与全灭判负;
- 对比皇室战争:**没有基地/推塔**,胜负只看英雄存活;没有实时 PVP 数据强一致。
## 二、单局战斗结构
```text
开局部署阶段(在「卡组编辑页」完成,不进战斗场景)
卡组编辑页选好出战英雄(默认 5 个,可配置)
→ 点「编排阵型」→ 进入「阵型编排页」(底部 5 张卡可拖到网格格位)
→ 不点「编排阵型」则跳过,使用默认阵型:近战在前排、远程 / 法师在后排
→ 进入战斗后**直接开打**,没有额外的「开始」按钮
防守阶段(循环)
敌人从上方按波次生成 → 英雄自动走位接敌 → 击杀计数累积
→ 每累计 N 个击杀 → 弹出 3 选 1 增益卡
→ 玩家在关键波次手动释放全屏技能
→ 英雄死亡 20 秒后复活;每局 2 次「看广告立即复活」
结束阶段
场上全部出战英雄同时全灭 → 濒死窗口(3~5 秒)→ 窗口结束仍全灭 → 本局失败
撑过本关全部波次 → 通关结算(碎片 / 金币 / 抽卡次数)
```
## 三、战场与部署
- 竖版 9:16;沿用现有正交俯视相机方案(正交、约 54°,orthoSize 16);
- 战场为纵向长方形,敌人在 Z 轴正方向(上方)生成,己方在 Z 轴负方向(下方);
- **部署区 = 战场下方约 1/3 的网格**(DefenseTest 场景已建:5 行 × 6 列 = 30 格位,行距 3 / 列距 2.8,覆盖 Z ∈ [-5.35, 9.35]、X ∈ [-8.25, 8.25],约占可见深度 37%);
- **默认摆放规则**:近战在前排(靠近敌人一侧)、远程 / 法师在后排;玩家可手动改;
- **部署流程**:卡组编辑页选卡 → 点「编排阵型」→ 阵型编排页拖拽 5 张卡到格位 → 进入战斗直接开打;
- 出战英雄数量默认 5,数据结构支持可变(关卡 / 玩法可指定上限);
- 网格占位检测 + 吸附复用 `BattleSetupManager` 的布阵实现。
## 四、英雄行为规则
### 4.1 会走位自动交战
英雄复用 `UnitBase` 的寻敌 / 攻击 / 寻路逻辑(NavMesh + 根运动),会主动走向敌人开打。
### 4.2 格位锚点 + 追击上限(leash)—— 必须补的规则
因为英雄会走位、且没有基地,若完全用 `UnitBase` 现有的「视野内最近敌人就追」,英雄会一路推向敌人生成点,阵型瓦解、被逐个点掉。规则:
- 每个英雄绑定**自己的初始格位作为锚点**;
- 英雄最多离开锚点 **6~8 米**(建议 7,待调);
- 超出上限 → 放弃追击、返回锚点待机;
- 复活后回到**自己的锚点格位**再重新接敌;
- 锚点机制做成 `UnitBase` 的**可选开关**(默认关闭),不影响旧场景。
### 4.3 目标锁定
沿用现有规则:无有效目标时才寻敌;锁定后保持;目标死亡 / 失活 / 离开攻击范围才解锁。英雄在本玩法中没有「使命建筑」,只做单位寻敌。
## 五、胜负判定
- **无基地 / 核心**,胜负只看英雄存活;
- **判负条件**:同一时刻场上**全部**出战英雄都处于死亡态;
- 4 死 1 活不算;英雄 20 秒后复活,因此判负通常发生在「一波把全部英雄同时打死」的瞬间;
- **濒死窗口**:全灭时不立即结束,进入 **3~5 秒(建议 4)** 窗口;
- 窗口内有英雄自然复活、或玩家使用「看广告立即复活」→ 继续本局;
- 窗口结束仍全灭 → 本局结束(失败);
- **看广告立即复活**:每局 **2 次**,可立即复活全部(或指定)英雄;Phase 1 先留接口,不接广告 SDK;
- **通关**:撑过本关全部波次即胜利。
## 六、波次系统
### 6.1 波次定义
- 每关由若干**波次**组成,波次用 ScriptableObject 描述(敌兵种类、数量、生成间隔、生成列);
- 复用封存的 `WaveSpawner` 作为基础;
- 波次之间可有短暂间歇(喘息 + 看增益卡)。
### 6.2 敌人构成方案
采用「**角色单位 + 小怪**」混合,但小怪不做多种模型——**1 个底模 + 大小 / 颜色 / 行为变体**:
- 底模直接复用现有**蓝色怪物**(量产低价单位,已计划减面);
- 只调三个参数:**体型档位、颜色 tint、攻击方式**;
- 精英波直接用现有 9 个角色;**Boss 复用现有大体型单位(如石巨人)加配件**,不新做模型。
| 变体 | 体型 | 颜色 | 行为 | 出现章节 / 用途 |
|---|---|---|---|---|
| 快速兵 | 小 (0.7x) | 绿 | 近战、移速快、血少 | 第 1 章起,前期杂兵 |
| 远程兵 | 中 (1.0x) | 蓝 | 远程投射 | 第 1 章起,逼英雄不能站桩 |
| 自爆兵 | 小 (0.8x) | 红 | 冲脸自爆 AOE | 第 2 章起,反扎堆 |
| 重甲兵 | 大 (1.3x) | 灰 | 高血、低速 | 第 2 章起,前排肉 |
| 辅助兵 | 中 (1.0x) | 黄 | 给周围加速 / 回血 | 第 3 章起 |
| 精英 | 大 (1.5x) | 紫 | 复用现有角色 | 各章精英波 |
| Boss | 特大 (2.0x) | 酒红 | 石巨人 + 配件 | 章节关底 |
> 章节差异靠**新行为**(飞行、治疗、护盾)而不是新模型,控制制作量。
>
> 注意:蓝色怪物网格局部缩放极小(约 0.02,被放大上百倍),做描边 / 变体时需同步调整描边材质与缩放,否则描边会巨大化。
## 七、战斗内增益(3 选 1 特效卡)
- **触发**:累计击杀达到阈值(建议每 20~30 个,待调)后弹出 3 选 1;
- **形式**:从卡池随机 3 张,玩家选 1,立即生效(可选持续到本局结束);
- **首版卡池(4 种)**:加攻击 / 回复血量 / 加攻速 / 加技能积攒速度;
- **后续扩展**:加射程、加暴击、召唤援军、短时无敌等;
- **注意**:增益卡**可以**加「技能积攒速度」,但**元成长升级不能加**——两者是两个独立数值字段,不要混用;
- 需要有**叠加上限 / 递减**,避免长局数值失控。
## 八、玩家技能系统(战斗主操作)
- **获取**:只能通过**抽卡 / 签到**获得(不通过升级解锁);
- **首版技能**:全屏伤害、治疗、冰冻(范围 / 持续);
- **积攒**:**普攻命中积攒**(近战 / 远程都算)——这样「攻速增益」会间接加速技能,形成 build 联动;具体每次命中积攒量待调;
- **释放**:手动按钮,有 CD 或消耗满槽能量;
- 冰冻 / 眩晕复用现有 `StatusEffectController`。
## 九、元成长系统(Phase 2 起,Phase 1 不做)
### 9.1 卡牌与稀有度
**稀有度 = 机制复杂度,不是数值强度**:
| 边框 | 稀有度 | 定位 | 升级难度 |
|---|---|---|---|
| 蓝 | 普通 | 纯数值 | 低 |
| 紫 | 稀有 | 多一个技能效果 | 中 |
| 橙 | 史诗 | 改变技能形态 | 高 |
| 酒红 | 传奇 | 改变玩法规则 | 最高 |
- 边框顺序:**蓝 < 紫 < 橙 < 酒红**(酒红 = 传奇);
- 稀有度只让卡「更好玩一点、更强一点」,主要靠**更难升级**来平衡。
### 9.2 碎片 / 解锁 / 升级
- **解锁**:需要 5 张碎片;
- **升级**:每级所需碎片递增,稀有度越高基数越大(具体曲线待定);
- **升级增加**:生命、普攻伤害、技能伤害、解锁新的技能效果;
- **升级不增加**:普攻积攒技能速度(这条杠杆只留给战斗内增益卡)。
### 9.3 抽卡
- **抽卡次数**:通关获得 1 次,**看广告翻倍**;
- **全屏技能只能抽卡 / 签到获取**;
- **传奇卡(酒红)**:主线**高难度复刷**才有概率掉落,或通过抽卡;
- 建议教学关直接送 1~2 个技能,保证玩家早期能体验技能系统。
### 9.4 难度滑条
- 每关可调**难度倍数**(建议 1.0x~3.0x);
- **主线推进用固定基线难度(卡点在这里)**;
- **刷碎片 / 金币可自由调难度,难度越高收益倍率越高**(传奇碎片只在高倍率掉);
- 两条线分开,避免「调低难度就绕过卡点」。
### 9.5 关卡章节
- 主线按章节推进,每章适当提升难度并解锁不同卡牌;
- 每章引入新机制(新敌兵行为),不只是数值放大;
- **大关**是卡点(获取 / 结算碎片的关键关),用于推动玩家升级、看广告。
### 9.6 无尽模式
- 按波次给**金币**(升级卡组的消耗来源);
- 波次无限递增,可调难度以适配高等级玩家;
- 定位:**金币来源**;主线复刷 → 碎片来源。
### 9.7 名义 PVP(异步竞技场)
- 名义 PVP:不做数据强一致,不做邀请对战;
- 可获取「同等级玩家的阵容和摆放位置」(无后端时先用预设 + 随机偏移模拟);
- **结果可以对玩家有利**(甚至两边都赢),但**本地必须有段位 / 奖励变化**,否则玩家没有动力;
- 参考形态:异步竞技场(剑与远征式)。
### 9.8 疲劳系统
- **确定要做**(2026-09-24 用户确认);
- 单机 + 无挂机奖励的前提下,硬锁疲劳易显得纯惩罚,因此**优先用「收益衰减」而不是「不能玩」**(超过疲劳阈值后金币 / 碎片收益打折);
- 作用范围建议先只覆盖**无尽模式**(金币农场),主线关卡是否计入待定;
- 具体阈值、衰减曲线、恢复速度待细化。
## 十、数值基准
- 英雄基础属性沿用《角色数值设计.md》的 1 级基准表与升级成长建议;
- 敌人强度按「章节基线 × 难度倍数」计算;
- 波次强度建议曲线(待调):第 1 章 3~5 波,敌人数量与质量线性上升,末尾一波含精英 / Boss。
## 十一、UI 布局
```text
┌──────────────────────────────┐
│ 顶部:波次进度 / 击杀计数 / 暂停 │
│ │
│ 战场(2.5D) │
│ 上方:敌人生成区 │
│ 下方:己方半场部署网格 │
│ │
├──────────────────────────────┤
│ 技能按钮(全屏技能,CD / 能量) │
└──────────────────────────────┘
```
- 阵型编排页:底部为 5 张可拖拽卡片,网格高亮显示可放置格位;进入战斗后直接开打(无「开始」按钮);
- 战斗阶段:底部为全屏技能按钮;3 选 1 增益卡为战斗内弹窗(覆盖式);
- 单位头顶血条沿用 `WorldHealthBar`,伤害数字沿用 `DamageNumber`。
## 十二、开发落地
### 12.1 可直接复用
| 系统 | 现有实现 |
|---|---|
| 单位行为(寻敌 / 攻击 / 寻路 / 根运动) | `UnitBase` |
| 卡牌与升级数据 | `CharacterData` / `PlayerCharacterData` / `PlayerDataManager` |
| 能量 / 资源 | `ManaSystem` |
| 投射物 | `Projectile` |
| 血条与伤害数字 | `WorldHealthBar` / `DamageNumber` |
| 控制效果(冰冻 / 眩晕) | `StatusEffectController` |
| 网格布阵(吸附 / 占位) | `BattleSetupManager` |
| 波次刷怪 | `WaveSpawner`(封存中) |
| 相机 | `CameraFollow` / 现有正交相机方案 |
| 固定卡组与轮转 | `BattleDeckCycle` / `CastleSpawnManager` |
### 12.2 需要新做
- 波次关卡数据(ScriptableObject:敌兵构成 / 间隔 / 生成列);
- 英雄格位锚点 + 追击上限(`UnitBase` 可选开关);
- 击杀计数 + 3 选 1 增益卡系统与卡池;
- 全屏技能按钮 + 普攻命中积攒能量;
- 胜负判定(全灭 + 濒死窗口 + 广告复活接口)。
### 12.3 封存 / 不再作为主线
- 拆家版:`AttackTargetController` 攻击标志、`CrystalMineCapture` 据点争夺、城堡拆家逻辑 —— 存档到分支,脚本保留作素材;
- `BuildingPlacementManager` / `Barracks` / `GoldMine` / `SummonerDuelManager` —— 封存素材。
### 12.4 分阶段
- **Phase 1(垂直切片,只做 1 个战斗场景)**:网格部署 5 英雄 + 3 波敌人 + 3 选 1 增益 + 全屏技能 + 胜负判定。**不碰**抽卡 / 碎片 / 升级 / 关卡 / 无尽 / PVP / 疲劳 / 广告 SDK。
- **Phase 2**:元成长(碎片 / 升级 / 抽卡)+ 第一章关卡。
- **Phase 3**:无尽 + 难度滑条。
- **Phase 4**:名义 PVP、疲劳、签到、广告。
## 十三、待确认项
- 技能积攒:确认「普攻命中积攒」(当前建议);
- 追击上限 leash 数值(当前建议 7 米);
- 增益卡叠加上限与递减规则;
- 疲劳系统的作用范围与衰减曲线(已确定要做,范围 / 数值待细化);
- 网格尺寸与相机取景(Phase 1 建场景时确定)。