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
Crawl BoundariesCrawl Flowgraph BridgeCrawl DebugCrawl UI DisplayCrawl Flowgraph BridgeCrawl SystemCrawl Save SystemCrawl Engine

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 Extensionsgameplaycrawl

Crawl Flowgraph Bridge

Reference for `gameplay_crawl_crawlFlowgraphBridge`, a bridge extension that exposes crawl system functionality to flowgraph nodes. This appears to be a legacy version - see also `gameplay_crawl_flowg

Reference for gameplay_crawl_crawlFlowgraphBridge, a bridge extension that exposes crawl system functionality to flowgraph nodes. This appears to be a legacy version - see also gameplay_crawl_flowgraphBridge for the updated version.


Overview

Provides a high-level API for flowgraph nodes to load, configure, start, stop, and query crawl trails. Maintains internal bridge state tracking the active trail and crawler.


Dependencies

gameplay_crawl_saveSystem, gameplay_crawl_general, gameplay_crawl_utils, gameplay_crawl_boundary, gameplay_crawl_display


Exports

| Function | Signature | Description | |------ | M.dependencies | table | { 'gameplay_crawl_saveSystem', 'gameplay_crawl_general', 'gameplay_crawl_utils', |----|-----------|-------------| | M.applyPenalty | (penaltyType) | - | applyPenalty handler | | M.cleanup | () | - | Cleans up resources | | M.configureCrawl | (trail) | - | configureCrawl handler | | M.getActiveCrawlerId | () | - | Returns ActiveCrawlerId | | M.getAllStartingPositions | () | - | Returns AllStartingPositions | | M.getAllTrails | () | - | Returns AllTrails | | M.getCrawlEndData | () | - | Returns CrawlEndData | | M.getCrawlRuntimeData | () | - | Returns CrawlRuntimeData | | M.getDynamicObjectsFromPrefab | (prefabId, dynamicName) | - | Returns DynamicObjectsFromPrefab | | M.getLastRecoveryCheckpointIndex | () | - | Returns LastRecoveryCheckpointIndex | | M.getPenaltyTypes | () | - | Returns PenaltyTypes | | M.getPlayerTrailStats | (trailId) | - | Returns PlayerTrailStats | | M.getTrailInfo | (trailId) | - | Returns TrailInfo | | M.isCrawlActive | () | - | Checks if CrawlActive | | M.loadCrawlTrail | (trailId) | - | loadCrawlTrail handler | | M.onCrawlPathnodeReached | (eventData) | - | Callback for CrawlPathnodeReached event | | M.onCrawlResultsShown | (eventData) | - | Callback for CrawlResultsShown event | | M.onCrawlStarted | () | - | Callback for CrawlStarted event | | M.resetCrawl | () | - | resetCrawl handler | | M.setRecoveryCheckpoint | (checkpoint) | - | Sets RecoveryCheckpoint | | M.startCrawl | (vehicleId) | - | startCrawl handler | | M.stopCrawl | () | - | stopCrawl handler | | loadCrawlTrail | (trailId) | Load a trail by ID from the save system | | configureCrawl | (trail) | Configure boundary, path, and starting position for a trail | | startCrawl | (vehicleId) | Start the crawl with a vehicle (or player vehicle) | | stopCrawl | () | Stop the active crawl | | resetCrawl | () | Reset crawler to starting position and stop | | getCrawlEndData | () | Get completion data (time, points, completed, disqualified) | | getCrawlRuntimeData | () | Get live state (position, direction, current pathnode) | | getTrailInfo | (trailId) | Get trail metadata | | isCrawlActive | () | Check if a crawl is currently running | | getActiveCrawlerId | () | Get the active crawler's vehicle ID | | getAllTrails | () | List all available trails | | getAllStartingPositions | () | List all starting positions | | getPlayerTrailStats | (trailId) | Get player's best scores for a trail | | getDynamicObjectsFromPrefab | (prefabId, dynamicName) | Find dynamic objects in a prefab | | applyPenalty | (penaltyType) | Apply a named penalty to the active crawler | | getPenaltyTypes | () | Get list of penalty type names | | getLastRecoveryCheckpointIndex | () | Get index of last recovery checkpoint | | setRecoveryCheckpoint | (checkpoint) | Set a manual recovery checkpoint | | cleanup | () | Stop crawl and clear state |


How It Works

-- Load and configure a trail
local trail = gameplay_crawl_crawlFlowgraphBridge.loadCrawlTrail(trailId)
gameplay_crawl_crawlFlowgraphBridge.configureCrawl(trail)

-- Start the crawl
gameplay_crawl_crawlFlowgraphBridge.startCrawl(vehicleId)

-- Check runtime data
local data = gameplay_crawl_crawlFlowgraphBridge.getCrawlRuntimeData()
print("Time: " .. data.currentTime .. " Points: " .. data.points)

-- Stop and cleanup
gameplay_crawl_crawlFlowgraphBridge.cleanup()

Penalty Types

boundaryViolation, drivingBackwards, gateTouch, vehicleReset, wrongDirection, skippedCheckpoint, vehicleFlippedUpright, dnf


Key Behaviors

  • Maintains its own bridgeState with activeTrail, activeCrawlerId, isActive
  • On reset, teleports the vehicle back to the starting position using spawn.safeTeleport
  • Listens for onCrawlStarted, onCrawlResultsShown, onCrawlPathnodeReached hooks
  • Trail info includes name, description, path/boundary IDs, rules, prefabs, and metadata

Hooks / Lifecycle

FunctionDescription
onCrawlStartedUpdates bridge state when crawl begins
onCrawlResultsShownHandles results display
onCrawlPathnodeReachedTracks pathnode progress

See Also

  • crawl/boundary - Crawl Boundary System - Related reference
  • crawl/debug - Crawl Debug Window - Related reference
  • crawl/display - Crawl UI Messages - Related reference
  • Gameplay Systems Guide - Guide

Crawl Boundaries

Reference for `gameplay_crawl_boundary`, which manages spatial boundaries for rock crawling trails. Spawns animated flag markers along boundaries, checks crawler positions against boundary zones, and

Crawl Debug

Reference for `gameplay_crawl_debug`, which provides an ImGui debug window displaying real-time crawl state information including trail data, vehicle info, penalty system, infraction data, path nodes,

On this page

OverviewDependenciesExportsHow It WorksPenalty TypesKey BehaviorsHooks / LifecycleSee Also