๐ชInstallation & Configuration
Add the resource
Drag the dynyx_rc
folder into your resources
directory.
Make sure to rename the script from dynyx_rc-main
to dynyx_prison
or it will not work. Then make sure its in the correct location so the server can access it. Once done, add ensure dynyx_rc
to your server.cfg
to activate the script.
Install Dependencies
Ensure all required dependencies for the script are installed and up to date.
Dependencies usually include core resources like the frameworks (QBCore, QBox or ESX), target systems (ox_target
or qb-target
) and an inventory system like (ox_inventory
, qb-inventory
, or ps-inventory
). Missing dependencies may prevent the script from working property.
Configure Inventory Integration
Navigate to your inventory
folder.
Choose the correct guide for your inventory system. Each guide has specific instructions and images for setting up item images and ensuring full compatibility with your chosen inventory.
Configuration:
Config = {}
-- Sets the language/locale used for all UI text and notifications.
-- Available options: 'en' (English), 'es' (Spanish), 'fr' (French), 'de' (German)
Config.Lan = 'en'
--========================================================
-- Framework integrations (set to the resource you use)
--========================================================
Config.Notifications = "ox_lib" -- Notification system to use ("ox_lib", "qb-core")
Config.Inventory = "ox_inventory" -- Inventory system to use ("ox_inventory", "qb-inventory", "ps-inventory")
Config.Target = "ox_target" -- Target system to use ("ox_target", "qb-target")
Config.ProgressBar = "ox_lib" -- Progress bar System to use ("ox_lib", "qb-core")
-- Hide your HUD while inside RC Customs/Flying Drone/Driving RC - You must set you hud at the bottom of the config
Config.HideHud = false
--========================================================
-- RC Customs locations & access
--========================================================
Config.rcCustomsCoords = vector4(-146.3614, -596.6284, 166.0000, 270.2807) -- This is where the player will be teleported when customizing their RC car.
Config.RCCustomizationZones = {
{
-- ๐ Example Customization Zone #1 (City)
center = vec3(735.0612, -1065.3237, 22.1684), -- Center of the zone (coords where players stand)
radius = 6.0, -- Size of the interaction area (larger = more forgiving)
},
{
-- ๐ Example Customization Zone #2 (Sandy Shores)
center = vec3(1991.3525, 3793.5391, 32.1808),
radius = 6.0,
},
}
Config.RCTargetCustomizationZones = {
{
-- ๐ Example Zone #1 โ Job & Citizen Restricted
center = vec3(-323.6004, -129.4949, 39.0100), -- Center of the interaction zone
radius = 1.0, -- How far from the center players can interact
debug = false, -- Enable to visualize the zone in-game (dev use only)
-- Restrict access by job or specific CitizenIDs
groups = { 'mechanic', 'bennys' }, -- Only players with these jobs can use this zone
citizenID = { 'ABC12345', 'XYZ67890' }, -- Only these CitizenIDs can use (leave empty for none)
-- Enable repairs at this location
CanRepairDrone= true, -- Allow repairing drones here
CanRepairRcCar= true, -- Allow repairing RC cars here
-- Optional prop to spawn a physical bench at this zone
Prop = {
enabled = false, -- true = spawn a bench/prop
model = `gr_prop_gr_bench_04a`, -- Prop model to spawn
heading = 0.0, -- Rotation of the prop
offset = vec3(0.0, 0.0, 0.0), -- Offset from the center if you want to adjust placement
frozen = true, -- Prevent the prop from being moved
invincible = true, -- Make the prop indestructible
distance = 2.0, -- How close players must be to interact
},
},
{
-- ๐ Example Zone #2 โ Public Access
center = vec3(-199.8964, -1321.0529, 31.0894),
radius = 1.0,
debug = true, -- Debug ON to visualize this zone (useful for setup)
-- No group/citizen restrictions: anyone can access this
groups = {}, -- Leave empty for public
citizenID = {}, -- Leave empty for public
CanRepairDrone= true,
CanRepairRcCar= true,
Prop = {
enabled = true, -- This zone spawns a visible bench
model = `gr_prop_gr_bench_04a`,
heading = 180.0,
offset = vec3(0.0, 0.0, 0.0),
frozen = true,
invincible = true,
distance = 2.0,
},
},
}
--========================================================
-- RC Car Definitions
--========================================================
Config.RcCars = {
['rc_car'] = {
Label = "RC Car",
maxRange = 300, -- control range (meters)
batteryItem = 'rccar_battery', -- item used to recharge/swap battery
batteryregen = 100, -- amount restored on recharge/swap
BaseBattery = 90.0, -- starting battery (%)
BaseHealth = 95.0, -- starting health (%)
Abilities = {
canToggleCamera = true, -- enable in-vehicle camera switching
nightVision = true,
thermalVision = true,
},
-- Damage from physical collisions
Collision = {
Enabled = true,
SpeedThreshold = 0.15, -- minimum m/s to count as a hit
CooldownMs = 3000, -- min delay between hits
Min = 10, -- min damage per hit
Max = 25, -- max damage per hit
ScaleBySpeed = false, -- scale damage by speed if true
ScaleMultiplier = 0.15, -- extra dmg per m/s (if ScaleBySpeed)
},
-- Repair cost settings at customs/benches
Repair = {
enabled = true,
costPerPercent= 10, -- cost per 1% health restored
minimumCost = 5000, -- floor price
maximumCost = 10000, -- cap price
},
Speed = {
Enabled = true, -- true = override stock handling at runtime; false = use the model's default handling
MaxSpeed = 45.0, -- fInitialDriveMaxFlatVel (meters/second). Higher = higher top speed. (also set SetVehicleMaxSpeed(veh, MaxSpeed) to remove residual caps.)
Acceleration = 0.22, -- fInitialDriveForce (~0.18 is around stock rcbandito). Higher = faster acceleration.
BrakeForce = 0.30 -- fBrakeForce Higher = stronger brakes / shorter stopping distance.
}
}
}
--========================================================
-- Drone Definitions
--========================================================
Config.Drones = {
['drone'] = {
Label = "Dynyx Aero",
DroneProp = `reh_prop_reh_drone_02a`, -- spawned world prop
DroneSound = true, -- enable looped prop sound
maxRange = 300, -- control range (meters)
batteryItem = 'drone_battery', -- item used to recharge/swap
batteryregen = 100, -- amount restored on recharge/swap
BaseBattery = 100.0, -- starting battery (%)
BaseHealth = 100.0, -- starting health (%)
Abilities = {
canTogglePOV = true, -- Allow switching between 1st person and 3rd person camera views
nightVision = false, -- Enable/disable night vision mode for this drone/RC car
thermalVision = false, -- Enable/disable thermal vision mode (heat signatures)
spotlight = false, -- Enable/disable a controllable spotlight feature
},
-- Damage from players shooting the drone
PlayerShotImpact = {
Enabled = true, -- enable bullet damage
hitDamageMin = 2, -- min damage per bullet
hitDamageMax = 5, -- max damage per bullet
},
-- Damage from physical collisions
Collision = {
Enabled = true,
SpeedThreshold = 0.15, -- minimum m/s to count as a hit
CooldownMs = 3000, -- min delay between hits
Min = 10, -- min damage per hit
Max = 25, -- max damage per hit
ScaleBySpeed = false,
ScaleMultiplier = 0.15,
Effect = true, -- enable/disable the effect (true = on, false = off)
EffectScale = 0.5 -- effect intensity multiplier; 1.0 = default, <1.0 softer, >1.0 stronger
},
-- Damage while touching water
Water = {
Enabled = true, -- disable to make waterproof
DamagePerSecond = 25, -- DPS while in water
TickMs = 1000, -- damage interval
FirstTickInstant = true, -- apply damage immediately on first contact
Effect = true, -- enable/disable the effect (true = on, false = off)
EffectScale = 1.0 -- effect intensity multiplier; 1.0 = default, <1.0 softer, >1.0 stronger
},
-- โ๏ธ Flight tuning (feel/response)
FlightTuning = {
maxSpeed = 0.25, -- forward/back m/s
strafeSpeed = 0.05, -- left/right m/s
verticalSpeed = 0.08, -- up/down (Q/E) m/s
accel = 0.012, -- W/S acceleration
decel = 0.012, -- W/S deceleration
strafeAccel = 0.010,
verticalAccel = 0.008,
mouseSensitivity = 1.0, -- camera turn rate
},
-- Placement preview outline
PlacementSystem = {
DrawOutline = true,
DrawOutlineColor = { r = 255, g = 215, b = 0, a = 255 },
},
},
['drone_mini'] = {
Label = "Dynyx V1-Lite",
DroneProp = `xs_prop_arena_drone_02`,
DroneSound = true,
maxRange = 150,
batteryItem = 'drone_battery',
batteryregen = 100,
BaseBattery = 50.0,
BaseHealth = 65.0,
Abilities = {
canTogglePOV = false,
nightVision = false,
thermalVision = false,
spotlight = false,
},
PlayerShotImpact = {
Enabled = true,
hitDamageMin = 2,
hitDamageMax = 5,
},
Collision = {
Enabled = true,
SpeedThreshold = 0.15,
CooldownMs = 3000,
Min = 10,
Max = 25,
ScaleBySpeed = false,
ScaleMultiplier = 0.15,
Effect = true,
EffectScale = 0.5
},
Water = {
Enabled = true,
DamagePerSecond = 25,
TickMs = 1000,
FirstTickInstant = true,
Effect = true,
EffectScale = 1.0
},
FlightTuning = {
maxSpeed = 0.20,
strafeSpeed = 0.05,
verticalSpeed = 0.08,
accel = 0.008,
decel = 0.008,
strafeAccel = 0.005,
verticalAccel = 0.004,
mouseSensitivity = 1.5,
},
PlacementSystem = {
DrawOutline = true,
DrawOutlineColor = { r = 255, g = 215, b = 0, a = 255 },
},
},
['police_drone'] = {
Label = "Dynyx PD-01",
DroneProp = `ch_prop_casino_drone_02a`,
DroneSound = true,
maxRange = 450,
batteryItem = 'drone_battery',
batteryregen = 100,
BaseBattery = 100.0,
BaseHealth = 100.0,
Abilities = {
canTogglePOV = true,
nightVision = true,
thermalVision = true,
spotlight = true,
},
PlayerShotImpact = {
Enabled = true,
hitDamageMin = 1,
hitDamageMax = 3,
},
Collision = {
Enabled = true,
SpeedThreshold = 0.15,
CooldownMs = 3000,
Min = 10,
Max = 25,
ScaleBySpeed = false,
ScaleMultiplier = 0.15,
Effect = true,
EffectScale = 0.5
},
Water = {
Enabled = true,
DamagePerSecond = 25,
TickMs = 1000,
FirstTickInstant = true,
Effect = true,
EffectScale = 1.0
},
FlightTuning = {
maxSpeed = 0.50,
strafeSpeed = 0.05,
verticalSpeed = 0.08,
accel = 0.008,
decel = 0.015,
strafeAccel = 0.005,
verticalAccel = 0.004,
mouseSensitivity = 1.0,
},
PlacementSystem = {
DrawOutline = true,
DrawOutlineColor = { r = 255, g = 215, b = 0, a = 255 },
},
},
}
--========================================================
-- Spotlight (police drone / spotlight ability)
--========================================================
Config.SpotlightSettings = {
Color = { r = 255, g = 255, b = 200 }, -- warm white
Distance = 35.0, -- beam length (meters); 25โ50 recommended
Brightness = 12.0, -- intensity; increase for daytime visibility
Hardness = 1.0, -- edge hardness (0.0โ1.0)
Radius = 20.0, -- spot radius; lower for tighter beam (4โ10 feels realistic)
Falloff = 5.0, -- brightness falloff from center (3โ10)
Shadow = 1, -- set 0 if your build shows more consistent results without shadows
}
-- Toggle your external HUD when entering/exiting RC Customs
function ToggleHud(state)
if Config.HideHud then
exports['hud']:ToggleVisible(state)
end
end
Last updated