RLS Studios
ProjectsPatreonCommunityDocsAbout
Join Patreon
BeamNG Modding Docs

Guides

Reference

server/commands - Camera & Input Commandsge_utils - Game Engine Utility Functionsmain.lua - GE Lua Entry Point & Game Loopmap.lua - Navigation Graph (AI Road Map)screenshot.lua - Screenshot Systemserver/server - Level Loading & Game ServerserverConnection - Client-Server Connection Manager`setSpawnpoint` - Default Spawn Point Persistence`simTimeAuthority` - Simulation Time & Bullet Time Control`spawn` - Vehicle Spawning & Safe Placement`suspensionFrequencyTester` - Suspension Natural Frequency Analysis
Career BranchesCareer System CoreCareer Save System
Career Computer MenuCareer Fuel SystemInspect VehicleVehicle InventoryLinear TutorialLoaner VehiclesCareer LogLogbookMarketplaceMission WrapperCareer Painting ModuleCareer Part Inventory ModuleCareer Part Shopping ModuleCareer Payment ModuleCareer Permissions ModuleCareer Playbook Writer ModuleCareer Player Abstract ModuleCareer Player Attributes ModuleCareer Player Driving ModuleCareer Quick Travel ModuleCareer Rentals ModuleCareer Reputation ModuleCareer Spawn Points ModuleCareer Speed Traps ModuleCareer Test Drive ModuleCareer Tether ModuleCareer Tuning ModuleCareer UI Utils ModuleCareer Unlock Flags ModuleCareer Value Calculator ModuleVehicle Class GroupingVehicle Deletion ServiceVehicle PerformanceVehicle Shopping

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 Extensionscareermodules

Vehicle Inventory

M.dependencies = {'career_career', "career_modules_log", "render_renderViews", "util_screenshotCreator"}

Dependencies

M.dependencies = {'career_career', "career_modules_log", "render_renderViews", "util_screenshotCreator"}

Central vehicle inventory system. Manages owned/loaned vehicles, spawn/despawn, part conditions, thumbnails, garage detection, save/load, license plates, and the vehicle selection UI.


Public API - Vehicle Management

FunctionSignatureDescription
M.addVehicle(vehId, inventoryId, options) → idRegister vehicle in inventory from spawned object
M.removeVehicle(inventoryId)Remove vehicle from inventory entirely
M.removeVehicleObject(inventoryId, skipPartCond)Despawn vehicle object but keep inventory entry
M.enterVehicle(newInventoryId, loadOption, callback)Enter/switch to a vehicle (spawn if needed)
M.sellVehicle(inventoryId, price) → boolSell vehicle, add money, remove from inventory
M.sellVehicleFromInventory(inventoryId)Sell + save + refresh UI
M.returnLoanedVehicleFromInventory(inventoryId)Return loaner via loanerVehicles module
M.expediteRepairFromInventory(inventoryId, price)Pay to skip repair delay
M.spawnVehicle(inventoryId, replaceOption, callback) → vehObjSpawn vehicle (0=new, 1=replace current, 2=replace same ID)
M.delayVehicleAccess(inventoryId, delay, reason)Set timed access block (repair/delivery)
M.setFavoriteVehicle(inventoryId)Set favorite vehicle
M.renameVehicle(inventoryId, name) → boolRename vehicle

Public API - Getters

