59 lines
3.1 KiB
Markdown
59 lines
3.1 KiB
Markdown
# 首版验收记录
|
||
|
||
日期:2026-09-21。规则版本:velvet-v1。
|
||
|
||
## 已完成
|
||
|
||
- TypeScript 静态检查与 Vite 生产构建通过。
|
||
- 80 个规则/状态/存档用例通过,加 1 个固定种子对局测试,共 81 个测试。
|
||
- 牌型测试覆盖 12 类牌型、A 高低顺子与非法绕接、牌型包含关系、计分牌顺序。
|
||
- 计分金样覆盖加倍率与乘倍率顺序、红封与回声叠加、留手钢铁和月后、Boss 失效与钝刃、成长与牌型升级、经济先后顺序。
|
||
- 事务覆盖重复购买、重复领奖、槽位已满、非法目标、卡包选择、跳盲标签、牌库守恒、无法出牌的死局、存档校验与恢复。
|
||
- Chrome 浏览器交互通过:Canvas 选牌、拖拽、出牌、弃牌、刷新恢复、图鉴、小丑调序、行星使用、领奖、购买、刷新、开包、跳盲。
|
||
- Chrome 模拟触屏通过:点击选牌、长按查看手牌、触摸拖动排序。
|
||
- 1440×900、1280×720、932×430 视口截图检查;左侧状态与操作区域无溢出。
|
||
- 浏览器测试最终运行无页面脚本错误。
|
||
|
||
## 自然规则流程检查
|
||
|
||
使用 `tests/balance.test.ts` 中的有限贪心策略,运行种子 VELVET-1 到 VELVET-16。没有修改金钱、牌面、次数或等级,仅通过正常命令操作。
|
||
|
||
- 11 局通关,5 局失败。
|
||
- VELVET-1 完成全部 24 个盲注,最高单手 72,000。
|
||
- VELVET-5 在 Ante 4 失败;VELVET-12 到达最终 Boss 后失败。
|
||
- 每次成功命令后检查存档结构和实例唯一性。
|
||
|
||
这只证明正常规则下有可复现的胜败流程,不是人类胜率估计。贪心策略偏好对子与成长组合,不能据此宣称留手、同花等所有流派已平衡。
|
||
|
||
## 界面截图
|
||
|
||
- `artifacts/blind-selection.png`:正常新局盲注选择。
|
||
- `artifacts/playing.png`:正常新局出牌界面。
|
||
- `artifacts/joker-table.png`:固定 UI 夹具,用来验证小丑重排和行星效果;牌面经过测试设置,不是自然进程截图。
|
||
- `artifacts/shop.png`:该 UI 夹具的商店流程。
|
||
- `artifacts/desktop-1280.png` / `artifacts/mobile-landscape.png`:相同夹具的尺寸验收。
|
||
|
||
所有截图均来自实际运行的浏览器,没有绘图替代或后期修改。
|
||
|
||
## 环境与限制
|
||
|
||
- Node.js 22.15.1;PixiJS 8.6.6;Vite 6.1.0;TypeScript 5.7.3。
|
||
- 浏览器自动化使用 macOS 系统 Chrome 的独立临时上下文和 SwiftShader 软件 WebGL,不读取个人浏览器资料。
|
||
- Headless Chrome 默认环境未提供可用 WebGL,测试显式启用软件 WebGL;产品在 WebGL 不可用时显示启动提示并保留已有存档。
|
||
- 未测真实手机、Safari、Edge 或硬件帧率;60 FPS 仍为目标,不作为已验证结论。
|
||
- 手机横屏使用等比缩放;文字和按钮比桌面更紧凑。竖屏提示旋转。
|
||
- 本地存档按浏览器来源区分;未实现云同步或安装型离线缓存。
|
||
- 首版未实现原作全部卡池、挑战解锁、无尽大数模式。
|
||
|
||
## 运行命令
|
||
|
||
```sh
|
||
npm run build
|
||
npm test
|
||
npm run format:check
|
||
# 先启动 npm run dev,再运行:
|
||
npm run test:browser
|
||
```
|
||
|
||
浏览器测试采用专用临时上下文,不修改实际预览面板里的用户对局。
|