feat(gameplay): 提升单位检测范围并添加法师属性 - 将所有单位的检测范围从默认值提升至100 - 为法师预制体添加护盾、等级等新属性 - 为法师添加暴击、吸血、伤害减免等战斗属性 - 更换法师弹丸预设并调整相关参数 - 添加锚点交战Z线控制功能 - 更新玩家数据中配备的召唤师技能 - 移除多余的纹理配置文件 ```
296 lines
17 KiB
Markdown
296 lines
17 KiB
Markdown
# 召唤之战-核心玩法塔防版
|
||
|
||
> 版本: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 特效卡)
|
||
|
||
### 7.1 触发与节奏机制
|
||
- **触发时机**:**每清理 2 波敌人触发一次**(单局 2~4 分钟约 8~10 波,全局共触发 **4 ~ 5 次**)。
|
||
- **金币 D 牌机制**:
|
||
- 金币的唯一用途是**在 3 选 1 弹窗中刷新(重刷/D 牌)卡片批次**。
|
||
- 刷新费用递增(如单次弹窗内第 1 次 20 金币,第 2 次 40 金币……),鼓励适度 D 牌。
|
||
|
||
### 7.2 40% 全体折扣法则与生成公式
|
||
- **目标选择**:只有 **6 个明确目标选项** —— **【英雄1】、【英雄2】、【英雄3】、【英雄4】、【英雄5】、【全体英雄】**。
|
||
- **40% 全体折扣法则**:
|
||
- 作用于**指定单体英雄**:享受 **100% 完整数值加成**。
|
||
- 作用于**【全体英雄】**:自动乘以 **40%(0.4)折算**。
|
||
- **卡片生成公式**:
|
||
$$\text{单张卡片} = \text{随机属性 (1~6)} + \text{随机品质 (初/中/高)} + \text{随机目标 (英雄1~5 或 全体)}$$
|
||
|
||
### 7.3 精密数值表(基于单局 4~5 次叠加)
|
||
|
||
| 序号 | 属性词条 | 初级 (白色 55%) | 中级 (紫色 35%) | 高级 (金色 10%) | 选【全体】时的折算数值 (40%) | 全局 5 次满叠期望提升 |
|
||
|---|---|---|---|---|---|---|
|
||
| 1 | **攻击力** | **+6%** | **+12%** | **+20%** | 初 **+2.4%** / 中 **+4.8%** / 金 **+8.0%** | +45% ~ +60% |
|
||
| 2 | **最大生命值** | **+10%** | **+18%** | **+30%** | 初 **+4.0%** / 中 **+7.2%** / 金 **+12.0%** | +50% ~ +80% |
|
||
| 3 | **攻击速度** | **+5%** | **+10%** | **+16%** | 初 **+2.0%** / 中 **+4.0%** / 金 **+6.4%** | +30% ~ +45% |
|
||
| 4 | **暴击率** | **+6%** | **+12%** | **+20%** | 初 **+2.4%** / 中 **+4.8%** / 金 **+8.0%** | +35% ~ +55% |
|
||
| 5 | **通用吸血** | **+4%** | **+8%** | **+14%** | 初 **+1.6%** / 中 **+3.2%** / 金 **+5.6%** | +20% ~ +35% |
|
||
| 6 | **技能充能** | **+8%** | **+15%** | **+25%** | 初 **+3.2%** / 中 **+6.0%** / 金 **+10.0%** | +40% ~ +65% |
|
||
|
||
> 注:增益卡可以增加「技能充能速度」,但元成长升级不能增加,保持该杠杆只留给战斗内 build。另外,单局金币刷新还包含【招财进宝 (+30金币)】与【紧急救急 (回复指定英雄30%血量)】两个特殊功能词条。
|
||
|
||
## 八、玩家技能系统(战斗主操作)
|
||
|
||
- **获取**:只能通过**抽卡 / 签到**获得(不通过升级解锁);
|
||
- **积攒**:**普攻命中积攒**(近战 / 远程都算)——这样「攻速增益」会间接加速技能,形成 build 联动;具体每次命中积攒量待调;
|
||
- **释放**:手动按钮,有 CD 或消耗满槽能量;
|
||
- **单局携带规则**:每局允许玩家选择携带 **2 ~ 3 个召唤师技能**;
|
||
- 冰冻 / 眩晕复用现有 `StatusEffectController`。
|
||
|
||
### 8.1 召唤师技能库(8 个详细方案)
|
||
|
||
| 序号 | 技能名称 | 技能定位 | 视觉表现 | 核心效果与数值机制 | 释放类型 | 建议 CD |
|
||
|---|---|---|---|---|---|---|
|
||
| 1 | **神圣赞歌** | 群体治疗/救急 | 全场己方升起金色光环与治愈粒子 | 瞬间恢复全场活着的己方英雄 **25% 最大生命值 + 100 点血量**,并在后续 4 秒内每秒持续回复 2% 最大生命值。 | 全屏瞬发 | 25s |
|
||
| 2 | **天雷狂轰** | 全屏伤害/清杂兵 | 天空降下多道蓝色落雷击中全屏敌人 | 对全场所有敌方单位造成 **120 点魔法伤害**,并有 **30% 概率造成 1.5 秒眩晕**。 | 全屏瞬发 | 20s |
|
||
| 3 | **陨石轰炸** | 局部高伤/砸 Boss | 指定区域 1 秒后陨石砸下,产生烈焰与裂痕 | 对点击位置 **3.5 米圆环区域** 造成 **300 点物理伤害**,并将范围内敌人向外**击退 1.5 米**。 | 地面点选 | 22s |
|
||
| 4 | **绝对零度** | 强力控场/争取时间 | 战场出现寒霜,敌人身上覆盖冰晶 | **完全冻结全场敌人 3.5 秒**(无法移动/攻击,Animator 暂停),冰冻解除时造成 40 点微量冰霜伤害。 | 全屏瞬发 | 30s |
|
||
| 5 | **斩杀风暴** | 残血收割/战术秒杀 | 全屏刮起暗紫色风刃旋风 | 对全场敌人造成 **80 点基础伤害**;若敌人当前血量 **< 25%**,直接触发**斩杀**(血量清零)。 | 全屏瞬发 | 25s |
|
||
| 6 | **庇护圣盾** | 预判防守/抵御高伤 | 己方英雄身体生成透明蓝色六角护盾 | 为全场己方英雄附加持续 6 秒的护盾,吸收相当于英雄 **30% 最大生命值** 的伤害。 | 全屏瞬发 | 24s |
|
||
| 7 | **虚弱诅咒** | 减速易伤/爆发配合 | 敌人头顶出现紫色诅咒符文与紫雾 | 持续 6 秒内,全场敌人**移速降低 40%**,受到的所有伤害**增加 35%**。 | 全屏瞬发 | 20s |
|
||
| 8 | **岩石傀儡** | 临时肉盾/前排挡伤 | 在指定空地拔起 2 个石傀儡 | 在指定位置召唤 2 个 **500 HP 的石傀儡**(存在 8 秒)吸引仇恨,被击毁或超时爆裂造成 **80 点范围伤害**。 | 地面点选 | 28s |
|
||
|
||
## 九、元成长系统(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 建场景时确定)。
|