Accessible code
Config = {
Locale = 'en',
FrameworkName = IsESX() and 'es_extended' or 'qb-core',
PlayerLoadedEvent = {
esx = 'esx:playerLoaded',
qb = 'QBCore:Client:OnPlayerLoaded'
},
FlashLightWeapon = `WEAPON_FLASHLIGHT`,
-- Evidence will be wiped after remaining unchanged for the given time
DeleteEvidenceTime = '6 MONTH',
EvidenceDatabase = {
{
coords = vec3(441.754, -996.019, 30.690),
/*
table hash > groups = { ['police'] = 1, ['sheriff'] = 5 } > grade 1 (and above) police and grade 5 (and above) sheriff can access
table array > groups = { 'police', 'sheriff' } > police and sherrif can access, no grade check
string > groups = 'police' > only once job can access, no grade checks
*/
groups = { ['police'] = 1 },
Marker = { type = 2, scaleX = 0.3, scaleY = 0.2, scaleZ = 0.15, r = 30, g = 150, b = 30 },
},
-- you can add more
},
Features = {
BloodGround = true, -- Drops blood evidence on the ground upon death.
WeaponBlood = true, -- Leaves blood evidence of the target when hitting somebody with a melee weapon (requires ox_inventory). (todo)
BulletAndShell = true, -- Leaves bullet shell on the ground while firing a weapon.
Bullet = true, -- Leaves bullet evidence if bullet hits anything
ShellsInVehicle = true, -- Allows searching for bullets in vehicles. (todo)
FingerprintsVehicle = true, -- Leaves fingerprint evidence upon entering a vehicle without wearing gloves. (todo)
FingerprintsWeapon = true, -- Leaves fingerprint evidence upon using a weapon without wearing gloves. (todo)
},
/*
%d/%m/%Y day/month/year
%d-%m-%Y day-month-year
%m/%d/%Y month/day/year
%m-%d-%Y month-day-year
%Y/%d/%m year/day/month
%Y-%d-%m year-day-month
etc
*/
DateFormat = '%d/%m/%Y', -- day/month/year
-- variations that DOESN'T have gloves, might be differnet for you, depending on clothing pack
Gloves = {
[`mp_m_freemode_01`] = {
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
11, 12, 13, 14, 15, 18, 26, 52,
53, 54, 55, 56, 57, 58, 59, 60,
61, 62, 112, 113, 114, 118, 125, 132
},
[`mp_f_freemode_01`] = {
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
11, 12, 13, 14, 15, 19, 59, 60, 61,
62, 63, 64, 65, 66, 67, 68, 69, 70,
71, 129, 130, 131, 135, 142, 149, 153,
157, 161, 165
},
-- this models have gloves by default, you can add them here
[`s_m_y_swat_01`] = true,
/*
[`model_name`] = { variations that doesnt have gloves }
if case you use ped that has gloves by default but cant change variations (example s_m_y_swat_01 above),
you will do next
[`model_name`] = true
*/
},
BulletAndShell = {
/*
table hash > CollectEvidenceGroups = { ['police'] = 1, ['sheriff'] = 5 } > grade 1 (and above) police and grade 5 (and above) sheriff can access
table array > CollectEvidenceGroups = { 'police', 'sheriff' } > police and sherrif can access, no grade check
string > CollectEvidenceGroups = 'police' > only once job can access, no grade checks
string > CollectEvidenceGroups = '' > everyone can collect evidence
*/
CollectEvidenceGroups = '',
-- for how long it will collect evidence, 5000ms = 5 sec
CollectingTime = 5000,
-- for how long it will analyze evidence, 5000ms = 5 sec
AnalyzingTime = 5000,
-- for how long it will analyze weapon, 10000ms = 10 sec
AnalyzingWeaponTime = 1000,
-- jobs that dont leave bullet evidence on ground when shooting
NoBulletEvidenceJob = {
['police'] = true,
-- you can add more
},
-- weapons that should not leave bullet evidence when shooting
BlacklistWeapons = {
[`weapon_stungun`] = true,
-- you can add more
},
Shell = { type = 2, scaleX = 0.1, scaleY = 0.05, scaleZ = 0.07, r = 188, g = 159, b = 96 },
Bullet = { type = 2, scaleX = 0.1, scaleY = 0.05, scaleZ = 0.07, r = 182, g = 122, b = 94 },
-- time in minutes before evidence disappears
RemoveTime = 25,
-- police and grade that can delete evidence from database, must be hash
DeleteEvidence = { ['police'] = 2 },
-- you can add as many as you want
Scanner = {
{
type = 'shell', -- scanner for shells or bullet
coords = vec3(441.882, -991.446, 30.690),
/*
table hash > groups = { ['police'] = 1, ['sheriff'] = 5 } > grade 1 (and above) police and grade 5 (and above) sheriff can access
table array > groups = { 'police', 'sheriff' } > police and sherrif can access, no grade check
string > groups = 'police' > only once job can access, no grade checks
*/
groups = { ['police'] = 1 },
Marker = { type = 2, scaleX = 0.3, scaleY = 0.2, scaleZ = 0.15, r = 30, g = 150, b = 30 },
},
{
type = 'bullet',
coords = vec3(437.030, -990.831, 30.690),
groups = { ['police'] = 1 },
Marker = { type = 2, scaleX = 0.3, scaleY = 0.2, scaleZ = 0.15, r = 30, g = 150, b = 30 },
},
-- you can add more
},
EvidenceReport = {
date = true, -- date when evidence was created
time = true, -- time when evidence was created
street = true, -- street address where evidence was created
ammolabel = true, -- type of weapon it was fired from, AmmoLabels
weaponSerial = true, -- serial number of weapon it was fired from, kinda op?
analyst = true, -- name of player who analysed evidence
color = true, -- color of vehicle (if bullet was taken out from vehicle)
plate = true, -- plate of vehicle where shell was taken from
}
},
Weapon = {
Scanner = {
{
coords = vec3(437.693, -994.525, 30.690),
/*
table hash > groups = { ['police'] = 1, ['sheriff'] = 5 } > grade 1 (and above) police and grade 5 (and above) sheriff can access
table array > groups = { 'police', 'sheriff' } > police and sherrif can access, no grade check
string > groups = 'police' > only once job can access, no grade checks
*/
groups = { ['police'] = 1 },
Marker = { type = 2, scaleX = 0.3, scaleY = 0.2, scaleZ = 0.15, r = 30, g = 150, b = 30 },
},
-- you can add more
},
-- police and grade that can delete evidence from database, must be hash
DeleteEvidence = { ['police'] = 2 },
EvidenceReport = {
date = true, -- date when evidence was scanned
weaponLabel = true, -- label of weapon
time = true, -- time when evidence was scanned
ammolabel = true, -- type of weapon it was fired from, AmmoLabels
weaponSerial = true, -- serial number of weapon
analyst = true, -- name of player who analysed evidence
fingerprint = true, -- fingerprints of last person who used gun (if not wearing gloves)
dna = true, -- DNA of victim
}
},
Blood = {
/*
table hash > CollectEvidenceGroups = { ['police'] = 1, ['sheriff'] = 5 } > grade 1 (and above) police and grade 5 (and above) sheriff can access
table array > CollectEvidenceGroups = { 'police', 'sheriff' } > police and sherrif can access, no grade check
string > CollectEvidenceGroups = 'police' > only once job can access, no grade checks
string > CollectEvidenceGroups = '' > everyone can collect evidence
*/
CollectEvidenceGroups = { 'police', 'sheriff' },
-- if ranining, remove evidence?
RemoveEvidenceOnRain = true,
-- time in minutes before evidence disappears
RemoveTime = 25,
-- for how long it will collect evidence, 5000ms = 5 sec
CollectingTime = 5000,
-- for how long it will analyze evidence, 5000ms = 5 sec
AnalyzingTime = 5000,
-- blood on ground marker
Evidence = { type = 2, scaleX = 0.1, scaleY = 0.05, scaleZ = 0.07, r = 255, g = 0, b = 0 },
Scanner = {
{
coords = vec3(439.117, -993.290, 30.690),
/*
table hash > groups = { ['police'] = 1, ['sheriff'] = 5 } > grade 1 (and above) police and grade 5 (and above) sheriff can access
table array > groups = { 'police', 'sheriff' } > police and sherrif can access, no grade check
string > groups = 'police' > only once job can access, no grade checks
*/
groups = { ['police'] = 1 },
Marker = { type = 2, scaleX = 0.3, scaleY = 0.2, scaleZ = 0.15, r = 30, g = 150, b = 30 },
},
-- you can add more
},
-- police and grade that can delete evidence from database, must be hash
DeleteEvidence = { ['police'] = 2 },
EvidenceReport = {
street = true, -- street where blood was found
date = true, -- date when evidence was scanned
time = true, -- time when evidence was scanned
analyst = true, -- name of player who analysed evidence
dna = true, -- DNA of victim
},
},
FingerprintsVehicle = {
/*
table hash > CollectEvidenceGroups = { ['police'] = 1, ['sheriff'] = 5 } > grade 1 (and above) police and grade 5 (and above) sheriff can access
table array > CollectEvidenceGroups = { 'police', 'sheriff' } > police and sherrif can access, no grade check
string > CollectEvidenceGroups = 'police' > only once job can access, no grade checks
string > CollectEvidenceGroups = '' > everyone can collect evidence
*/
CollectEvidenceGroups = { 'police', 'sheriff' },
-- here you can whitelist vehicles in which you do not want to leave fingerprints
WhitelistModels = { `xyz`, },
-- here you can whitelist plates
WhiteListPlates = { 'xyz', },
WhitelistJobs = {
-- xyz and grade 2 and above wont leave fingerprints
['xyz'] = 2
},
-- here you can add your identifier or citizenid
WhitelistIdentifiers = {
'char1:xyz',
},
-- time in msec for searching fingerprints in vehicle
FingerSearching = 2000,
Scanner = {
{
coords = vec3(461.881, -989.336, 24.915),
/*
table hash > groups = { ['police'] = 1, ['sheriff'] = 5 } > grade 1 (and above) police and grade 5 (and above) sheriff can access
table array > groups = { 'police', 'sheriff' } > police and sherrif can access, no grade check
string > groups = 'police' > only once job can access, no grade checks
*/
groups = { ['police'] = 1 },
Marker = { type = 2, scaleX = 0.3, scaleY = 0.2, scaleZ = 0.15, r = 30, g = 150, b = 30 },
},
-- you can add more
},
-- police and grade that can delete evidence from database, must be hash
DeleteEvidence = { ['police'] = 2 },
EvidenceReport = {
street = true, -- street where fingerprints were found
date = true, -- date when evidence was taken
time = true, -- time when evidence was taken
analyst = true, -- name of player who analysed evidence
plate = true, -- vehicle plates
color = true, -- vehicle color
}
},
ShellsInVehicle = {
/*
table hash > CollectEvidenceGroups = { ['police'] = 1, ['sheriff'] = 5 } > grade 1 (and above) police and grade 5 (and above) sheriff can access
table array > CollectEvidenceGroups = { 'police', 'sheriff' } > police and sherrif can access, no grade check
string > CollectEvidenceGroups = 'police' > only once job can access, no grade checks
string > CollectEvidenceGroups = '' > everyone can collect evidence
*/
CollectEvidenceGroups = { 'police', 'sheriff' },
-- jobs that wont leave shell evidence in vehicle
NoShell = {
['police'] = true
},
-- weapons that should not leave shell evidence when shooting
BlacklistWeapons = {
[`weapon_stungun`] = true
},
-- duration for searching for shells in vehicle
SearchingDuration = 2000,
},
Notify = {
blood = true, -- notify player that he have blood on weapon after hitting somebody
printsweapon = true, -- notify player that he left fingerprints on weapon
printsvehicle = true, -- notify player that he left fingerprints in vehicle
},
AmmoLabels = {
[`WEAPON_ADVANCEDRIFLE`] = '5.56x45',
[`WEAPON_APPISTOL`] = '9mm',
[`WEAPON_ASSAULTRIFLE`] = '7.62x39',
[`WEAPON_ASSAULTRIFLE_MK2`] = '7.62x39',
[`WEAPON_ASSAULTSHOTGUN`] = '12 Gauge',
[`WEAPON_ASSAULTSMG`] = '5.56x45',
[`WEAPON_AUTOSHOTGUN`] = '12 Gauge',
[`WEAPON_BULLPUPRIFLE`] = '5.56x45',
[`WEAPON_BULLPUPRIFLE_MK2`] = '5.56x45',
[`WEAPON_BULLPUPSHOTGUN`] = '12 Gauge',
[`WEAPON_CARBINERIFLE`] = '5.56x45',
[`WEAPON_CARBINERIFLE_MK2`] = '5.56x45',
[`WEAPON_CERAMICPISTOL`] = '9mm',
[`WEAPON_COMBATMG`] = '5.56x45',
[`WEAPON_COMBATMG_MK2`] = '7.62x39',
[`WEAPON_COMBATPDW`] = '9mm',
[`WEAPON_COMBATPISTOL`] = '9mm',
[`WEAPON_COMBATSHOTGUN`] = '12 Gauge',
[`WEAPON_COMPACTLAUNCHER`] = '40mm Explosive',
[`WEAPON_COMPACTRIFLE`] = '7.62x39',
[`WEAPON_DBSHOTGUN`] = '12 Gauge',
[`WEAPON_DOUBLEACTION`] = '.38 LC',
[`WEAPON_EMPLAUNCHER`] = 'EMP round',
[`WEAPON_FIREWORK`] = 'Firework',
[`WEAPON_FLAREGUN`] = 'Flare round',
[`WEAPON_GADGETPISTOL`] = '9mm',
[`WEAPON_GRENADELAUNCHER`] = '40mm Explosive',
[`WEAPON_GUSENBERG`] = '.45 ACP',
[`WEAPON_HEAVYPISTOL`] = '.45 ACP',
[`WEAPON_HEAVYRIFLE`] = '5.56x45',
[`WEAPON_HEAVYSHOTGUN`] = '12 Gauge',
[`WEAPON_HEAVYSNIPER`] = '.50 BMG',
[`WEAPON_HEAVYSNIPER_MK2`] = '.50 BMG',
[`WEAPON_HOMINGLAUNCHER`] = 'Rocket',
[`WEAPON_MACHINEPISTOL`] = '9mm',
[`WEAPON_MARKSMANPISTOL`] = '.22 Long Rifle',
[`WEAPON_MARKSMANRIFLE`] = '7.62x51',
[`WEAPON_MARKSMANRIFLE_MK2`] = '7.62x51',
[`WEAPON_MG`] = '7.62x39',
[`WEAPON_MICROSMG`] = '.45 ACP',
[`WEAPON_MILITARYRIFLE`] = '5.56x45',
[`WEAPON_MINIGUN`] = '7.62x39',
[`WEAPON_MINISMG`] = '9mm',
[`WEAPON_MUSKET`] = '.50 Ball',
[`WEAPON_NAVYREVOLVER`] = '.44 Magnum',
[`WEAPON_PISTOL`] = '9mm',
[`WEAPON_PISTOL50`] = '.50 AE',
[`WEAPON_PISTOLXM3`] = '9mm',
[`WEAPON_PISTOL_MK2`] = '9mm',
[`WEAPON_PRECISIONRIFLE`] = '7.62x51',
[`WEAPON_PUMPSHOTGUN`] = '12 Gauge',
[`WEAPON_PUMPSHOTGUN_MK2`] = '12 Gauge',
[`WEAPON_RAILGUN`] = 'Railgun charge',
[`WEAPON_RAILGUNXM3`] = 'Railgun charge',
[`WEAPON_RAYCARBINE`] = 'Laser charge',
[`WEAPON_RAYMINIGUN`] = 'Laser charge',
[`WEAPON_REVOLVER`] = '.44 Magnum',
[`WEAPON_REVOLVER_MK2`] = '.44 Magnum',
[`WEAPON_RPG`] = 'Rocket',
[`WEAPON_SAWNOFFSHOTGUN`] = '12 Gauge',
[`WEAPON_SMG`] = '9mm',
[`WEAPON_SMG_MK2`] = '9mm',
[`WEAPON_SNIPERRIFLE`] = '7.62x51',
[`WEAPON_SNSPISTOL`] = '.45 ACP',
[`WEAPON_SNSPISTOL_MK2`] = '.45 ACP',
[`WEAPON_SPECIALCARBINE`] = '5.56x45',
[`WEAPON_SPECIALCARBINE_MK2`] = '5.56x45',
[`WEAPON_TACTICALRIFLE`] = '5.56x45',
[`WEAPON_TECPISTOL`] = '9mm',
[`WEAPON_VINTAGEPISTOL`] = '9mm',
}
}
Last updated