Skip to main content
Two files cover almost everything you’ll want to tweak. Both are escrow_ignore’d so they survive updates. Vehicle catalog data lives in the database, not in a Lua file, and is managed from /dealershipadmin — see Admin panel.

Core

Leave Framework on auto unless you’re running multiple cores side-by-side and want to force one.

Interaction mode

Config.Interaction is the top-level switch between target-script wiring and a proximity textui hint:
  • auto — uses a target script if one is running, else falls back to textui.
  • target — forces target wiring (falls back to textui if no supported target is installed).
  • textui — forces the proximity [E] hint and never wires up target.
If you pick auto or target, set the script you want under Config.Target:
…and the textui adapter (used when target falls through or Config.Interaction = 'textui'):

Notifications, keys, fuel, garage

Each integration has its own selector + a Config.*Fn override for one-off behaviour. See Optional integrations for the full list of supported scripts and how to plug in one we don’t ship.

Purchase rules

OwnerSplitPercent is the portion that goes to the dealership’s player owner. The remainder feeds the society balance / dealership bank.

Test drive

Financing

When enabled, the purchase UI shows a “Pay in Full” / “Finance” toggle. Players see active loans and can pay early via /financemenu.
Financing needs a stable player identifier and is auto-disabled when Bridge.Framework == 'standalone'.

Stock & restock orders

Owned dealerships sell from a stocked SKU pool. Public lots are unlimited unless you flip EnforceOnPublic.

Direct sales

Lets employees sell to a nearby customer who accepts via a prompt.

Sell vehicle (buyback)

Players sell back to a dealership for a fraction of catalog price.

Management & admin panels

Employees & commission

When SyncFrameworkJob = true, hiring a player into a dealership with an Owner = 'jobName' lot also grants them that job at the matching grade — so they pass job-gated selling checks automatically.

Showroom preview camera

Marker (when a lot uses Interaction = 'marker')

Discord webhook logging

Locales

Strings live in shared/locale.lua. Copy the ["en"] table to a new locale key (e.g. ["de"]), translate it, set Config.Locale = 'de', and restart.

Function overrides

Set any of these to a function to bypass the System-based dispatch:
Useful when your script’s API differs from any of the bundled adapters, or when you want to gate purchases on something custom (e.g. an in-game licence item).