RLS Studios
ProjectsPatreonCommunityDocsAbout
Join Patreon
BeamNG Modding Docs

Guides

Reference

Server CommandsGE UtilitiesGame Engine MainNavigation GraphScreenshot CaptureServerServer ConnectionSpawnpoint ManagerSimulation TimeVehicle SpawningSuspension Frequency Tester
Gameplay AchievementGameplay CityDiscoverForce FieldGarage ModeMarker InteractionParking SystemGameplay Playmode MarkersGameplay PoliceGameplay RallyGameplay Rally LoopGameplay Raw POIsGameplay Skidpad TestSpeed Trap LeaderboardsSpeed Traps and CamerasGameplay StatisticsTaxi Ride SystemTraffic SystemVehicle PerformanceWalking
Rally Audio ManagerRally Camera Path PlayerRally ClientRally Cut CaptureRally EnumsRally Extension HelperRally GeometryRally ManagerRecce ManagerRecce AppRecce SettingsRally Settings ManagerSnap-to-RoadTraffic Exclusion ZonesRally UtilityRally Vehicle CaptureRally Vehicle Tracker

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 Extensionsgameplayrally

Recce Settings

Persists recce mode settings per-level: last loaded mission, load state, and corner call style. Stored as JSON at the rally settings root.

Persists recce mode settings per-level: last loaded mission, load state, and corner call style. Stored as JSON at the rally settings root.


Constructor

local RecceSettings = require('/lua/ge/extensions/gameplay/rally/recceSettings')
local settings = RecceSettings()

Public API

FunctionSignatureReturnsDescription
C:load()booleanLoads settings from JSON file and corner angles data
C:save()nilSaves current settings to JSON file
C:setLastMissionId(level, id)nilSets and saves last mission ID for a level
C:getLastMissionId(level)stringGets last mission ID for a level
C:setLastLoadState(level, state)nilSets and saves load state for a level
C:getLastLoadState(level)booleanGets load state for a level
C:setCornerCallStyleName(style_name)nilSets and saves corner call style
C:getCornerCallStyleName()stringGets corner call style name
C:getCornerCallStyle()tableGets full corner call style data object
C:cornerCallStyleNames()tableLists all available style names
C:defaultCornerCallStyleName()stringReturns first available style name
C:loadCornerAngles()nilLoads corner angles configuration
M.init()nilinit

Serialization Hooks

FunctionDescription
C:onSerializeReturns settings table for JSON writing
C:onDeserializedRestores settings from loaded JSON data

How It Works

Storage

  • File: rallySettingsRoot/recce.json
  • Per-level tracking via last_mission_ids[level] and last_load_states[level]
  • Auto-saves on every setter call

Settings Schema

{
  last_mission_ids = { ["west_coast_usa"] = "rally_stage_01" },
  last_load_states = { ["west_coast_usa"] = true },
  corner_call_style_name = "default"
}

Corner Call Styles

Loaded from rallyUtil.loadCornerAnglesFile(). Each style defines angle thresholds for corner severity naming (e.g., "1" through "6", "hairpin").

local settings = RecceSettings()
settings:load()
local styleName = settings:getCornerCallStyleName()
local style = settings:getCornerCallStyle()  -- full style object with angles array

See Also

  • Rally Audio Manager - Related reference
  • Rally Camera Path Player - Related reference
  • Rally Client - Related reference
  • Gameplay Systems Guide - Guide

Recce App

Extension that manages the recce (reconnaissance) mode UI and recording workflow. Handles mission loading, vehicle navigation, driveline/voice recording, and communication with the CEF recce app.

Rally Settings Manager

Loads and provides access to mission-level rally settings (notebook filename, selected codriver). Wraps the `MissionSettings` class for convenience.

On this page

ConstructorPublic APISerialization HooksHow It WorksStorageSettings SchemaCorner Call StylesSee Also