Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Enhanced Location Progression

Enhanced location progression requires a smart terrain to be visited before it appears on the map or can be selected as a same-level travel target.

The source lives under src/engine/extensions/enhanced_location_progression.

Default state

The extension exports:

export const name = "Enhanced location progression";
export const enabled = true;

It is enabled by default unless saved extension state overrides it.

Behavior

On registration, the extension sets:

mapDisplayConfig.REQUIRE_SMART_TERRAIN_VISIT = true;

This flag is checked by map display and travel code.

Map Spots

updateTerrainsMapSpotDisplay shows global terrain spots only when:

  • REQUIRE_SMART_TERRAIN_VISIT is disabled; or
  • the actor has the "<terrain>_visited" info portion.

Restrictor lifecycle code gives visited info portions when the actor reaches the matching restrictor.

Travel

TravelManager.isSmartAvailableToReach rejects smart terrain travel targets on the current level when REQUIRE_SMART_TERRAIN_VISIT is enabled and the terrain has not been visited.

Saved data

This extension does not export save or load. It changes runtime config during extension registration.

Editing Notes

  • Keep the progression toggle in main.ts.
  • Check map and travel behavior together when changing this flag.
  • Preserve visited info portion naming because other code checks "<terrain>_visited".