
Over view
This mod adds pathfinding to Xaero's minimap and Xaero's World Map
This mod does not support auto-walking ⚠️
How it works
- Routes over real terrain, not straight-line distance.
The A* search combines walking, climbing, swimming, descending, ladders/vines, riding a boat, jumping 1–3 block gaps, digging, and bridging over gaps with placed blocks. - Long-distance routes are calculated in stages.
First, a rough route is drawn using Xaero's Map data so it can reach beyond the chunks currently loaded around the player. Then, a detailed pathfinding search connects the player's actual position to that rough route with a precise path. It also supports paths with multiple vertical layers—for example, in the Nether, where different passages can overlap at the same XZ coordinates but at different heights. - Recalculates only when needed.
Small deviations from the line while walking don't trigger a redraw, so the guidance stays stable instead of flickering. - Warns you before danger, not after.
Segments next to lava, digging that could flood the area, falls without a safe landing, and swims that would run out of breath are all colored differently from normal movement. - Works even without Xaero.
Map drawing is disabled, but pathfinding, in-world rendering, and the on-screen guidance still work. - While gliding with the elytra, the system calculates a 3D flight path.
It plots a polyline in the air that avoids collisions with terrain and follows it using a deviation check and recalculation interval separate from those used for walking.
How to use
| Method | Action |
|---|---|
| World map | Right-click empty space on the map → "Route here" |
| Waypoint | Right-click a waypoint → "Route here" |
| Keybind | "Route to block looked at" (unbound by default) |
| Command | /xaeronav goto <x> <y> <z> |

No matter which method you use, your destination is displayed on Xaero's map, so you'll know where you're headed without following the line to its end. With Xaero's Minimap installed, it's registered as a temporary waypoint: it stays upright as the minimap rotates, moves to the edge with a distance readout once it's off screen, and shows in the world like any other waypoint. It's never saved to disk, and it disappears when you clear the route.
Route colors
| Color | Meaning |
|---|---|
| Green | Walking |
| Yellow | Climbing up |
| Blue | Climbing/stepping down |
| Dark blue | Swimming |
| Light cyan | Riding a boat |
| Purple | Ladder / vine |
| Pink | Jumping a gap |
| Orange | Digging (target block highlighted through walls) |
| Cyan | Bridging with placed blocks |
| Red | ⚠ Adjacent to lava |
| Magenta | ⚠ Void below |
| Light blue | ⚠ Digging lets water flow in |
| Reddish pink | ⚠ Swim segment with no breath left |
| Orange-red | ⚠ Fall that deals damage |
| Teal | Fall softened by placing water at the last moment (MLG) |
| Pale orange | ⚠ Sneaking across a magma block |
| Off-white | Dotted line for a stretch with no known route (heads toward the unexplored destination) |
| Amber | Coarse waypoint chain for a long-distance route |
| Red pin | The destination, drawn by XaeroNav when Xaero's Minimap is not installed (stays the same size on screen at any zoom) |
| Sky blue | Aerial path while gliding with an elytra |
Warning colors take priority over movement-type colors — danger needs to read first.
Commands
| Command | What it does |
|---|---|
/xaeronav goto <x> <y> <z> |
Set the destination |
/xaeronav clear |
Clear the route |
/xaeronav version |
Print the running build (include this in bug reports) |
/xaeronav debug ... holds measurement commands that print numbers to chat without navigating anywhere: mapdata [radiusChunks] (how much of Xaero's map data is available around you), route and corridor (the coarse waypoint chain and its per-leg refinement), probe (what the detailed search reached, and why it stopped), and flight (the aerial route). They exist to explain a route that came out wrong — attach their output to a bug report.
Known Limitations ⚠️
- Searches are limited to loaded chunks and are terminated by the maximum number of expansion nodes. For distant destinations, the path ends partway, and the remainder is shown as a dotted line (the rest will be calculated as you proceed). The HUD also displays the message "This area is unexplored."
- The search range is limited by Minecraft's render distance (128 blocks at a render distance of 8). Chunks not sent from the server cannot be read, and since the vanilla protocol does not include packets to request chunks, the mod cannot retrieve them on its own. If long-distance navigation cuts off midway, increase the render distance.
- Long-distance routes using Xaero map data cannot be used if Xaero is not installed or if you have never visited that region (the system will fall back to on-the-spot calculations based on loaded chunks).
- The HUD is not displayed for glider routes. It appears only when a destination for walking is set.
- Routes that cross dimensions are not supported. If you move to a different dimension, the destination will be cleared.
- Map integration is implemented by plugging into Xaero's internal system. If this structure changes in a new version of Xaero, only that specific part will become disabled, and a one-time chat notification will be sent upon joining the world to indicate what has been disabled. In-world rendering and the HUD will continue to function as usual.
- Surface-first routing does not work in dimensions without a sky (the Nether and The End).
MIT (LICENSE).
Movement cost baselines are informed by measurements used in Baritone (LGPL), but the code itself is an independent implementation.