Skip to main content

一款适用于QQ群的谁是卧底小游戏插件

Project description

NoneBotPluginLogo

NoneBotPluginText

nonebot-plugin-who-is-spy

✨ 一个谁是卧底小游戏插件 ✨

license pypi python

一个基于 NoneBot2 的群聊游戏插件 —— 谁是卧底
支持 群聊轮流发言 + 私聊匿名投票,带有胜场统计、排行榜、胜率榜等功能。

📖 介绍

nonebot-plugin-who-is-spy 是一个基于 NoneBot2 开发的多人群聊游戏插件,复刻了经典的 谁是卧底 桌游玩法。
它支持在 QQ 群里发起游戏,玩家轮流发言,通过私聊匿名投票淘汰嫌疑人,直到一方胜利。

特点:

  • 规则完整:平民、卧底、白板三种身份,还原线下游戏体验
  • 私聊投票:保护投票隐私,避免被针对
  • 自动化流程:发言、投票、淘汰、胜负判定全程自动进行
  • 数据统计:记录胜场、参与次数,支持排行榜与胜率榜
  • 可定制化:词库、玩家人数、白板开关、身份提示等均可配置

💿 安装

使用 nb-cli 安装 在 nonebot2 项目的根目录下打开命令行, 输入以下指令即可安装
nb plugin install nonebot-plugin-who-is-spy
使用包管理器安装 在 nonebot2 项目的插件目录下, 打开命令行, 根据你使用的包管理器, 输入相应的安装命令
pip
pip install nonebot-plugin-who-is-spy
pdm
pdm add nonebot-plugin-who-is-spy
poetry
poetry add nonebot-plugin-who-is-spy
conda
conda install nonebot-plugin-who-is-spy

打开 nonebot2 项目根目录下的 pyproject.toml 文件, 在 [tool.nonebot] 部分追加写入

plugins = ["nonebot_plugin_template"]

⚙️ 配置

在 nonebot2 项目的.env文件中添加下表中的必填配置

配置项 必填 默认值 说明
spy_min_players 4 最少人数
spy_max_players 12 最大人数
spy_default_undercovers 1 默认卧底人数
spy_allow_blank True 是否允许白板
spy_show_role_default False 发词时是否显示身份
spy_word_file "undercover_words.json" 词库文件
spy_config_path "config.json" 游戏配置项文件
spy_stats_path "stats.json" 游戏统计数据

📂 词库

插件的词库文件使用 JSON 格式,存放在:

template/undercover_words.json

文件内容是一个二维数组,每一项是一个词对,格式为:

[
  ["平民词", "卧底词"],
  ["苹果", "香蕉"],
  ["猫", "狗"],
  ["飞机", "火车"]
]

🎉 使用

指令

  • 在群内发送 卧底帮助 即可获取帮助
🎮 谁是卧底 - 群聊版玩法说明
——————————
【开局】
卧底开局 [卧底人数] [blank]   创建房间(可选参数:卧底人数,blank=有白板)
加入    进入房间
发身份  房主开始游戏并私聊词语

【发言阶段】
- 系统会在群里公布发言顺序
- 轮到谁,谁直接在群里说一句描述
- 每人一句话,依次发完自动进入投票

【投票阶段(私聊进行)】
- 机器人私聊存活玩家投票序号列表
- 私聊直接回复数字:0=弃权,数字=投票对象

【胜负判定】
- 卧底全出局  平民胜利
- 卧底数≥平民数  卧底胜利

【常用指令】
状态    查看当前局势和投票序号
复盘    查看上一局记录
结束卧底  强制结束当前局
身份提示 开/关  设置私聊是否提示身份
卧底帮助  查看本说明
胜率榜 / 我的胜率  查看胜率 

效果图

alt text

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nonebot_plugin_who_is_spy-0.0.2.tar.gz (27.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nonebot_plugin_who_is_spy-0.0.2-py3-none-any.whl (26.7 kB view details)

Uploaded Python 3

File details

Details for the file nonebot_plugin_who_is_spy-0.0.2.tar.gz.

File metadata

File hashes

Hashes for nonebot_plugin_who_is_spy-0.0.2.tar.gz
Algorithm Hash digest
SHA256 2f15aeb2409cc23888759991300340311dc5c30b0264e1f397c31012a8a27b6e
MD5 44f448acf90066bf8672d1f21cc5f963
BLAKE2b-256 4c1dd4a3e1565da942e603dbd8cfd153b5abbeca84e4bb2d0d1f4b4c5ec33371

See more details on using hashes here.

Provenance

The following attestation bundles were made for nonebot_plugin_who_is_spy-0.0.2.tar.gz:

Publisher: pypi-publish.yml on Hanserprpr/nonebot-plugin-who-is-spy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nonebot_plugin_who_is_spy-0.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for nonebot_plugin_who_is_spy-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 dd2ed1a33f5109562ef117fc29915ea93183b90c3bd1b9067b1212e269075639
MD5 44d990ba3b630e2e91713425c15a9fe6
BLAKE2b-256 226ea0e687700bd9f35760fb6d91b6a332759949896b70e5d13e79b8224696cf

See more details on using hashes here.

Provenance

The following attestation bundles were made for nonebot_plugin_who_is_spy-0.0.2-py3-none-any.whl:

Publisher: pypi-publish.yml on Hanserprpr/nonebot-plugin-who-is-spy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page