Changelog
Released version and their changes.
#Changes
- Vehicles inside of interiors now show info bars hovering above them, so you can gauge their status easier.
- Added a new easier way to give access to new vehicles via an export.
- You just have to specify the model and the receiver, or you can go more in-depth.
- This feature does not replace any current flow and should not be used by dealerships, since our automatic dealership handler is already in place.
- More info here: https://docs.zykeresources.com/paid-resources/garages/exports-and-events#give-vehicle-basic
- Added a few missing translations to the additional languages.
#Files Affected
- client/unlocked/events.lua
- client/unlocked/functions.lua
- server/unlocked/functions.lua
- nui/*
- modules/interior_info_bars/client/main.lua
- modules/vehicle_init/client.lua
- fxmanifest.lua
2026-06-03 16:31 CET
#Changes
- Introduced vehicle transfer contracts – a new paper‑based ownership transfer system.
- Added a Transfer Contract item (
vehicle_transfer_contract) with a dedicated UI for creating and signing contracts.
- Added a Transfer Contract item (
- Expanded profession vehicle management.
- Qbox now has full support for profession vehicles.
- Regular workers can now access a more basic coloring "pimp" menu, if their profession has given the boss access to a full tuning menu.
- Garage menu tip now clickable, which will open the personal settings it is recommendating, instead of requiring you to run the command.
- Improved key system stability to prevent accidental frequency resets.
#Files Affected
- client/*
- server/*
- shared/*
- nui/*
- extras/items/ox_inventory.lua
- extras/items/qb-core.lua
- extras/items/qs-inventory.lua
- modules/*
- fxmanifest.lua
#Changes
- The garage vehicle count footer now shows a tip with the personal settings command (e.g., making it easier for players to discover how to open personal settings.
- When the
closeMenuOnSpawnconfiguration setting is enabled, the garage menu now automatically closes after a vehicle is spawned or impounded. - Players with "soft owner" access to a vehicle can now auto-purchase keys and take vehicles out of garage interiors in identifier‑access mode, previously only the primary owner could. This could previously cause profession vehicles to not give automatic keys.
#Files Affected
- client/locked/events.lua
- server/locked/events.lua
- shared/unlocked/config.lua
- shared/unlocked/types.lua
- nui/*
- fxmanifest.lua
#Changes
- Adjusted the profession vehicle parking restrictions to be simpler, replacing the previous confusing garageRestrictedProfessions config.
- Added easier methods to manage profession vehicles.
- Admins can now allow profession bosses to buy authorized vehicles via their vehicle management menu, for a set price.
- Admins can now allow profession bosses to run the /gpimpvehicle command to pimp out their profession vehicle fleet. In here, you can tune, change liveries, etc.
- Profession bosses can now duplicate profession vehicles that are authorized to be purchased, at the same price, which quickly lets you build a customized fleet based on the first vehicle's properties.
- Garage spawn menus now support using an NPC ped as an interaction point, selectable via the usingTarget config option.
- Added an admin command to reset a vehicle that is currently outside the garage, useful for administrative recovery.
- The garage UI now displays the vehicle's deformation damage status, giving players better visibility into their vehicle's condition.
- The garage builder tool now includes a button to teleport directly to the configured spawn position, making verification easier.
- Vehicle management interactions now also support using an NPC ped as the interaction point, in addition to props.
- Simplified the input that sets a garage as an impound.
#Files Affected
- client/*
- server/*
- shared/*
- nui/*
- modules/keys/server/functions.lua
- modules/persistent_vehicles/server/constructor.lua
- modules/profession_vehicles/client/functions.lua
- modules/profession_vehicles/server/functions.lua
- fxmanifest.lua
2026-05-25 04:48 CET
#Changes
- Added integration for bcs_housing, allowing property garages to be used as dynamic garages with access based on house keys.
- Added a new dynamic garage access system that supports custom access checks from integrations like bcs_housing.
- Fixed a potential error when checking garage ownership if the owner field was missing.
#Files Affected
- client/locked/functions.lua
- client/unlocked/functions.lua
- server/locked/events.lua
- shared/unlocked/types_dynamic.lua
- integrations/README.md
- integrations/[bcs_housing]/zyke_garages/README.md
- integrations/[bcs_housing]/zyke_garages/client.lua
- integrations/[bcs_housing]/zyke_garages/server.lua
- modules/dynamic_garages/client/sync.lua
- modules/dynamic_garages/server/access.lua
- modules/dynamic_garages/server/registration.lua
- modules/dynamic_garages/server/vehicles.lua
- fxmanifest.lua
#Changes
- Removed duplicate notification when lockpicking a vehicle.
- Fixed player displacement after the lockpicking animation that sometimes caused the ped to glitch into the ground.
#Files Affected
- client/unlocked/menus/vehicleactions.lua
- client/unlocked/small_resources/lockpicking.lua
- fxmanifest.lua
#Changes
- Fixed an issue where profession boss ranks would not refresh properly in the management menu.
- Constrained the vehicle list height in the management interface to prevent overflow.
- Normalized garage active states to ensure consistent and expected behavior across sessions.
- Tightened the default save spacing in the garage builder to make layouts cleaner.
- Clarified the default garage fallback description in all languages.
- Reduced excess bottom spacing in the garage builder editor for a tighter layout.
#Files Affected
- client/locked/events.lua
- client/locked/functions.lua
- client/unlocked/functions.lua
- client/unlocked/main.lua
- server/locked/events.lua
- server/locked/functions.lua
- server/locked/initialize.lua
- shared/locked/main.lua
- shared/unlocked/functions.lua
- nui/*
- locales/*
- modules/dynamic_garages/client/sync.lua
- modules/dynamic_garages/server/registration.lua
- fxmanifest.lua
#Changes
- Adjusted spacing in the cleanup/footer UI for better alignment.
- Optimized persistent vehicle saving to batch database writes, improving server performance when many vehicles exist.
- Refined vehicle save conditions to only save vehicles near players during runtime, reducing unnecessary saves.
#Files Affected
- server/*
- nui/*
- modules/persistent_vehicles/server/constructor.lua
- modules/persistent_vehicles/server/functions.lua
- modules/persistent_vehicles/server/main.lua
- fxmanifest.lua
#Changes
- Added a config option to block lockpicking vehicles while inside garage sections, with a corresponding notification.
- Added debug logging for the vehicle actions loop to help troubleshoot vehicle lock and engine state syncing.
#Files Affected
- client/unlocked/small_resources/lockpicking.lua
- server/unlocked/vehicleactions.lua
- shared/unlocked/config.lua
- shared/unlocked/functions.lua
- fxmanifest.lua
Changes
- Added a live preview wall when creating garage sections to better visualize boundaries and height.
- Improved boat garage support in the Garage Builder.
- The system now uses a boat model for previews instead of a car when editing boat-only garages.
- Raycasting now respects water levels to ensure accurate placement of boat spawn points.
- Added a developer command to remove vehicles that are currently outside of defined sections.
- Updated the vehicle cleanup logic to automatically ignore and preserve vehicles located within a section.
- Refactored the Blip Settings interface and logic within the Garage Builder for better usability.
- Improved the UI responsiveness when editing labels by implementing debounced inputs.
- Fixed an issue where garage section points could be placed in invalid locations when the placement cursor wasn't hitting a surface.
- Fixed a bug in the persistent vehicle system that caused certain values to reset incorrectly.
- Implemented a more dedicated and reliable saving method for persistent vehicles.
- Fixed a calculation error in the vehicle locking logic and adjusted the check interval for better performance.
- Improved UI text input styling to ensure placeholder and error text remains legible.
- Updated localization files for all supported languages.
Files Affected
- client/locked/garage_builder/EditSection.lua
- client/locked/garage_builder/EditSpawnPositions.lua
- server/unlocked/developer/commands.lua
- server/unlocked/vehicleactions.lua
- shared/unlocked/config.lua
- shared/unlocked/types.lua
- nui/*
- external_support/safe_dv/server.lua
- locales/*
- modules/persistent_vehicles/server/constructor.lua
- modules/persistent_vehicles/server/functions.lua
- fxmanifest.lua
Changes
- Provides more informative error message when attempting to initialize vehicle access from a database fetch, but the vehicle is missing required values. Usually the result of an incorrectly configured vehicle dealer or old vehicles that have not yet been initialized.
Files Affected
- server/locked/initialize.lua
- fxmanifest.lua
Changes
- Function to handle initialization of spawned vehicles, available as export for 3rd party scripts.
- Stops attempting to find and modify a vehicle that can not be found in a reasonable timeframe.
- Overhaul to key stealing, including various settings and a minigame option.
Files Affected
- client/unlocked/eventhandler.lua
- client/unlocked/small_resources/lockpicking.lua
- client/unlocked/small_resources/stealkeys.lua
- client/unlocked/menus/vehicleactions.lua
- server/unlocked/functions.lua
- server/unlocked/persistent_vehicles/functions.lua
- server/locked/vehicleactions.lua
- locales/en.lua
- Added
searchingKeys - Added
failedToFindKeys
- Added
- shared/unlocked/config.lua
- Modified
Config.Settings.keys - Added
Config.Settings.tempKeys
- Modified
- fxmanifest.lua
Changes
- Added a client-sided export to remove persistent vehicles.
- Better error handling for removing persistent vehicles.
Files Affected
- client/unlocked/persistent_vehicles/functions.lua
- server/unlocked/persistent_vehicles/functions.lua
- server/unlocked/persistent_vehicles/eventhandler.lua
- locales/en.lua
- Added
vinNotFound.
- Added
- fxmanifest.lua
Changes
- Fixed issue where the QBCore version could not check if the rank was considered boss.
- Removed unused argument for inventory update event.
- Extra check to see if metadata exist for keys in case it was obtained incorrectly or has missing data. Only prints a debug now.
Files Affected
- client/locked/functions.lua
- client/unlocked/main.lua
- server/unlocked/functions.lua
- fxmanifest.lua
Changes
- New vehicle actions menu.
- Hold keybind to open menu, press keybind to open keyfob for the closest vehicle you have access to.
- Keyfob UI.
- Keybind to lock closest vehicle.
- Optionally keys as items.
- Your items decide your access to vehicles.
- Change frequency and void older keys, ensuring the right people have access to your vehicles.
- Persistent vehicles.
- Leaving area / relogging does not despawn the vehicle.
- Server-restart proof, will respawn vehicles that are removed.
- Temporary vehicles are consistent.
- Removed previous "on restart" actions, now part of cleanup parameters.
- Adding cleanup parameters and execution.
- Better vehicle actions syncing, no need for exports to be placed everywhere, as other resources can now override the vehicle's state.
- New impound UI design.
- New finance UI design
- Updated the performance modifications UI design.
- Expanded the exports and events section.
- Configuration to require being inside of an impound zone to impound vehicles.
- Minor performance optimizations.
Files Affected
Replace all your files.
Database Updates v1.0.1 -> v1.1.0
Run the queries for your framework below, in order.
ESX
sqlDROP TABLE zyke_garages_restart_actions
sqlALTER TABLE owned_vehicles
ADD COLUMN keyFreq MEDIUMINT;
- Run zyke_cleanup_settings.sql.
QBCore
sqlDROP TABLE zyke_garages_restart_actions
sqlALTER TABLE player_vehicles
ADD COLUMN keyFreq MEDIUMINT;
- Run zyke_cleanup_settings.sql.
If starting fresh, simply run the new standard databases as usual.
Changes
- Further exploitation proofing.
- Additional event to set vehicle ownership after car dealer purchase.
- GiveTempKeys export also accepts plate, and finds vehicle by matching it.
- New OpenImpounderMenu export found here.
Files affected
- server/unlocked/eventhandler.lua
- Additional executor protection for setting new owner.
- server/unlocked/functions.lua
- Additional executor protection for setting new owner.
- client/unlocked/menus/impound.lua
- Created export to open impounder menu.
- client/unlocked/functions.lua
- GiveTempKeys accepting plate.
- Added zyke_garages:HandleVehiclePurchaseWithPlate event.
Official release for ESX and QBCore.
