Configuration

Plate config and the apply flow for CustomPlates.

Item
customizableplate

Icon: Item images.

Config files

configs/config.lua:

KeyDefaultPurpose
PlateItemName'customizableplate'Usable item. Inventory name must match.
EnableOxExclusivefalseWhen true and ox_inventory is started, a swapItems hook blocks player-to-player transfers. Slot moves in your own inventory still work.
ProgressBarEnabledtrueWalks to the rear bumper, then a 5s cancellable apply progress.
FilteredWords'badword', 'fuck', 'asshole'Case-insensitive substring rejects. Keep entries long enough that they cannot swallow an innocent plate (ass would also block CLASS).
Settings.MinCharacters8Minimum plate length.
Settings.MaxCharacters8Maximum plate length. GTA plates are 8 characters; anything higher is clamped.

Labels: locales/en.json. ## Player flow

Use the item. Wrong vehicle (inside it, nothing nearby, not networked) notifies and never opens the overlay.

The NUI is a license-plate overlay, not an ox_lib dialog. It must ack plateReady within 2s or you get UiUnavailable and mouse is returned. Escape or click outside cancels (same path as the cancel button). Submit stays disabled until min length.

On a valid plate the ped walks to the rear bumper. If ProgressBarEnabled, a 5s cancellable mechanic progress runs (mini@repair / fixing_a_ped). The server then re-checks plate text, distance, ownership, uniqueness, and that the item is still in inventory. Same plate as the vehicle already has is rejected. The item is removed first and given back if the write fails or throws.

If jg-mechanic is started, the resource calls vehiclePlateUpdated(oldPlate, newPlate) after a successful apply.

Inventory icons by Decay Studios.

On this page