多人游戏引擎框架gamebox

Gamebox(SkillHub)
Gamebox(ClawHub)


name: gamebox

author: 王教成 Wang Jiaocheng (波动几何)
description: >
多人游戏引擎框架 --- 5 款游戏共用一套回合/状态/消息系统。
支持文字冒险、狼人杀、小说接龙、夺旗战、文明模拟。
LLM 负责叙事和动态内容生成,脚本负责状态管理和规则执行。
纯 Python 标准库,零外部依赖,跨 Windows/macOS/Linux。
通信基于共享目录,多 Agent 可同时参与。

gamebox --- 多人游戏引擎

定位

一个自包含的多人游戏引擎框架,通过共享目录实现多 Agent 对局。LLM 负责叙事和创意内容,脚本负责状态管理和规则执行。

核心规则

  1. 共享目录 --- 所有玩家必须能访问同一目录
  2. 先创建后加入 --- 创建者控制游戏生命周期
  3. LLM + 脚本协作 --- 脚本管规则,LLM 管叙事

支持的游戏

游戏 类型 人数 核心玩法
文字冒险 (rpg) 单人/多人 1-20 LLM 当 DM,探索/战斗/对话
狼人杀 (werewolf) 多人对抗 5-18 角色推理,白天讨论+夜晚行动
小说接龙 (story_relay) 多人协作 2-10 轮流写段落,LLM 调和风格
夺旗战 (ctf) 竞速 1-20 解题抢分,支持动态出题
文明模拟 (civilization) 多人策略 2-8 资源/科技/外交/战争,回合制

快速上手

bash 复制代码
# 创建游戏
python scripts/manager.py '{"action":"create","game_type":"werewolf","user":"alice"}'

# 加入游戏
python scripts/manager.py '{"action":"join","game_id":"abc12345","user":"bob"}'

# 启动游戏
python scripts/manager.py '{"action":"start","game_id":"abc12345","user":"alice"}'

# 执行动作(通过引擎统一接口)
python scripts/action.py '{"game_id":"abc12345","user":"alice","action_name":"vote","params":{"target":"bob"}}'

# 发送/接收消息
python scripts/message.py '{"game_id":"abc12345","user":"alice","action":"send","content":"我觉得 bob 很可疑"}'
python scripts/message.py '{"game_id":"abc12345","user":"bob","action":"receive"}'

# 回合控制
python scripts/turn.py '{"game_id":"abc12345","action":"status"}'
python scripts/turn.py '{"game_id":"abc12345","action":"next"}'

脚本清单

脚本 功能
common.py 公共工具层(JSON 协议、文件操作、时间戳)
manager.py 游戏管理(创建/加入/启动/结束/列出/详情/退出)
turn.py 回合控制(推进/阶段切换/超时跳过/状态查询)
action.py 统一动作接口(执行/历史/撤销)
message.py 消息系统(发送/接收/频道列表,支持公共/私聊/角色频道)
games/__init__.py 游戏模块注册表
games/rpg.py 文字冒险游戏逻辑
games/werewolf.py 狼人杀游戏逻辑
games/story_relay.py 小说接龙游戏逻辑
games/ctf.py 夺旗战游戏逻辑
games/civilization.py 文明模拟游戏逻辑

LLM 提示词

各游戏的 LLM 叙事提示词模板位于 references/games/

  • rpg.md --- DM 叙事风格指南
  • werewolf.md --- 主持人播报模板
  • story_relay.md --- 编辑顾问响应模板
  • ctf.md --- 出题人/裁判模板
  • civilization.md --- 历史记录者叙事模板

目录结构

复制代码
.gamebox/                        ← game_dir(共享目录)
├── games/                        ← 所有游戏实例
│   └── {game_id}/
│       ├── meta.json             ← 游戏元信息
│       ├── state.json            ← 游戏状态
│       ├── actions/              ← 动作记录
│       ├── messages/             ← 消息
│       │   ├── public/           ← 公共频道
│       │   ├── private/{user}/   ← 私聊
│       │   ├── role/{role}/      ← 角色频道
│       │   └── system/           ← 系统消息
│       └── logs/                 ← 事件日志

JSON 协议

  • 输入:JSON 字符串(CLI 第一个参数 或 stdin)
  • 输出{"status":"ok","data":{...}}{"status":"error","code":N,"message":"..."}
  • 共享目录 :通过 game_dir 参数指定,默认 .gamebox/
相关推荐
llm大模型算法工程师weng2 小时前
高校数据中台:驱动智慧校园从“联通”走向“智治”
人工智能
AIHR数智引擎2 小时前
AI时代,德鲁克依然是答案——只是问题变了
大数据·人工智能·学习·职场和发展·机器人·求职招聘
chQHk57BN2 小时前
AI辅助编程:GitHub Copilot会取代开发者吗?
人工智能·github·copilot
平原20182 小时前
什么是Harness_AIAgent的基础设施革命
人工智能·chatgpt·harness
东离与糖宝2 小时前
大语言模型基础:Transformer 核心思想通俗讲解
人工智能
灵机一物2 小时前
灵机一物AI智能电商小程序(已上线)-实测GPT-6(Spud):AGI完成70%-80%,200万Token+全模态,AI行业迎来生死洗牌
人工智能
2501_948114242 小时前
2026 主流模型选型指南:GPT-5.4 / Claude 4.6 / Gemini 3.1 Pro 任务场景分工图谱
人工智能·gpt·架构
布吉岛的石头2 小时前
AI 短剧进阶篇——从静态图到动态视频的完整流程
人工智能·音视频
渡我白衣2 小时前
【MySQL基础】(4):MySQL 数据类型
数据库·人工智能·深度学习·神经网络·mysql·机器学习·自然语言处理