DeepSeek Harness (DSH) 支持通过插件扩展功能。dsh-tetris 是一个 bundle 插件,将经典俄罗斯方块嵌入 DSH Web 侧栏。它支持全屏游玩和跨玩家共享排行榜。
核心功能¶
该插件包含现代俄罗斯方块的核心玩法要素:
- 7-bag 随机:七个方块一轮洗牌,避免连抽相同方块。
- SRS 踢墙:支持贴墙和贴地旋转。
- 幽灵方块:显示落点预览。
- 保留(Hold):暂存当前方块。
- 锁定延迟:落地后 500ms 内仍可移动或旋转。
- 音效 + BGM:Web Audio 合成主题曲。
- 最高分持久化:localStorage 保存历史最高分。
- 跨玩家排行榜:所有安装者的分数进入同一张榜。
安装与启用¶
使用官方命令安装:
dsh plugin --profile web add dsh-tetris
安装完成后,重启 dsh web。侧栏底部会出现 「🎮 俄罗斯方块」 按钮,点击即可全屏游玩。
若从 GitHub 源码安装:
dsh plugin --profile web add github:jasoncanada77-star/dsh-tetris
使用 git 安装会运行 prepare 构建脚本。如果你的 pnpm 版本 >= 10,需要在 profile 的 pnpm-workspace.yaml 中添加:
allowBuilds:
dsh-tetris: true
使用说明¶
进入游戏后,在侧栏输入昵称(最长 12 字,默认「玩家」)即可上榜。游戏结束(分数 > 0)后,分数会自动提交到共享排行榜。
注意事项¶
- KV 服务限制:排行榜使用免费的 kvdb.io 服务,无 SLA 保证,数据可能不稳定。
- 安全性与防作弊:分数由客户端上报,无鉴权机制,无法防止作弊。
- 离线支持:网络不可用时,分数暂存本地,联网后自动补交。
技术结构¶
这是一个标准 DSH bundle 插件:
* 入口点注册在 sidebar.footer.action(按钮)和 shell.overlay(全屏浮层)。
* 游戏逻辑运行在浏览器端,使用原生 setInterval/setTimeout。
* 卸载命令:dsh plugin --profile web remove dsh-tetris。