Files
pixelheros/assets/script/game/common/config/几何王国技能复刻方案.md
pan 2d11246838 refactor: 移除战斗结束相关的FEnd触发逻辑
此次提交全面清理了所有与战斗结束(FEnd)相关的代码:
1. 移除了Hero、Monster等实体中的fend属性与运行时处理
2. 删除了SkillTriggerHelper中的FEnd触发分支
3. 移除了GameEvent中的FightEnd事件与相关监听
4. 清理了配置文件中的FEnd相关枚举、字段与装备
5. 重构了MissionComp的回合逻辑,不再触发战后技能
6. 更新了注释与文档,移除过时的FEnd相关说明

彻底移除了已不再使用的战斗结束触发机制,简化了代码架构。
2026-08-14 15:28:22 +08:00

14 KiB
Raw Blame History

几何王国技能复刻设计文档

目的:基于《几何王国》热门英雄技能,分析哪些可以零代码改动最小改动复刻到本系统1 回合定生死机制)。

前置约束(已确认的设计原则):

  • 局内固定 lv=1等级成长移交局外
  • 单场战斗 30 秒
  • card_lv 纯技能数量差异1~5 个技能槽)
  • 技能触发极简(t_num=1),高频高数值
  • 无相同能力英雄,无阵容限制

一、本系统可复用的"触发骨架"

触发类型 枚举 语义 几何王国对应场景
战斗开始 SkillTriggerType.FStart 入场时触发 1 次 战吼、入场护盾
战斗结束 SkillTriggerType.FEnd 战斗胜利后触发 30s 短局意义弱)
召唤入场 SkillTriggerType.Call 落地触发 1 次 登场技
死亡触发 SkillTriggerType.Dead 死亡时触发 1 次 亡语、遗志
攻击触发 SkillTriggerType.Atking 普攻 N 次触发 概率普攻特效t_num 模拟概率)
受击触发 SkillTriggerType.Atked 被击 N 次触发 受击反击、叠甲
驻场光环 SkillTriggerType.Field 存活期间全局生效 光环类(移速/攻击/回血)
复活 SkillTriggerType.Revive 死亡后复活 凤凰涅槃、尸骸存活

概率模拟技巧:本系统无"概率触发"概念,用 t_num 计数模拟。

  • t_num=1:每次普攻都触发(最高频)
  • t_num=3≈33% 概率
  • t_num=4≈25% 概率(对应几何王国的"30% 概率"

二、本系统可复用的"效果骨架"

2.1 SkillKind技能主效果

类型 字段 几何王国对应
SkillKind.Damage ap 百分比伤害 大招、战技伤害
SkillKind.Heal ap 治疗量 治疗、吸血
SkillKind.Shield ap 护盾层数(数值减免) 暗光之盾、守护壁垒
SkillKind.Support buff_type + timed_buff_id 属性强化、限时增益
SkillKind.Gold gold 金币数 (本局不适用)

2.2 击杀特效字段

字段 含义 几何王国对应
crt 额外暴击率 致命一击
frz 额外冰冻概率 寒冰攻击
stun 额外击晕概率 眩晕
bck 击退距离增量 击退(雷霆一击、剑刃风暴)
hit_count 命中目标数 多段攻击(乱棍、剑刃风暴)
puncture_chance 穿透概率 穿透(暗器大师)

2.3 BuffList 已有 DoT / HoT / 控制

Buff ID 名称 类型 几何王国对应
7002 灼烧 Debuff DoT-10 伤害/0.5s,吃 30% 攻击加成) 剧毒利刃、火系持续伤害
7003 冰冻 Control2s 冰冻
7004 击晕 Control2s 眩晕、沉默(替代)
7010 再生 Buff HoT+10 治疗/0.5s 持续回血
7011 攻击爆发 Buff+50% 攻击 5s 大圣归来、剑圣 1 觉
7012 暴击爆发 Buff+30% 暴击 5s 暴击强化
7017 击晕爆发 Buff+30% 击晕 5s 群体眩晕强化
7111 战前强攻 Buff+30 攻击 5s 开场增益

