Skip to content

who_is_spy(牛牛卧底)

字数
542 字
阅读时间
3 分钟

官方扩展pallas-plugin-who-is-spyuv sync --extra plugins-who-is-spy

群内谁是卧底:开房、自由讨论、房主发起投票、私聊匿名投票,直至一方阵营获胜。

用户命令

口令 / 触发场景说明
牛牛卧底群内开房
牛牛加入 / 牛牛退出群内筹备阶段进出
牛牛发身份 [潜藏人数] [白板] [暗牌|明牌]群内房主开局并下发词语
@牛牛 + 描述群内讨论阶段记为述词
牛牛投票群内房主提前开始投票(先发复盘)
私聊回复数字序号或 0私聊投票(0=弃权)
牛牛局势 / 牛牛结束群内察看局势、结束房间

命令权限

命令 ID默认等级
who_is_spy.openeveryone
who_is_spy.joineveryone
who_is_spy.starteveryone(含牛牛投票)
who_is_spy.statuseveryone
who_is_spy.endeveryone

配置

WebUI 插件 → 牛牛卧底config.py。常用项:最少/最多人数、默认卧底与白板数、是否暗牌、述词字数上限等。

私聊与邮箱:发词/投票说明优先好友私聊;失败时尝试临时会话;仍失败且开启邮箱兜底时,复用 牛牛状态 的 SMTP 向 {QQ号}@qq.com 发信。

词库:data/who_is_spy/undercover_words.json(首次从内置 resource 复制,之后自动合并新增词对)。编辑后重启 Bot 生效。

排障

现象处理
收不到词语/投票私聊加牛牛好友;或查 QQ 邮箱;确认牛牛状态 SMTP 已配置
私聊「你的词:」后无字非白板玩法,属投递失败;加好友、查邮箱或看开局提示里的未达名单
本群已有房间多机部署下同群互斥;「牛牛结束」或等局后自动清理
@牛牛 述词无回复多牛同群须 @ 本局主持牛(发「词已私聊」的那只)
词库为空检查 data/who_is_spy/undercover_words.json 或内置 resource/who_is_spy/

实现

src/plugins/who_is_spy/