- 将开发过程/归档文档迁至 docs_dev/(development_plan、certification_checklist、 已废弃的 Cocos 架构草案 archived_cocos_architecture_draft),并修正全部跨引用 - 新增根 README.md(项目介绍,暂定名 Spellforge)与 docs_dev/README.md 索引 - 新增 docs_dev/doc_code_audit_2026-07-20.md:文档 vs 代码交叉审计报告(经 6 路对抗性复核,零证伪),含「代码更优 / 文档更优 / 中性」判定汇总 - 在 docs/ 各设计·技术·机制文档就地加「实现现状 (2026-07-20)」callout: 追认代码更优实现(纯 JSON 数据驱动、SpatialGrid-only 碰撞、MultiMesh 单档、 存档选最新槽等),订正陈旧/矛盾内容(.tres→JSON、Boss HP/阈值/波次、EventID、 StatusManager.apply 签名等),标记未实现功能(C# 热路径、Mana、元进展、 Boss 阶段/抗性、Tutorial、轨迹/连锁/催化等)与 latent bug(CoreFeatureTag 位运算、 pierce 空操作、MAX_OPS 不读 cpu_limit) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
66 lines
3.2 KiB
Markdown
66 lines
3.2 KiB
Markdown
# 魔法工匠:开发使用手册 (Developer & Designer Handbook)
|
||
|
||
> **适用人群**:策划、美术、程序、QA
|
||
> **引擎版本**:Godot 4.6 (Mono)
|
||
> **最后更新**:2026-06-05
|
||
|
||
---
|
||
|
||
## 目录
|
||
|
||
| 文档 | 适合 | 内容 |
|
||
|:---|:---|:---|
|
||
| [01 快速上手](01_quickstart.md) | 全员 | 克隆→启动→首次运行 |
|
||
| [02 内容创作指南](02_content_authoring.md) | 策划 / 程序 | 法术 / 敌人 / 波次 / Boss / 共鸣 |
|
||
| [03 资源替换指南](03_asset_replacement.md) | 美术 / 程序 | 特效 / 精灵 / 音效 / UI 图片 |
|
||
| [04 本地化工作流](04_localization.md) | 本地化 / 策划 | `.po` 维护、新增语言、字符串规范 |
|
||
| [05 发布标准清单](05_release_guide.md) | 全员 / PM | Steam / Switch 认证、发布流程 |
|
||
| [06 法术编辑器](06_spell_editor.md) | 策划 / 开发 | 法术编辑器 meta 字段速查 |
|
||
| [07 游戏设计器](07_game_designer.md) | 策划 / 美术 / 开发 | **⭐ 一站式可视化工具**:法术/敌人/波次/Core/平衡全部表单配置,零代码 |
|
||
|
||
---
|
||
|
||
## 项目目录快览
|
||
|
||
```
|
||
daihaoRogue/
|
||
├── scenes/
|
||
│ └── main/combat_s2.tscn ← 主场景(唯一可玩入口)
|
||
├── scripts/
|
||
│ ├── autoloads/ ← 全局单例(30+ Autoload)
|
||
│ └── domain/
|
||
│ ├── spell_system/ ← 法术虚拟机
|
||
│ └── combat/ ← 游戏循环状态机
|
||
├── translations/ ← zh_CN / zh_TW / en / ja .po
|
||
├── audio/sfx/ ← 音效放这里(目前占位蜂鸣)
|
||
├── assets/sprites/ ← 精灵图放这里(目前几何占位)
|
||
├── docs/
|
||
│ ├── design/ ← 游戏设计文档
|
||
│ ├── mechanics/ ← 机制深度文档
|
||
│ ├── technical/ ← 架构 / 实现方案
|
||
│ └── handbook/ ← 本手册(你在这里)
|
||
└── docs_dev/ ← 开发计划 / 认证清单 / 归档草案
|
||
```
|
||
|
||
---
|
||
|
||
## 关键 Autoload 速查
|
||
|
||
| Autoload | 职责 | 常用入口 |
|
||
|:---|:---|:---|
|
||
| `WandPreset` | 法术/Core 内置预设 | `make_spark_bolt()`, `make_wand_basic()` |
|
||
| `SpellEvaluator` | 法术虚拟机(编译+执行) | `compile_wand(core, nodes)`, `execute_compiled(compiled, caster_id, pos)` |
|
||
| `SpellRegistry` | 法术查询表 | `get_spell("action_fire_bolt")` |
|
||
| `WaveManager` | 波次生成/配置 | `WAVE_CONFIG[0..19]` |
|
||
| `EnemyManager` | 敌人 SoA 管理 | `spawn_enemy(pos, hp, type)` |
|
||
| `BulletManager` | 子弹 SoA 管理 | `spawn_bullet(...)` |
|
||
| `VFXManager` | 特效池 | `play("hit_spark", pos)` |
|
||
| `AudioManager` | 音效池 | `play("hit", pos)` |
|
||
| `SettingsManager` | 难度 / 音量 / 语言 | `difficulty_name()`, `enemy_hp_mult()` |
|
||
| `EndlessRecords` | 本地排行榜 | `add_record(wave, elapsed, kills)` |
|
||
| `ProfileManager` | A/B 槽局内存档 | `save_run()`, `load_run()` |
|
||
| `Locale` | 语言切换 | `set_locale("en")` |
|
||
| `StatusManager` | 状态效果(DoT 等) | `apply(entity_id, StatusID.BURN, 2)` |
|
||
| `ZoneManager` | 地面效果区域 | `spawn_zone(cx, cy, r, status_id, dur, tick, owner)` |
|
||
| `MinionManager` | 召唤物 | `spawn_minion(def_dict, owner_id, pos)` |
|