RLS Studios
ProjectsPatreonCommunityDocsAbout
Join Patreon
BeamNG Modding Docs

Guides

Reference

Server CommandsGE UtilitiesGame Engine MainNavigation GraphScreenshot CaptureServerServer ConnectionSpawnpoint ManagerSimulation TimeVehicle SpawningSuspension Frequency Tester
Editor AI TestsEditor AI VisualizationEditor – Assembly Spline ToolAsset BrowserAsset DeduplicatorAsset Management ToolSFX Previewer (Audio Events List)Audio Ribbon EditorAutoSaveBarriers EditorBiome ToolBuilding EditorBulk RenameCamera BookmarksCamera TransformCamera Path EditorCEF HelperCo-Simulation Signal EditorCrawl Data EditorCreate Object ToolDataBlock EditorDecal EditorDecal Spline EditorDocumentation HelperDrag Race EditorDrift Data EditorDrive Path EditorDynamic Decals Tool (Vehicle Livery Creator)Engine Audio DebugExtensions DebugExtensions EditorFFI Pointer Leak TestFile DialogFlowgraph EditorForest EditorForest ViewEditor Gizmo HelperEditor Ground Model Debug HelperEditor Headless Editor TestEditor Icon OverviewEditor ImGui C DemoEditor InspectorEditor Layout ManagerEditor Level SettingsEditor Level ValidatorEditor LoggerEditor Log HelperEditor MainEditor Main MenuEditor Main ToolbarEditor Main UpdateMap Sensor EditorMaster Spline EditorMaterial EditorMeasures Inspector HeaderMesh Editor (Base)Mesh Road EditorMesh Spline EditorMission EditorMission PlaybookMission Start Position EditorMulti Spawn Manager (Vehicle Groups)Navigation Mesh EditorEditor News MessageObject Tool (Object Select Edit Mode)Object To Spline EditorParticle EditorPerformance Profiler / Camera RecorderPhysics ReloaderPrefab Instance EditorEditor PreferencesRace / Path EditorRally EditorRaycast Test Editor ToolRenderer Components Editor ToolRender Test Editor ToolResource Checker Editor ToolRiver EditorRoad Architect EditorRoad DecorationsRoad Editor (Decal Road)Road Network ExporterRoad River Cache HandlerRoad River GUIRoad Spline EditorRoad Template EditorRoad UtilitiesScene TreeScene ViewScreenshot Creator BootstrapScript AI EditorScript AI ManagerSensor Configuration EditorSensor DebuggerShape EditorShortcut LegendSidewalk Spline EditorSites EditorSlot Traffic EditorSuspension Audio DebugTech Server ManagerTerraform ToolTerrain And Road ImporterTerrain EditorTerrain Materials EditorText EditorTool ManagerTool ShortcutsTraffic DebugTraffic ManagerTraffic Signals EditorUndo History ViewerVehicle Bridge TestVehicle Detail ViewerVehicle Editor MainEditor - VisualizationEditor Viz HelperEditor Water Object HelperEditor Windows Manager
Rally Editor - Driveline TabRally Editor - Measurements TabRally Editor – Mission Settings TabRally Editor – Notebook Info TabRally Editor – Pacenotes TabRally Editor – Recce TabRally Editor – System Pacenotes TabRally Editor – Test Tab

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 ExtensionseditorrallyEditor

Rally Editor - Driveline Tab

Sub-module for editing the stage driveline - an editable spline that defines the driving path through a rally stage.

Sub-module for editing the stage driveline - an editable spline that defines the driving path through a rally stage.


Overview

Provides a complete driveline editing workflow: load from recording, existing final driveline, or race path; edit via interactive spline with node insertion/deletion/dragging; simplify with RDP algorithm; generate final driveline points; save to file. Includes experimental buffer zone visualization.


Class Methods

MethodSignatureDescription
C:init(rallyEditor)Initializes state, creates empty DrivelineV3
C:setPath(path)Sets notebook path, auto-loads final driveline if available
C:selected / C:unselect()Tab activation/deactivation hooks
C:draw(mouseInfo, dtReal, dtSim, dtRaw)Renders the full UI (source selection → editing → saving)
C:drawDebugEntrypoint(mouseInfo)3D rendering: raw points, spline, final driveline, buffer zone
C:loadFromRecording()Loads raw driveline from recording file
C:loadFromFinal()Loads existing final driveline or creates blank
C:loadFromRace()Creates driveline from race AI path
C:saveFinalDriveline()Saves final driveline points to JSON
C:handleSplineInteraction()Mouse/keyboard input for node manipulation
C:createDrivelineFromSpline()Generates final points from the spline curve
C:calculateRaceDistance()Measures distance between start/finish via RallyManager
C:generateBuffer()Creates spatial buffer zone around driveline
C:isPointInBuffer(point)Checks if a point falls within the buffer zone

