8.8 KiB
8.8 KiB
M63 DEV-1R 入口页迁移(W5 第一步)
Goal: ABG MVP 质量达标,工作包 W5-DEV-1R。按"一页一提交一验收"拆成:
A = Boot(本轮)→ B = 首次设置 → C = Title(含 M60-I04)→ D = Settings。
本轮(M63-A:Boot)玩家可见停止点
Boot 页不再使用入口家族素材(identity-plaque / verification-rail /
status-seal / action-tab / _flat_style 进度条),改用共享手绘族:
羊皮纸面板(PageChrome header/card)、共享进度材质(本轮新增)、
command_plate 命令牌与引擎图标;世界背景保持不变。760/844/1280 ×
中英 × normal/error 两态截图可查,墨迹检查 0 违规。
顺序步骤
- M63-A(本轮):COMPLETE (2026-09-13)。
page_chrome.gd新增progress材质(轨道+进度由共享层 绘制,值由configure传入);Boot 屏改用它;文字全部走ABGUI_Tokens; 按钮改command_plate+ButtonLabel;三个BootStatusSeal*改共享pip+ 序号标签。同步更新docs/runtime/M52_SHARED_UI_RULES.md材质表。 - M63-B:COMPLETE (2026-09-13)。首次设置页同样迁移(表单行、按钮、预览)。
- M63-C:Title 迁移 +
M60-I04(存在可恢复远征团时"新游戏"仍可用, 走确认边界而不是直接禁用)。COMPLETE (2026-09-13)。
M63-C 实测与结果(Title)
- 银牌身份面
TitleIdentityPlaque→ 共享card;私有青/金色缎带条(无共享同类) 随迁移退役;标题/眉题/纪年改令牌字号 +PageChrome.INK/INK_SOFT。 - 四个动作按钮
ButtonSurface→ 共享command_plate(primary/secondary/utility), 节点名保留;ButtonLabel/DetailLabel改令牌字号。 - 详情槽按真实最长文案(en
Expedition Company established · continue to the Guild) 实测加宽加高(0.06/0.48/0.88/0.46)+ 两行内换行,不再裁剪。 M60-I04修复:_save_status()原来先load_company(),触发"恢复并回写主档", 随后show_title()的第二次加载只看到 primary →recovered_*信号丢失 → New Game 被禁用(历史.bak玩家因此卡死)。现改为单次加载派生状态 (_save_status_from(company_result));可恢复态下 New Game 保持可用,首次点击进入 两段确认(保留备份),第二次点击进入开局流程;有效主档时仍禁用(冻结语义不变)。- 源绑定 attempt
m63-title20260913T184431Z-56463:Title 状态/响应式/捕获、入口 流程、DEV2 建团提交(仍主张"建团后 New Game 禁用")、M63 探针全过;ABG_M63_TITLE_RECOVERABLE_OK new_game=enabled continue=enabled;权威尺寸 ink 10 扫描 0 违规。 M63-I05(OPEN,推迟):844x390 手机横屏下 Title 详情槽仍可能溢出(冒烟已记录); 按 2026-09-13 视口政策留到手机横屏步骤整体缩放解决。
M63-D 实测与结果(Settings)
- 页框
SettingsFrame→ 共享card(整页羊皮纸);按卡片实测开口新增SettingsFace内缩容器(x 5.5%、y 15%),标题/来源/内容/页脚全部落在纸面内。 - 入口族按钮基座
_entry_button_base→ 共享command_plate(action_primary→primary, 其余→secondary);Chrome节点名与entry_chrome_variantmeta 保留。 - 复选项
_check_button→ 共享 plate + 右侧共享pip(菱形,填充=开)实时反映状态; 旧toggle自绘开关退役。 - 分类栏/行标题/数值/页脚按钮的标签锚点改为
PageChrome.PLATE_EDGE_X(0.062), 文字不再压在牌匾卷边下;阅读列宽上限 720px 居中(避免 20:1 牌匾出现超长卷边)。 - 滑杆无共享组件,保留私有 StyleBoxFlat 但颜色改令牌(登记于
M63-I06)。 - 源绑定 attempt
m63-settings20260913T185200Z-62461:设置/许可、入口捕获、 入口流程、M63 探针(权威尺寸 14 扫描 0 违规)全过,marker 恰好一次,strict 0。 - DEV-1R 完成:Boot / 首次设置 / Title / Settings 四页均已迁入共享族并有源绑定证据。 下一包:DEV-2R(公会交接)需先建新计划(M64)。
视口政策(2026-09-13 owner 指示)
宽屏 1280x720 是唯一设计权威;1280x600 仅宽屏冒烟。手机横屏
(844x390、760x360)留到后续步骤,届时只做整体缩放,不再新增第二套构图。
M63-B 的紧凑双列分支属于该政策的例外(已交付且验证),后续页面不得再引入
同类分支;小尺寸测试只作溢出冒烟,不按其缺陷改设计。
4. M63-D:Settings 迁移(分类、行、开关、返回)。COMPLETE (2026-09-13)。
结果摘要(M63-A)
- Boot 页面:identity 改共享
header_band、rail 改共享card、状态印章改共享pip(序号/OK 改深墨,修正羊皮纸上象牙白不可读的缺陷)、进度条改共享progress材质(新增并登记于M52_SHARED_UI_RULES.md)、重试/诊断/退出改command_plate+ButtonLabel+ 引擎图标;文字尺寸/颜色全部走ABGUI_Tokens。 - 源绑定 attempt
m63-boot20260913T181401Z-32808:boot 运行/响应式/捕获、 入口流程、M63 探针(12 次扫描 0 违规)全部通过,marker 恰好一次,strict 0。
M63-B 实测与结果(首次设置)
页面区域 → 共享材质(源:runtime/assets/ui_m57_chrome/*,边距由
PageChrome 常量声明):
| 区域 | 旧源 | 新共享件 | 边距/槽位 |
|---|---|---|---|
| 预览框 | entry/first_launch/preview-frame.png(九宫 86/74) |
card(panel_parchment) |
PANEL_EDGE_X 0.055 / Y 0.15;子内容全部按实测开口内缩 |
| 预览标题/详情 | value-plate.png(九宫 72/0) |
header_band / card |
标题槽=标题带内框,详情槽=卡内框 |
| 设置行 | setting-row.png(九宫 36/0) |
command_plate(secondary) |
PLATE_EDGE_X 0.062;标题槽 = 徽章右到数值牌左 |
| 行徽章 | setting-icon.png + 象牙白字母 |
pip(circle 空心) |
徽章直径 clamp(row.h-14, 24, 52),落在牌面内 |
| 数值牌 | value-plate.png |
card |
宽 clamp(row.w*0.26~0.30, 46, 132),右缘内缩 |
| 应用按钮 | apply-command.png(九宫 60/0) |
command_plate(primary) |
CommandFrame 节点名保留(既有契约) |
| 标题块 | 世界层象牙白+阴影 | header_band |
标题/副标题都落在带宽 clamp(content.h*0.19, 86, 132) 的内框 |
| 安全区辅助线 | 私有 StyleBoxFlat |
保留(共享族暂无同类) | 颜色改 UITokens.COLOR_IVORY |
- 源绑定 attempt
m63-setup20260913T183304Z-47444:首次设置/响应式/捕获、 入口流程、M63 探针(18 次扫描 0 违规)全过,marker 恰好一次,strict 0。 - 修复的真实缺陷:① 760 紧凑行标题被截断(槽 37.6px,改为微字号+两行内换行); ② 大卷轴卡把标题压在卷边下(实测开口内缩);③ 行徽章/数值牌压在牌匾卷边上。
M63-I03(观察):760x360 紧凑双列下最长标签(字幕与事件标签)换两行, 完整可读,检查器通过;不改设计。M63-I04(已做):删除设置页不再使用的入口素材常量 (FIRST_LAUNCH_PREVIEW_FRAME/SETTING_ROW/APPLY_COMMAND/SETTING_ICON/VALUE_PLATE/ RETURN_TAB)与随之无用的_first_nine_patch;素材文件保留(设计权威目录仍引用其来源)。
验收检查
- 既有 Boot 行为证据继续通过:
ABG_DEV1_BOOT_RUNTIME_OK、ABG_DEV1_BOOT_RESPONSIVE_OK、ABG_SYS001_BOOT_CAPTURE_OK、ABG_DEV1_ENTRY_TOUCH_OK;节点名保持不变(BootWorld/BootIdentityPlaque/BootVerificationRail/BootStatusSeal*/BootStatus/BootDetail/BootProgress/BootProgressValue/BootRetry/BootDiagnosticsAction/BootExit);类型契约变更(rail/plaque 由贴图容器变布局容器、按钮文字移入ButtonLabel)在聚焦测试中同步更新。 - 新探针
m63_entry_visual_probe.gd:boot 的 normal/error × 3 尺寸 × 2 语言, static/dynamic/final,墨迹检查自检 + 扫描通过(ABG_M63_ENTRY_INK_OK)。 - 源绑定 attempt:marker 恰好一次、strict 诊断 0、owned cleanup。
- 语义冻结:boot 流程/设置读写/Save 路径/路由不变。
冻结范围
玩法、经济、内容、Save、路由、音频、打包一律不动;只改 Boot 的呈现层与共享 材质层;其它入口页(设置/Title)本轮不动。
提交边界
计划激活提交;Boot 迁移 + 材质 + 探针提交;证据与账本提交。
Issue Register
M63-I01OPEN:BootProgress由ProgressBar变为共享材质实例;如后续 仍有测试读取ProgressBar.value,在对应聚焦测试中改为读取节点属性value。M63-I02OPEN:入口页的credits屏本轮不在范围内(DEV-1R 未列), 矩阵中标记为后续步骤。