docs: document actor behavior config locations

This commit is contained in:
ud18010
2026-07-30 15:16:25 +08:00
parent de69e6d223
commit 41e73da631
3 changed files with 22 additions and 10 deletions
@@ -108,7 +108,7 @@ namespace XWorld.Framework.Tests.ActorBehavior
public void ExampleConfigFiles_LoadFromRepository() public void ExampleConfigFiles_LoadFromRepository()
{ {
string root = FindRepoRoot(); string root = FindRepoRoot();
string dir = System.IO.Path.Combine(root, "Client", "Assets", "Resources", "Config", "ActorBehavior"); string dir = System.IO.Path.Combine(root, "Client", "Assets", "Game", "Config", "ActorBehavior");
BehaviorConfigCatalog catalog = BehaviorConfigCatalog.LoadFromJson( BehaviorConfigCatalog catalog = BehaviorConfigCatalog.LoadFromJson(
"fighter", "fighter",
@@ -36,11 +36,11 @@ Create:
- 配置加载、索引和校验。 - 配置加载、索引和校验。
- `Client/Assets/Framework/Shared/ActorBehavior/BehaviorWorld.cs` - `Client/Assets/Framework/Shared/ActorBehavior/BehaviorWorld.cs`
- 行为、飞行物、Buff、逻辑效果运行时。 - 行为、飞行物、Buff、逻辑效果运行时。
- `Client/Assets/Resources/Config/ActorBehavior/fighter_skill.json` - `Client/Assets/Game/Config/ActorBehavior/fighter_skill.json`
- 示例技能配置。 - 示例技能配置。
- `Client/Assets/Resources/Config/ActorBehavior/fighter_flyobj.json` - `Client/Assets/Game/Config/ActorBehavior/fighter_flyobj.json`
- 示例飞行物配置。 - 示例飞行物配置。
- `Client/Assets/Resources/Config/ActorBehavior/fighter_buff.json` - `Client/Assets/Game/Config/ActorBehavior/fighter_buff.json`
- 示例 Buff 配置。 - 示例 Buff 配置。
- `Server/Framework.Shared.Tests/ActorBehavior/BehaviorConfigCatalogTests.cs` - `Server/Framework.Shared.Tests/ActorBehavior/BehaviorConfigCatalogTests.cs`
- 配置解析和校验测试。 - 配置解析和校验测试。
@@ -665,9 +665,9 @@ Expected: PASS.
## Task 6: 示例配置、全量验证和 cleanup ## Task 6: 示例配置、全量验证和 cleanup
**Files:** **Files:**
- Create: `Client/Assets/Resources/Config/ActorBehavior/fighter_skill.json` - Create: `Client/Assets/Game/Config/ActorBehavior/fighter_skill.json`
- Create: `Client/Assets/Resources/Config/ActorBehavior/fighter_flyobj.json` - Create: `Client/Assets/Game/Config/ActorBehavior/fighter_flyobj.json`
- Create: `Client/Assets/Resources/Config/ActorBehavior/fighter_buff.json` - Create: `Client/Assets/Game/Config/ActorBehavior/fighter_buff.json`
- Modify: all new actor behavior files as needed after refactor - Modify: all new actor behavior files as needed after refactor
- Test: `Server/Framework.Shared.Tests/ActorBehavior/BehaviorConfigCatalogTests.cs` - Test: `Server/Framework.Shared.Tests/ActorBehavior/BehaviorConfigCatalogTests.cs`
@@ -684,7 +684,7 @@ Add to `BehaviorConfigCatalogTests.cs`:
public void ExampleConfigFiles_LoadFromRepository() public void ExampleConfigFiles_LoadFromRepository()
{ {
string root = FindRepoRoot(); string root = FindRepoRoot();
string dir = System.IO.Path.Combine(root, "Client", "Assets", "Resources", "Config", "ActorBehavior"); string dir = System.IO.Path.Combine(root, "Client", "Assets", "Game", "Config", "ActorBehavior");
BehaviorConfigCatalog catalog = BehaviorConfigCatalog.LoadFromJson( BehaviorConfigCatalog catalog = BehaviorConfigCatalog.LoadFromJson(
"fighter", "fighter",
@@ -749,7 +749,7 @@ Expected: PASS.
Run: Run:
```powershell ```powershell
git diff -- Client/Assets/Framework/Shared/ActorBehavior Server/Framework.Shared.Tests/ActorBehavior Client/Assets/Resources/Config/ActorBehavior git diff -- Client/Assets/Framework/Shared/ActorBehavior Server/Framework.Shared.Tests/ActorBehavior Client/Assets/Game/Config/ActorBehavior
``` ```
Expected: only actor behavior core, tests, and example config files changed. Expected: only actor behavior core, tests, and example config files changed.
@@ -12,7 +12,7 @@
- `Server/Framework.Shared/Framework.Shared.csproj` 会从客户端共享目录编译同一份源码。 - `Server/Framework.Shared/Framework.Shared.csproj` 会从客户端共享目录编译同一份源码。
- 小游戏 Core 代码也使用同源模式:`scripts~` 目录同时被客户端和服务端项目编译。 - 小游戏 Core 代码也使用同源模式:`scripts~` 目录同时被客户端和服务端项目编译。
- 已有虚拟 HUD 输入系统只负责输出摇杆和按钮事件,不负责技能协议或技能执行。角色行为系统位于输入层之后,把输入转换为行为请求。 - 已有虚拟 HUD 输入系统只负责输出摇杆和按钮事件,不负责技能协议或技能执行。角色行为系统位于输入层之后,把输入转换为行为请求。
- 客户端已有 `Client/Assets/Resources/Config` 配置目录先例;服务端需要通过文件或字符串读取同一套 JSON 内容。 - 通用行为配置放在 `Client/Assets/Game/Config/ActorBehavior`;小游戏私有行为配置放在对应小游戏目录下的 `Config/ActorBehavior`,例如 `Client/Assets/MiniGames/RockPaperScissors/Config/ActorBehavior`服务端需要通过文件或字符串读取同一套 JSON 内容。
## 推荐方案 ## 推荐方案
@@ -187,6 +187,18 @@ fighter_flyobj.json
fighter_buff.json fighter_buff.json
``` ```
通用大厅/全局角色配置放在:
```text
Client/Assets/Game/Config/ActorBehavior/
```
小游戏独有角色配置放在:
```text
Client/Assets/MiniGames/<GameName>/Config/ActorBehavior/
```
所有文件都包含: 所有文件都包含:
- `type`:角色类型名,例如 `fighter` - `type`:角色类型名,例如 `fighter`