返回项目列表

玩法拆解、规则引擎、PixiJS 表现层、验收文档与演示闭环

重庆益之趣三消关卡 Demo

短周期面试交付:把目标收集型三消参考素材拆成可运行单关卡 Demo,覆盖 9 x 9 棋盘、行李箱目标、交换回退、匹配结算、掉落补位、特殊棋子、胜利锁定、调试面板和验收文档。

面试项目 C:/coding/面试项目/重庆益之趣
Game DemoTypeScriptPixiJSViteVitestMatch-3

项目背景

这是一个面向游戏岗位/互动 Demo 的短周期面试项目。任务核心不是做一张静态三消棋盘,而是把目标收集型三消玩法拆成可运行、可验收、可扩展的单关卡闭环。

我把项目分成两层交付:

交付范围

当前 Demo 使用 Vite + TypeScript + PixiJS + Vitest 实现。第一版范围控制在单关卡,但保留了从 Demo 扩展到关卡系统的基础结构。

已经实现的能力包括:

架构拆分

项目刻意把“规则真值”和“表现反馈”分开。规则层负责棋盘状态、交换合法性、匹配检测、目标收集、掉落补位和事件输出;表现层只消费这些事件并更新 PixiJS 棋盘。

核心设计取舍:

工程实现

实现上优先保证三件事:

  1. 玩法闭环完整:交换、匹配、收集、掉落、补位、连锁和胜利可以串起来跑。
  2. 状态边界清楚:输入锁定、非法交换回退、目标清零后的胜利锁定都由状态控制。
  3. 演示路径稳定:debug 面板能快速触发特殊棋子,避免评审现场只靠随机局面等待。

这让 Demo 更像一个可继续迭代的游戏核心,而不是一次性动画页面。

验证方式

项目保留了两类验证:

常用验收命令:

npm test
npm run build

同时保留了运行手册和桌面/移动端浏览器截图,用于回看最终 UI 是否成功渲染、棋盘是否非空、调试控件是否可见。

演示重点

面试展示时我会按以下顺序讲:

  1. 先展示棋盘、目标栏和行李箱目标,说明这是目标收集型三消关卡。
  2. 演示有效交换、普通三消和目标数量减少。
  3. 演示无效交换回退,说明规则边界和反馈。
  4. 用 debug 控件触发火箭、炸弹或飞机,展示特殊效果和目标收集。
  5. 展示事件日志,说明如何把 demo 扩展成可调参、可验证的三消核心系统。
  6. 最后说明当前边界:这是单关卡面试 Demo,不包含账号、关卡选择、经济系统、联网服务或商业级美术音效。

公开边界

这个页面只公开我完成的工程方法、功能范围和可复用经验,不公开面试方原始题面、参考视频、内部链接或任何未授权材料。

复盘

这个项目的价值不在于三消规则本身复杂,而在于短时间内把一个开放素材转成可验收交付:先定义范围和假设,再拆规则层与表现层,最后用测试、构建、运行手册和演示辅助控件把结果固定下来。