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
General MilestonesMilestones Core

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 Extensionscareermodulesmilestones

General Milestones

M.dependencies = {"career_modules_milestones_milestones"}

Dependencies

M.dependencies = {"career_modules_milestones_milestones"}

Central milestone collection and management. Gathers milestone configs from subsystems via hook, manages claim/reward flow, and provides milestone data to the UI.


Public API

FunctionSignatureDescription
M.claim(id)Claim rewards for a milestone step, advance claimedStep
M.getMilestone(id) → tableGet formatted milestone data for UI (progress, rewards, label)
M.printDebug()Export all milestones to CSV file

Hook Handlers

HookPurpose
M.onCareerModulesActivatedCollect milestones, setup callbacks
M.onClientStartMissionRe-collect if empty
M.onGetMilestonesAppend milestones to list, apply filter

Milestone Config Structure

Each subsystem provides milestone configs via onGeneralMilestonesCollect:

{
  id = "branch_motorsport",
  filter = {branch=true, general=true},
  type = "branch",
  maxStep = 10,
  icon = "star",
  color = "orange",
  minValueIsPreviousStepTarget = true,  -- subtract prev target from progress bar
  getValue = function() return currentXP end,
  getLabel = function(step, displayValue, target) return "Motorsport:" end,
  getDescription = function(step, displayValue, target) return "Reach level 5" end,
  getProgressLabel = function(step, current, target) return "500/1000 xp" end,
  getTarget = function(step) return requiredXP[step] end,
  getRewards = milestones.majorLinear,  -- function(step) → rewards table
}

Claim Flow

M.claim(id)
  → Get rewards for current step via getRewards(step)
  → career_modules_playerAttributes.addAttributes(sumChange)
  → Increment claimedStep
  → Hook: onGeneralMilestoneClaimed
  → Toast notification

getMilestone Output

{
  label = "Star Collector",
  description = "Collect 50 stars",
  progress = {{type="progressBar", minValue=0, currValue=35, maxValue=50, done=false}},
  rewards = {{attributeKey="money", rewardAmount=500}},
  claimable = false,
  step = 2,
  maxStep = 6,
  icon = "star",
  color = "orange",
  claimFunction = function() ... end,
  claimRefreshFunction = function() ... end,
}

See Also

  • milestones - Save/load, reward functions, UI bridge
  • branches - Branch level milestones
  • missions - Mission star milestones

Repair Screen

M.dependencies = {'career_modules_valueCalculator', 'career_modules_inventory', 'career_modules_playerAttributes', 'career_modules_payment', 'career_modules_insurance_insurance'}

Milestones Core

Core milestone infrastructure: save/load, claim bridge, reward functions, notification system, and UI data formatting. Used by all milestone subsystems.

On this page

DependenciesPublic APIHook HandlersMilestone Config StructureClaim FlowgetMilestone OutputSee Also