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 smart terrains to be discovered before some map and travel behavior can use them.

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.

Runtime 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.

Save 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".