Files
xiaochoupai/docs/verification.md
richarjiang 12380c715c first commit
2026-09-21 14:45:24 +08:00

3.1 KiB
Raw Blame History

首版验收记录

日期: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 仍为目标,不作为已验证结论。
  • 手机横屏使用等比缩放;文字和按钮比桌面更紧凑。竖屏提示旋转。
  • 本地存档按浏览器来源区分;未实现云同步或安装型离线缓存。
  • 首版未实现原作全部卡池、挑战解锁、无尽大数模式。

运行命令

npm run build
npm test
npm run format:check
# 先启动 npm run dev,再运行:
npm run test:browser

浏览器测试采用专用临时上下文,不修改实际预览面板里的用户对局。