Documentation

Access Modes

Choose how players receive and keep vehicle access.

Vehicle Keys always identifies a vehicle by its normalized plate. Plates are trimmed, uppercased, and limited to 12 characters. Entity(vehicle).state.plate takes priority over the visible native plate, allowing another resource to display a fake plate without changing key identity.

#Item Access

Set:

lua
Config.Settings.keys.useIdentifierAccess = false

Players receive physical inventory items containing:

  • plate
  • frequency
  • a formatted label
  • a description

The current key frequency must match the vehicle's stored frequency. Rotating the frequency invalidates older physical keys without requiring every old item to be found and removed.

Item mode supports key limits, custom labels, garage replacement-key purchases, key cleanup, and the full-inventory recovery command.

#Identifier Access

Set:

lua
Config.Settings.keys.useIdentifierAccess = true

Permanent key access is stored against the character identifier in zyke_vehiclekeys_vehicles. No physical key item is required.

Garage entitlement supplied through SetAccess remains separate from keys granted directly by Vehicle Keys. A garage can refresh its ownership/access list without deleting independently borrowed keys.

#Temporary Access

Temporary access is intended for rentals, spawned vehicles, job vehicles, and stolen NPC vehicles.

  • In item mode, a temporary grant issues a physical key.
  • In identifier mode, GiveTemporaryKey grants runtime access that is cleared when the player leaves.
  • A persistent vehicle provider can restore its own runtime-only access with SetTemporaryAccess.

#Plate Changes

Use RenamePlate(oldPlate, newPlate) for permanent plate changes. Vehicle Keys stores an alias so an offline player's old physical item can resolve to the new plate the next time it is checked.

Use DeleteVehicle(plate) when a vehicle is permanently removed. The resource retires the plate frequency and clears access so old keys cannot become valid if the plate is reused.

#Changing Modes

Choose the access mode before opening the server to players. The resource does not convert every live inventory key into identifier access, or identifier access into inventory items, simply because the config value changed. Plan and test an explicit migration before switching an established server.