Paid Resources🔑 filo_vehiclekeys
Changelog
What changed in each release, and how to update from v1.
2.2.0
Changed
- Auto-lock now also unlocks: a car with auto-lock on unlocks as its key holder tries to get in. Triggered by the enter key (
Config.DefaultKeybinds.Enter, defaultF) with a short check, and verified on the server. No longer depends onbaseevents.
2.1.7
Fixed
- Inserting keys sometimes playing the animation and sound without the key moving
- Repeat presses within 500 ms were silently dropped (ox_lib callback delay); calls are no longer throttled client-side.
- The ignition lock could stay stuck after an error, ignoring every later press for that vehicle; it is now always released and expires after 5 seconds.
- The animation and sound now only play after the server confirms; a refused press shows why.
- Removing the key with the engine off playing the "key in" sound
2.1.6
Changed
- A key left in the ignition now stays saved with the car when it's stored, instead of being returned to the inventory (reverts that part of 2.1.5).
- A car taken out of a garage starts with its engine off: a saved "engine on" only counts while the engine is actually running.
2.1.5
Fixed
- Cars stored in a garage with the key in the ignition being drivable without a key when taken out. The ignition is now emptied when the car is stored or deleted, and the key goes back to the player who inserted it (on their next load-in if they're offline).
- Owned cars taken out of a garage again in the same session keeping the cached data of the deleted entity, so their key state wasn't set on the new car.
2.1.4
Changed
- Keyless detection is now cached per model on the server: config models need no client call, and electric detection asks one client once per model per session.
Config.KeylessSystem.EnabledandAutomaticallyDetectElectricModelsare now respected.
Fixed
- Electric and
Config.KeylessSystem.Modelsvehicles (e.g. Neon) getting a regular key instead of a key fob. Keyless was set and then overwritten by the state bag defaults, and wasn't checked at all when no player triggered the spawn.
2.1.3
Fixed
- qbx_policejob and qbx_ambulancejob vehicles and helicopters not giving keys
- The
qbx_vehiclekeysGiveKeysexport now waits for a just-set plate to sync before issuing the key; before, the key was issued for the old plate. vehiclekeys:client:SetOwnercallsGiveKeysByPlate(it called a function that doesn't exist).
- The
2.1.2
Fixed
- Helicopters and some other vehicles not starting until the player got out and back in. The vehicle is now made drivable before the engine is started.
2.1.1
Changed
Config.SimpleIgnitionnow still moves the key: one press takes the key from the inventory, plays the key sound and animation, and starts the engine. One press stops the engine and gives the key back. Keyless and hotwired cars just toggle the engine.
2.1.0
Added
Config.SimpleIgnition: one press of the ignition or engine key turns the engine on and off. The key only has to be carried, with no inserting or removing it.
2.0.2
Fixed
- The engine starting again after re-entering a vehicle whose ignition was turned off and keys removed. The engine-off hold now also runs on entry, and GTA no longer starts engines by itself (ped config flag 429).
2.0.1
Fixed
LockNPCVehicles,LockParkedVehiclesandLockedVehiclesChancehaving no effect. Traffic and parked cars are now locked by the server when they spawn, and no longer depend onbaseevents.
Changed
LockParkedVehiclesnow controls parked cars (it was gated byLockNPCVehicles).- Only vehicles that end up locked send network traffic. The spawn handler isn't registered when locking is turned off.
2.0.0
Added
- NPC carjacking: aim at a driver, hold them up, take the car and its key
- Vehicle class difficulty tiers with per-class lockpick/hotwire chances and hotwire times
- Model blacklist for lockpicking, hotwiring and carjacking
- Police bypass (job, grade, duty and optional
police_bypassitem) - Dispatch alerts: ps-dispatch, built-in notify + blip, or your own function
- tr_minigames physical lockpick and hotwire (included, pre-configured)
- sleepless_prompts for all prompts (included, replaces filo_textui)
/keyadminpanel to manage vehicles, key IDs, job access and keys- Automatic key removal for unowned vehicles on despawn and restart
HasVehicleAccessexport (client and server)
Changed
- Reworked key system: one server-side registry, key IDs validated on the server
- Framework, inventory, minigames, dispatch and target code moved to an open
bridge/folder - Admin command is now
/keyadmin
Fixed
/givekeywith plates containing spaces and stored vehicles- Locksmith keys not saving, double key removal and many other bugs
- Exploits: lock/unlock without keys, client-set state bags, spare key pricing
Updating from v1
Replace the
filo_vehiclekeys folder. Back up your shared/sh-config.lua first: the config has new sections, so copy your values over instead of reusing the old file.Add
sleepless_prompts, tr_core and tr_minigames from the download. filo_textui is no longer needed.Add
police_bypass from filo_vehiclekeys/INSTALL/ox_inventory.txt and wire_strippers from tr_minigames/install/ox_inventory/items.lua.Ensure them in this order:
ensure sleepless_prompts
ensure filo_vehiclekeys
ensure tr_core
ensure tr_minigamesExisting key data in the filo_vehiclekeys table is kept. Scripts using the v1
filo_vehiclekey exports keep working through the compatibility layer.