Godot pathfinding / 2026-07-13 / 10 min read
Verified as of Godot 4.7 stable
Fire Emblem, Into the Breach and XCOM Movement in Godot
Fire Emblem terrain profiles, Into the Breach's telegraphed intents, and XCOM 2's action bands — three movement contracts mapped to verified Godot systems.

The direct answer
Fire Emblem, Into the Breach, and modern XCOM can use the same Godot grid and range-search layer, but they need different movement contracts. Fire Emblem combines faction phases with profile-dependent terrain costs and sequential unit commits. Into the Breach shows enemy intents, lets player actions change the board immediately, then resolves those intents in a deterministic order. Modern Firaxis XCOM gives each soldier two action points and presents movement as one-action and two-action bands.
The grid can be shared. The movement contract can't.
Compare the three movement contracts
The path query may look similar across all three games. Turn ownership, pricing, prediction, and state commitment are where their architectures separate.
| Contract question | Fire Emblem-style | Into the Breach-style | Modern Firaxis XCOM-style |
|---|---|---|---|
| Turn ownership | Player and enemy faction phases; units act one at a time inside the phase | Enemy intents are shown, then player units act against that information | Squad phase; soldiers can be selected in a flexible order |
| Movement budget | A unit profile interprets terrain costs against a movement allowance | Movement allowance is comparatively simple; terrain mainly changes legality or board state | One-action and two-action movement bands |
| Commit boundary | The selected unit moves, then completes its action | Player actions commit immediately; queued enemy intents resolve later | Confirmed movement spends one or both action points |
| Prediction | Reachable cells and usually the chosen route | Every visible enemy intent needs an updated predicted result | Destination, cover, visibility, and possible interruption matter |
| Supporting Godot layers | Range + terrain profile + occupancy policy + faction phase | Visible intent queue + immediate mutation + current-state deterministic resolution | Two range budgets + 2-AP transaction + sequential activation |
Fire Emblem: terrain profiles inside faction phases
The documented baseline here is Fire Emblem: Shadow Dragon. Nintendo's official manual says that play alternates between Player and Enemy phases. It shows a selected unit's movement range in blue and says that class and terrain affect that range.
Exact costs and special movement rules vary across the series, so don't turn one game's forest table into a universal constant. Put the variation in a movement profile. The board says which terrain occupies a cell; the selected profile decides whether that terrain is blocked and what entering it costs.
The tactical movement range guide owns the budgeted reachable-cell search and path preview. Action points and terrain costs owns movement_cost_for(cell, profile) and the quote/confirm transaction. The reservation-table guide keeps pass-through, hostile blocking, and legal stopping rules explicit, while the turn-order guide supplies the faction-phase coordinator.
Weapon triangles, combat forecasts, rescue, canto, and title-specific skills sit above this movement contract.
Into the Breach: visible enemy intents and immediate player actions
Subset Games' design postmortem states the central constraints plainly: enemy attacks are shown, there is no hit/miss chance, and results are deterministic during the player turn. The official game page likewise describes every enemy attack as telegraphed.
The important state isn't a more elaborate path. It is the enemy intent and its current prediction. A useful intent records the acting unit, the attack rule, its target or direction, and a stable ordering key. When the player moves, attacks, or pushes a unit, that action updates the live board immediately. The UI then recalculates what the queued enemy intents will do from that state.
When the enemy phase resolves, the coordinator uses a declared total order and revalidates each actor against the current board. A destroyed actor can't still attack because an animation callback arrived late. A displaced actor resolves from its current cell under the game's attack rule.
The turn-order and movement-planning guide owns explicit phases, data-shaped intents, deterministic ordering, and resolution-time revalidation. When a push needs to claim a destination, the reservation layer owns that cell transition.
Damage rules, objectives, and the wider puzzle design remain outside this movement contract.
Modern XCOM: one-action and two-action movement bands
The XCOM 2 manual gives each soldier two action points. A blue outline shows where the soldier can move for one AP; a yellow outline shows the two-AP dash range. Overwatch then introduces a separate interruption rule when an enemy moves within line of sight.
This is the modern Firaxis baseline, not a statement about every XCOM game. The 1994 original used granular time units. Jake Solomon has explained that the newer move-action model made squad plans more direct than the old accounting system.
For a Godot implementation, query the reachable set at the one-action budget and again at the two-action budget. Don't assume the second query must literally be 2 * first_budget; abilities, traversal links, and the game's own movement data may define those allowances differently.
The range-search guide owns those reachable sets. The AP transaction can represent a move priced at one or two actions, but its Fire Emblem-style entered-terrain ledger is not the XCOM payment model. Sequential soldier activations belong to the turn coordinator.
An exact XCOM-like game also needs elevation, cover, visibility, traversal links, concealment, and interrupts. Those systems affect movement decisions, but they aren't squeezed into this comparison as unfinished code.
Which contract should you prototype first?
Pick the row that contains the project's actual uncertainty. If the risk is terrain pricing, a telegraph prototype won't answer it. If the risk is whether three visible enemy attacks remain readable after two pushes, a larger movement map won't answer that either.
| What you need to validate | Start with | Why |
|---|---|---|
| A first complete tactical movement loop | Fire Emblem-style | One faction phase, one active unit, range preview, confirmation, and occupancy form the smallest complete baseline. |
| Telegraphs, displacement, and predictable consequences | Into the Breach-style | The board can stay small while you test visible intents, prediction updates, and deterministic resolution. |
| 3D positioning, cover, visibility, and reaction fire | Modern XCOM-style | Movement depends on several additional systems, so stabilize the grid and coordinator first. |
Frequently asked questions
What is the difference between Fire Emblem and XCOM-style movement in Godot?
Fire Emblem-style movement uses a unit profile to price terrain inside a movement allowance, usually during player and enemy faction phases. Modern XCOM-style movement gives a soldier two action points and displays one-action and two-action movement bands. Both can use the same range solver, but they charge and commit the selected move differently.
What movement system does Into the Breach use?
Enemy intents are visible before the player acts. Player movement, attacks, and pushes change the live board immediately, the prediction is refreshed, and the queued enemy intents later resolve in a deterministic order. The engineering weight sits in intent prediction and resolution rather than weighted terrain.
Does XCOM use per-tile movement costs like Fire Emblem?
Modern Firaxis XCOM presents one-action and two-action movement ranges. The selected band spends one or both AP. Fire Emblem-style movement instead lets a unit profile interpret terrain costs while reachable cells are calculated.
Can one Godot grid support all three movement systems?
Yes. Share board coordinates, adjacency, terrain facts, blockers, occupancy, and a profile-aware range solver. Keep terrain pricing, action budgets, intent queues, commit timing, prediction, and interrupt rules in separate contract layers.
Should a Godot tactics game use AStarGrid2D or a navmesh?
Use an explicit grid or graph to own cell-based tactical legality. A 3D game can still use a navmesh or traversal helper for local presentation, but it shouldn't silently redefine which cells are legal or affordable. The AStarGrid2D reference covers the grid API, while the grid-versus-navmesh guide owns the broader choice.
Which tactical movement system is easiest to prototype in Godot?
For a first complete movement loop, start with the Fire Emblem-style baseline: one faction phase, one active unit, range preview, confirmation, and occupancy. Start with Into the Breach-style rules when visible intents and displacement are the actual design risk. Add the modern XCOM cover, visibility, and interrupt stack after the grid and turn coordinator are stable.