merge: game/ 运行时架构图落籍(archify系统级分簇·9554dd5;浏览器取证四档零溢出,取证件未入库可visual-check再生)
This commit is contained in:
commit
5fe4fcc776
2 files changed
+15160
No files matched your search
File diff suppressed because it is too large.
Load diff
@@ -0,0 +1,73 @@
|
||||
{
|
||||
"schema_version": 1,
|
||||
"diagram_type": "architecture",
|
||||
"meta": {
|
||||
"title": "Dungeon Sweeper game/ 架构(系统级)",
|
||||
"locale": "zh-CN",
|
||||
"output": "game-architecture-2026-10-05.html",
|
||||
"quality_profile": "showcase",
|
||||
"viewBox": [1130, 650],
|
||||
"views": [
|
||||
{ "id": "main-loop", "label": "主循环路径", "focus": ["main-root", "adventure-loop", "battle-domain", "board-mines"], "note": "组合根装配冒险循环,AdventureRunner 逐关推进,关卡内开战进入战斗枢纽与棋盘扫雷。" },
|
||||
{ "id": "battle-hub", "label": "战斗枢纽", "focus": ["battle-domain", "board-mines", "reward-econ", "item-domain", "rng-service"], "note": "battle_orchestrator 是边最多的域:棋盘生成、扫雷判定、伤害结算、奖励抽取、道具消费、随机掷点。" },
|
||||
{ "id": "data-path", "label": "数据通路", "focus": ["config-db", "data-tables", "meta-save", "adventure-loop"], "note": "ConfigDB autoload 单点加载 18 组数值表;组合根注入 db,元进度与存档经同一条配置通路。" }
|
||||
]
|
||||
},
|
||||
"components": [
|
||||
{ "id": "main-root", "type": "frontend", "label": "组合根 main.tscn", "sublabel": "main.gd — 装配·分派·转发", "tag": "入口场景", "pos": [30, 70], "size": [180, 110] },
|
||||
{ "id": "presenters", "type": "frontend", "label": "呈现器簇", "sublabel": "hud_presenter 等 11 件", "pos": [250, 70], "size": [180, 110] },
|
||||
{ "id": "views-board", "type": "frontend", "label": "棋盘 · 舞台视图", "sublabel": "board_view 等 9 件", "pos": [470, 70], "size": [180, 110] },
|
||||
{ "id": "views-screen", "type": "frontend", "label": "屏幕 · 弹窗 · HUD", "sublabel": "level_map_screen 等 17 件", "pos": [690, 70], "size": [180, 110] },
|
||||
{ "id": "debug-cluster", "type": "frontend", "label": "调试 · 模拟簇", "sublabel": "debug_session 等 4 件", "tag": "DS_DEBUG 门控", "pos": [910, 70], "size": [180, 110] },
|
||||
|
||||
{ "id": "config-db", "type": "database", "label": "配置服务 ConfigDB", "sublabel": "config_db — 表单点入口", "tag": "autoload", "pos": [30, 265], "size": [190, 120] },
|
||||
{ "id": "adventure-loop", "type": "backend", "label": "冒险循环域", "sublabel": "adventure_runner 等 3 件", "pos": [260, 255], "size": [180, 140] },
|
||||
{ "id": "battle-domain", "type": "backend", "label": "战斗域", "sublabel": "battle_orchestrator 等 5 件", "tag": "边最多枢纽", "pos": [490, 255], "size": [210, 150] },
|
||||
{ "id": "rng-service", "type": "backend", "label": "随机服务 RngService", "sublabel": "rng_service — 全局随机", "tag": "autoload", "pos": [760, 275], "size": [180, 100] },
|
||||
|
||||
{ "id": "data-tables", "type": "database", "label": "数值表层", "sublabel": "schemas ×18 · .tres ×18", "pos": [30, 500], "size": [190, 110] },
|
||||
{ "id": "item-domain", "type": "backend", "label": "道具 · 奇物 · 同调域", "sublabel": "relics_engine 等 3 件", "pos": [260, 490], "size": [180, 140] },
|
||||
{ "id": "meta-save", "type": "backend", "label": "元进度 · 存档域", "sublabel": "meta_progression · save_manager", "pos": [470, 490], "size": [200, 140] },
|
||||
{ "id": "board-mines", "type": "backend", "label": "棋盘 · 扫雷域", "sublabel": "board_data 等 3 件", "pos": [700, 490], "size": [190, 140] },
|
||||
{ "id": "reward-econ", "type": "backend", "label": "奖励经济域", "sublabel": "reward_economy 等 2 件", "pos": [930, 500], "size": [170, 130] }
|
||||
],
|
||||
"boundaries": [
|
||||
{ "kind": "region", "label": "presentation/ 呈现层", "wraps": ["main-root", "presenters", "views-board", "views-screen", "debug-cluster"] },
|
||||
{ "kind": "region", "label": "core/ 全局服务(autoload)", "wraps": ["config-db", "rng-service"] },
|
||||
{ "kind": "region", "label": "core/ 玩法域", "wraps": ["adventure-loop", "battle-domain", "item-domain", "meta-save", "board-mines", "reward-econ"] },
|
||||
{ "kind": "region", "label": "data/ 数据层", "wraps": ["data-tables"] }
|
||||
],
|
||||
"connections": [
|
||||
{ "id": "main-to-presenters", "from": "main-root", "to": "presenters", "label": "装配" },
|
||||
{ "id": "presenters-to-views-board", "from": "presenters", "to": "views-board" },
|
||||
{ "id": "presenters-to-views-screen", "from": "presenters", "to": "views-screen", "fromSide": "top", "toSide": "top" },
|
||||
{ "id": "main-to-adventure", "from": "main-root", "to": "adventure-loop", "label": "冒险编排 · 注入 db/rng", "variant": "emphasis", "labelDy": -20 },
|
||||
{ "id": "main-to-configdb", "from": "main-root", "to": "config-db", "label": "组合根引用", "fromSide": "bottom", "toSide": "top", "labelDy": 24 },
|
||||
{ "id": "adventure-to-configdb", "from": "adventure-loop", "to": "config-db", "label": "读表", "labelDy": 26 },
|
||||
{ "id": "adventure-to-battle", "from": "adventure-loop", "to": "battle-domain", "label": "开战" },
|
||||
{ "id": "battle-to-rng", "from": "battle-domain", "to": "rng-service", "label": "掷点" },
|
||||
{ "id": "battle-to-mines", "from": "battle-domain", "to": "board-mines", "label": "棋盘 · 扫雷", "fromSide": "bottom", "toSide": "top" },
|
||||
{ "id": "battle-to-items", "from": "battle-domain", "to": "item-domain", "label": "伤害 / 掉落" },
|
||||
{ "id": "battle-to-reward", "from": "battle-domain", "to": "reward-econ", "label": "结算 · 奖励抽取", "fromSide": "bottom", "toSide": "top", "labelDy": -14, "labelDx": -110 },
|
||||
{ "id": "adventure-to-items", "from": "adventure-loop", "to": "item-domain", "label": "奇物 / 同调", "labelDy": 30 },
|
||||
{ "id": "items-to-meta", "from": "item-domain", "to": "meta-save", "label": "落档", "labelDy": 24 },
|
||||
{ "id": "configdb-to-tables", "from": "config-db", "to": "data-tables", "label": "加载 .tres", "labelDy": 30 }
|
||||
],
|
||||
"cards": [
|
||||
{ "dot": "cyan", "title": "呈现层 presentation/", "items": [
|
||||
"组合根装配呈现器并转发信号",
|
||||
"ui_assembler 落地 26 件视图",
|
||||
"调试簇挂 DS_DEBUG 门控接线"
|
||||
] },
|
||||
{ "dot": "emerald", "title": "规则引擎 core/", "items": [
|
||||
"冒险循环是唯一试玩入口",
|
||||
"战斗域边最多,向四域出边",
|
||||
"道具域三侧消费,同调落存档"
|
||||
] },
|
||||
{ "dot": "rose", "title": "数据与全局服务", "items": [
|
||||
"ConfigDB autoload 表单点入口",
|
||||
"组合根统一注入 db 与 RngService",
|
||||
"依赖走构造器注入,禁绕过单点"
|
||||
] }
|
||||
]
|
||||
}
|
||||
Reference in new issue
Block a user