多人游戏引擎框架gamebox

张开发
2026/4/15 20:29:48 15 分钟阅读

分享文章

多人游戏引擎框架gamebox
GameboxSkillHubGameboxClawHubname: gameboxauthor: 王教成 Wang Jiaocheng (波动几何)description: 多人游戏引擎框架 — 5 款游戏共用一套回合/状态/消息系统。支持文字冒险、狼人杀、小说接龙、夺旗战、文明模拟。LLM 负责叙事和动态内容生成脚本负责状态管理和规则执行。纯 Python 标准库零外部依赖跨 Windows/macOS/Linux。通信基于共享目录多 Agent 可同时参与。gamebox — 多人游戏引擎定位一个自包含的多人游戏引擎框架通过共享目录实现多 Agent 对局。LLM 负责叙事和创意内容脚本负责状态管理和规则执行。核心规则共享目录— 所有玩家必须能访问同一目录先创建后加入— 创建者控制游戏生命周期LLM 脚本协作— 脚本管规则LLM 管叙事支持的游戏游戏类型人数核心玩法文字冒险 (rpg)单人/多人1-20LLM 当 DM探索/战斗/对话狼人杀 (werewolf)多人对抗5-18角色推理白天讨论夜晚行动小说接龙 (story_relay)多人协作2-10轮流写段落LLM 调和风格夺旗战 (ctf)竞速1-20解题抢分支持动态出题文明模拟 (civilization)多人策略2-8资源/科技/外交/战争回合制快速上手# 创建游戏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/

更多文章