GUIDES
When to Attack: Troop Bar Timing and Regrow Windows
A decision guide for OpenFront FFA: when to launch an attack at a given troop-bar level, how the regeneration curve shapes the optimal push point, and how to time regrow between engagements on openfront.fyi.
Direct answer. Attack when the value you would commit on the next wave is worth more to you right now than the value you would gain from regenerating that same capacity for one more tick. In practice that means pushing at roughly the point where your troop bar is around 40–50% of its maximum on a target you can realistically take, then deliberately spending the regrow window afterward instead of re-attacking on the next tick. Holding near the cap wastes the steep early portion of the regeneration curve, while attacking from a bar that is too low commits a wave that a defender with a full bar can absorb and reverse.
Why the Bar Refuses to Fill in a Straight Line
OpenFront does not add a fixed number of troops each tick. The engine applies a growth function every tick, and that function is deliberately shaped so that a nearly empty bar refills fast while a bar near its maximum barely creeps forward. The per-tick value is defined in Config.troopIncreaseRate at the v0.34.22 tag: toAdd = (10 + troops^0.73 / 4) × (1 − troops / maxTroops). Two terms drive the behavior. The first, 10 + troops^0.73 / 4, grows as the bar fills, but only sublinearly because of the 0.73 exponent — the marginal gain of each extra troop shrinks as you have more troops. The second term, (1 − troops / maxTroops), is a linear taper to zero: the closer you are to the cap, the less you add each tick. Multiply them together and you get a curve that is steep on the left side of the bar and flat near the right side.
This matters for timing because the “same” one-tick wait is not the same cost everywhere. If you are at 30% and wait one tick, you collect a large chunk of troops. If you are at 90% and wait one tick, you collect almost nothing and the opportunity is nearly gone. The practical rule that follows is that you should let the bar dip into the steep part of the curve after an engagement so the regrow is fast, and you should commit your committed troops while the marginal value of holding them is still positive. The engine also runs troopIncreaseRate every single tick inside the player execution loop (around line 82–87 of PlayerExecution.ts), so the number you are really optimizing over is measured in single ticks, not in vague “a little while.” Every second of hesitation at a full bar is a measurable loss of the marginal troops that the taper term is about to suppress.
A useful way to internalize the shape is to remember that the regeneration curve has a single peak: the rate of change is highest at a particular fill fraction and falls off on both sides of it. Below the peak, more troops mean more added per tick; above it, more troops mean the taper starts dominating. That peak is the number you come back to repeatedly throughout this guide, and it is the reason the community shortcut of “keep the bar around 40%” is not arbitrary — it is a hand-tuned approximation of the true optimum, which we verify with the actual formula below rather than by citing the comment alone.
The Numbers: Where the Regeneration Peak Actually Sits
To avoid treating “around 40%” as a mystic figure, compute the optimum directly from the formula. The peak of troops^0.73 × (1 − troops / max) occurs at troops / max = 0.73 / 1.73 ≈ 0.4219, so the theoretical maximum-rate fill is about 42.1% of the cap. That is the single most important number in this guide. Around it, the per-tick value relative to the value at 40% looks like this for a Human, no cities:
| Fill % | Per-tick troops (1,000 tiles) | Per-tick troops (10,000 tiles) | Relative to 40% |
|---|---|---|---|
| 20% | 32.0 | 32.0 | 94.4% |
| 30% | 33.4 | 33.4 | 98.3% |
| 40% | 33.7 | 33.7 | 100.0% (peak) |
| 50% | 33.6 | 33.6 | 99.7% |
| 60% | 33.4 | 33.4 | 98.6% |
| 70% | 33.1 | 33.1 | 97.7% |
| 80% | 32.6 | 32.6 | 96.4% |
| 90% | 31.7 | 31.7 | 93.9% |
| 100% | 0.0 | 0.0 | 0% (cap reached) |
The table shows two things. First, between roughly 30% and 60% the rate is nearly flat — you are all within about 2% of the peak, so small timing errors in that band cost you almost nothing. That flatness is why the game “feels” forgiving around 40%: you have a wide plateau of near-optimal fill rather than a razor’s edge. Second, the collapse is abrupt at the very top. The drop from 80% (96.4% of peak) to 90% (93.9%) and the hard zero at 100% means that a bar that is almost full is still growing at a healthy rate, but the act of crossing the last few percent is the slowest part of the whole curve. Your worst timing error is not attacking slightly too early — it is hoarding a bar to 100% and then discovering the next wave is far away.
This flat plateau has a direct practical consequence that the table makes explicit. Because 30% through 60% all sit within two percent of the theoretical peak, the best fill is not a single number you must hit with precision; it is a wide, forgiving band. You can push at 35%, at 45%, or at 55% and you are, for all practical timing purposes, operating at the same regrow rate as the 40% the official community guidance names. The only fills that are meaningfully expensive are the very low ones (below 20%, where the base term still dominates and the per-tick value drops below 95% of peak) and the very high ones (above 80%, where the taper term has started to bite). That is why a competent player does not need to obsess over the exact percentage; they need only keep the bar inside the 30–60% plateau and avoid parking it at either edge. The per-tick numbers also reveal a second, less obvious fact: the absolute per-tick value is identical whether you have 1,000 or 10,000 tiles, because both the base and the exponent scale with the troop total in a way that partially cancels the cap difference. What changes with territory is the cap itself, which is the next section.
How Territory Reshapes the Same Decision
The same fill fraction is not the same absolute troop count on every map or at every point in a game, because maxTroops is a function of territory. At v0.34.22, the cap for a non-nuclear, no-city player is 2 × (tiles^0.6 × 1000 + 50000) — that is maxTroops = 2000 × tiles^0.6 + 100000. This means the cap grows sublinearly with territory: doubling your tiles does not double your cap. A player at 1,000 tiles has a cap of 60,796 troops; a player at 10,000 tiles has a cap of 351,084 troops. The gap between those two is nearly six times, even though the territory gap is ten times. The timing decision inherits this scaling in two ways.
First, the absolute wave you can commit scales with the cap, so a “40% push” for a large empire is a far bigger commitment in raw troops than a “40% push” for a small one. The same percentage, the same relative risk, but the stake is different. Second, and more important for timing, the regrow speed in absolute troops per tick is also tied to the cap through the taper. Because the taper is (1 − troops / max), a larger cap means a larger absolute number of troops added per tick in the steep part of the curve. In other words, a big empire refills its bar in absolute troops faster than a small one, so the cost of a one-tick wait is higher for the big empire and the payoff of regrowing before re-engaging is larger for it. The small empire, by contrast, has a lower absolute per-tick gain, so its regrow window is shorter and it can afford to be a little more aggressive about re-attacking sooner without giving up as much.
This is the concrete, testable consequence of the formula that changes a decision: if you are the larger of two neighbors, you should weight the regrow window more heavily and hold the bar lower before a decisive push, because your per-tick absolute gain while regrowing is bigger. If you are the smaller neighbor, your per-tick absolute gain is smaller, so the “wait for the bar to regrow” step is worth less and you can commit more of the next available wave sooner. The percentage rule stays the same; what changes with map size is how much absolute value is at stake on either side of the push/hold decision, and therefore how much of a mistake an early or late push becomes.
Scenario A: The Two-Sided Pressure Window
Imagine an FFA mid-game where you hold 4,000 tiles (cap 159,499, so a full bar is 159,499 troops) and two neighbors are expanding toward you from the east and the west. Your bar is at 46% (about 73,369 troops). One neighbor has a bar at 70% and is visibly pressing; the other is at 30% and appears to be consolidating. The question is whether to launch a preemptive push now into the 30% neighbor’s soft flank or to let the bar regrow for a few ticks and hit harder later.
The 30% neighbor is in the steep part of the curve and therefore regrows fast — at 30% it is adding about 98% of its peak rate each tick. Waiting three ticks against it means it regains a large share of whatever you would have taken. The 70% neighbor, by contrast, is in the flat part of the curve near the top: it is adding only about 99% of peak, but because it started at 70% rather than 30%, its absolute troop count after the same three ticks is already much larger and it is close to a full bar. So the 70% neighbor is the one whose threat compounds fastest in absolute terms even though its rate looks similar. The correct timing move is to commit into the 30% neighbor now at 46%, because that neighbor’s regrow speed is about to make it expensive to catch up, and because your own bar at 46% is still on the productive plateau where a push does not waste the taper. After that push, you drop to the steep part of your own curve and you deliberately spend the regrow window rebuilding toward the 40–50% band before the second engagement with the 70% neighbor. If instead you had hoarded your bar to 95% before acting, the same push would have cost you three ticks of a near-max bar that was adding almost nothing, and you would have let the 30% neighbor regrow into a much stronger position for free.
The numbers that make this concrete: your 46% bar is about 73,369 troops; a push into the soft flank that commits 40,000 leaves you at about 33,369 (21% of cap), which is back in the steep part of the curve where your next tick is worth a lot. You then regrow toward 40% before the east engagement rather than trying to fight the 70% neighbor from a bar you have let idle at the top of the curve.
Scenario B: The Endgame Overextension Trap
Now the opposite failure mode. You are in the endgame of a FFA match holding 9,000 tiles (cap 322,907) and your bar has idled at 96% (about 310,000 troops) because you have been defensive. A rival at 8,000 tiles (cap 302,136) launches a MIRV or a coordinated hydro strike aimed at your capital region. You react by trying to launch a counter-push, but you realize your bar is at 96% — and the taper term means your next tick adds only about 94% of peak in the steep sense, while the remaining gap to a full bar (the last 4%) is the slowest stretch of the whole curve. More importantly, committing a huge wave from 96% drops you to, say, 50,000 troops (15% of cap) and now your regrow is slow in the early low-bar sense but your defensive buffer is gone: the rival’s follow-up strike arrives before your bar has meaningfully recovered, and you are left with a thin bar and exposed territory.
The fix is a timing rule, not a bigger bar. In the endgame you should never idle a bar above about 60–70% when a nuclear or coordinated strike is on the table, because the marginal troops you hoard past that point are exactly the ones the taper term is about to suppress and they do not contribute to the wave you actually need. You want to commit the bulk of your bar before the strike window opens, dropping the bar into the 40–50% band where a regrow is fast, and keep only a small ready reserve for the immediate counter. If you had idled at 96%, the last 26% of your bar was nearly worthless to add each tick while it sat there — that is the wasted portion. The endgame version of the rule is therefore: treat the bar as a flow you keep cycling through the 40–50% band, not as a stock you park at the top, and size the pre-strike commitment so the post-commitment bar lands in the fast-regrow band rather than at the capped, slow edge.
Run the numbers on this specific case to see the size of the loss. At 9,000 tiles your cap is 322,907. Idled at 96% you hold about 310,000 troops and the taper term (1 − 310000/322907) is only about 0.04, so each tick adds roughly (10 + 310000^0.73/4) × 0.04 — a small absolute increment because the multiplier is so small. Now compare that to committing a 250,000-troop wave so the bar lands at 60,000 (18.6% of cap): the multiplier is now (1 − 60000/322907) ≈ 0.815, so every one of those remaining ticks is adding about 20 times as many troops as it would have at 96%. In other words, by deliberately spending your bar into the fast band before the strike, you convert the same amount of time into dramatically more defensive troops for the follow-up counter. The wasted portion at 96% is not just “a little slower” — it is the entire region of the curve where the taper has already suppressed the gain, so those last 26,000 troops you were trying to bank were the most expensive troops on the bar to produce. The practical endgame checklist is therefore: (1) watch for the strike window and pre-commit into the 40–50% band ahead of it, (2) keep a small ready reserve, and (3) do not treat a 90%+ bar as an asset — it is a liability you paid extra ticks to fill that you will spend on the next attack anyway.
When to Hold Instead of Push: The Failure and Its Counter
The most common timing failure is the reverse of overcommitting: holding the bar too long because the player is “saving up” for a bigger push and ends up never launching. The counter is a concrete threshold. If your target is a neutral or weakly defended region and your bar is anywhere in the 40–60% band, the expected value of pushing now is almost always greater than the expected value of waiting one more tick, because you are on the flat plateau where the wait gains you barely any extra troops while the target’s own bar regrows underneath you. The only situations where you should deliberately hold at a lower fill are three: you are the smaller of two neighbors (your per-tick absolute gain is small, so holding gains little and you can push sooner — the flip of the territory rule), you are inside an active nuclear exchange where your bar is going to be struck and a mid-bar is better than a full bar that gets destroyed, and you are about to build a city that will raise your cap, in which case the current bar’s absolute value is about to be re-anchored by the new, higher maxTroops and holding one extra tick costs less relative to the jump in cap.
The second half of the failure is the counter to your own pushes being read. Because the bar is visible to opponents, a predictable “push exactly at 40%” rhythm lets an experienced neighbor pre-position a defender sized to your expected wave. The counter is to vary the commit point across the flat 30–60% plateau rather than a single fixed 40%, and to occasionally push from a slightly higher fill (say 55%) when you specifically want the larger absolute wave and can afford the slower regrow that follows. Varying the point keeps the defender’s sizing problem unsolved: they do not know whether you are about to commit at 35% (smaller, faster to regrow) or at 55% (larger, slower to regrow), and both are within the productive band. The decision rule that unifies both halves is simple: the bar is a clock, not a score. Every tick at a fill where the taper is active is a tick of troops you are choosing not to commit; the question to ask before each tick is whether the troops you would gain in that tick are worth more to you committed than they are left in reserve, and if the answer is “committed” for three or four ticks in a row, the timing error is not in the wave size — it is in the hesitation, and you should push now.
Mode and Map Adjustments
The percentage rule is stable, but the thresholds shift by game mode and by map shape. In FFA, which this guide centers on, you face multiple independent neighbors, so the two-sided pressure scenario is the default and you should keep the bar cycling through the 40–50% band continuously, treating each neighbor’s bar as a separate regrow clock you are competing against. In 1v1 or team modes there is one opponent, so the bar becomes a single shared clock and you can afford a wider plateau: holding at 55–60% to build a larger decisive wave is more defensible because there is no second neighbor regrowing underneath you while you wait. In team modes the bar is effectively shared with allies, so the “regrow window” is partly supplied by your teammates and you can push more often and more lightly, landing pushes earlier on the plateau (30–40%) because the collective regrow covers the gap.
Map shape changes the absolute stakes the same way territory does. On a large, open map where the cap is high, the per-tick absolute gain is large and the regrow window is worth more, so you weight the hold side of the decision heavier and keep the bar lower before a decisive push. On a small or heavily contested map where the cap is low, the per-tick absolute gain is small, the regrow window is short, and you should commit earlier and more often — the cost of a one-tick wait is low, so hesitation is more expensive than a slightly-too-early push. Coastal and river maps add a second clock: the naval or river crossing you must fund means the troops you commit are partly in transit and do not contribute to the ground regrow while they sail, so the effective bar you are cycling is smaller than the visible one and you should hold slightly higher (45–55%) to keep the ground regrow productive while the crossing is underway. Mountain-heavy maps slow ground movement and increase the value of a larger, fewer pushes, which again pushes the threshold toward the upper part of the plateau. The constant across all of this is that you are always comparing the value of the next committed wave against the value of one more tick of regrow at the current fill, and the mode and map only change how big those two values are in absolute terms, not which side of the comparison you should favor.
Putting It Together: A Decision Checklist
Run this checklist before every push; it encodes every rule in this guide into a sequence you can execute mid-match. First, read your own fill fraction and the fill fractions of the 1–2 neighbors you are about to engage. Do this as a ratio, not a troop count: ask “am I at 40%, 55%, or 90% of my own cap?” and do the same for the neighbor. The absolute numbers differ by territory, but the fill fractions are directly comparable to the plateau and the taper. Second, decide your territory relationship: are you the larger neighbor (weight the regrow window heavier, hold lower before a big push) or the smaller neighbor (weight the commit heavier, push sooner)? The larger neighbor’s per-tick gain is higher, so waiting is cheaper for them; the smaller neighbor should not wait for a full bar because the gap to a competitive wave is too wide. Third, check the mode: FFA (cycle 40–50% continuously, multiple clocks running against you, so you cannot afford a long idle), 1v1 (wider 55–60% plateau is fine because there is only one enemy clock, and the game is more predictable), or team (lighter, earlier 30–40% pushes, shared regrow with your ally, so you can push sooner and recover faster). Fourth, check the map: open or large (hold lower because you have more room to absorb a failed push), small or contested (push sooner because a failed push is more costly in a tight space), coastal (hold 45–55% while a boat crossing is in transit, so the bar is available to commit the moment the boats land), mountain (fewer larger pushes because terrain slows waves, so you can afford to hold a higher fill before committing a big one). Fifth, ask the single question: is the next committed wave worth more than one more tick of regrow at my current fill, and has that answer been “committed” for the last few ticks? If yes, push now and drop the bar into the fast-regrow band; if no, hold for that one tick and re-evaluate. Two failure guards follow. Never idle above 70% while a nuclear or coordinated strike is on the table: the hoarded top is exactly the portion the taper has already suppressed, so you paid extra ticks for troops that are the most expensive on the bar and the least useful for the next push. And never let the “save up for a bigger push” habit keep you below the plateau for many ticks: that is the hesitation error, and it quietly costs you more than a single mistimed push because you are missing the entire plateau window while the target’s own bar regrows underneath you. The whole guide reduces to one sentence: treat the troop bar as a flow through the 40–50% band, commit when the committed wave beats the regrow tick, and never park at the capped top where the taper has already made the last troops nearly free to lose. If you want a quick sanity check that your timing is correct, after every push your bar should land somewhere in the 40–55% band and you should be visibly watching it climb back up the fast part of the curve; if you catch your bar sitting at 85%+ for more than a few seconds in FFA, you are in the hesitation error and you should have committed sooner. For the sizing of the individual waves you commit at each push point, see the Attack Ratio guide, and for how the cap itself is built up as you gain tiles and cities, see the Population Growth guide.
Related content
Use OpenFront v34.3 costs, troop growth, route payback, and stop signals to choose City, Port, Factory, defense, or a liquid reserve without copying a fixed script.
- OpenFront AFK Teammate Takeover: Absorb a Disconnected Ally for Zero Troop Loss
A Team-mode decision guide for what a teammate's disconnect does to your win/loss position, when absorbing their land is free, when it is a trap, and what the 30-second mark and the ranked 2v2 rules actually change.
Sep 23, 2026
- Alliance-Break Timing: When 30 Seconds Is Worth the Trade
Decide whether to break a live alliance now, wait for it to expire, or renew it, using the 30-second traitor window, the 0.5 defense and 0.8 speed debuffs, and the -100/-40 relation drops in OpenFront v0.34.
Sep 30, 2026
- OpenFront Annexation and Enclosure: Close Pockets Without Overextending
Learn how to take small footholds, close an enemy pocket, and keep a second route after the capture instead of turning a lead into a fragile border.
Sep 4, 2026