2.4 FieldSkillType 已有光环

类型 几何王国对应
HeroAtk 攻击光环(人鱼公主、邪恶光环)
HeroCrit / HeroCritDamage 暴击光环
HeroSpeed 攻速光环
HeroHp 生命光环
HeroStun / HeroWindFury / HeroPuncture 特殊光环
WaveHeal 战后回血30s 短局可改为局内 HoT

三、可直接复刻(零代码改动)

仅通过 heroSet.ts 配置 + 复用现有 SkillSet / BuffList 即可实现。

3.1 剧毒女王Mage复刻"深渊女王·剧毒利刃"

核心机制:普攻触发灼烧 DoT叠加毒伤害。

[SkillTriggerType.Atking]: {
    // 每次普攻上灼烧 DoT已存在 BuffList 7002
    6101: [{ lv: 1, t_num: 1, overrides: { timed_buff_id: 7002, buff_duration: 5 } }],
},

复刻自:深渊女王·剧毒利刃(普攻 30% 概率 200% 法伤 + 减益)。 适配调整30s 战斗节奏快,t_num=1 100% 触发,但单层 DoT 数值调低以平衡。


3.2 猴王·乱棍Assassin复刻"至尊宝·大圣归来"

核心机制:普攻触发多段伤害+击晕。

[SkillTriggerType.Atking]: {
    // 每次普攻触发 4 段 30% 伤害 + 高击晕
    6006: [{ lv: 1, t_num: 1, overrides: { ap: 30, hit_count: 4, stun: 30 } }],
},

复刻自:至尊宝·大圣归来(乱棍 4 次 ×30% 物伤 + 眩晕)。 适配调整:去除"召唤虚影+攻击+25%"(与本系统能量体系冲突),保留多段+击晕核心。


3.3 剑圣·疾风Warrior复刻"剑圣·剑刃风暴+吸血面罩"

核心机制:高伤范围 + 击退 + 普攻吸血。

[SkillTriggerType.Atking]: {
    // 普攻触发 360% 范围伤害 + 击退
    6201: [{ lv: 1, t_num: 1, overrides: { ap: 150, bck: 30 } }],
    // 普攻吸血 35%
    6302: [{ lv: 1, t_num: 1, overrides: { TGroup: TGroup.Self, ap: 35 } }],
},

复刻自剑圣·剑刃风暴360% 物伤 + 击退) + 吸血面罩(普攻 35% 吸血)。 适配调整t_num=1 高频触发,单场 30s 内吸血量需调平衡。


3.4 壁垒贤者Support复刻"哀木涕·守护壁垒"

核心机制:开场全队护盾 + 驻场生命光环。

[SkillTriggerType.FStart]: {
    // 开场全队护盾(数值减免型)
    6301: [{ lv: 1, t_num: 1, overrides: { TGroup: TGroup.Team, ap: 5 } }],
},
[SkillTriggerType.Field]: [
    // 驻场生命光环
    { lv: 1, s_uuid: 7007, value: 15 },  // +15% 最大生命
],

复刻自:哀木涕·守护壁垒(开场 10% 最大生命护盾 + 防御光环)。 适配调整:本系统护盾是"数值减免"非"层数"ap 字段意义不同,需重新校准数值。


3.5 凤凰祭司Warrior复刻"死亡守护 + 复活"

核心机制:死亡时为最低血友军回血 + 自身可复活。

[SkillTriggerType.Dead]: {
    // 死亡守护:死亡时为最低血友军回血
    6302: [{ lv: 1, t_num: 1, overrides: { ap: 50 } }],
},
[SkillTriggerType.Revive]: [
    // 复活:死亡后 1 次 50% 血复活
    { lv: 1, s_uuid: 6501, r_num: 1, upr: 50 },
],

