cfg_main.lua

return {
	--[[ General Settings ]]

	Framework = "auto", -- Options: "esx", "qbcore", "custom", or "auto" (auto-detects between "esx" and "qbcore").
	DebugMode = "prod", -- Debug options: "prod" (minimal logs), "dev" (detailed logs & dev commands), false (disable logs)

	--[[ Vehicle Category Mapping ]]

	VehicleCategories = { --? Reference: https://docs.fivem.net/natives/?_0x29439776AAA00A62
		all = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22 },
		car = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 18, 22 },
		air = { 15, 16 },
		sea = { 14 },
		other = { 10, 11, 17, 19, 20 },
	},

	--[[ Garage Menu & UI Settings ]]

	GarageMenu = {
		OpenKey = 38, -- Default: 38 (E key) --? Reference: https://docs.fivem.net/docs/game-references/controls/
		Animation = true, -- Toggle animations for menu interactions --? (modifiable in client/modules/cl_anims.lua)
		ParkList = {
			ShowImages = true, -- Display vehicle images in the menu
			ImagePath = "nui://cloud-garage/web/dist/img/vehicle_images/%s.webp", -- Path format for vehicle images
		},
	},

	UI = {
		ManageVehicle = {
			VehicleActions = {
				RenameVehicle = true, -- Enable the ability to rename vehicle
				RefuelVehicle = true, -- Enable the ability to refuel vehicle
				RepairVehicle = true, -- Enable the ability to repair vehicle
			},
			BlurBackground = true, -- Blur the background when the vehicle management modal is active
		},
		ImagePath = "img/vehicle_images/%s.webp", -- Path format for vehicle images in UI
	},

	--[[ Vehicle Settings ]]

	Payment = {
		FuelPricePerLiter = 25, -- Cost per liter of fuel
		ImpoundPrice = 1500, -- Cost to retrieve an impounded vehicle
		RepairPrice = 1000, -- Cost for repairing a vehicle
	},

	VehicleParking = {
		ParkOut = {
			WarpPed = true, -- Place player in vehicle after parking out
			StartEngine = false, -- Start the vehicle engine after parking out
			LockDoors = false, -- Lock vehicle doors after parking out
		},
		ParkIn = {
			SaveProps = true, -- Save vehicle properties when parking in
		},
		Impound = {
			ResetAfterRestart = true, -- Resets impounded vehicles to parked state on resource restart
			RemoveVehicle = true, -- Remove the currently active vehicle when retrieving from impound
			SaveProps = true, -- Save vehicle properties when impounded (if vehicle still exists)
		},
	},

	--[[ Preview Scene Settings ]]

	PreviewScene = {
		car = {
			Camera = {
				Pos = vec3(972.5361, -2998.8359, -39.6470),
				Rot = vec3(-5.0, 0.0, -125.0),
				MaxFov = 60.0,
				DofEffect = false, -- Blur background effect --! (may increase resource usage)
			},
			Vehicle = {
				Pos = vec4(977.1413, -3002.0291, -39.6037, 87.8199),
				Extras = {
					TurnEngineOn = true,
					EnableLights = true,
				},
			},
			Ped = {
				Enabled = true,
				CamPlaceholder = true, -- Focus camera on ped until a vehicle is selected
				Pos = vec4(976.4622, -3005.0269, -39.6470, 40.6306),
				PlayerChar = true, -- Use player's ped model
				Model = `mp_m_waremech_01`,
				Scenario = "WORLD_HUMAN_DRUG_DEALER_HARD",
			},
		},

		sea = {
			Camera = {
				Pos = vec3(1326.1887, 4212.5117, 29.8807 + 2),
				Rot = vec3(-5.0, 0.0, 55.0),
				MaxFov = 100.0,
				DofEffect = false,
			},
			Vehicle = {
				Pos = vec4(1317.6821, 4217.8428, 29.3766 + 1, 250.2760),
				Extras = {
					TurnEngineOn = true,
					EnableLights = true,
				},
			},
			Ped = {
				Enabled = false,
				CamPlaceholder = true,
				Pos = vec4(1308.0367, 4229.8242, 33.9155, 234.1480),
				PlayerChar = true,
				Model = `mp_m_waremech_01`,
				Scenario = "WORLD_HUMAN_DRUG_DEALER_HARD",
			},
		},

		air = {
			Camera = {
				Pos = vec3(1728.3732, 3299.3499, 41.2235 + 0.5),
				Rot = vec3(-5.0, 0.0, -7.5),
				MaxFov = 125.0,
				DofEffect = false,
			},
			Vehicle = {
				Pos = vec4(1729.6730, 3309.0315, 41.2235, 195.0853),
				Extras = {
					TurnEngineOn = true,
					EnableLights = true,
				},
			},
			Ped = {
				Enabled = false,
				CamPlaceholder = true,
				Pos = vec4(1734.7325, 3315.4099, 41.2235, 144.6466),
				PlayerChar = true,
				Model = `mp_m_waremech_01`,
				Scenario = "WORLD_HUMAN_DRUG_DEALER_HARD",
			},
		},
	},

	--[[ Optional Features ]]

	VehicleKeys = {
		Enabled = false, -- Enable vehicle keys system
		Radius = 8.0, -- Lock/unlock range (meters)
		Extras = {
			PreventExit = false, -- Prevents player from exiting the vehicle if locked --! (may increase resource usage)
			FlashLights = true, -- Flash lights when locking/unlocking
			CloseDoors = true, -- Close all doors when locking
		},
		KeyMapping = {
			VehKeysMenu = "L", -- Default keybind for vehicle keys management menu
			LockVehicle = "", --? Leave empty to disable default keybind
			SharedKeys = false, --? Set to false to disable keybind entirely
		},
		Target = {
			Enabled = true, --? Configure target settings in config/cfg_functions.lua
		},
		Animation = {
			Enabled = true,
			ProgressBar = true, -- Show progress bar during lock/unlock
			InVehicle = false, -- Play animation while inside the vehicle
		},
		SharedKeys = {
			Enabled = true, -- Allow sharing vehicle keys
			GiveRadius = 15.0, -- Max distance for giving keys
		},
	},

	AutoRemover = {
		Enabled = true, -- Enable automatic vehicle removing
		SafeDistance = 25, -- Prevent removing if players are within this range --? (set to false to disable)
		SafeAreas = {
			{ coords = vec3(195.8067, -934.0140, 30.6868), radius = 130.0 }, -- Safe zones where vehicles wont be removed --? Set DebugMode to "dev" to visualize.
		},
		StartTimerAt = { -- Schedule times for auto-remover
			{ hour = 23, minute = 45 },
			{ hour = 02, minute = 15 },
			{ hour = 04, minute = 45 },
			{ hour = 06, minute = 15 },
			{ hour = 09, minute = 45 },
			{ hour = 11, minute = 15 },
			{ hour = 14, minute = 45 },
			{ hour = 16, minute = 15 },
			{ hour = 19, minute = 45 },
			{ hour = 21, minute = 15 },
		},
		DeletionTimer = 900, -- Time (in seconds) before vehicles are removed
	},

	GiveVehicle = {
		Enabled = true, -- Enable the give vehicle commands.
		Commands = { -- Command names for giving specific vehicle types.
			GiveCar = "givecar",
			GivePlane = "giveplane",
			GiveBoat = "giveboat",
		},
		AllowedGroups = { "admin" }, -- List of groups allowed to use the /giveveh command.
		PlateFormat = "AAA 111", -- Format for generated plate. --? Reference: https://overextended.dev/ox_lib/Modules/String/Shared#stringrandom
	},
}

Last updated