Installation
Download
Before starting, you must log in to the CFX portal to download the asset. You will be able to download it as many times as you want on the official CFX page.
Steps to Download
-
Login to CFX Portal: First, log in to the official CFX portal by clicking here.
-
Find Your Assets: Once logged in, navigate to the Granted Assets section to access your purchased assets. You can download them by clicking the "Download" button.

Dependencies
It is necessary to have the screenshot-basic script for the radars to work. You can download the dependency here:
https://github.com/citizenfx/screenshot-basic
Add Resources
Once you have downloaded the script and dependencies, you must add them to your server's server.cfg file.
This resource must always be started below your framework and inventory. Otherwise, functionality issues or critical errors may occur.
# Default & Standalone Resources
# ------------------------------
ensure spawnmanager
ensure oxmysql
ensure bob74_ipl
# ESX Legacy Core
# ---------------
ensure [core]
ensure [inventory]
ensure screenshot-basic
ensure bit-garage
SQL Query
Use the following SQL query in your database:
ESX
ALTER TABLE `owned_vehicles` ADD COLUMN(
`state` int(5) DEFAULT 0,
`impouned` int(11) NOT NULL DEFAULT 0,
`garage` VARCHAR(255) DEFAULT NULL,
`health` VARCHAR(255) DEFAULT NULL
);
CREATE TABLE IF NOT EXISTS `bit_privgarages` (
`name` varchar(50) NOT NULL,
`parkingcoordx` varchar(100) NOT NULL,
`parkingcoordy` varchar(100) NOT NULL,
`parkingcoordz` varchar(100) NOT NULL,
`spawncoordx` varchar(100) NOT NULL,
`spawncoordy` varchar(100) NOT NULL,
`spawncoordz` varchar(100) NOT NULL,
`spawncoordheading` varchar(100) NOT NULL,
`savecarcoordx` varchar(100) NOT NULL,
`savecarcoordy` varchar(100) NOT NULL,
`savecarcoordz` varchar(100) NOT NULL,
`job` varchar(100) DEFAULT NULL,
`user` varchar(100) DEFAULT NULL
);
CREATE TABLE IF NOT EXISTS `bit_radars` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`areacoordX` varchar(50) DEFAULT NULL,
`areacoordY` varchar(50) DEFAULT NULL,
`areacoordZ` varchar(50) DEFAULT NULL,
`propcoordX` varchar(50) DEFAULT NULL,
`propcoordY` varchar(50) DEFAULT NULL,
`propcoordZ` varchar(50) DEFAULT NULL,
`speedlimit` int(20) DEFAULT NULL,
`fee` int(20) DEFAULT NULL,
`heading` int(20) DEFAULT NULL,
`radius` varchar(50) DEFAULT NULL,
PRIMARY KEY (`id`)
);
CREATE TABLE IF NOT EXISTS `bit_impound` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`timeStamp` varchar(80) DEFAULT NULL,
`impoundName` varchar(60) DEFAULT NULL,
`owner` varchar(50) DEFAULT NULL,
`ownerCharname` varchar(50) DEFAULT NULL,
`vehicleModel` varchar(50) DEFAULT NULL,
`vehiclePlate` varchar(50) DEFAULT NULL,
`vehicleProps` longtext DEFAULT NULL,
`officer` varchar(50) DEFAULT NULL,
`officerCharname` varchar(50) DEFAULT NULL,
`cautionAllowed` tinyint(4) DEFAULT NULL,
`caution` int(11) DEFAULT NULL,
`vehicleType` varchar(50) DEFAULT NULL,
`vehicleJob` varchar(50) DEFAULT NULL,
PRIMARY KEY (`id`)
);
QB/QBOX
ALTER TABLE `player_vehicles` ADD COLUMN(
`stored` tinyint(1) NOT NULL DEFAULT 1,
`impouned` int(11) NOT NULL DEFAULT 0,
`type` VARCHAR(20) DEFAULT NULL,
`health` VARCHAR(255) DEFAULT NULL
);
CREATE TABLE IF NOT EXISTS `bit_privgarages` (
`name` varchar(50) NOT NULL,
`parkingcoordx` varchar(100) NOT NULL,
`parkingcoordy` varchar(100) NOT NULL,
`parkingcoordz` varchar(100) NOT NULL,
`spawncoordx` varchar(100) NOT NULL,
`spawncoordy` varchar(100) NOT NULL,
`spawncoordz` varchar(100) NOT NULL,
`spawncoordheading` varchar(100) NOT NULL,
`savecarcoordx` varchar(100) NOT NULL,
`savecarcoordy` varchar(100) NOT NULL,
`savecarcoordz` varchar(100) NOT NULL,
`job` varchar(100) DEFAULT NULL,
`user` varchar(100) DEFAULT NULL
);
CREATE TABLE IF NOT EXISTS `bit_radars` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`areacoordX` varchar(50) DEFAULT NULL,
`areacoordY` varchar(50) DEFAULT NULL,
`areacoordZ` varchar(50) DEFAULT NULL,
`propcoordX` varchar(50) DEFAULT NULL,
`propcoordY` varchar(50) DEFAULT NULL,
`propcoordZ` varchar(50) DEFAULT NULL,
`speedlimit` int(20) DEFAULT NULL,
`fee` int(20) DEFAULT NULL,
`heading` int(20) DEFAULT NULL,
`radius` varchar(50) DEFAULT NULL,
PRIMARY KEY (`id`)
);
CREATE TABLE IF NOT EXISTS `bit_impound` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`timeStamp` varchar(80) DEFAULT NULL,
`impoundName` varchar(60) DEFAULT NULL,
`owner` varchar(50) DEFAULT NULL,
`ownerCharname` varchar(50) DEFAULT NULL,
`vehicleModel` varchar(50) DEFAULT NULL,
`vehiclePlate` varchar(50) DEFAULT NULL,
`vehicleProps` longtext DEFAULT NULL,
`officer` varchar(50) DEFAULT NULL,
`officerCharname` varchar(50) DEFAULT NULL,
`cautionAllowed` tinyint(4) DEFAULT NULL,
`caution` int(11) DEFAULT NULL,
`vehicleType` varchar(50) DEFAULT NULL,
`vehicleJob` varchar(50) DEFAULT NULL,
PRIMARY KEY (`id`)
);
Restart
Once you have completed these steps, restart your server and the installation will be complete.
[!CAUTION]
- The name of the script folder must not be changed, otherwise the resource will not work correctly.
- Do not edit the encrypted files in any way.
[!NOTE]
1. Unzip the bit-garage.pack.zip and screenshot-basic.zip file and place these folders in your server's resource folder. 2. Add the resource to your server start config: ensure screenshot-basic ensure bit-vehControl The name of the folder must not be changed or the resource will not function correctly. 3. WARNING: Do not edit the encrypted files in any way
[!CAUTION]
- The following command will send all user vehicles to the central garage and remove the impounds. Strongly recommended for a clean installation:
/garageInstall