复刻自通用觉醒·死亡守护10% 最大生命回血) + 黑暗骑士 3 觉(尸骸存活)。 适配调整30s 战斗中复活价值高,r_num=1 限定 1 次。


3.6 暗影骑士Tank复刻"黑暗骑士·死亡缠绕"

核心机制:普攻治疗血少友军 + 受击反击自盾。

[SkillTriggerType.Atking]: {
    // 普攻触发治疗(自动选血量最低友方,引擎已支持)
    6302: [{ lv: 1, t_num: 1, overrides: { ap: 220 } }],
},
[SkillTriggerType.Atked]: {
    // 受击触发自身护盾
    6301: [{ lv: 1, t_num: 1, overrides: { TGroup: TGroup.Self, ap: 3 } }],
},

复刻自:黑暗骑士·死亡缠绕(普攻 25% 概率 220% 真伤/治疗友方)。 适配调整:本系统暂无"真伤",用高治疗量替代。


3.7 风暴歌者Mage复刻"深渊女王·超声波"

核心机制:范围伤害 + 群体击退。

[SkillTriggerType.Atking]: {
    // 范围伤害 + 群体击退
    6201: [{ lv: 1, t_num: 1, overrides: { ap: 200, bck: 50, hit_count: 6 } }],
},

复刻自:深渊女王·超声波(伤害 + 击退控制)。 适配调整bck 字段直接对应击退距离增量,无需新增机制。


3.8 战吼先锋Warrior复刻"光明骑士·光明守护"

核心机制:开场全队增益 + 持续回血。

[SkillTriggerType.FStart]: {
    // 开场全队攻击强化
    6401: [{ lv: 1, t_num: 1, overrides: { ap: 30 } }],
    // 开场全队持续回血
    6502: [{ lv: 1, t_num: 1, overrides: { timed_buff_id: 7010, buff_duration: 10 } }],
},

复刻自:光明骑士·光明守护(清异常 + 加防 + 持续治疗)。 适配调整:本系统无"解控"概念30s 战斗也不需要,改为纯增益 + HoT。


四、需要小幅扩展即可复刻

4.1 反伤罗刹Tank复刻"剑豪·罗生门"

缺失机制:本系统无"反伤"属性。

扩展方案

  1. HeroAttrs.tsAttrs 枚举新增 thorns = "thorns"(反伤数值)
  2. HeroAttrsComp.ts 新增字段 thorns: number = 0
  3. 战斗结算时,受击方对攻击者造成 thorns 点固定伤害
  4. SkillConfig 新增 thorns?: number 用于 Support 技能附加反伤 buff

复刻配置

[SkillTriggerType.Atked]: {
    // 受击触发护盾 + 反伤 buff5s 内反伤 30 点)
    6301: [{ lv: 1, t_num: 1, overrides: { ap: 5 } }],
    6401: [{ lv: 1, t_num: 1, overrides: { buff_type: Attrs.thorns, timed_buff_id: 7030 } }],
},

4.2 真伤刺客Assassin复刻"玉面狐妖·真伤"

缺失机制:本系统伤害公式只支持 ap × 系数,无"按目标最大生命百分比伤害"。

扩展方案

  1. SkillConfig 新增 target_hp_pct?: number(按目标最大生命百分比扣血)
  2. 伤害结算时,若技能含此字段,额外造成 target.hp_max × target_hp_pct / 100 伤害

复刻配置

[SkillTriggerType.Atking]: {
    // 普攻附带 3% 目标最大生命真伤
    6001: [{ lv: 1, t_num: 1, overrides: { ap: 100, /* 需新增 target_hp_pct: 3 */ } }],
},

4.3 重伤诅咒Mage复刻"巫妖王·重伤"

缺失机制:本系统无"降低治疗效果"属性。

扩展方案

  1. Attrs 新增 heal_reduce = "heal_reduce"(百分比降低受治疗)
  2. 治疗结算时,实际治疗量 = 原治疗量 × (1 - heal_reduce/100)

复刻配置

