RLS Studios
ProjectsPatreonCommunityDocsAbout
Join Patreon
BeamNG Modding Docs

Guides

Reference

Server CommandsGE UtilitiesGame Engine MainNavigation GraphScreenshot CaptureServerServer ConnectionSpawnpoint ManagerSimulation TimeVehicle SpawningSuspension Frequency Tester
Auto AnnotationBoosterCalibrate ESCCompile ImpostersCompile MeshesConfig List GeneratorDecal Roads EditorDependency TreeDoc CreatorVehicle ExporterFollow The White RabbitForest GeneratorGround Model DebugInput System UtilsInstanced Line Render DemoJBeam StatsLog StreamsMap TilesNode Beam ExportNode StreamPhotomodePrecompile ShadersPrecompile VehiclesProcedural Track GeneratorRectangle GeneratorRender Components APIResave MaterialsRich PresenceSave Dynamic DataScreenshot CreatorShowroomSort LinesStep HandlerTerrain GeneratorTest Extension ProxiesTest JSON Files SyntaxVehicle Rope DebugBatch WorkerWebSocket Test
Basic BordersBasic CentersBorder Wall MeshCamera TransitionCeiling MeshTrack MarkersMaterial UtilTrack MeshesMulti Track MergerObstacle PlacerTrack PiecesProcedural PrimitivesQuickrace SetupSegment To Procedural MeshSpline Track

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 ExtensionsutiltrackBuilder

Quickrace Setup

Reference for `extensions/util/trackBuilder/quickraceSetup.lua`. Loads a saved track and sets up checkpoints/vehicle positioning when a quick race scenario starts.

Reference for extensions/util/trackBuilder/quickraceSetup.lua. Loads a saved track and sets up checkpoints/vehicle positioning when a quick race scenario starts.


Exports

KeySignatureDescription
onScenarioLoaded(sc)Callback: loads the track, adds checkpoints, positions vehicle
onClientStartMission()Callback: resets the done flag for the next mission

Internals

  • Uses extensions['util_trackBuilder_splineTrack'] to access the spline track system.
  • On scenario load:
    1. Calls splineTrack.unloadAll() to clear previous track data
    2. Calls splineTrack.load(name, true, true, true) to load the track by name
    3. Calls splineTrack.addCheckPointPositions(reverse) to create waypoint checkpoints
    4. Calls splineTrack.positionVehicle(reverse) to place the player car at the start
  • The done flag prevents re-loading on subsequent calls within the same mission.
  • Track name comes from sc.track.customData.name; reverse flag from sc.track.reverse.

How It Works

This is a thin glue module that bridges the scenario system with the track builder. When a quick race scenario loads, it triggers the full track builder pipeline (load → checkpoints → vehicle placement).

-- Triggered automatically by the scenario system
-- sc.track.customData.name = "myTrack"
-- sc.track.reverse = false
quickraceSetup.onScenarioLoaded(scenarioData)

Additional Exports

  • M.onClientStartMission - (undocumented)
  • M.onScenarioLoaded - (undocumented)

See Also

  • Track Builder - Basic Borders - Related reference
  • Track Builder - Basic Centers - Related reference
  • Track Builder - Border Wall Mesh - Related reference
  • Game Engine Overview - Guide

Procedural Primitives

Reference for `extensions/util/trackBuilder/proceduralPrimitives.lua`. Generates mesh data (vertices, normals, UVs, faces) for primitive 3D shapes used as track obstacles.

Segment To Procedural Mesh

Reference for `extensions/util/trackBuilder/segmentToProceduralMesh.lua`. Converts track segments (with computed spline points) into ProceduralMesh objects rendered in the scene.

On this page

ExportsInternalsHow It WorksAdditional ExportsSee Also