Files
UnityAI/business-reference/playballoons/features/PVE关卡战斗.md
lms ee1ff7f444 [docs][refactor]: 将旧 01~06 中文教程合并整理为 modules/frameworks 文件夹结构
- 删除 01~05 旧中文教程目录
- 将 03 核心功能教程拆分为各 framework 模块的子文档
- 06 工具脚本移入 modules/frameworks/编辑器工具/UI工具/
- 非框架内容合并进 rules/20-开发规则.md 与 rules/40-工作流清单.md
- 更新所有交叉链接与文档关联表

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-07 18:36:15 +08:00

4.1 KiB
Raw Blame History

PVE/关卡战斗

分类

  • 项目功能

目的

记录 PVE 关卡进入、战斗流程、胜负结算、波次和奖励逻辑。

已知线索

  • 逻辑路径:Assets/Game/GameHFScripte/GameFunction/Logic/GameScenes/
  • 地图路径:Assets/Game/GameHFScripte/GameFunction/Logic/MapManager/
  • 伤害路径:Assets/Game/GameHFScripte/GameFunction/Logic/DamageManager/
  • 地图资源:Assets/Game/GameHFResource/CN/Map/
  • 网络消息线索:BattleLevelEnterBattleLevelExitBattleLevelWinBattleLevelFail
  • 配置线索:XLSX_SRC/CN/Wave.xlsx

已确认内容

当前 PVE/关卡战斗处于“有核心框架和协议线索,但主流程接入不完整或待确认”的状态。

已确认的子系统:

  • HFWaveManager:从 HFFunCatalogue.NDB.ds_WaveD0D9AA20TableData.ReadTableList() 读取波次配置。
  • WaveInfo:根据 WaveTimeWaveIDWaveHpIncGateFirst 生成波次信息。
  • CreateMonsterInfo:解析 start_end_delay_monsterId_count 格式的发怪配置。
  • HFMapManager.CreateMap(levelid, finish):当前会先 ClearMap(),再通过 HFFunCatalogue.Asset.LoadAsset(1501, ...) 加载地图 prefab。
  • HFDamageManager存在伤害计算、掉落、死亡事件、HUD 飘字逻辑,但大部分实现当前被注释。
  • 网络协议和事件已生成:BattleLevelEnterBattleLevelExitBattleLevelWinBattleLevelFail

HFWaveManager 当前有 Editor GUI 调试入口:

OnRunGUI
  -> 按钮“游戏开始”
  -> InitCampWaveInfo(Red/Blue)
  -> TryCreateMonster

OnRunFixedUpdate 每秒尝试发怪:

OnRunFixedUpdate
  -> TryCreateMonster
  -> CampWaveInfo.TryCreateMonster
  -> WaveInfo.TryCreateMonster
  -> CreateMonsterInfo.TryCreateMonster

梳理任务

  • 找到 PVE 入口:从主界面、地图或 GM 进入关卡的调用点。
  • 梳理关卡状态:进入、战斗中、胜利、失败、退出。
  • 梳理波次配置和怪物/实体生成关系。
  • 梳理伤害计算和实体框架之间的关系。
  • 梳理结算奖励如何进入背包和奖励展示。
  • 梳理 PVE 相关网络消息和事件。

待确认

  • 是否有明确的 PVE manager。
  • 战斗是纯本地模拟、服务器校验,还是服务器主导。
  • GameScenesMapManagerLineManager 在 PVE 中的边界。
  • HFMapManager.CreateMaplevelid 当前未用于读表,资源 id 固定为 1501,是否临时逻辑待确认。
  • HFWaveManager 是否只通过 Editor GUI 调试启动,还是存在运行时入口待确认。
  • HFDamageManager 大量逻辑被注释,当前战斗伤害是否启用待确认。

相关框架


文档关联

当本文档发生变更时,应同步检查以下关联文档,避免信息不一致。

文档 关联原因
modules/模块索引.md 模块索引是项目知识总入口
modules/frameworks/数据配置框架.md 数据/配置框架
modules/frameworks/实体系统/README.md 实体框架
modules/frameworks/事件系统/README.md 事件框架
modules/frameworks/网络系统.md 网络框架
modules/frameworks/场景系统.md 场景框架
rules/10-架构说明.md 架构说明定义总体分层和依赖方向
rules/30-模块登记规则.md 模块登记规则定义分类和状态口径
TODO补充依赖的框架/模块文档 如 UI、网络、事件、配置等框架