feat: add production campaigns, gameplay labs, and review documentation

This commit is contained in:
cabinw
2026-09-13 12:27:10 +08:00
parent d1dffa9338
commit 4644e975b0
214 changed files with 98994 additions and 134 deletions
+80
View File
@@ -0,0 +1,80 @@
# v0.5 千关浏览与操作检查
检查日期:2026-09-12。状态:**最终冻结批次的浏览器与操作检查已完成**。
正式 `pipelineHash`:`ef59b3d561147031a8cbfd059c67fabe01054039e89cba4c27c7b6408d05b03d`。
范围修订(2026-09-12):用户明确要求只制作关卡,界面与操作沿用原游戏。已撤回 v0.5 的缩放按钮强制显示与其 48 px 留白,以及教学关专用的控件隐藏、布局和配色。下文第 3 节的缩放按钮检查属于已撤回方案的历史记录,不代表当前界面;关卡数据和原有操作逻辑未变。
显示修订(2026-09-12):用户指出正式游戏只有设计主路线较粗,其他可行驶轨道像辅助线。已从主游戏移除 `trackEmphasis`,所有真实轨道恢复原游戏统一的线宽和颜色;制作审核页仍可用强调模式查看造型。关卡布局、行走规则和流水线哈希未变。第 5 关及其旋转后画面均有 57 对标准轨道,第 1000 关有 273 对标准轨道;390×844 视口无横向溢出。相关 22 项回归与静态构建通过。[绘制记录](v0.5-review/tracks-unified.json) · [第 5 关新画面](v0.5-review/tracks-unified-level-5-mobile.png) · [第 1000 关新画面](v0.5-review/tracks-unified-level-1000-mobile.png)。下文原截图中的轨道强调样式属于修订前记录,操作结果仍适用。
扩展策略审核后,最终批次相较开发快照重制了 790 关。本轮强制刷新浏览器模块,在浏览器内重新计算六个现场样本的规范布局 SHA-256,并与冻结配方逐一核对;第 1、4、34、849 关已重跑,第 3、1000 关布局哈希完全相同,保留其已有正常速度操作证据。20 张联系表全部重新导出。[浏览器哈希核对](v0.5-review/final-browser-batch.json) · [新旧布局对照](v0.5-review/layout-verification.json)
原开发记录的相关日志与画面保存在 `docs/v0.5-review/pre-final/`,不代替本批次记录。
本报告记录实际浏览器操作与画面检查。关卡全量求解、二十种策略回放和整体分布由生产报告记录;这里没有把自动化点击视为真人体验评价。
## 1. 接入与浏览
- v0.5 注册为新访客默认版本;已有版本选择继续沿用。v0.1–v0.4 的关卡与独立存档保留。
- 主游戏接受 `?campaign=v0.5&level=1000` 等链接,关号从 1 开始。越界关号不会写入进度。
- 主选关弹窗按章显示,每页最多 50 关。实测第 1 章索引 0–49,第 20 章索引 950–999;隐藏侧栏同样只生成当前章的 50 个按钮。
- 直接前往 501 关成功。切到 v0.4 后再回 v0.5,恢复第 501 关;旧版位置保持独立。[操作记录](v0.5-review/navigation.json)
- 正式展示使用制作分档与“预估”字样;长路格数、弯数单独描述观看内容。生产关不再运行旧的“长路加分”分析来显示难度。静态旧版分析和当前状态提示各有缓存。
主选关截图:[390×844 视口](v0.5-review/map-mobile.png)。截图像素可能按设备像素比放大,文中尺寸均指 CSS 视口。
## 2. 原操作逻辑现场检查
这些操作通过主游戏的真实鼠标/指针事件与旋转按钮完成。记录器只包装 `Game.tap` / `Game.rotate` 返回值,没有替代碰撞、移除或动画逻辑。使用正常动态效果;测试等待轨道和离场动画实际结束,再触发需要等待的旋转或结算操作。
| 样本 | 操作与现场结果 | 证据 |
| --- | --- | --- |
| 第 1 关,长路巡游 | 点击 t0 后 109.6 ms 再点 t1,两次都立即返回 `exit`,剩余数量 3→2→1;t0 原动画时长约 2627 ms,第二枚已在它结束前启动 | [连点日志](v0.5-review/rapid-tap.json)、[画面](v0.5-review/main-mobile-rapid.png) |
| 第 3 关,清挡放行 | t0 初始被挡。移走 t1 后 t0 状态变为 `exit`,35.6 ms 后可立即启动,剩余 5→4→3 | [清挡与反差日志](v0.5-review/gate-contrast.json) |
| 第 4 关,轻巧反差 | t0 初始被挡;右转至 60° 后点击 t0,沿 10 格轨道成功离场 | [清挡与反差日志](v0.5-review/gate-contrast.json)、[画面](v0.5-review/main-mobile-contrast.png) |
| 第 34 关,分段释放 | 最终保存的 10 步路线全部执行,8 枚棋子清空,实际出现胜利弹窗 | [完整回放日志](v0.5-review/full-replays.json) |
| 第 849 关,重制后的舒缓关 | 61 格编织盘、8 枚棋子;新保存的 8 步路线全部成功离场,正常播放结束后出现胜利弹窗 | [完整回放日志](v0.5-review/full-replays.json)、[完成画面](v0.5-review/level-849-complete.png) |
| 第 1000 关,分段释放 | 14 次成功离场、右转及左转各一次,共 16 步全部执行。最后一枚动画结束后出现胜利弹窗;点击“完成旅程 · 回到第一关”后显示 `LEVEL 01` | [完整回放日志](v0.5-review/full-replays.json)、[完成画面](v0.5-review/level-1000-complete.png) |
原 `rapid-tap-app` 回归还覆盖重复点击、阻挡反馈、运动时释放新棋子、重置、撤销、旋转期间缓存点击,以及切关取消旧动画。
## 3. 大盘与小屏(缩放按钮方案已撤回,保留历史记录)
以第 1000 关的 91 格盘面,在 390×844 视口检查。最终布局哈希与此操作记录的布局相同,因此保留本组正常速度的界面证据:
- 默认完整显示棋盘,无页面横向溢出,棋子几何直径约 37.8 CSS px。
- 现有样式曾隐藏所有缩放按钮。本次仅为 v0.5 恢复缩小、比例重置、放大控件,并为控件预留 48 px 区域,使它不会挡住棋盘上侧的棋子。
- 两次放大后显示 154%,棋子几何直径约 58.3 CSS px;这是该视口与盘面下的缩放上限,不是所有设备的统一值。实际横向拖动改变画面,棋子数量仍为 14;点击比例重置后恢复 100%。[拖动与重置记录](v0.5-review/pan-reset.json)
- 放大后右转 60°,再点击可见棋子 t13,成功离场,数量 14→13。主轨道强调随棋盘旋转;纯函数回归另外验证所有六个朝向都只强调对应真实配对。
[大盘原尺寸](v0.5-review/r5-mobile-fit.png) · [放大局部](v0.5-review/r5-mobile-zoom.png) · [旋转后局部](v0.5-review/r5-mobile-zoom-rotated.png) · [尺寸与点击记录](v0.5-review/r5-mobile.json)
这些结果证明控件与点击路径可用;手指误触、连续跟线负担及长时间观看舒适度仍需真机与真人试玩。放大视图会裁去棋盘两侧,重置比例可回到全盘。
## 4. 制作审核页
入口:[千关制作记录](../labs/campaign-review/index.html)。页面按章节浏览,可筛选体验与难度预估、直接跳关、下载单关 JSON、逐步或连续播放制作时保存的清盘路线。
- 390×844 与 1440×1000 视口均无横向溢出,每章只创建 50 张卡片,进入视野时才绘制缩略图。
- 第 1 章筛选“轻巧反差”得到 5 关;输入 1000 跳至第 20 章并打开对应详情,显示 16 步记录。
- 审核页第 1 关的连续回放完成 3 步,界面确认 3 枚棋子全部离场。[回放状态](v0.5-review/review-replay.json)
- 自动记录从 `levels/v0.5-analysis.json` 读取;后续人工记录从独立 `levels/v0.5-reviews.json` 合并为 `manualReview`,不覆盖生成时快照。
- 最终重新加载第 1000 关详情,确认独立文件有 1000 条人工记录、批次哈希一致,详情中的 `manualReview` 与对应文件记录逐字段一致。记录明确区分章节总览目检、浏览器抽查与尚未进行的真人校准。[合并读取证据](v0.5-review/manual-review-load.json)
- 章节总览导出不受筛选或缩略图懒绘制影响。每张包含本章 50 关,5 列×10 行,1524×3876 像素;关号、名称、体验、结构预估和巡游指标同时保留。
[桌面审核页](v0.5-review/review-desktop.png) · [手机宽度审核页](v0.5-review/review-mobile.png)
最终批次在关闭浏览器网络缓存后的本地加载观测:关卡模块 9,622,010 字节,资源耗时 42.5 ms,页面 `loadEventEnd` 约 178.7 ms。此处没有开启移动网络限速,也不是低端手机性能测试;不能据此推断线上下载时间或冷启动预算。[加载记录](v0.5-review/load-metrics.json)
## 5. 回归与联系表
相关自动回归命令:
```sh
node --test tests/campaign-browser.test.js tests/campaign-versions.test.js tests/rapid-tap-app.test.js
```
22 项通过,覆盖版本注册、独立进度、URL 定位、章节边界、静态分析缓存、六方向配对强调,以及原快速连点行为。
20 张最终联系表位于 `docs/v0.5-review/contact-01.png` 至 `contact-20.png`,全部从上述冻结批次重新导出。[图像清单与 SHA-256](v0.5-review/contact-manifest.json)记录每张图片对应的章节、关号与尺寸。前 500 关与后 500 关的目视结论分别记录在对应视觉审核文档;联系表目检不等于逐关真人通关。第 849 关已替换为编织巡游,第 850 关保留章节收束花瓣。