I welcome you CFX community!
Today I present to you a system of high-speed cameras/radars, thanks to which you will be able to diversify the gameplay on your server! Iโm sure you and your players will love it!
This system includes a pleasant user interface, the ability to configure the entire resource, thanks to a convenient configuration file. The resource includes 3 speed zones, into which the cameras are divided and scattered throughout the map. Driving above the specified limit in the zone, you will receive a fine, it will vary depending on your speed.
Demonstration of the system:
Example of a configuration file:
Configuration files
-- /*
-- โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
-- โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
-- โโโโโโโฆโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
-- โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
-- โโโโโโโฆโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
-- โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ*/
Config = {}
Config.framework = exports["es_extended"]:getSharedObject() --ESX | QBCore -> exports['qb-core']:GetCoreObject()
Config.debug = false --Debug mode that shows visually the interaction zone.
payFine = function(finePrice) --Set up your framework here.
--ESX
local player = Config.framework.GetPlayerFromId(source)
player.removeAccountMoney('bank', finePrice)
--QBCore
--local player = Config.framework.Functions.GetPlayer(source)
--player.Functions.RemoveMoney('bank', tonumber(finePrice), "Bank depost")
end
--Do you want to use the police notification?
Config.policeNotification = false
policeNotification = function(plate, speed) -- Insert your police notification event here, it will be triggered every time a player receives a ticket for speeding (This is a client function)
--plate - Returns the player's vehicle plate
--speed - Returns the speed of the player's vehicle
end
Config.measurementSpeed = 3.6 --MPH = 2.236936
Config.measurementSpeedText = "KM/H"
Config.Translation1 = "FINE"
Config.Translation2 = "OVER"
Config.Translation3 = "SPEED"
Config.Translation4 = "PERMISSIBLE SPEED: "
Config.Translation5 = "-$"
Config.speedZones = { --Setting up zones.
--40 Zones
{
zoneRadius = 15.0, --Radius of the camera operation area.
maxSpeed = 40.0, --This is the maximum speed for the zone.
speedFine = 100, --This is a speeding ticket.
speedExtraFine = 10, --For each unit of speed exceeding the limit, an additional coefficient is applied. For example, if the permissible speed is 40 miles per hour, and you were driving at 45 miles per hour, then an additional amount will be added to the standard penalty amount by multiplying 5 by an additional factor.
useBlip = true, --The ability to use blip on the map for this camera.
blipID = 629, --Blip ID.
blipScale = 0.5, --Blip scale.
blipColor = 63, --Blip color.
blipDisplay = 4, --Blip display.
blipText = "Speedcamera", --Blip text.
usePlaySoundFrontend = true, --Use audio playback.
audioName = "LOSER", --You can find the list here: https://pastebin.com/DCeRiaLJ
audioRef = "HUD_AWARDS", --You can find the list here: https://pastebin.com/DCeRiaLJ
blacklistCars = { --List of car models that will not be fined.
"police",
"police2",
"police3",
"police4",
"policeold1",
"policeold2",
"riot",
"riot2",
"fbi",
"fbi2",
"pranger",
"firetruk",
"ambulance",
"blazer2",
},
locations = { --Location coordinates. x,y,z
vector3(-524.2645, -1776.3569, 21.3384),
vector3(-11.9102, -1593.4663, 31.7425),
vector3(-136.6612, -1748.2864, 33.3483),
vector3(234.4946, -2077.0002, 20.3015),
vector3(508.8077, -1287.0267, 32.5057),
vector3(240.5679, 442.1862, 125.2563),
vector3(-333.5400, 970.2454, 237.4889),
vector3(-475.8606, 2792.3855, 42.5281),
vector3(1290.3013, 3540.3713, 38.5816),
vector3(1693.6620, 3503.9421, 45.8228),
vector3(1933.0225, 3766.8630, 35.6961),
vector3(2186.8440, 4755.0615, 45.2221),
vector3(79.4935, 6607.2534, 35.6452),
vector3(-175.3119, 6361.1865, 36.0769),
vector3(-376.8156, 6158.2197, 36.1219),
vector3(-328.9468, 6349.1787, 29.8586),
},
},
--80 Zones
{
zoneRadius = 15.0, --Radius of the camera operation area.
maxSpeed = 40.0, --This is the maximum speed for the zone.
speedFine = 100, --This is a speeding ticket.
speedExtraFine = 10, --For each unit of speed exceeding the limit, an additional coefficient is applied. For example, if the permissible speed is 40 miles per hour, and you were driving at 45 miles per hour, then an additional amount will be added to the standard penalty amount by multiplying 5 by an additional factor.
useBlip = true, --The ability to use blip on the map for this camera.
blipID = 629, --Blip ID.
blipScale = 0.5, --Blip scale.
blipColor = 63, --Blip color.
blipDisplay = 4, --Blip display.
blipText = "Speedcamera", --Blip text.
usePlaySoundFrontend = true, --Use audio playback.
audioName = "LOSER", --You can find the list here: https://pastebin.com/DCeRiaLJ
audioRef = "HUD_AWARDS", --You can find the list here: https://pastebin.com/DCeRiaLJ
blacklistCars = { --List of car models that will not be fined.
"police",
"police2",
"police3",
"police4",
"policeold1",
"policeold2",
"riot",
"riot2",
"fbi",
"fbi2",
"pranger",
"firetruk",
"ambulance",
"blazer2",
},
locations = { --Location coordinates. x,y,z
vector3(2506.0671, 4145.2431, 38.1054),
vector3(1258.2006, 789.4199, 104.2190),
vector3(980.9982, 407.4164, 92.2374),
vector3(264.4298, -571.9672, 46.9132),
vector3(-305.9037, -658.3281, 35.8377),
vector3(-1080.2468, -761.5724, 22.9870),
vector3(-1286.8175, -913.8415, 12.8420),
vector3(-1036.8447, -194.4415, 41.4442),
vector3(-768.9990, -109.3732, 41.0835),
vector3(-79.1385, -107.1948, 62.3107),
},
},
--120 Zones
{
zoneRadius = 15.0, --Radius of the camera operation area.
maxSpeed = 40.0, --This is the maximum speed for the zone.
speedFine = 100, --This is a speeding ticket.
speedExtraFine = 10, --For each unit of speed exceeding the limit, an additional coefficient is applied. For example, if the permissible speed is 40 miles per hour, and you were driving at 45 miles per hour, then an additional amount will be added to the standard penalty amount by multiplying 5 by an additional factor.
useBlip = true, --The ability to use blip on the map for this camera.
blipID = 629, --Blip ID.
blipScale = 0.5, --Blip scale.
blipColor = 63, --Blip color.
blipDisplay = 4, --Blip display.
blipText = "Speedcamera", --Blip text.
usePlaySoundFrontend = true, --Use audio playback.
audioName = "LOSER", --You can find the list here: https://pastebin.com/DCeRiaLJ
audioRef = "HUD_AWARDS", --You can find the list here: https://pastebin.com/DCeRiaLJ
blacklistCars = { --List of car models that will not be fined.
"police",
"police2",
"police3",
"police4",
"policeold1",
"policeold2",
"riot",
"riot2",
"fbi",
"fbi2",
"pranger",
"firetruk",
"ambulance",
"blazer2",
},
locations = { --Location coordinates. x,y,z
vector3(1584.9281, -993.4557, 59.3923),
vector3(2442.2006, -134.6004, 88.7765),
vector3(2871.7951, 3540.5795, 53.0930),
vector3(2565.5107, 5411.4404, 47.0553),
vector3(2427.6633, 5650.2651, 47.7733),
vector3(1511.5746, 6440.4209, 25.6145),
vector3(72.4028, 6447.8911, 33.6709),
vector3(-414.2698, 5953.9805, 35.3892),
vector3(-1768.9891, 4749.7622, 59.4193),
vector3(-2508.8550, 3546.5959, 20.8208),
vector3(-2508.8550, 3546.5959, 20.8208),
vector3(-2455.4250, -224.5286, 22.0990),
vector3(3.1492, -482.1571, 36.3708),
vector3(331.0190, -534.5515, 37.4802),
},
},
}
Optimization (The script consumes):
0.00 ms in a quiet state.
0.01 ms in an active state.
What does this system include:
- This system works on all versions of ESX, QBCore, as well as STANDALONE!
- Beautiful user interface!
- Detailed setup of each speed camera!
- Convenient configuration file!
- The ability to debagging the zone!
- Notification to the police in case of speeding!
- 40 preset cameras!
- You can completely change the user interface at will!
- Of course support, Iโm ready to help you!
TOP SALES
You may also be interested in my other resources:
Code accessible | Open source: Yes \ Escrow: No - Available only: config, ui |
Subscription based | No |
Lines (approximately) | ~1000 |
Requirements | Standalone/ESX/QBCore |
Support | Yes |