dsh-minigames:DSH Web 右侧栏小游戏盒子

前言

在 DSH Web 里长时间盯对话、等模型输出时,很多人会希望右侧栏能放一点不抢焦点的消遣,而不是再开浏览器标签。社区插件 dsh-minigames(维护者 feiniao1933)把五子棋人机对战和一款仿微信风格的打飞机收进同一个右侧栏标签页,走 DSH 公开的右侧栏扩展位,不额外发网络请求。下面按定位、能力、安装和用法说明怎么用起来。

这是什么

dsh-minigames 是面向 DSH Web 客户端的 bundle 插件(package.json 版本 1.1.1),在右侧栏注册一种标签类型,并在 Start 页提供「游戏盒子 / Mini games box」入口。它解决的是:在 Harness 界面内就地玩游戏、切换游戏时尽量保留状态,并与深浅色主题、多语言文案对齐。插件在 SkillHub 目录分类为趣味换装类展示;功能上以 README 描述的棋牌与街机内容为准。

核心功能

游戏盒子总览

同一右侧栏标签内顶部是游戏架,当前包含:

  1. 五子棋(Gomoku):你执黑先手,对战内置 AI;难度可选简单 / 普通 / 困难(默认困难),对应同一搜索引擎的不同搜索深度。
  2. 打飞机(Sky shooter):在页面内 <canvas> 上运行的街机射击,拖拽或方向键 / WASD 移动,自动开火,追逐本地最高分。

切换游戏时,在标签保持打开的情况下两套状态会分别保留;另有「更多游戏」占位行,尚无额外游戏。

五子棋

  • 点击交叉点落子,或聚焦棋盘后用方向键与 Enter。
  • 重新开始 清空棋局;悔棋 撤销你的最后一手及 AI 回应;改难度从 AI 下一手生效,不重置当前棋盘。
  • 落子音由 Web Audio API 合成(无独立音频资源);页头扬声器可静音,选择会写入 localStorage,静音时胜利提示音也会跳过。
  • 胜 / 负 / 平局次数按浏览器保存在本地。
  • 获胜会触发全屏庆祝层:彩带、烟花、奖杯卡片与统计;支持 Play again,若干秒后自动消失,或按 Escape / 按钮关闭;系统开启减少动态效果时会关闭动画。

打飞机

  • 敌机分波次下落,类型与击毁得分分别为 10 / 35 / 120;三条命,碰撞扣命并短暂无敌与震屏,命尽结束本局。
  • 最高分写入 localStorage;切换游戏或隐藏标签时会暂停,可从覆盖层继续或重开;静音同样作用于街机音效。

与 DSH 界面集成

插件贡献 一个右侧栏标签类型 和 一个 Start 页胶囊,行为与其它右侧栏标签一致:可拆分、浮动、在 pane 间移动,隐藏时仍保持挂载。

注册路径(公开扩展位)在 README 中给出,例如右侧栏标签、Composer 左侧启动器、胜利层 overlay 等 slot。

隐私与本地数据

插件不发网络请求。仅在浏览器 localStorage 中保存:五子棋战绩、难度、音效开关、上次所选游戏、打飞机最高分(键名见仓库 README Privacy 一节)。

安装与启用

环境要求:DSH 0.2.2-rc.1 及以上,且使用带 Web 客户端(右侧栏插件席位)的部署。从公开仓库安装:

dsh plugin --profile web add 'github:feiniao1933/dsh-minigames'

若需固定到已审核的提交:

dsh plugin --profile web add 'github:feiniao1933/dsh-minigames#<commit-sha>'

安装后若运行中的页面未加载新 bundle,需重启 dsh web。插件在管理中的行 id 为 minigames-box;卸载示例:

dsh plugin --profile web remove dsh-minigames

许可证为 MIT(© 2026 Poboy)。安装前宜自行浏览 GitHub 仓库 源码与 LICENSE;插件随当前 dsh 进程权限运行,与装任何社区 bundle 一样,应确认来源与维护者。

典型用法

从 Composer 工具栏进入(最快)

在对话输入区上方工具行左侧(附件控件旁)点击小块棋盘图标,会打开右侧栏并直接进入游戏盒子,即使侧栏此前是关闭的。

从 Start 页进入

  1. 点击会话头里的侧栏按钮,打开右侧栏。
  2. 在 Start 页选择 游戏盒子 / Mini games box 胶囊。
  3. 若侧栏停在其它标签,可用标签条上的「+」回到 Start 页再选胶囊。

打开后:顶部切换五子棋 / 打飞机,下方为当前游戏界面;五子棋可调难度与静音,打飞机内拖拽操作即可开局。

适用场景与注意

适合谁: 已在用 DSH Web、希望右侧栏里有一段可暂停的离线小游戏、且不希望在 Harness 外切换窗口的开发者或日常用户。

注意:

  • 仅 web profile 安装路径在 README 中写明;需满足 engines.dsh 对 0.2.2-rc.1+ 的要求。
  • 社区目录 SkillHub 插件页 与 GitHub 为独立信息源,与 DeepSeek / 幻方无官方应用商店从属关系;星标与分类以各站点当时展示为准。
  • 仓库自述在 DSH 0.2.2-rc.1、macOS、dsh web 下做过测试;其它环境需自行验证。
  • UI 文案经 Client locale 服务路由(含中英文等);非 artwork 颜色使用 --dsw-alias-* 主题 token,随深浅色切换。

结尾

dsh-minigames 把五子棋三档 AI、落子音与胜利庆祝,以及本地纪录的打飞机,收进 DSH 右侧栏常规定义标签里,Composer 与 Start 页均可一键进入,本地偏好与战绩不落盘到远端。要进一步看截图与实现拆分(src/engine.js、src/plane.js、src/ui.js 等),可阅仓库 README。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