Skip to content

Minimap & Map Travel

Overview

The minimap stack splits into world/UI minimap (UMIPMinimapRuntimeComponent, markers, bounds) and map unlock / portal travel (UMIPPlayerMapManager on the player, AMIPBaseMapPortal, server map data). Tile compositing helpers exist for authored minimap art.

All paths below are relative to Plugins/ModularInventoryPlus/Source/ModularInventoryPlus/.


Key Classes & Files

Class File
UMIPMinimapRuntimeComponent Public/Minimap/MIPMinimapRuntimeComponent.h
UMIPMinimapMarkerComponent (+ NPC/enemy/dynamic variants) Public/Minimap/*.h
AMIPMinimapBounds Public/Minimap/MIPMinimapBounds.h
UMIPMapBPFL, UMIPMinimapTileCompositeBPFL Public/Minimap/MIPMapBPFL.h, MIPMinimapTileCompositeBPFL.h
UMIPMinimapDataAsset Public/Minimap/MIPMinimapDataAsset.h
UMIPPlayerMapManager Public/Minimap/MIPPlayerMapManager.h
FMIPMapData Public/ServerData/MIPServerDataTypes.h

UMIPMinimapRuntimeComponent

  • Base: UActorComponent — attach to the local PlayerController; discovers AMIPMinimapBounds in the level to set MapOrigin / MapWorldSize.
  • API: WorldPositionToMinimapNormalized, HasValidBounds, marker list maintenance via AddMarker / RemoveMarker (called by marker components).
  • Delegates: OnMarkerAdded, OnMarkerRemoved.

UMIPPlayerMapManager

  • Base: UMIPBaseSaveableComponent — replicated map/portal state, save-game map list.
  • Delegates: OnMapUnlockedDelegate, OnPortalUnlockedDelegate.
  • API: UnlockMap / IsMapUnlocked, UnlockPortal / IsPortalUnlocked, SetInteractingMapPortal, SetPendingPortalDestinationMap / TryConsumePendingPortalTravel, TryPortalTravel.
  • Replication: CurrentMapPortal, MapNames, UnlockedMapPortals; server travel RPC Server_PortalTravel.

Integration

  • Dedicated ServerFMIPMapData and server-driven map lists.
  • Interaction — map portals as interactables.
  • Quest — pending portal destination for quick navigation.