87 lines
5.4 KiB
Markdown
87 lines
5.4 KiB
Markdown
# M64 · DEV-2R 初始四选二迁移计划
|
||
|
||
> 活跃计划(`CURRENT_CHECKPOINT.md` 指向本文件)。当前只有 `M64-A` 处于
|
||
> `IN_PROGRESS`,产品代码改动必须属于该步。
|
||
|
||
## 目标与停止点
|
||
|
||
把玩家点「开始远征」后的**初始四选二页**(`runtime/entry/initial_company_page.gd`,
|
||
choice / inspect / compare / review / error 五个模式)从旧入口 chrome
|
||
(`ABGEntryChrome` 的 `company_*` 变体 + 页面私有 `StyleBoxFlat`)迁移到共享手绘族
|
||
(`ABGUI_Tokens` + `PageChrome`),保持节点名与 intent 不变。
|
||
|
||
停止点:五个模式在权威尺寸 `1280x720`(zh/en)下都渲染在共享材质上、墨迹门 0 违规、
|
||
建团提交与触摸回归全过、`docs/EVIDENCE_LEDGER.md` 与 checkpoint 更新、推送到
|
||
远端。招募检视页(`recruit_review_page_view.gd`)**不在本计划**,留给下一个计划。
|
||
|
||
## 视口政策(2026-09-13 owner 二次收紧)
|
||
|
||
**只做 1280x720 一种横屏尺寸**:设计、实现、测试、探针、窗口覆盖全部同值;
|
||
`CONTENT_SCALE_ASPECT_KEEP` 保比例。已删除本页与入口页的按尺寸分叉;后续页面
|
||
迁移不得再引入第二套构图。旧 P9.x/p10_2 测试的其它尺寸属各自历史,逐步清理。
|
||
|
||
## 现状实测(2026-09-13)
|
||
|
||
| 区域 | 现状材质 | 处理 |
|
||
| --- | --- | --- |
|
||
| 页面底 | 画布背景 + shade;`%sFrame` MarginContainer **为空** | 加共享 `card` 页框 + `face` 实测开口内缩 |
|
||
| 页眉 | `_label` 私配色(#213744 / #38535c)+ 白阴影 | 令牌字号 + `PageChrome.INK/INK_SOFT` |
|
||
| 候选卡 | `InitialCompanyArt` 肖像 + scrim + 名称/职业标签 | 保留艺术;文字改令牌;卡面加共享 `card` 底 |
|
||
| 选择标记 | 私有 `StyleBoxFlat` 圆角 + `✓/◇` 文本 | 共享 plate + `pip`(菱形,填充=已选) |
|
||
| 页脚/动作 | `_button` → `company_primary/secondary/utility/tool` + 图标 | `command_plate`(primary/secondary) + `UIIcon`/共享图标位 |
|
||
| 不可用态 | `_set_button_disabled` 改标签色 | 令牌 `COLOR_MUTED`,禁用 plate 状态 |
|
||
| inspect/compare/review | 同 helper 家族 | 随 helper 迁移,逐模式探针核对 |
|
||
|
||
## 步骤
|
||
|
||
1. **M64-A**:基础层与按钮族。**COMPLETE (2026-09-13)**,attempt `m64-opening` `20260913T191418Z-79907`。
|
||
- `_build_base` 加共享页框 + `face` 内缩;`_label` 改令牌字号/颜色基线;
|
||
- `_button`/`_chrome` 改 `PageChrome`(保留 `Chrome`/`ButtonLabel` 节点名);
|
||
- 选择标记改共享 plate + `pip`;
|
||
- 探针:`m63_entry_visual_probe.gd` 增加 initial-company choice/review 捕获,
|
||
权威尺寸严格 ink 0 违规。
|
||
- 验收:`ABG_DEV2_TOUCH_OK`、`ABG_DEV2_COMMIT_OK`、`ABG_DEV2_FULL_FLOW_OK`
|
||
(或既有 dev2 触摸/提交流程 marker)、`ABG_DEV1_ENTRY_TOUCH_OK`、
|
||
`ABG_M63_ENTRY_INK_OK`;marker 恰好一次,strict 0。
|
||
2. **M64-B**:**COMPLETE (2026-09-13)**,attempt `m64-boards` `20260913T192023Z-84611`。inspect/compare/review 三模式的板面细节(属性/特性/对比
|
||
表、复核摘要)按实测槽位复排,逐模式捕获核对。
|
||
3. **M64-C**:**COMPLETE (2026-09-13)**——矩阵/账本/checkpoint 更新 + owner 展示(本仓已推送 HEAD==upstream)。
|
||
|
||
## M64-B 结果(inspect / compare / review)
|
||
|
||
- inspect:三列(肖像/职业与属性/特性)改 `SIZE_SHRINK_CENTER` 纵向居中,内容集中在卡片中部,
|
||
不再顶部聚集、底部空一大片;全部文字令牌化(ink/ink_soft/danger)。
|
||
- compare:去掉收益行的 `EXPAND_FILL` 拉伸(此前把收益推到中部、装备掉到底部),
|
||
两列各自紧凑并在卡面居中;表头/属性/特性/收益/代价/装备层级稳定。
|
||
- review:复核摘要与未选列表沿用 M64-A 的令牌化结果,本步未再改结构。
|
||
- 源绑定 attempt `m64-boards` `20260913T192023Z-84611`:DEV2 choice/touch/commit/full-flow、
|
||
DEV1 入口触摸、M63 探针(四模式 22 扫描 0 违规)全过,marker 恰好一次,strict 0。
|
||
|
||
## Frozen scope
|
||
|
||
- 玩法/经济/存档语义不变;节点名、intent id、`mode` 值与信号不变;
|
||
- `initial_company_draft_service.gd` 不改;
|
||
- 其他页面不改(Guild 属 DEV-3R)。
|
||
|
||
## Acceptance checks(M64-A)
|
||
|
||
- `runtime/tests/dev2/initial_company_touch_test.gd` → `ABG_DEV2_TOUCH_OK`
|
||
- `runtime/tests/dev2/initial_company_commit_touch_test.gd`
|
||
- `runtime/tests/dev2/initial_company_full_flow_touch_test.gd`
|
||
- `runtime/tests/dev1/entry_flow_touch_test.gd` → `ABG_DEV1_ENTRY_TOUCH_OK`
|
||
- `runtime/tools/m63_entry_visual_probe.gd` → `ABG_M63_ENTRY_INK_OK scanned>=16 violations=0`
|
||
- 权威尺寸截图(choice/review,zh/en)经人眼检查并展示给 owner
|
||
|
||
## Issue register
|
||
|
||
- `M64-I01` OPEN:本页 `_label` 全部私配色;迁移按基线替换,若某标签在共享纸上
|
||
对比不足,记录并改令牌而不是恢复私配色。
|
||
- `M64-I02` OPEN(观察):招募检视页 `recruit_review_page_view.gd` 仍为页面自绘,
|
||
留给 DEV-2R 后续计划。
|
||
- `M64-I03` 观察:选择标记的 `✓/◇` 文本将改共享 `pip`,需确认已选状态在
|
||
130% 文字下仍可读。
|
||
- `M64-I04` 已做:`project.godot` 窗口覆盖 844x390 → 1280x720;窗口化触摸测试
|
||
统一 `KEEP` + 1280x720。此前 `EXPAND` + 844x390 是多尺寸错位的根因。
|
||
- `M64-I05` OPEN(登记):旧 P9.x / p10_2 测试与未迁移页面仍含按尺寸分支,
|
||
随各自迁移轮(DEV-3R..6R)清理,不得新增。
|