Crawl Data Editor
Editor tool for creating and managing crawl gameplay data - trails, paths, boundaries, and starting positions used by the crawl game mode. Provides tabbed editing interface with separate edit modes fo
Editor tool for creating and managing crawl gameplay data - trails, paths, boundaries, and starting positions used by the crawl game mode. Provides tabbed editing interface with separate edit modes for each data type.
Public Functions
| Function | Signature | Description |
|---|---|---|
M.getAllTrails | () → table | Returns the allTrails table |
M.getAllMissionTrails | () → table | Returns the missionTrails table |
M.getAllPaths | () → table | Returns the allPaths table |
M.getAllBoundaries | () → table | Returns the allBoundaries table |
M.getAllStartingPositions | () → table | Returns the allStartingPositions table |
M.getSelectedTrailIndex | () → number | Returns selectedTrailIndex |
M.getSelectedPathIndex | () → number | Returns selectedPathIndex |
M.getSelectedBoundaryIndex | () → number | Returns selectedBoundaryIndex |
M.getSelectedStartingPositionIndex | () → number | Returns selectedStartingPositionIndex |
M.setSelectedTrailIndex | (index) | Sets selectedTrailIndex |
M.setSelectedPathIndex | (index) | Sets selectedPathIndex |
M.setSelectedBoundaryIndex | (index) | Sets selectedBoundaryIndex |
M.setSelectedStartingPositionIndex | (index) | Sets selectedStartingPositionIndex |
M.getSelectedTrail | () → table/nil | Returns the currently selected trail object |
M.getSelectedPath | () → table/nil | Returns the currently selected path object |
M.getSelectedBoundary | () → table/nil | Returns the currently selected boundary object |
M.getSelectedStartingPosition | () → table/nil | Returns the currently selected starting position |
M.renameObjectFile | (oldFilePath, newFilePath, objectType) → bool | Renames file and updates cross-references |
M.markAsDirty | (objectType, index) | Marks an object as having unsaved changes |
M.testLogging | () → true | Test function that logs to console |
M.loadAllObjects | () | Reloads all trails, paths, boundaries, starting positions from disk |
M.moveTrailToLevel | (trail) → bool | Moves a mission trail back to the level directory |
M.onEditorInitialized | () | Registers window, menu items, and edit modes |
M.onSerialize | () → table | Serializes editor state |
M.onDeserialized | (data) | Restores editor state |
M.onEditorGui | () | Main per-frame UI rendering with tabbed interface |
Key Features
- Trails - Define crawl trail configurations linking paths, boundaries, and starting positions
- Paths - Create path node sequences for crawl routes
- Boundaries - Draw polygon boundaries for crawl zones
- Starting Positions - Define spawn/start locations for trails
- File-Based - All data saved as individual files in
settings/cloud/crawls/ - Cross-Referencing - Trails reference paths, boundaries, and starting positions by file path
- Rename Support - Renaming auto-updates all cross-references
- Unsaved Indicator - Orange-colored items indicate unsaved changes
Edit Modes
| Mode | Description |
|---|---|
Edit Pathnodes | Place and manipulate path nodes |
Edit Boundaries | Draw and edit boundary polygons |
Edit Trail | Configure trail properties |
Sub-Modules
| Module | Path | Purpose |
|---|---|---|
| boundaries | crawlEditor/boundaries | Boundary polygon editing |
| paths | crawlEditor/paths | Path node editing |
| trails | crawlEditor/trails | Trail configuration |
| startingPositions | crawlEditor/startingPositions | Start position management |
| input | crawlEditor/input | Mouse/keyboard input handling |
| missionPortTool | crawlEditor/missionPortTool | Mission porting utilities |
Data Flow
Trail
├── pathId → Path file
├── boundaryId → Boundary file
├── startingPositionId → Starting position file
└── startingPositionIdReversed → Reverse start position fileSee Also
- crawlEditor/boundaries - Boundary polygon editing details
Co-Simulation Signal Editor
Editor tool for configuring co-simulation signal coupling between BeamNG vehicles and external 3rd-party simulators via UDP. Also provides vehicle signal logging (VSL) capabilities for kinematics, dri
Create Object Tool
Editor tool for creating scene objects via toolbar groups. Provides categorized buttons (Environment, Level, BeamNG, Other Classes) with click-to-place creation, build functions for default field setu