跳到主内容

dsh-minigames 使用指南

DSH Web 浮动小游戏窗口,内置 18 款离线 Canvas 游戏,自带可拖动面板、可吸附边缘与本地最高分。

本文为派生内容(基于 wiki / faq / compatibility_json 自动组装),非 AI 即时创作。

本文由本站基于该插件已收录的字段自动派生(wiki / faq / compatibility_json / readme),非 AI 即时创作。每节末尾标源字段。

快速上手

dsh-minigames

— 源: plugin_wiki.wiki_content

安装与验证

dsh plugin --profile web add github:lhh010/dsh-minigames

复制以上命令在 DSH Web Profile 内运行。安装完成后在「插件列表」启用即可。

— 源: plugins.install

关键要点

  • 折叠态:窗口隐藏后留下一个圆形浮动 🎮 按钮(默认右下角),可自由拖动并记住位置,
  • 展开态:浮动小游戏窗口,拖动标题栏可随意移动,松手靠近屏幕边缘自动吸附
  • 游戏(全部离线、零资源文件、Canvas 绘制):
  • 预留扩展接口:游戏注册表(registerGame),新增游戏只需实现一个接口。
  • 体验细节:隐藏窗口/切换标签页时自动暂停游戏、恢复时继续;每局最高分存

— 源: plugin_wiki.readme_zh (fallback readme_raw)

常见问题

安装后页面右下角没看到 🎮 按钮怎么办?

插件只在 DSH Web profile(dsh --profile web)下加载,纯桌面端不会渲染;首次安装或移除后必须重启 dsh web 进程让宿主重新扫描插件清单。如仍不显示,可打开浏览器控制台查看 window.__DSH_BOOT__ 是否包含 @dsh-external/dsh-minigames,以及 /plugins/@dsh-external/dsh-minigames/client.js 是否返回 200。

需要单独配置什么吗?

不需要。插件零配置,安装后右下角即出现 🎮 启动按钮,单击即可打开面板;窗口位置、停靠状态、宽度、选中游戏与每款游戏的最高分都会自动保存在浏览器 localStorage。

玩到一半切走标签页 / 关掉窗口会丢进度吗?

不会。游戏在被隐藏、标签页切换或窗口折叠时会自动暂停(rAF 循环停转),恢复时自动继续;但每局的局内进度(如坦克大战当前波次、消消乐当前关卡)不会跨会话保存,仅"最高分"是跨会话持久化的。

怎么卸载?

执行 dsh plugin --profile web remove @dsh-external/dsh-minigames 然后重启 dsh web。localStorage 里的偏好键(dsh-minigames:*)会留在浏览器内但不再被读取,需要时可手动清理。

跟枪练习(FPS)需要特殊权限吗?

该游戏使用浏览器的 Pointer Lock API(点击画布后锁定鼠标、隐藏光标),Esc 会自动释放并暂停到覆盖层;不需要任何额外权限申请,少数禁用 Pointer Lock 的环境会自动降级为普通鼠标坐标,但仍可玩。

我可以自己加一款小游戏吗?

可以。插件公开了 registerGame(来自 src/client/games/registry.ts),按 MiniGameDefinition 接口(src/client/games/types.ts)实现 id/title/icon/description/controls/create 即可在面板里出现一个新卡片,无需改动面板或注册表本身;建议把游戏逻辑写成纯函数模块并用 vitest 单测覆盖。

占用主页面空间吗?会和聊天框冲突吗?

不冲突。面板是独立的浮动窗口(document.body portal),不依赖 DSH 布局槽位;键盘输入只在点击游戏区域获取焦点后生效,点回聊天输入框时游戏会主动让出键位,反之亦然——这是有意设计,避免游戏劫持正常打字。

18 款游戏都完全离线吗?会上传数据吗?

完全离线:所有画面用 Canvas 实时绘制,零图片/音频资源文件,零网络请求;游戏不读取你的对话内容,最高分只存本机浏览器 localStorage(键名前缀 dsh-minigames:best:)。

— 源: plugin_wiki.faq_json

兼容性

  • DSH: >=0.0.1(实机验证 0.0.1-rc.2 / 0.0.1-rc.5 / 0.1.1-rc.1)
  • Node: 未声明

— 源: plugin_wiki.compatibility_json

踩坑提醒

安装前请审阅上游仓库;本指南基于已收录字段自动派生,可能滞后于最新版本。如发现与官方文档冲突,请以上游为准。

— 来源:通用规则