RLS Studios
ProjectsPatreonCommunityDocsAbout
Join Patreon
BeamNG Modding Docs

Guides

Reference

server/commands - Camera & Input Commandsge_utils - Game Engine Utility Functionsmain.lua - GE Lua Entry Point & Game Loopmap.lua - Navigation Graph (AI Road Map)screenshot.lua - Screenshot Systemserver/server - Level Loading & Game ServerserverConnection - Client-Server Connection Manager`setSpawnpoint` - Default Spawn Point Persistence`simTimeAuthority` - Simulation Time & Bullet Time Control`spawn` - Vehicle Spawning & Safe Placement`suspensionFrequencyTester` - Suspension Natural Frequency Analysis
ui/ambientSound - Ambient Sound Stream PlayerUI Apps ManagerUI AudioBindings LegendCamera Distance AppConsole (consoleNG)Credits MusicExternal App (WebSocket UI Server)Fade ScreenGame BlurGameplay App ContainersGrid SelectorLivery EditorMessages DebuggerMessages/Tasks App ContainersMission InfoPolice InfoTop BarUI ModsUI Navigation / MapVehicle Paint EditorVehicle Vicinity AppUI Visibility
Generic Mission Data AppPoints Bar App
Minimap Additional InfoMinimap LayersMinimap (Main)Minimap RoadsMinimap RouteMinimap Topographic MapMinimap UtilitiesMinimap Vehicles

UI

Resources

BeamNG Game Engine Lua Cheat SheetGE Developer RecipesMCP Server Setup

// RLS.STUDIOS=true

Premium Mods for BeamNG.drive. Career systems, custom vehicles, and immersive gameplay experiences.

Index

HomeProjectsPatreon

Socials

DiscordPatreon (RLS)Patreon (Vehicles)

© 2026 RLS Studios. All rights reserved.

Modding since 2024

API ReferenceGE Extensionsuiappsminimap

Minimap Additional Info

Streams supplementary info (distance to target, location name, police status) alongside the minimap.

Streams supplementary info (distance to target, location name, police status) alongside the minimap.


Overview

ui_apps_minimap_additionalInfo runs per-frame checks for route distance, current location name, and police pursuit status, then queues changes to the "minimap" UI stream.

Extension path: lua/ge/extensions/ui/apps/minimap/additionalInfo.lua


Exports (M)

FunctionSignatureDescription
requestAdditionalInfo()Forces a re-send of all additional info on next frame.
onUpdate(dt)Per-frame hook: checks route, location, police state and streams changes.
onReachedTargetPos()Clears distance-to-target when destination is reached.
onClientEndMission()Clears all additional info on mission end.
onSetBigmapNavFocus(pos)Resets distance when navigation focus is cleared.

Internals

Streamed Fields

The additionalInfo table is queued to the "minimap" stream with these optional fields:

FieldTypeSource
distToTargetstringcore_groundMarkers.routePlanner.path[1].distToTarget via translateDistance()
locationNamestringgameplay_city.getHighestPrioZone() or level title fallback
policeModestring"disabled", "visibleToPolice", or "hiddenFromPolice" from gameplay_police

Change Detection

Each check compares against the previous value and only sets hasNewAdditionalInfo = true when something changes:

local function checkRoute()
  local rp = core_groundMarkers.routePlanner
  if not rp or not rp.path or not rp.path[1] then
    if oldDistToTarget then resetDistToTarget() end
    return
  end
  local distToTarget, unit = translateDistance(rp.path[1].distToTarget, "auto")
  if distToTarget ~= oldDistToTarget then
    oldDistToTarget = distToTarget
    additionalInfo.distToTarget = string.format("%.1f %s", distToTarget, unit)
    hasNewAdditionalInfo = true
  end
end

Location Name Resolution

Falls back from gameplay_city zone names to level title:

local location = gameplay_city.getHighestPrioZone(camPos)
if location then
  locationName = location.name
else
  -- Fallback to level title from core_levels
end

How It Works

  1. onUpdate runs every frame, calling checkRoute(), checkLocationName(), checkPolice()
  2. Each check compares current state against cached previous value
  3. If any field changed, hasNewAdditionalInfo flag is set
  4. At end of frame, changed info is queued via guihooks.queueStream("minimap", additionalInfo)
  5. UI minimap widget reads the stream and displays distance, location, and police indicators

Additional Exports

The following exports are available but not yet documented in detail:

  • M.onClientEndMission
  • M.onReachedTargetPos
  • M.onSetBigmapNavFocus
  • M.onUpdate
  • M.requestAdditionalInfo

Points Bar App

HUD progress bar for displaying point-based scoring with configurable thresholds.

Minimap Layers

Z-order layer constants for minimap draw primitives.

On this page

OverviewExports (M)InternalsStreamed FieldsChange DetectionLocation Name ResolutionHow It WorksAdditional Exports