Skip to content

/navmap

Script-provided

Start it with /lua run navmap.

Syntax

/lua run navmap

Description

2D navigation map overlay showing navmesh edges, actors, routes, and points of interest, filtered by floor height. Click to navigate.

A top-down ImGui window that draws the walkable geometry of the loaded Detour navmesh around the player. Shows the route the navigator is currently walking and lets you click a point on the map to walk there via the navmesh pathfinder.

What it draws

Layer What Toggle
Navmesh Boundary (wall) edges from eq2.navmesh.local_geometry(). Cached and refreshed periodically. draw_navmesh
Route The active navigator route and progress index. draw_path
Map Background map image (if available for the zone). draw_map
POIs Points of interest. draw_pois
Actors Nearby spawns: PCs, mobs, named, pets, NPCs (each sub-filterable). draw_actors
Player Your position and facing wedge. Always on.

Click-to-navigate

Clicking a point on the map plans a path with the navmesh (lib.navpath / eq2.navmesh.find_path) and feeds the resulting corners to the same eq2.waypoints navigator every other route source uses. The click is snapped to the nearest point on the mesh (refused if the snap moves it further than max_snap metres).

The script never moves the character itself and never falls back to straight-line movement when pathing fails -- it only sets waypoints through the existing navigator safety boundary.

Settings

Settings are global (not per-character) and persist to config/navmap/settings.lua.

Key Default Notes
radius 150.0 World units of mesh geometry to request.
scale 1.2 Pixels per world unit.
max_snap 8.0 Refuse clicks whose mesh snap exceeds this.
follow_player true Keep the view centred on the player.
flip_x false Mirror east/west. Toggle until terrain matches the game.
fight_to false Route clicks through /jidou fightto (fight mobs en route).
map_alpha 0.6 Background map image opacity (0--1).

Coordinates

EQ2 is Y-up, so the map plane is world (X, Z) and world Y is the vertical axis. Y is not drawn; it is only used to pick a sane height when snapping a click onto the mesh.

Examples

/lua run navmap
/lua stop navmap

See also