49 lines
2.5 KiB
Markdown
49 lines
2.5 KiB
Markdown
# module-combat
|
||
|
||
日期:`2026-04-21`
|
||
|
||
## 1. package 职责
|
||
|
||
`module-combat` 是 M4 阶段的战斗规则 crate,当前负责:
|
||
|
||
1. `battle_state` 首版领域类型与字段校验
|
||
2. `resolve_combat_action` 的纯规则推进
|
||
3. `fight / spar` 两种模式下的战斗收束规则
|
||
4. 为 `spacetime-module` 提供可直接复用的战斗状态与 reducer 输入输出类型
|
||
|
||
## 2. 当前实现范围
|
||
|
||
当前已经真实落地:
|
||
|
||
1. `src/domain.rs` 承接战斗 ID 前缀、版本、伤害、切磋保底生命、旧攻击 function 列表和 `BattleMode / BattleStatus / CombatOutcome`
|
||
2. `BattleStateInput / BattleStateSnapshot / BattleStateQueryInput`
|
||
3. `ResolveCombatActionInput / ResolveCombatActionResult`
|
||
4. `BattleStateProcedureResult / ResolveCombatActionProcedureResult`
|
||
5. `battle_attack_basic / battle_recover_breath / battle_use_skill / battle_escape_breakout`
|
||
6. 旧攻击类 function 的兼容解析
|
||
7. `chapter_id / experience_reward` 最小承载字段,供 `spacetime-module` 在胜利时联动成长结算
|
||
|
||
当前刻意未做:
|
||
|
||
1. `inventory_use`
|
||
2. 掉落、好感、任务信号联动
|
||
3. story AI 续写触发
|
||
4. 多目标或完整 build / cooldown 真相建模
|
||
|
||
## 3. 配套文档
|
||
|
||
落地依据见:
|
||
|
||
1. [../../../docs/technical/SERVER_RS_DDD_WP_RPG_COMBAT_DOMAIN_ENUM_REHOME_2026-04-29.md](../../../docs/technical/SERVER_RS_DDD_WP_RPG_COMBAT_DOMAIN_ENUM_REHOME_2026-04-29.md)
|
||
2. [../../../docs/technical/M4_MODULE_COMBAT_SPACETIMEDB_BASELINE_2026-04-21.md](../../../docs/technical/M4_MODULE_COMBAT_SPACETIMEDB_BASELINE_2026-04-21.md)
|
||
3. [../../../docs/technical/M4_MODULE_COMBAT_AXUM_FACADE_DESIGN_2026-04-21.md](../../../docs/technical/M4_MODULE_COMBAT_AXUM_FACADE_DESIGN_2026-04-21.md)
|
||
4. [../../../docs/technical/M4_MODULE_COMBAT_STATE_QUERY_DESIGN_2026-04-22.md](../../../docs/technical/M4_MODULE_COMBAT_STATE_QUERY_DESIGN_2026-04-22.md)
|
||
5. [../../../docs/technical/M4_PROGRESSION_QUEST_COMBAT_INTEGRATION_2026-04-21.md](../../../docs/technical/M4_PROGRESSION_QUEST_COMBAT_INTEGRATION_2026-04-21.md)
|
||
6. [../../../docs/prd/AI_NATIVE_BATTLE_SINGLE_ACTION_FUNCTION_PRD_2026-04-18.md](../../../docs/prd/AI_NATIVE_BATTLE_SINGLE_ACTION_FUNCTION_PRD_2026-04-18.md)
|
||
|
||
## 4. 边界约束
|
||
|
||
1. `module-combat` 只做纯规则、纯状态推进,不承接 HTTP、LLM、OSS 或文件 IO。
|
||
2. 任何与 `inventory / progression / npc / story` 的联动,都应先在文档里冻结边界后再继续接入。
|
||
3. 该 crate 的目标不是替代 Axum facade,而是成为 `spacetime-module` 里的战斗真相规则层。
|