FunctionSignatureDescription
M.getVehicles() → tableAll vehicles keyed by inventory ID
M.getVehicle(inventoryId) → tableSingle vehicle data
M.getCurrentVehicle() → number/nilCurrent vehicle inventory ID
M.getCurrentVehicleId() → number/nilCurrent vehicle object ID
M.getLastVehicle() → number/nilLast entered vehicle inventory ID
M.getFavoriteVehicle() → number/nilFavorite vehicle inventory ID
M.getVehicleIdFromInventoryId(inventoryId) → vehIdMap inventory→object ID
M.getInventoryIdFromVehicleId(vehId) → inventoryIdMap object→inventory ID
M.getMapInventoryIdToVehId() → tableFull inventory↔object map
M.getVehicleThumbnail(inventoryId) → pathThumbnail image path
M.getVehicleUiData(inventoryId, idsInGarage) → tableFull UI-ready vehicle data
M.hasFreeSlot() → boolWhether inventory has space (max 20)
M.getNumberOfFreeSlots() → numberAvailable inventory slots
M.isEmpty() → boolWhether inventory has no vehicles
M.isSeatedInsideOwnedVehicle() → boolWhether player is in an owned vehicle
M.getClosestGarage(pos) → garageNearest garage facility
M.getInventoryIdsInClosestGarage(onlyFirst) → table/idVehicles in nearest garage
M.getDirtiedVehicles() → tableVehicles needing save

Public API - Part Conditions

FunctionSignatureDescription
M.updatePartConditions(vehId, inventoryId, callback)Fetch part conditions from vehicle bridge
M.updatePartConditionsOfSpawnedVehicles(callback)Update all spawned vehicles
M.applyPartConditions(inventoryId, vehId)Apply stored conditions to vehicle
M.getPartConditionsCallback(partConditions, inventoryId)Bridge callback for part conditions

Public API - UI & Menu

FunctionSignatureDescription
M.openMenu(chooseButtonsData, header, buttonsActive)Open vehicle inventory menu
M.closeMenu()Close inventory menu
M.openMenuFromComputer(computerId)Open with retrieve/replace/performance buttons
M.chooseVehicleFromMenu(inventoryId, buttonIndex, repairPrevVeh)Execute chosen button callback
M.sendDataToUi()Push all vehicle data to UI
M.openInventoryMenuForChoosingListing()Open for marketplace listing selection

Public API - License Plates

FunctionSignatureDescription
M.setLicensePlateText(inventoryId, text)Change license plate text
M.purchaseLicensePlateText(inventoryId, text, money)Pay to change plate
M.isLicensePlateValid(text) → boolValidate plate text
M.isVehicleNameValid(text) → boolValidate vehicle name
M.onExitVehicleInventory()-
M.onAvailableMissionsSentToUi()-
M.teleportedFromBigmap()-
M.setVehicleDirty(inventoryId)-
M.debugRespawnCurrentVehicle()-

Hook Handlers

HookPurpose
M.onExtensionLoadedLoad vehicles from save slot
M.onSaveCurrentSaveSlotSave vehicles, thumbnails, positions
M.onSaveCurrentSaveSlotAsyncStartRegister async save extension
M.onClientStartMissionSetup inventory on level load
M.onCareerModulesActivatedSetup inventory, sell all if version mismatch
M.onUpdateProcess delayed access timers, show notifications
M.onBeforeWalkingModeToggledEnter/exit vehicle on walk toggle
M.onEnterVehicleFinishedTrack last vehicle
M.onBigMapActivatedSnapshot part conditions
M.onScreenFadeStateExecute post-fade callbacks
M.onComputerAddFunctionsAdd "My Vehicles" to computer
M.onCheckPermissionPermission checks for owned/loaned vehicles
M.onGetRawPoiListForLevelAdd vehicle markers to bigmap

Key Constants

  • Slot amount: 20 vehicles max
  • Save version: 42 minimum
  • Default vehicle: covet / DXi_M

See Also

  • insurance - Insurance per vehicle
  • loanerVehicles - Loaned vehicle management
  • marketplace - Vehicle listing/selling

Inspect Vehicle

Manages vehicle inspection and test drive flow for dealership/private vehicle purchasing. Spawns vehicles at parking spots, handles player travel to inspection location, manages tethers to prevent lea

Linear Tutorial

M.dependencies = {'career_career'}

On this page

DependenciesPublic API - Vehicle ManagementPublic API - GettersPublic API - Part ConditionsPublic API - UI & MenuPublic API - License PlatesHook HandlersKey ConstantsSee Also