GUIDES
OpenFront 攻击比例:该派多少兵力,以及何时点击
基于 v0.34 的左下发送滑条决策框架:兵力比值钳制与守方密度如何把你选的百分比换算成损失与速度,为什么一次大推比多次小推更省,2 倍满速规则,全推时机,以及何时该削磨而不是反击。
直接回答:先派一支能压住对方军队的兵,再定百分比和时机
攻击比例就是左下角的“发送”滑条:每点一次,就提交你选中兵力的这个百分比去压边线,而这一推的损失与速度取决于你压出去的兵和对方军队的比值,而不是百分比本身。赢得大多数战斗的那一个决策,就是让这个百分比恰好使“真正离开你边线的兵”在对方将面对的那条边线上压过对方的军队,然后在你下一次推仍能保住这个比值的那一刻点击。落到操作,是三件习惯动作,而不是一个固定数字。
第一件:对较弱的邻居或正被别的对手牵制的边线,发 25% 到 40%,并在你的增长能喂得起第二次点击时就双击。这个区间正是社区共识聚集的地方,也是让你在边线后仍留有兵做后续、同时落下一支不少于对方在这条边线上能集结的推力的区间。第二件:当对方正在对你全推时,不要在它的兵还在途中时也用你自己的 100% 去接:等它过线时用 5% 到 15% 的点击削磨,等它落定、军队摊到新的格子上后再收地。第三件:把 100% 留给两个真正该全推的时刻——开局双方都还没有像样军队的开局全推,以及末段对密度已被你读透的对手的最后一击。其余任何一次全推,都是下面这套算式把它变得更亏的抛硬币。
本页其余内容就是这三个习惯背后的机制。它精确解释游戏如何把滑条设定换算成单格损失与推进速度,为什么数字让“一次大的推”严格比“两次小的推”更便宜,为什么末段“十万兵力压进一百万、十秒丢两成地”的震撼是密度系统在按设计工作,以及一张你每次点击前都能在脑子里跑一遍的决策表。如果你只内化本页一句话,就内化这句:你想要的比值不是“我军队的某个百分比”,而是“我的推落地时将实际面对的对方军队的比例”。本页其余一切都是如何在点击之前、而不是点击之后算出这个比例。
游戏实际读取的两个比值
v0.34.11 的战斗公式在 Config.attackLogic,由两个数驱动,而第二个数正是大多数玩家从不考虑的那一个。第一个是兵力比值:对方总军队除以你这一推的兵力,defender.troops / attackTroops。公式把这个比值钳制在 0.6 与 2 之间,同时做了两件事。它意味着一支小于对方军队 0.6 的推(你被以超过 1.67 比 1 的数量压制),单格损失与一支正好是对方 0.6 的推完全相同:被压制到某个程度之后,游戏就不再追加惩罚,因为一场必输的推本来就必输。它也意味着一支大于对方军队两倍的推(比值低于 0.5),损失不会比正好是一半的推更低:一旦你已是碾压,多出的兵买的是速度,不是更低的损失。这道钳制正是“固定百分比不等于固定风险”的全部原因。
第二个比值是守方密度:对方总兵力除以对方总格子,defender.troops / defender.numTiles,也就是其平均每格兵力。你的单格损失等于地形强度乘上钳制后的比值,再乘上基础 0.463 加上守方每格兵力各 0.0039。同一场战斗里守方的损失恰好就是那个平均每格兵力。于是同一个一万兵力的守方,压在 400 格上是一堵墙(每格 25 兵,在平原上给你的 0.463 基础额外加约 0.098 单格损失),摊到 4000 格上则是一个筛子(每格 2.5 兵,只加 0.0098)。密度项就是为什么进攻一个刚赢得整场战争、铺满全图的国家的感受,与进攻同一国家刚为夺岛摊薄之后完全不同。
速度是第三个输出,也是你的滑条设定直接显形的地方。每格速度成本是 within(兵力比值, 0.82, 7.5) × within(兵力比值/20, 1, 50) / 8.55。第一个因子在 0.82 处起步:比值低于 0.82 的推(你每有 1 个守方兵就出 1.22 以上)以全速推进,这正是你在每个视频里看到的“2 倍规则”的经验法则:把对方军队翻一倍,你就安全地落在快速区且留有余量。超过 0.82 之后成本线性爬向 7.5,所以比值 2(你被 2 比 1 压制)的推只以同样推在比值 1 时约一半的速度爬行。比值超过 20 后第二个因子接管,推进慢到每 tick 只有零头一格。守方格上的防御工事把地形损失乘 5、把格子成本乘 3;机器人守方的损失再乘 0.7。这一切就是为什么“我该发多少百分比”其实是同时在问两个问题:我带着什么军队去赴这个比值,我又要穿过什么密度?
为什么一次大推胜过若干次小推
公式里最反直觉的一条,是这一推的单兵成本随着推的变大而下降,直到大到碾压为止。拿帖子里社区最常说的例子:你有 50,000 兵,对方集结 25,000。若分两次各发 30%:第一支 15,000 对 25,000,比值 1.67,被钳到 0.6;第二支又是 15,000,而到那时对方已把损失的一部分重新长回来,第二次的比值更差。若一次发 50%:你这一支 25,000,比值正好 1.0,这支推里每个兵只按钳制后的 1.0 付一次单格成本。两次推拿到的是同一片地,但两击版本是在“比对方军队还小的兵堆”上付了 0.6 钳制,又对着部分再生的军队再付一次;而单次大推是对着军队“当时本来的样子”付一个平的 1.0。单次大推每格更便宜而且更快,因为比值 1.0 处的速度因子比 1.67 处低。
一般规则是一道“比值阶梯”,值得背下来,因为它就是“何时点击”决策的全部。当对方军队相对你很小,你可以按你集结得起的 100% 去推,落在比值 2 或更优——满速且无额外损失。当对方军队接近你时,正确动作是等下一个增长周期、在比值 1 处推,因为比值 1 的推是你还能做出的“不被压制”的最大推。当对方比你大,任何推都是被压制,比值钳制意味着你把堆做再小损失也不会改善,所以唯一合理的小推是试探,唯一合理的大推是 100% 的击杀尝试——你接受损失,押那块地比你要赔的军队更值。阶梯中段、也就是 25% 到 40% 区间,正是在有机器人邻居的三人局里最常处于比值 1 的地方,也是它成为共识默认值的原因。
阶梯解释出一个二阶效应:双击是一个比值工具,不是速度工具。30% 双击的第一击落在不错的比值上,拿下第一道格子;守方随后在整个前线上损失其平均每格兵力,密度因此下降,你的第二击 30% 就穿过更便宜的密度、以略好的比值推进。这才是 25% 到 40% 加第二击这套模式的真实价值:第二击不是重复第一击,而是利用第一击制造出来的密度下降。如果你注定要点两下,第二击必须落在能喂得起它的那个增长窗口内,因为密度下降会随对方再生长而衰减;晚两个周期的第二击,只是一支被压制的小推,对着几乎复原的军队又付一次 0.6 钳制。
密度与体量:为什么末段感觉不同
帖子里最常见的问题其实和滑条无关。它是“为什么开局我能用一万兵轻松拿下五千兵的机器人,末段我却把九十万压进一百万、十秒丢了全图两成?”答案是密度项,外加其上的一个体量系统,两者都是刻意的反滚雪球机制。开局时,那个五千兵的机器人摊在大约 800 格上,密度 6.25 兵/格,密度项只给你的单格损失加 0.024。你的 10,000 推是 2 比 1 的比值,落在快速区,地也便宜。末段时,刚赢下战争的一百万兵守方压在大约 300 格硬边线上,密度 3,333 兵/格,密度项在你的 0.463 基础之上再加 13 的单格损失。同一个百分比滑条,在每格 6 兵时是白捡地,在每格 3,333 兵时就成了屠杀,而游戏正是在按设计运行。
其上叠的是大疆域加成,一个以 30 万格为中心的光滑 sigmoid。拥有比你更多格子的守方,随体量增大而获得抬升的损失地板:一个国家拥有的地越多,其单格损失越受保护,因为巨型企业是每个其他玩家都在猎杀的东西,游戏补贴它的防御以保持对局可赢。攻方加成是它的镜像,且更强:从大疆域发起进攻更便宜、更快,把差距上限压到约 3.3 倍小玩家的速率。这就是为什么一方占全图六成的终局是一场两个小玩家联手打的消耗战:巨型企业每条前线密度都高,其体量地板在天花板,而降低其单格损失的唯一办法,是把它的军队从某条前线抽走、让另一条前线的密度降下来。
这一切的实践读法是:你真正在对抗的是密度,不是军队规模,而且你两秒就能读出来。任何推之前,把你面对的边线上对方的兵力除以它在那里占的前线格子数。若这个数字低于约 10,你的密度惩罚很小,百分比几乎无关紧要,按你能喂得起的比值推就行。若它高于 100,你的密度惩罚超过 0.4,接近基础损失的两倍,你发什么百分比都不会让这块地便宜;要么先打散它的集结,要么根本不打那条前线。中间 10 到 100 兵/格的带,是本页滑条区间真正发挥价值的地方,也是 25% 到 40% 加第二击这套模式存在去利用击间密度下降的地方。读出密度,选出落在你能守住的比值上的那一推,末段就不再像一堵墙,而像算术。
选比值:三问框架
每次点击之前,按固定顺序回答三个问题,因为顺序很重要:第三个问题会改变第二个问题的答案,乱序作答就是玩家过度投入的方式。第一问是对方现在在做什么,而不是它军队多大。如果它正在对别人全推,它的军队在移动、后方空虚;那就是一次 40% 到 100% 的推压进暴露前线,也就是社区描述的针对分心第三方的开局全推。如果它在原地生长,它的军队压在边线上,正确的推是你增长能喂得起的比值 1 推,25% 到 40%、下一周期第二击。如果它正在摊薄去抢地,它在你面对前线上的密度正在下降,你的比值在免费变好;守住你当前的比值,让它自己的扩张替你干活。
第二问是我要穿过什么密度,用上一节的两秒读法。拿它在你前线上的兵力除以前线格数。低于 10,按你能喂得起的最大比值推。10 到 100 之间,25% 到 40% 带是默认值,双击值得做,因为第一击的密度下降让第二击便宜。高于 100,别打那条前线;要么先打散相邻前线的集结,要么等它把兵投到别处。这是本页对终局最有价值的一句话:读起来超过 100 兵/格的前线不是你推得过去的墙,而是你要绕过去的墙,而绕的动作几乎总是一次对相邻前线的廉价试探,迫使守方移动兵力,一次性同时降两条前线的密度。
第三问是我下一推会是什么样,它正是把一次好推变成坏推(或反过来)的那一问。如果这次之后的下一推将被压制(比值超过 1.5),那么这次就是你还能以好比值发出的最后一推,你要么现在就发你能喂得起的最大推并接受一次性交战,要么按住生长、让下一推变成大的那一个。如果下一推仍能落在比值 1 或更好,那么正确动作是现在就发 25% 到 40% 的推、下一周期第二击,因为击间密度下降比一次更大的单推能带来的额外兵力更值钱。这个第三问正是你在回放里看到的滑条设定几乎从不是固定数字的原因:同一个玩家开局跑 100%、中段跑 30%、全推来袭时跑 15%,而上面的框架是这三个设定之所以是“对的设定”而非“三个习惯”的理由。每次推都跑这三问,滑条就不再是谜,而变成一个你计算出来的数字。
把数字放上桌面:三个具体局面
下表把 v0.34.11 公式跑在玩家真实会遇到的三个局面上,平原强度 80,无防御工事,无 fallout。“密度”是守方在前线上的平均每格兵力,“比值”是守方军队除以你的推堆,“单格损失”是公式返回的攻方单格损失;守方损失就是密度本身,速度相对满速比值 1 推而言。目的是给你的眼睛三个锚点:一次白捡推长什么样,一次比值 1 推长什么样,一次被压制推长什么样。
| 局面 | 守方军队 | 守方格子 | 密度 | 你的推 | 比值 | 单格损失 | 读法 |
|---|---|---|---|---|---|---|---|
| 白捡地 | 4,000 | 1,200 | 3.3 | 8,000(50%) | 0.5 | ≈0.47 | 2:1,满速,便宜 |
| 中段比值 1 | 15,000 | 900 | 16.7 | 15,000(30%) | 1.0 | ≈0.93 | 喂得起的比值 1,双击 |
| 被压制 | 30,000 | 1,500 | 20 | 10,000(30%) | 3.0(钳到 2) | ≈1.05 且速度减半 | 只做试探,或击杀 |
第一行是开局白捡地,它告诉你百分比几乎无关紧要:比值 0.5 时钳制与密度项都把你放在便宜端,选 50% 的堆只是因为那是那一刻你喂得起的。第二行是本页反复回到中段默认值:15,000 兵对一个 16.7 密度的前线、精确比值 1,平原单格损失约 0.93,下一周期第二击 30% 落进第一击刚降下来的密度。第三行是陷阱:它 30,000 对你 10,000 的推把比值钳到 2,你的单格损失只比比值 1 行略高,但速度大约减半、密度相同,意味着你在付真实损失买地的同时,守方每格 20 兵的反击对它只是小成本。第三行里唯一值得跑的版本是试探——一次小推,目的是读出它的密度并迫使它反应——以及击杀——一次 100% 的推,只有在那块地比你要赔的军队更值时才打。
对表的两处修正。若前线上有防御工事,把损失乘 5、格子成本乘 3,比值 1 行从 0.93 跳到约 4.6 单格,双击模式昂贵到你应该通常绕开这条布防前线而不是付费穿过它。若守方是机器人,把它自己的损失乘 0.7,这正是为什么早期打机器人邻居是廉价的成长方式:你全额付机器人的密度惩罚,但机器人自己的反击对它更便宜,所以机器人是你等待人类前线比值 1 推时、可以拿第三行试探去对付的那个玩家。这张表是心智模型,不是计算器;游戏不会把这些数字显示给你,但你可以把三行全装进脑子、每次推在两秒内对照它们核查,而两秒正是推决策需要的反应时间。
比例带来的错误:失败与反制
整个系统里算式最差的一种失败,是在对方全推还在过线时用你自己的 100% 去反击。攻方是按你的军队、把堆选在接近 0.6 钳制处的,所以它的单格损失在便宜端、速度在快速端;你的 100% 回应撞上守方在这条边线上能集结的最密集每格兵力,因为满编的守方恰恰就是军队压着的守方。两场战斗相遇,攻方的推比你的更便宜、更快,反击被抵消,而你已把整支军队压进一个必输的比值。社区的解法、也是本页支持的,是削磨:全推过线时用 5% 到 15% 的点击、卡在你的增长转黄的时刻,用它前线的少量土地交换来袭推在落地前有效军队的等比例下降,然后等它落定、兵摊到新的格子上、旧前线密度被打破后再打 15% 的后续。削磨不是反击的缩小版,它是另一场战斗、另一个目标,把削磨当反击来打,正是那些“本该赢”的玩家输掉整场战争的方式。
第二种失败是固定比值的习惯,它表现为 10%、30%、100% 的玩家都在报胜,因为固定比值恰好约三分之一的时间是对的。10% 玩家在全推面前安全、在慢增长面前饿死;30% 玩家是中段默认、在终局失血;100% 玩家赢下开局、死于对局里第二大的军队。固定习惯是三问框架的替代品,而替代品只在局面属于它答错的那三分之二时才让你付出代价——那是大半个对局。解法不是一个更好的固定数字;是跑三问的纪律,因为依赖局面的答案才是唯一能在超过三分之一情况下都答对的答案。
第三种失败是过早的第二击,它是大多数玩家从未注意到的那一种,因为它看起来就像正确动作。双击模式只在第一击的密度下降仍生效期间成立,大约就是下一个增长周期;晚两个周期的第二击,是一小支推在对方已把损失大部分重新长回来时付 0.6 钳制,比按住更差。核查很简单:如果你的第二击喂得起之前,守方在前线上已明显再生长,那么第二击是试探而不是推,而试探不拿地,只读数。守住线,让密度下降衰减,等一次你能在比值 1 发出的推;那个迟到的第二击本该拿的地,由下一次真正的推拿走,而迟到的第二击只为你读一个你早已有的数字付了兵力和速度。
地图、模式与终局调整
比值框架在每张地图、每种模式都成立,但数字会移动,而移动之处正是地图专属知识所在。海岸地图上,你进攻的前线比你防守的前线短,因为水从两侧各去掉一道边线,而更短的前线意味着守方在其上的密度高于其全疆域平均密度。两秒读法因此低估了海岸前线的密度,在开放陆地地图上正确的 25% 到 40% 带在海岸地图上通常偏高一个带;在开放陆地上喂得起双击的比值 1 推在海岸上往往只喂得起单击,第二击应留到下一个增长周期。若你是在海岸前线上的守方,同样的几何为你工作:你更短的前线意味着你的密度比攻方模型假设的高,这正是用压实墙守海岸为何如此有效的机制原因,也是海岸防御攻略与本页配对的原因。
山地与高原地形上,强度项从平原的 80 升到高原的 100、山地的 120,本页每个损失数字提高 25% 到 50%,而山地格上的防御工事再把那个强度乘 5,这就是为什么布防的山地前线是地图上你几乎永远不该正面打的前线。对布防山地前线的正确动作,是先打散它相邻的开放前线、迫使守方把兵从布防格移走、然后才在降低后的密度上推山地;正面推布防前线是在一条已处密度带上端的前线上付 5 倍,那是一个你发任何百分比都做不起的损失数字。唯一例外是终局击杀,那块地值整支军队、5 倍是你明知要付的价,而推之前的核查是守方在布防前线上是否已被你对相邻前线的压力抽走了兵。
加时赛里,两个比值反转:你自己的密度高(因为疆域大而压实),守方在前线上的密度才是决定一切的那个数,所以加时推永远是压在守方密度最低的前线上的比值 1 推,而不是它最强的前线。大疆域攻方加成在加时赛里是你的朋友,因为它是在你为全图最大疆域时最强的那个加成,把守方的体量补贴压到你的进攻仍比它的快的点上。加时全推、也就是 100% 的击杀推,是本页滑条顶到最大的唯一局面,而它之前的核查是目标前线的密度读法:低于 100,击杀推喂得起、那块地值;高于 100,击杀推是对体量地板的抛硬币,正确动作是继续削相邻前线、直到目标前线密度降进喂得起的带。对加时推跑三问,正如你对任何一次推跑三问,终局就不再是你推过去的墙,而开始成为它一直就是的算术。
接下来读什么
接下来读哪一页,取决于你站在比值的哪一侧、现在拥有哪个问题,而阅读顺序不如确保本页推迟的四个问题各自由拥有它的那页真正回答来得重要。若你在选的是带什么军队去赴比值、而不是百分比本身,陆地战斗攻略 是本页假设你已读过的单格损失参考,地形强度与防御工事数字也出自那里。若本页的两秒密度读法某次与你游戏里看到的对不上,要打开的就是那一页,因为失配几乎总是一个本页只引用、不推导的地形或防御工事项。若你的问题是一次推何时才算威胁,威胁评估攻略 是选目标页:它决定你的邻居里哪一个才是你的比值所对照的那个,而本页是给那一页军队答案的百分比答案。两页是“速度计与地图”式的配对:威胁评估告诉你你在哪条路上开车,比值告诉你在那条路上能踩多猛才会撞上。若你守前线而非攻,海岸舰船防御攻略 是守方版本的密度读法,与赢得加时赛攻略 配对,后者覆盖终局的 2 倍满速规则。防御这对在最后两分钟最重要,那时问题从“我付得起什么推”翻成“我扛得住什么推”,而加时赛攻略拥有的正是翻转后的那个问题。若你的问题是“我何时喂得起下一推”的经济面,人口增长攻略 是框架第三问所对照的增长曲线页,而核威慑攻略 与MIRV 价格阶梯攻略 处理你不想打的那类终局——因为最干净的比值,往往是让终局根本不打起来的那个。
相关内容
依据 OpenFront v34.3 的成本、部队增长、路线回报与停止信号,在 City、Port、Factory、防御和现金储备之间做选择,而不是照抄固定脚本。