一款数据驱动的足球俱乐部经营与战术模拟游戏。玩家扮演俱乐部主教练,负责阵容建设、战术部署、训练管理、转会决策和比赛日指挥。游戏强调可解释的模拟结果,而非授权真实数据。
| 组件 | 技术 |
|---|---|
| 游戏引擎 | Godot 4.6 |
| 脚本语言 | GDScript |
| 数据格式 | JSON |
| 存档格式 | JSON (user:// 目录) |
| 目标平台 | PC (1280×720, canvas_items 拉伸) |
football-manager/
├── project.godot # Godot 项目配置 & 入口
├── data/ # 静态游戏数据 (JSON)
│ ├── clubs/ # 俱乐部数据
│ ├── players/ # 球员数据 (~96人, 4支球队)
│ ├── leagues/ # 联赛数据
│ ├── tactics/ # 战术预设 (4-4-2, 4-3-3)
│ └── events/ # 游戏事件
├── scenes/ # Godot 场景文件 (.tscn)
│ ├── ui/ # UI 场景 (Game Shell, Tactical Lab)
│ └── match/ # 比赛场景 (规划中)
├── scripts/ # GDScript 源码
│ ├── app/ # 应用层控制器
│ ├── domain/ # 领域逻辑 (引擎无关)
│ │ ├── models/ # 数据模型
│ │ ├── rules/ # 业务规则 (适配度计算)
│ │ └── simulators/ # 比赛模拟器
│ └── services/ # Autoload 服务
├── resources/ # 游戏资源 (图片、字体、音频)
├── tests/ # 测试套件
├── tools/ # 开发工具
└── docs/ # 设计与技术文档
- 选择主客队与战术阵型
- 调整球队级战术参数(压迫强度、节奏、传球风险、宽度、防线高度、紧凑度)
- 调整每个位置槽位的行为参数(前插、回撤、内切、边线突破等 10 项)
- 为战术槽位指派球员,查看球员-槽位适配度评分
- 运行确定性比赛模拟(固定种子可复现)
- 查看中文文字直播解说
- 查看赛后战术报告与建议
- 阶段流程:夺回控球 → 后场组织 → 中场推进 → 创造机会 → 完成射门 → 攻防转换
- 每场 12 个序列(主客交替)
- 战术参数直接影响各阶段概率
- 结构化事件附带
reason_tags实现可解释性
- 计算球员与战术槽位的匹配度 (0-100)
- 考量维度:球员偏好 vs 槽位行为需求、压迫准备度、创造力自由度、射门能力、身体状态
- 输出:评分、等级(优秀/良好/一般/冲突)、优势、冲突点、模拟修正值
- 左侧导航栏:仪表盘、收件箱、阵容、战术、比赛中心、报告、俱乐部
- 页面切换与模块嵌入
- Schema 版本化的 JSON 存档
- 支持创建、保存、加载、校验和迁移
- Godot 4.6+ 已安装
# macOS
/Applications/Godot.app/Contents/MacOS/Godot --path .
# 或在 Godot 编辑器中打开 project.godot/Applications/Godot.app/Contents/MacOS/Godot --headless --path . --script res://tests/run_all.gd注意:需同时检查退出码和输出中的
SCRIPT ERROR/ERROR:,GDScript 解析错误可能不会产生非零退出码。
当前包含 4 支实验球队,每队 24 名球员:
- FC Bayern München
- Real Madrid
- Paris Saint-Germain
- Manchester City
球员拥有完整的 FM 风格属性体系(技术、身体、心理)和位置偏好。
⚠️ 真实队徽/肖像/球场图仅用于本地开发实验,发布前必须替换为原创或明确授权资源。
- 项目骨架与基础服务
- 战术实验室 MVP(模拟 + UI + 直播 + 报告)
- 实验球队数据导入
- Game Shell 导航框架
- 迷你联赛(4队双循环、积分榜、跨场次状态)
- 基础训练系统
- 本地存档读写
私有项目,暂未开源。