Set up rally and click Plan.
A rally has two clocks: the rally timer (how long the rally stays open for joiners) and the march time from the leader's city to the target. Total time-to-impact is their sum, and joiners must be inside before the timer closes — as a rule of thumb this planner treats the final 30 seconds as the do-not-join window, since a march that lands after the rally launches is a march wasted. Enter your timer, march time, joiner count and troops per joiner; the planner returns total rally weight and the timeline your alliance actually has to hit.
Works out when each joiner has to hit a rally so their troops are actually in it, and what the rally is carrying when it launches.
joiners * troopsPer — Joiners multiplied by the average march you give it.rallyTimer + marchTime — The rally timer plus the march, which is what decides whether you beat a shield or a reinforcement.minJoinTime = rallyTimer - 30 — Thirty seconds before the timer ends. The code comment says it plainly: must join before last 30s.The thirty-second buffer is the only judgement in this calculator; everything else is your own numbers. It exists because a join landing in the final seconds can miss the launch.
Every expression shown in code above is quoted from js/calc-rally.js, which is the file this page actually runs.