GUIDES
应该召回部队还是让攻击打完?
判断何时取消正在进行的 OpenFront 攻击、取消时固定的 25% 兵员损失何时比一场败战更划算,以及陆海不对称如何改变你选择的退出方式。
在 OpenFront 中,召回是一次有意识的退出,用于你已经在进行的攻击,而一旦目标是人类玩家,它就必然带着代价。驱动这个决定的唯一数字,是游戏对任何取消针对玩家攻击时所施加的、固定的百分之二十五兵员损失。你要么打完这场战斗并接受一场拉锯战的实际代价,要么把部队撤回家、支付你投入兵力的四分之一。正确的动作取决于你正处在的这场战斗,是否比那百分之二十五损失得更贵。这篇攻略给你一个在两种退出之间做选择的框架、引擎强制执行的精确规则,以及那个让海上攻击离开你自己水域后就能免费取消的陆海差异。
25% 召回规则,以及它何时生效
当你下令召回时,游戏并不会立刻把部队退款给你。它会设置一次撤退,而引擎会保留一个固定的惩罚,即攻击中总兵力的百分之二十五。这个惩罚是作为撤退执行里的 attackPercent 存储的,是固定百分比,取决于你派出的兵力,而不是战斗进展。这个惩罚只在攻击的目标是玩家而非机器人时才会生效。代码会按目标是否是机器人来分支:如果目标是机器人,撤退惩罚被设为零,你的整支部队原样回家;如果目标是人类玩家,惩罚被设为百分之二十五,四分之一的兵员在返程中损失。
这个区分是你要内化的第一件事,也是最重要的一件事。对一个人工智能国家,召回在“不会摧毁部队”的意义上是免费的,引擎只是把整支部队以零惩罚送回。对人类对手,召回是真实代价:你恰好损失你投入兵力的百分之二十五,无论战斗进展多糟。这个代价与攻击即将获胜还是即将被歼灭无关。因此召回是一个“上限损失”工具:它把一个不确定的、可能很大的战斗损失,转换成一个确定的、固定的百分之二十五损失。
这条规则适用于引擎用同一条撤退路径运行的每一类攻击:地面部队、船只和运输船,在目标为玩家时都共享同一个百分之二十五惩罚。陆海差异不在于惩罚百分比,而在于惩罚何时被收取,这在下面的独立小节里覆盖。现在的工作模型是:对玩家召回,损失固定百分之二十五的投入兵力;对机器人召回,则毫无损失。注意这个百分比是施加在那一条攻击订单里的兵力上,也就是引擎为这次攻击追踪的部队,而不是你全部的常备军。一个五十兵的小股侦察和一支四百兵的部队,各自损失自己的四分之一,所以实际风险兵力随你投入这条单一攻击的多少而缩放。这正是为什么把一支很大的兵力投入一个可召回的攻击,在绝对量上更危险,即使固定百分比从不改变,也正是后文场景为什么刻意给兵力定量,而不是把整支军队塞进一条命令。
为什么召回并不等于输掉战斗
最常见的错误是把召回当作默认的“我要输了”反应,在攻击一出现不利就按下退出键。这通常是错误的选择,因为一场败战和一次召回并不是同一种代价结构,而且一场看起来严峻的战斗,往往比放弃它更便宜。在拉锯战中,你的损失取决于你实际面对的攻防比。如果你以舒适的兵力优势在进攻,战斗可能只让你损失远小于百分之二十五,而且还能拿下那块瓦片,这比支付百分之二十五、两手空空地走开是严格更优的结果。
只有当你正处在的这场战斗会比百分之二十五损失得更多时,召回才讲得通。这种情况发生在你被明显压制、你在投入之后敌方第二个侧翼赶到、或者目标刚刚增兵到一个让你的优势变成劣势的水平。在这些情况下,打完攻击意味着损失你部队的大多数,而召回把损失封顶在四分之一。这个决定是一个比较:估算如果攻击进行到底你会承受多少损失,然后和固定的百分之二十五比较。如果预期的战斗损失高于百分之二十五,召回就是更小的代价、也就是正确的退出。如果预期战斗损失低于百分之二十五、而且拿下瓦片仍然在桌面上,那么即使这是一场你不喜欢的战斗,打完也是更好的交易。
这正是召回是一个决定、而不是恐慌按钮的原因。它是你在替代选项是一场灾难性损失时才做的动作,也是你在替代选项是一场可赢战斗时不该做的动作。一个微妙的地方让这个比较更锋利:因为百分之二十五是对你为这次攻击投入的兵力收取的,你投入的规模决定了“糟糕”的战斗是否可以容忍。一场会损失四百兵力一半的战斗,是你应该放弃的两百损失;但同样的“一半”打在五十兵力的侦察上,只是二十五的损失,可能值得为它买到的信息去承受。比率是驱动因素,投入的规模决定了量级,所以这两个数字必须一起读,而不是只读比率。带着这个比较,本攻略的其余部分讲的是如何足够快地读懂局势、以便在行动窗口仍然敞开时完成这个比较,因为退出不是即时的,下一节正好解释你有多少时间。
陆海不对称
同样一个百分之二十五惩罚,在陆地和海上表现得很不一样,而这个差异是整个召回系统里最有用的战术事实。引擎只在攻击的当前瓦片仍由进攻方拥有时才收取撤退惩罚。在陆地上,攻击的起点瓦片总是你自己的瓦片,所以陆地攻击在你取消它时总是停留在你的土地上,百分之二十五惩罚永远生效。没有任何情况下,对玩家的陆地召回是免费的:起点是你的,瓦片判定通过,四分之一的地面部队被摧毁。
在海上,规则翻转成真正的选项。一艘船或运输船只在其当前瓦片属于你时才带着百分之二十五惩罚。一旦舰船离开你的水域、停在敌方或中立瓦片上,瓦片判定失败,惩罚被设为零,整支部队原样回家、毫发无损。实际意义上,这意味着一次海上攻击可以在离开你自己海岸后被免费取消。你可以派一艘船驶向遥远的敌方海岸,让它越过边界,然后毫无兵员损失地召回它。敌人什么都没收下,你什么都没失去,你付出的只是船只航行的时间。
这个不对称是一整类海上决策的基础。它把一次海上攻击变成一个低成本的试探:你可以测试敌方海岸是否有防御、观察驻军如何反应、并在反应比预期更强的那一刻中止,全程不永久投入任何兵员。它还意味着你的海上取消时机与陆地取消的方向相反:对一艘船,你希望在它离开你的水域之后取消,而不是之前。取消一艘仍停在你自己港口的运输船,是唯一一个确实花费百分之二十五的海上情形,因为舰船仍在你的瓦片上。陆地永远花费,海上只在你在家时花费,这就是不对称的全部形状。还有一个值得钉死的边界情形,因为它正是玩家把规则读反的地方:一艘已经越过边界、停在敌方或中立瓦片上的运输船,即使已经登陆了一支兵力,只要这支兵力被计为攻击且仍在一个非进攻方瓦片上,就可以免费取消。然而,一旦你在舰船仍停在你自己港口时取消,舰船就在你的瓦片上,完整的百分之二十五被收取。免费退出严格来说是“已经越过边界”这个属性,这正是为什么后文描述的海上试探在船离开你自己海岸之前才不拉取消扳机,也是为什么一次海上攻击永远不该匆忙从港口召回。
20 tick 的取消窗口,以及敌人能拿它做什么
召回不是即时的,而这个延迟长到足以改变决定。当你下令撤退时,引擎不会立刻把部队掉头。它施加一个固定的二十 tick 取消延迟,然后撤退才真正执行。按引擎每 tick 一百毫秒的节奏,那是整整两秒的继续前进,之后部队才开始回家。在这两秒里,你的攻击继续朝目标移动、继续缩短距离,而且如果它在窗口开始时离目的地足够近,它可能在召回生效前仍然完成登陆或拿下瓦片。
这有两个你应该规划进去的后果。第一,召回窗口也是防御方一个风险窗口。敌人能看到你的部队停止前进、开始转向,而这两秒是一个空档,可以重新部署防御、把一次反击捅进你暴露的侧翼、或者向你刚刚撤出的路线推第二支兵力。引擎免费给了他们这个窗口,所以你对一个有准备的玩家发起的召回,是一个他们会惩罚的召回。第二,窗口是你一个硬性的决定截止线。因为部队在你点下召回之后还会继续移动两秒,在最后最后一秒下达的召回,是一个与早下达不同的、更贵的动作。你越早决定,两秒前进中有多少发生在部队抵达即将到达瓦片之前。
把二十 tick 延迟当作决定的边界,而不是宽限期。如果战斗在你注意到它的那一刻就明显要输,立刻召回,让两秒的继续前进尽量落在安全一侧。如果你拖到最后一秒,前进可能仍然完成拿下瓦片,而召回只能救你免于后续战斗。这两秒还是敌人能看到你部队转向、重新部署的时间,所以你的召回时机同时是他们的进攻窗口。把延迟当作边界,意味着你只在信号清晰时就地做决定,而不是把它当成缓冲去观察更多;延迟越长,你留给对手的窗口越长。实用规则是:在战斗会损失你超过百分之二十五的第一个清晰信号上做出召回决定,并停止把延迟当成你可以用来“也许还是打完”的东西。延迟是优柔寡断者的陷阱,下一节给你一个把它躲开的框架。简言之,二十 tick 窗口是你掌控的召回和召回掌控你的分界线,而正确读懂它,是让固定的百分之二十五变成一个工具、而不是你误付的税的唯一方式。
何时召回:决策框架
这个框架把决定压缩成一个比较和两个过滤器。比较:如果我让这场战斗打完,它会花掉我多少,而这个代价是高于还是低于我投入兵力的百分之二十五?两个过滤器:目标是否是玩家(召回花费百分之二十五)还是机器人(召回免费),以及攻击是陆地(永远花费)还是海上且已离开我的水域(免费)。算出这三个答案,退出方式就直接得出。
当目标是机器人时,答案几乎都是尽早召回,因为免费的召回支配了一场对人工智能的战斗,你完全可以在一块瓦片不值得这段航程的那一刻脱离接触。当目标是玩家、且在陆地时,代价固定在百分之二十五,唯一的问题就是战斗是否会损失更多。如果是,召回;如果不是,打完。当目标是玩家、且在海上时,代价只在你自己水域内是百分之二十五,越过之后是零,所以支配性策略是让船越过、然后免费取消,除非拿下瓦片明显可赢。
下面的表格汇总了常见情形的决定。把它当作一张查询表,但始终对照实盘局面做一次合理性检查,因为它看不到的那一个数字,是第二支敌方兵力是否即将赶到。
| 情形 | 目标 | 若打完的代价 | 召回代价 | 正确退出 |
|---|---|---|---|---|
| 陆地攻击,被明显压制 | 玩家 | 高于 25% | 25% | 立刻召回 |
| 陆地攻击,领先或持平 | 玩家 | 低于 25% | 25% | 打完 |
| 海上试探,船已过你海岸 | 玩家 | 不适用(中止) | 0% | 免费取消 |
| 海上试探,船仍在你港口 | 玩家 | 不适用(中止) | 25% | 等越界后取消 |
| 任何对 AI 且不值得的攻击 | 机器人 | 航程+战斗 | 0% | 免费召回 |
| 攻击中途结盟、目标成为盟友 | 玩家 | 继续战斗 | 25% | 让自动撤退跑完 |
这个框架的好坏取决于你对战斗损失的估计,而估计正是大多数玩家出错的地方。高估战斗有多糟,会让你召回本可赢的攻击、放弃本可拿下的瓦片;低估它,会让你打完本该放弃的攻击、损失部队的大多数。一个有用的纪律是把战斗损失估两次:一次假设防御保持现在的样子,一次假设防御增加了一支有意义的预备队。如果“静态”估计低于百分之二十五、而“增援”估计高于它,这场战斗是在你没有的信息上抛硬币,稳妥的动作是先试探、而不是盲目投入一支大部队。下面两个场景分别各走一个,把数字摆出来,让你能在实盘套用框架之前,用worked example 校准你自己的估计。
场景:一支过度延伸的陆地进攻
考虑一个把数字写下来的具体陆地情形。你投入了四百兵力,对一座有防御的敌方城市发动两块瓦片的推进。这座城市在驻军加附近预备队之间大约有二百五十兵力,而你的四百在发动时看起来是一个舒适的二比一。但这次发动是你主动发起的,没有任何交换逼着你去拿它,而在你的攻击缩短距离时,敌方一支三百兵力的部队从侧翼绕到、加入了防御。你现在实际面对的比率是四百对五百五十,一个清晰的劣势,如果让战斗进行到底,它会让你损失远多于四分之一的兵力。
套用框架。目标是玩家,所以召回花费固定的四百的百分之二十五,即损失一百兵、三百回家。现在估算打完:在四百对五百五十时,战斗会摧毁你那支更小部队的大部分,现实上会让你损失四百中的三百或更多,只留下几个散兵和没有瓦片。打完要花费三百或更多;召回恰好花费一百。召回以巨大优势成为更小的损失,所以正确的退出是立刻召回、承受一百的损失、把三百兵力带回一个能让你选择更好战斗的位置。
这里起作用的假设是那支侧翼赶到。如果没有那三百赶到,比率保持在接近二比一,战斗会让你损失远少于四分之一,正确的选择翻转为打完并拿下城市。整个决定押在这单一事实上,这正是为什么框架把“第二支兵力是否在赶”这个检查放在表格外。当你在读一个实盘时,在你承诺任一退出之前要看的东西是:防御是静态的还是即将增长,因为你已经占优的静态防御是一场值得打完的战斗、即使瞬间看起来不利,而即将翻三倍的防御是一场你该在看到第二支兵力投入的那一刻就放弃的战斗。还要考虑节奏代价:你因召回而损失的两百兵力对整场比赛都没了,所以召回只有在你能省下的三百能做得更好、而不只是守住自己时才算便宜。如果召回让你剩下的部队既不能夺回那条路线、也不能守住你的核心,那么“更小的损失”仍然是一个改变整个棋盘的局面,正确的退出可能是守住战线、打完战斗,而不是撤进虚弱。
场景:一次可免费取消的海上试探
现在是海上版本,它用掉上一节里的不对称。你正在考虑是否要登陆一条未侦察的遥远敌方海岸,于是你派出一艘载着三百兵力的运输船驶向它。运输船是合适的工具,因为你希望能中止。当运输船移动时你观察敌方海岸:最初几个 tick 没有可见的驻军,这是鼓舞人心的,但你不能确定防御不是简单地藏在瓦片后面。你不希望把三百兵力投入一条你根本没实际测量过的海岸的登陆。
框架在这里以陆地永远无法的方式改变决定。目标是玩家,所以如果运输船还停在你自己港口、你现在取消,代价是百分之二十五,损失七十五兵。但运输船已经越过你的水域、在一个中立或敌方瓦片上,所以瓦片判定失败、惩罚降到零。你现在可以召回运输船、把全部三百兵力原样带回家,毫发无损,付出的只是航程时间。试探现在是一次免费的信息购买:你看到了海岸如何反应、大致知道了驻军有多强,而且没有损失一个兵员。你然后可以:如果驻军弱,投入一支定量的后续攻击;如果驻军强,干脆不攻。
让这一切起作用的假设是那次越界。免费取消只存在于舰船离开你的瓦片之后;在那之前的那一刻,取消花费七十五兵,所以打法是让船越过边界、然后才拉取消扳机。而这个打法的反制是:敌人现在看到你运输船到达又撤回,这告诉他们你正在评估那条海岸。不要在同一地点跑三次同样的试探;用它测一次,然后做出承诺或移开。海上试探是你唯一能故意跑、又免费走开的攻击,这正是把有纪律的海上行动和全有或全无的陆地突袭分开的东西。还有一个让试探更强大的理由:因为它在兵力上花不了任何代价,你可以在比赛早期跑它——那时你最需要学习、最可损失——并把信息存到中盘,当一支定量后续攻击真正值得投入时。一次你要付百分之二十五的陆地试探,你在开局可能根本不跑;海上版本免费到几乎每一条有趣的海岸都能跑,这使得在真正战斗开始之前,早期地图被侦察得远好得多。
失败模式、反制,以及模式或地图调整
召回有清晰的失败模式,而每一个都有你还能在攻击存活时应用的反制。第一个失败是迟召回:你等到二十 tick 窗口的最后一秒,让继续前进仍然把部队落到目标瓦片上、完成拿下瓦片,把一个“免费”的召回变成一次你并不想要的拿下。反制是:在第一个清晰信号上做出召回决定,而不是在边界上,这样两秒前进发生在开阔空间、而不是你正想避开的瓦片上。第二个失败是招来反击的召回:你撤出,而敌人看到你部队转向,就在你刚撤出的路线推第二支兵力、或在那两秒窗口里打你暴露的侧翼。反制是:朝一条有防御的战线、或朝一块你能立刻夺回的瓦片召回,这样敌人用来扑击的两秒花在一条已准备好的战线上,而不是一条空边境。
第三个失败是假试探:你派一艘海船去测一条海岸、免费取消它,然后因为敌人看着你的船掉头、就在那条确切海岸增兵。反制是:把试探当作一次性情报;如果那条海岸值得攻,你就在你决定投入的同一回合用后续攻击打它,而不是三回合后驻军已经翻三倍时。第四个失败是比率误读,是唯一真正损失兵力的那个,即你低估战斗损失、打完了一个框架本会告诉你该放弃的攻击。反制是:在承诺之前把比率写下来的纪律:说出你的兵力、说出可见的防御,如果防御会增长,就假设它会长、并把你的损失和百分之二十五比较时已经把这个增长计入数字。
模式和地图形状改变哪个退出值得采取。在“无结盟”模式里,你不能指望结盟形成来把你从一场糟糕的攻击里救出来,所以你的退出只有陆地召回的百分之二十五或海上召回的免费,你应该从一开始就用这个更窄的工具箱规划你的攻击。在岛屿和重水地图上,海上不对称成为支配工具:你的大多数攻击是可以越过并免费取消的海上攻击,所以尽情试探、只在测量证明后续攻击值得时才投入。在一个冷战棋盘上,陆地召回是你的情报工具:一次你愿意付百分之二十五去跑的陆地试探,告诉你在决定一次完整投入是否值得其代价之前,一个邻居被防御得多严。每一种情况下,地图形状决定了免费退出是否在桌面上,而前一节的框架决定了采取它是否比战斗更小的损失。
把召回决定放进你的攻击计划
把这些拼成一个你每次攻击都能跑的单一线条习惯。在发动之前,说出框架需要的三个输入:目标是玩家还是机器人,这是陆地还是海上,以及可见的防御比率是多少?这个说出成本为零,它在战斗开始之前就把决定放进你脑子里,所以召回是计划里一个被规划好的分支,而不是一个反应。然后定义那个把你从“打完”切换到“召回”的触发器。最干净的触发器是一条固定的线:如果这场战斗会花掉这支兵力超过百分之二十五,我就放弃它。因为召回代价恰好是那个百分之二十五,触发器就是战斗损失越过召回代价的那个点,而一条固定的线是你在棋盘移动时一秒就能查的东西。
一旦触发器设好,执行就是一门时机的纪律。对玩家的一场陆地攻击,在你看到防御增长到战斗超过百分之二十五的那一刻,立刻召回、接受四分之一的损失;不要和最后一秒讨价还价。对海上攻击,先让舰船越过你自己水域、然后除非测量说拿下瓦片可赢就免费取消;越界是解锁零代价退出的东西,跳过它就把一次免费试探变成一个七十五兵的失误。对任何对机器人的攻击,在一块瓦片不再值得这段航程的那一刻召回,因为对 AI 的免费召回支配你几乎会在其中损失兵力的每一场战斗。
这就是整个系统,而且短到能在压力下跑。对玩家的召回是固定百分之二十五的损失,对机器人的召回免费,陆地永远付费、海上只在你在家时付费,二十 tick 窗口意味着决定必须尽早做、否则根本不做。召回不是失败的信号;它是一个上限损失工具,让你用一个小的、确定的代价,去换取稍后选择更好战斗的机会。用它的方式和本站点使用攻防比和威胁评估的方式一样:作为一个在你实际能看到数字上做出的、被度量的决定,而不是对一个已经结束战斗的反应。当你计划的下一段是一场你赢不下的战斗时,召回就是你采取的退出,而你现在在采取它之前正好知道它代价几何。参见攻防比攻略了解比较的战斗损失一侧,以及运输登陆攻略了解这条召回规则收口的海上行动。
相关内容
依据 OpenFront v34.3 的成本、部队增长、路线回报与停止信号,在 City、Port、Factory、防御和现金储备之间做选择,而不是照抄固定脚本。
- OpenFront 兼并与包围:关闭口袋而不把战线拉崩
学习用小额推进建立外部支点、完成敌方内陆口袋包围,并在占领后保留第二条可回撤路线。
2026年9月4日
- OpenFront 建筑时机:何时建 City、Factory 或 Port
判断何时建 City、Factory、Port、防御柱、导弹井或 SAM;本页负责时机,Port 与 Factory 的回本比较交给专页。
2026年8月23日
- OpenFront 攻击比例:该派多少兵力,以及何时点击
基于 v0.34 的左下发送滑条决策框架:兵力比值钳制与守方密度如何把你选的百分比换算成损失与速度,为什么一次大推比多次小推更省,2 倍满速规则,全推时机,以及何时该削磨而不是反击。
2026年9月21日