Files
gplan-2/CLAUDE.md
T

56 lines
4.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Dungeon Sweeper(扫雷 × 自动战斗 闯关 Roguelike)
扫雷推理层 + 自动战斗结算的两段式回合 Roguelike。个人开发,MVP 优先管线。
设计入口:`design/gdd/02-系统清单.md`(根索引)· 概念:`design/gdd/00-游戏概念.md` · 旧版 GDD 归档(只读参考):`design/archive/gdd-2026-09-14/`
> 本文件只保留全局元信息与硬性红线;一切领域细则在子文档,动手前先查「规范导航」。
## Technology Stack
- **Engine**: Godot 4.7.2 · **Language**: GDScript · **Build**: SCons(engine)+ Godot Export Templates · **资源管线**: Godot Import System + 自定义 resource pipeline
- **Godot 可执行文件(本机固定路径)**:`D:\code\godot\Godot_v4.7.2-stable_win64_console.exe`——headless / 命令行一律用 console 版;编辑器版为同目录 `Godot_v4.7.2-stable_win64.exe`
## Engine Version Reference
@docs/engine-reference/godot/VERSION.md
## 运行与验证(垂直切片)
工作目录 = 切片目录本身(含 `project.godot` 的那一层):
- 冒烟(全量 headless 断言):`…console.exe --headless --path . --script res://smoke/smoke_all.gd`
- 场景级探针(呈现层回归):`…console.exe --headless --path . res://smoke/ui_probe.tscn`;另有 `ui_tune_probe.tscn`(数值调整板)、`ui_click_probe.tscn`(合成鼠标事件行为探针)
- 调参期批量工具:`--script res://smoke/level_monte_carlo.gd`(关卡期望扫描)· `--script res://smoke/reward_expectation.gd`(奖励获取期望)
- 交付前验收 = smoke + 全部场景探针全绿(测试细则见 `docs/code-conventions.md`)
## Project Layout
- `design/gdd/` — 现行设计文档树(根索引 `02-系统清单.md`;文档增删必须同步它)
- `design/archive/gdd-2026-09-14/` — 旧版 GDD 归档(只读参考,不作事实引用)
- `design/registry/` — 跨系统事实登记(术语规范名、已锁数值)
- `production/` — stage、session-state、roadmap、gate-checks、qa
- `prototypes/dungeon-sweeper-vertical-slice/` — 垂直切片(概念 demo 已删,验证报告留档 `docs/prototype-report-minesweeper-battle-concept.md`)
- `docs/` — 规范与参考文档(权威清单见下方导航)
## 规范导航(动手前先查表)
| 时机 | 权威文档 |
|---|---|
| **写代码 / 改代码前** | `docs/code-conventions.md`——结构 / 契约 / 测试 / 语言 / 数值 / 流程六类硬纪律 + 反面案例对照表 |
| **写文档 / 改文档前** | `docs/doc-conventions.md`——可读性第一、白话写作、概念封装、引用纪律、文档骨架 |
| 查系统设计 / 增删文档 | `design/gdd/02-系统清单.md`——根索引 + 中文规范名↔英文代号对照表 |
| 架构与决策记录 | `docs/architecture/architecture.md` + 同目录 `adr-*.md` |
| 引擎版本与参考 | `docs/engine-reference/godot/`(版本表已在上方 @ 引入) |
| 术语、已锁数值 | `design/registry/entities.yaml`——仅 owner 文档可修订,冲突须显式提出 |
| 会话进度记录 | `production/session-state/active.md`——顶部「当前状态快照」节 + 批次台账;收口先改快照再记账,每条 ≤3 行,详情外链 |
| 工程路线图 | `production/roadmap.md`——里程碑时间线与下一步顺序(批级视图;实时状态看快照节) |
## 硬性红线(勿违反)
- **数值单一事实源**:玩法数值只存 `data/tables/`(.tres),经 `ConfigDB` autoload 类型化单点读取;禁止数值字面量与自建 `load()` 表路径
- **RNG 单点**:禁止 `randomize()` / 自建 RandomNumberGenerator——随机只经 `RngService` 封闭命名流
- **Core 层零 UI 依赖**:完整战斗必须可 `--headless --script` 跑通
- **fail-fast**:数据校验错误一律致命中止,无软回退
- **spec-AC 一致性**:规约与验收标准不得在同一输入上给出不同答案(所有 GDD 同尺度)
- **评审隔离**:`/design-review` 必须在独立会话跑(与 `/design-system` 隔离)