docs(roadmap): E1-① 元素抗性完成,勾除现状项(含 DOT 抗性已知限制→E2)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -40,7 +40,7 @@ E6-a 玩家无敌帧(i-frames) ← 先行小项:Boss 弹幕公平性前置,
|
||||
**目标**:让子弹的 pierce 以外的深度维度真正生效,使元素、抗性、轨迹类词条与核心特性产生行为差异。
|
||||
|
||||
**现状(代码复核 2026-07-23)**:
|
||||
- 元素抗性:`damage_context.gd:26` `calc_damage(armor, resistance)` 公式含 `(1−resistance)`,但 `enemy_manager.apply_damage_from_context` 调 `ctx.calc_damage()` 不传参 → resistance 恒 0;`player_stats.gd:23 resistance` 亦为占位。抗性维度是**死代码**。
|
||||
- ~~元素抗性~~ ✅ **完成**(2026-07-24,`feat/element-resistance`):`apply_damage_from_context` 按 `ctx.damage_type` 查 `_RESIST` 表传入 `calc_damage(0, res)`;`enemies.json` 每型可选 `resistances{元素名:-0.9~0.9}`(支持负=弱点加伤);设计器敌人页加 6×5 抗性网格。MCP 实测:抗火0.5→半伤、弱冰-0.5→1.5×、抗性+护甲叠加45。⚠️ **已知限制**:DOT 伤害(`status_manager.gd:116` 直调 `apply_damage`)暂不享元素抗性(架构上 DOT 不走 context,见 E2)。(`player_stats.gd:23 resistance` 玩家侧抗性仍占位。)
|
||||
- 连锁/弹跳:`bullet_manager.gd` 仅消费 `pierce_remaining`(:98-101),**无** `bounce_remaining` 消费、无 `visited_targets`、无 `pow(0.9,bounce)` 衰减。
|
||||
- 归航:`bullet_manager.gd:21` 每帧建 `_enemy_pos_snapshot`(预分配满足 P6-N25)但 `_gd_integrate` 无 homing 转向计算,**快照无人消费**。
|
||||
- 轨迹修正(加速/曲线):`_data +11 acceleration` 已积分,但无"转向/曲线"类修饰器写入。
|
||||
@@ -50,7 +50,7 @@ E6-a 玩家无敌帧(i-frames) ← 先行小项:Boss 弹幕公平性前置,
|
||||
**依赖**:无硬依赖;元素 tag 体系已在(`SpellNode.element_tags`)。敌人需有 per-type/per-status 抗性数据源(新增 `enemies.json` 抗性字段或状态减抗)。
|
||||
|
||||
**切分(建议 4 个子计划)**:
|
||||
1. **元素抗性 (1-Res)**:enemies.json 增 `resistances:{element:0..1}`;EnemyManager 命中时按子弹 `damage_type`/element 查抗性,传入 `calc_damage(armor, res)`;设计器敌人页加抗性栏。S。
|
||||
1. ~~**元素抗性 (1-Res)**~~ ✅ **完成**(2026-07-24,`feat/element-resistance`;spec/plan `docs_dev/{specs,plans}/2026-07-24-element-resistance*`):enemies.json `resistances{元素名:-0.9~0.9}`;EnemyManager `_RESIST` 查表传入 `calc_damage(0,res)`;设计器 6×5 抗性网格。
|
||||
2. **连锁/弹跳 chain/bounce**:子弹冷数据加 `bounce_remaining` + `visited_targets`;命中后若 bounce>0 且有未命中目标 → 重定向速度朝最近未访问敌人,衰减 `×0.9`;到 0 回收。修饰器 `modifier_bounce`。S~M。
|
||||
3. **归航 homing**:子弹冷数据 `homing_strength`;`_gd_integrate` 消费 `_enemy_pos_snapshot` 求最近敌人,按 strength 插值转向速度向量。修饰器 `modifier_homing`。S。
|
||||
4. **轨迹修正**:曲线/环绕类(angular velocity 字段)+ 对应修饰器。S(可选,最低价值,YAGNI 可延后)。
|
||||
|
||||
Reference in New Issue
Block a user