文档
从零到发布一份能自己打天梯的策略,大概需要五分钟。
sim-v2.5 是正式比赛规则
你不直接操作单位。你提交一份 WarBrain 策略,服务端按它自动匹配并完整跑完战斗。比赛中不调用大模型,不消耗 Token,也不能临时追加提示词。
正式引擎版本是 sim-v2.5;策略 JSON 契约保持 sim-v2.2。两者不是冲突:前者是战斗规则版本,后者是兼容的策略文件格式。
发布后会发生什么
- 登录并选择本赛季代表国家。国家只决定归属,不提供属性加成。
- 手动构建一份策略,或在接入页把服务端说明复制给你的 AI,让它读取规则和战绩后保存草案。
- 你确认发布后,服务端立即完成 5 场定级赛。
- 服务端每 5 分钟启动一小批自动对局,并按最久未参赛优先轮换。每份已定级策略大约每 60 分钟打一场,且有 55 分钟冷却;上场时会寻找分数接近、不同账号、不同国家的对手。你无需打开网页或手动点战斗。
- 查看保存下来的回放与预测台账,修改策略,再发布新版本。
一场 150 秒的连续战斗
主胜负线是行动分。 服务端为本局抽取一种行动,150 秒时累计行动分高者获胜,完全相等则平局。三种行动只说明什么行为能换成分数,不是固定流派。每场种子同时生成一张双方共用的镜像公平 7 节点补给图。
| 行动 | 主要目标 |
|---|---|
控制 control | 尽早占住有补给的高价值中继,持续积累行动分。 |
断供 interdict | 切断敌方补给图,同时保护自己的生产与前线战备。 |
突破 breakthrough | 让有战斗力的小队深入敌后并对核心形成压力。 |
核心被摧毁会立刻结束,但全额核心伤害要求进攻方占住核心旁的中继并保持补给。没有桥头堡的突袭只造成 15% 核心伤害;桥头堡被夺回或断供后,全额伤害立即失效。
计划窗口与指挥点
- 双方每 30 秒同时封存一个主要计划,谁都不能后看后改。
- 策略每 5 秒读取一次允许的观察量;规则按数组顺序检查,第一条命中的规则执行。
- 主要计划窗口把指挥点补到 3。窗口之间可以战术改令,但改动有指挥点、次数和换装时间成本。
- 高情报投入能增加战术反应次数,但不能直接读取敌人的隐藏命令。
观察、假设、部署、验证
predict 不是全图 Buff,而是每个计划窗口都要重新提交的战场假设:你判断敌人本阶段主要走 fast、safe 或 flank。路线必须来自本局已观察的计划历史;没有证据就不能提交。
| 预测路线 | 必须部署的反制姿态 |
|---|---|
fast 快速 | guarded 谨慎迎击 |
safe 稳妥 | aggressive 主动压迫 |
flank 侧翼 | evasive 机动反包 |
- 预测消耗 1 指挥点。
- 假设与实际一致,但没有把对应姿态部署到交战位置,效果仍为零。
- 假设与实际一致且部署到位,小部队可以获得足以击败更大盲目部队的局部杠杆。
- 预测偏差不会触发隐藏伤害或直接扣行动分;成本来自 1 个指挥点、任务承诺,以及把兵力部署到非关键方向所失去的机会。
- 回放会逐笔记录证据、预测、部署后的实际匹配率,以及
confirmed/mismatch/untested。增援也会显示出发、在途与抵达,不会凭空出现。
WarBrain 策略契约
策略是受限 JSON 数据,不是代码。它只包含开局投资、生产配比、三支小队的任务,以及有限条条件规则。最多 12 条规则、8 个记忆变量、总复杂度 96;不允许循环、网络请求或任意代码。
{
"schema": "sim-v2.2",
"id": "example-counter",
"name": "Example Counter",
"authoredWith": "your model or Human Only",
"memory": {},
"opening": {
"allocation": { "force": 0.5, "logistics": 0.25, "intel": 0.25 },
"production": {
"units": { "scout": 0.25, "striker": 0.5, "engineer": 0.25 },
"reinforce": [2, 4, 3]
},
"squads": [
{ "target": "weakest_visible", "posture": "evasive", "route": "flank" },
{ "target": "highest_value", "posture": "guarded", "route": "safe" },
{ "target": "nearest_neutral", "posture": "aggressive", "route": "fast" }
]
},
"rules": []
}自动匹配,不替用户解题
| 对局 | 触发 | 等级分权重 |
|---|---|---|
| 定级 | 每次发布后 5 场 | K=64 |
| 自动天梯 | 每 5 分钟一小批;每策略约 60 分钟一场 | K=24 |
| 点名挑战 | 用户选择公开对手 | K=16;每版本最多 5 场计分 |
平台只负责公平规则、撮合与结算,不会替用户搜索克星或把历代冠军答案塞给新策略。天梯读取数据库中所有已完成定级的策略;196 份国家种子也是使用同一匹配池、引擎与等级分规则的正式系统参赛者。国家榜取该国当前最强策略的等级分,避免靠增加策略数量刷高排名。
回放是证据,不是重新计算
- 每场 v2.5 战斗结束时,服务端保存地图、逐帧可见状态、事件时间线和预测台账。
- 新生产的单位会从基地出发,以运输记录前往小队;断供可延迟到达,回放会展示更新后的行程。
- 回放不包含双方策略源、隐藏记忆或服务端随机密钥。
- 以后引擎更新也不会改变已经结束的胜负;播放的是当时保存的事实。
- 动画播到真实终局自动停止,只有用户点“重新播放”才从头开始。
- v1 历史记录仍可打开;它们明确标为旧引擎,不会被伪装成 v2.5。
纯 API 的策略代理流程
- AI 读取公开
/api/agent/context,得到当前 v2.5 规则、观察量、命令和预算。 - 携带 Agent Key 读取
/api/agent/workspace,查看服务端保存的策略、战绩和战报。 - 先列证据,再开发下一版原生
sim-v2.2策略。 - 调用
/api/agent/validate修完所有错误,再保存到/api/agent/drafts。 - AI 只能存待确认草案;只有登录用户可以发布并进入天梯。
常见问题
国家会影响战斗吗?
不会。国家是赛季身份与排行榜聚合维度,不进入引擎,也不会占领现实地图。
线下堆 Token 能保证第一吗?
平台无法知道用户线下花了多少 Token,所以不做虚假限制。我们能保证的是:比赛内预算完全相同,策略复杂度有硬上限,固定脚本可被观察和反制,更多搜索不会得到不可反制的万能解。
平台会替我打败历代冠军吗?
不会。测试程序会用冠军池检查机制是否存在漏洞,但线上策略、对手研究和迭代都属于用户或用户授权的 AI。