[SkillTriggerType.Atking]: {
    // 普攻附带重伤 debuff敌方受治疗 -50%
    6101: [{ lv: 1, t_num: 1, overrides: { /* 需新增 heal_reduce 机制 */ } }],
},

五、不建议复刻

类型 代表技能 原因
能量/大招系统 所有英雄的"大招" 本系统无能量条,技能全靠触发器,无法承载"释放大招"概念
解控 光明洗礼、暗黑盾解控 30s 战斗节奏快,控制时间仅 2~3s解控价值极低
多段位移/分身 炼狱鬼斩、大圣虚影 视觉表现层复杂ECS 弹道模型难承载"幻影穿梭"
沉默 / 减能 潮壮壮、海拉 本系统无主动技能,沉默无目标可作用
长期叠层 剑圣 1 觉30% 防御转攻击,永久) 30s 战斗内永久叠层易失衡
按当前生命%伤害 女王尖啸18% 当前生命) 与"按最大生命%"相比30s 短局内波动过大,难平衡
击退抗性 / 减速抗性 剑豪红武、酒仙 本系统已有 knockback_res,但减速概念不存在

六、复刻优先级矩阵

优先级 英雄 复刻难度 设计价值
P0必做 剧毒女王 零代码 引入 DoT 体系,丰富伤害维度
P0 猴王·乱棍 零代码 多段伤害+击晕,近战核心
P0 剑圣·疾风 零代码 范围+击退+吸血,全能战士
P1推荐 壁垒贤者 零代码 团队防御核心
P1 凤凰祭司 零代码 复活机制已有,强化死亡触发
P1 暗影骑士 零代码 治疗型坦克,差异化定位
P2可选 风暴歌者 零代码 范围控制,与剧毒女王互补
P2 战吼先锋 零代码 开场增益,节奏型辅助
P3扩展后做 反伤罗刹 ⚙️ 需新增 thorns 反伤 META针对高攻速敌人
P3 真伤刺客 ⚙️ 需新增 target_hp_pct 针对高血量 Boss
P3 重伤诅咒 ⚙️ 需新增 heal_reduce 针对治疗队

七、新增机制工作量评估

机制 改动文件 改动量 风险
反伤 thorns HeroAttrs.ts + HeroAttrsComp.ts + 战斗结算 ~50 行 低(独立属性)
按最大生命%伤害 SkillSet.ts + 伤害结算 ~30 行 低(额外乘区)
减疗 heal_reduce HeroAttrs.ts + HeroAttrsComp.ts + 治疗结算 ~40 行 低(独立乘区)
敌方 Support 技能 SCastSystem.ts ~20 行 中(需测试目标选择)

八、与原"20 回合制"的兼容性

本设计文档基于 1 回合定生死 机制,所有数值均按 30 秒战斗窗口 校准:

  • t_num=1 触发30s 内普攻 3050 次,技能触发 3050 次
  • DoT/HoT 持续 5s覆盖 1/6 战斗时长,效果显著但不至于"挂上就赢"
  • 复活 r_num=1:单场战斗最多 1 次,价值极高但可控
  • 驻场光环 value=15%30s 内持续生效,等价于"永久"(单场)

若未来回归多回合制,需重新校准:

  • t_num 提高到 2~4降低触发频率
  • DoT/HoT 持续时间延长至 10~15s
  • 复活次数可放开到 2~3 次

九、下一步行动

  1. 确认 P0 英雄清单:是否按本方案复刻 8 个英雄?
  2. 数值校准:是否需要先用 calcHeroPower 公式推导每个英雄的目标强度锚点?
  3. 新增机制决策:是否在第 1 阶段引入反伤/真伤/减疗?还是先纯配置复刻?
  4. 编写 heroSet.ts 配置:确认后我可以直接输出可粘贴的 TypeScript 配置代码。

文档版本v1.0 创建日期2026-08-14 作者AI Assistant 关联文档heroSet.ts / SkillSet.ts / BuffSet.ts / 几何王国英雄技能汇总.md