Installation · origen_police
Our script only supports the following versions of the two most used frameworks. In older versions it may be usable, but we do not provide support since development focuses on the following versions:
1. server.cfg
ensure oxmysql/icmysql
ensure qb-core
...(make sure to start the inventory before the script)
ensure pma-voice
ensure origen_police2. SQL
Insert the SQL files into your database:
3. Items
Register all required items in your inventory system. See the full list with blocks for ox_inventory and QBCore:
We recommend uploading script files without using FileZilla, as it may corrupt our scripts. Use WinSCP or another reliable program instead.
Inventory Modifications
If your inventory script doesn't appear here, you don't need to modify anything inside it.
qb-inventory
At the end of qb-inventory/server/main.lua:
exports('GetStashItems', GetStashItems)
RegisterServerEvent('qb-inventory:server:SaveStashItems', function(stashId, items)
MySQL.insert('INSERT INTO stashitems (stash, items) VALUES (@stash, @items) ON DUPLICATE KEY UPDATE items = @items', {
['@stash'] = stashId,
['@items'] = json.encode(items)
})
if Stashes[stashId] then
Stashes[stashId].items = items
end
end)Clothing Modifications
If your clothing script doesn't appear here, you don't need to modify anything inside it.
qb-clothing
At the end of qb-clothing/client/main.lua:
exports("GetSkinData", function()
return skinData
end)Ambulance Modifications
If your ambulance script doesn't appear here, you don't need to modify anything inside it.
esx_ambulancejob
At the end of esx_ambulancejob/client/job.lua:
RegisterCommand('revivep', function()
local closestPlayer, closestDistance = ESX.Game.GetClosestPlayer()
revivePlayer(closestPlayer)
end)
RegisterCommand('healp', function()
local closestPlayer, closestDistance = ESX.Game.GetClosestPlayer()
ESX.TriggerServerCallback('esx_ambulancejob:getItemAmount', function(quantity)
if quantity > 0 then
local closestPlayerPed = GetPlayerPed(closestPlayer)
local health = GetEntityHealth(closestPlayerPed)
if health > 0 then
local playerPed = PlayerPedId()
isBusy = true
ESX.ShowNotification(_U('heal_inprogress'))
TaskStartScenarioInPlace(playerPed, 'CODE_HUMAN_MEDIC_TEND_TO_DEAD', 0, true)
Wait(10000)
ClearPedTasks(playerPed)
TriggerServerEvent('esx_ambulancejob:removeItem', 'medikit')
TriggerServerEvent('esx_ambulancejob:heal', GetPlayerServerId(closestPlayer), 'big')
ESX.ShowNotification(_U('heal_complete', GetPlayerName(closestPlayer)))
isBusy = false
else
ESX.ShowNotification(_U('player_not_conscious'))
end
else
ESX.ShowNotification(_U('not_enough_medikit'))
end
end, 'medikit')
end)Setup CFG Permissions
Make sure you have all these lines in your server.cfg:
add_ace group.admin command allow
add_ace group.admin command.quit deny
add_ace resource.qb-core command allow
add_ace qbcore.god command allow
add_principal qbcore.god group.admin
add_principal qbcore.god qbcore.admin
add_principal qbcore.admin qbcore.modRegister your license as the qbcore.god group — replace with your own license:
add_principal identifier.license:8f1a3xxxxxxxxxxxxxxxx qbcore.god # Player NameTo verify permissions are correctly configured, Config.Maps in config/markers.lua should be empty and the SETTINGS button should appear at the bottom right of the tablet.
Config.Maps = { -- YOU CAN USE THIS OPTION OR THE IN GAME MENU INSIDE THE POLICE TABLET
-- PLACE YOUR STATION NAME HERE, Example: "default-gta"
}If configured correctly, you'll see this message in F8 on first start:
WARNING: NO ACTIVE MAPS, PLEASE ADD SOME IN THE SETTING TAB OF THE POLICE TABLEImportant
Remember to follow the pma-voice installation steps: