RLS Studios
ProjectsPatreonCommunityDocsAbout
Join Patreon
BeamNG Modding Docs

Guides

Reference

Server CommandsGE UtilitiesGame Engine MainNavigation GraphScreenshot CaptureServerServer ConnectionSpawnpoint ManagerSimulation TimeVehicle SpawningSuspension Frequency Tester
Ambient SoundUI Apps ManagerUI AudioBindings LegendCamera Distance AppDeveloper ConsoleCredits MusicExternal WebSocket ServerFade ScreenGame BlurGameplay App ContainersGrid SelectorLivery EditorMessages DebuggerMessages/Tasks App ContainersMission InfoPolice InfoTop BarUI ModsNavigation Map DataVehicle Paint EditorVehicle Vicinity AppUI Visibility
Details InteractionVehicle SelectorTile ClusteringTile GroupingTilesTile SortingVehicle OperationsVehicle Specifications

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 ExtensionsuivehicleSelector

Tile Grouping

Assigns vehicle configs to display groups (Type, Brand, Country, Value, Years, etc.).

Assigns vehicle configs to display groups (Type, Brand, Country, Value, Years, etc.).


Overview

ui_vehicleSelector_tileGrouping determines which visual group(s) a vehicle config belongs to in the selector grid. Supports categorical groups (Type, Brand, Country, etc.) and range-based groups (Years, Value). Also inserts configs into special Favourites/Recent groups.

Extension path: lua/ge/extensions/ui/vehicleSelector/tileGrouping.lua


Exports (M)

FunctionSignatureDescription
getGroupsForConfig(config, groupMode, displayData) → group[]Returns groups a config belongs to.
isRangeGroupMode(groupMode) → boolWhether this group mode uses range buckets.
getGroupModeFunction(groupMode) → fnReturns the grouping function.
getRangeGroupingFunction(groupMode) → fnReturns the range bucketing function.
getConfigOrModelPropValue(config, prop) → valueGets property from config, falling back to model.

Data Fields

FieldDescription
M.groupModeFunctionsTable mapping group mode names to their grouping functions.

Internals

Type Ordering

Car           → "Cars and Trucks"    (10)
Truck         → "Cars and Trucks"    (20)
Heavy Machinery → "Heavy Machinery"  (30)
Trailer       → "Trailers"           (80)
Prop          → "Props"              (90)

Group Mode Functions

ModeGroups By
TypeVehicle type → merged category name
BrandBrand name
CountryCountry of origin
Config TypeFactory / Race / Drift / etc.
Derby ClassDerby class
Body StyleBody style
SourceContent source

Range Groups

ModeBuckets
YearsDecade-based: "1990s", "2000s", etc.
ValuePrice tiers: "$0-$10k", "$10k-$20k", ..., "$1M+"

Special Groups

If favourites/recent display is enabled, configs are also added to Favourites (order -1) and Recent (order -2) groups.


How It Works

  1. getGroupsForConfig reads the relevant property from the config (or model fallback).
  2. For categorical modes, calls the group function to get a {groupName, groupOrder}.
  3. For range modes, calls the range function to get one or more bucket groups.
  4. Appends Favourites/Recent groups if the config qualifies and display settings allow it.

Lua Examples

local tileGrouping = require('/lua/ge/extensions/ui/vehicleSelector/tileGrouping')

-- Get groups for a config
local groups = tileGrouping.getGroupsForConfig(config, "Type", displayData)
-- → {{groupName = "Cars and Trucks", groupOrder = 10}}

-- Check if a mode is range-based
local isRange = tileGrouping.isRangeGroupMode("Value")  -- true

Additional Exports

The following exports are available but not yet documented in detail:

  • M.getConfigOrModelPropValue
  • M.getGroupModeFunction
  • M.getGroupsForConfig
  • M.getRangeGroupingFunction
  • M.isRange
  • M.isRangeGroupMode

See Also

  • Vehicle Selector – Details Interaction - Related reference
  • Vehicle Selector – General - Related reference
  • Vehicle Selector – Tile Clustering - Related reference
  • UI System Guide - Guide

Tile Clustering

Groups vehicle configurations into clustered tiles by brand/model or model key.

Tiles

Generates the grouped, clustered, and sorted tile grid for the vehicle selector.

On this page

OverviewExports (M)Data FieldsInternalsType OrderingGroup Mode FunctionsRange GroupsSpecial GroupsHow It WorksLua ExamplesAdditional ExportsSee Also