Spline Interaction

ActionInputDescription
Select nodeClick on nodeHighlights and selects for editing
Drag nodeClick+drag on nodeMoves node with terrain Z-snapping
Insert nodeClick on curveInserts new node at click position
Add to endClick free spaceAdds node to nearest spline endpoint
Delete nodeDELETE keyRemoves selected node (min 2 nodes)

Load Sources

SourceDescription
RecordingRaw recorded driving data with simplification tolerance slider
Existing FinalPreviously saved driveline (or blank if none exists)
Race PathGenerated from race AI detailed path

Properties

PropertyTypeDescription
speedLimitKphfloatMaximum speed limit for the driveline section

Notes

  • Uses DrivelineV3 module for spline math and rendering.
  • RDP simplification with configurable tolerance (0.1–6.0m for recordings, fixed 9.0m for manual).
  • Full undo/redo for all spline edits via deep-copy snapshots.
  • Final driveline saved as compact {version, points, properties} JSON.
  • Buffer zone uses bounding box quick-reject + radius check for spatial queries.
  • Node hit detection uses distance-adaptive tolerance for comfortable interaction.

Module Variables

  • windowDescription (string) - Module variable.

Functions

formatDistance(dist)

Handles format distance.

  • dist (any)

Returns: boolean - false

hasRecording()

Checks if has recording.

Returns: boolean - false

hasFinalDriveline()

Checks if has final driveline.

Returns: boolean - false

getDrivelineLength()

Returns the driveline length.

Returns: self.drivelineV3:createDrivelineFromSpline()

getDrivelinePointCount()

Returns the driveline point count.

Returns: self.drivelineV3:createDrivelineFromSpline()

updateSplineGeometry()

Updates spline geometry.

Returns: self.drivelineV3:createDrivelineFromSpline()

deepCopySpline()

Handles deep copy spline.

Returns: self.drivelineV3:createDrivelineFromSpline()

undoSplineEdit(data)

Handles undo spline edit.

  • data (table)

Returns: self.drivelineV3:createDrivelineFromSpline()

redoSplineEdit(data)

Handles redo spline edit.

  • data (table)

Returns: boolean - false

Module Variables

  • windowDescription (string) - Module variable.

Functions

formatDistance(dist)

Handles format distance.

  • dist (any)

Returns: boolean - false

hasRecording()

Checks if has recording.

Returns: boolean - false

hasFinalDriveline()

Checks if has final driveline.

Returns: boolean - false

getDrivelineLength()

Returns the driveline length.

Returns: self.drivelineV3:createDrivelineFromSpline()

getDrivelinePointCount()

Returns the driveline point count.

Returns: self.drivelineV3:createDrivelineFromSpline()

updateSplineGeometry()

Updates spline geometry.

Returns: self.drivelineV3:createDrivelineFromSpline()

deepCopySpline()

Handles deep copy spline.

Returns: self.drivelineV3:createDrivelineFromSpline()

undoSplineEdit(data)

Handles undo spline edit.

  • data (table)

Returns: self.drivelineV3:createDrivelineFromSpline()

redoSplineEdit(data)

Handles redo spline edit.

  • data (table)

Returns: boolean - false


See Also

  • Rally Editor - Measurements Tab - Related reference
  • Rally Editor – Mission Settings Tab - Related reference
  • Rally Editor – Notebook Info Tab - Related reference
  • World Editor Guide - Guide

Race Editor - Track Layout Tab

Sub-module for configuring the structural layout of a race track - start/end nodes, starting positions, and lap settings.

Rally Editor - Measurements Tab

Sub-module for measuring distances along the stage snaproad with persistent, auto-saving measurement groups.

On this page

OverviewClass MethodsSpline InteractionLoad SourcesPropertiesNotesModule VariablesFunctionsformatDistance(dist)hasRecording()hasFinalDriveline()getDrivelineLength()getDrivelinePointCount()updateSplineGeometry()deepCopySpline()undoSplineEdit(data)redoSplineEdit(data)Module VariablesFunctionsformatDistance(dist)hasRecording()hasFinalDriveline()getDrivelineLength()getDrivelinePointCount()updateSplineGeometry()deepCopySpline()undoSplineEdit(data)redoSplineEdit(data)See Also