Skip to content

Configuration

This page documents the main configuration options available in config.lua.

Config.Framework = 'esx' -- Options: 'esx', 'qb' (default: 'esx')
Config.AmbulanceJob = 'ambulance'

Select your FiveM framework. Default is QBCore.

Config.MutePlayerOnDead = false -- Mute players while dead
Config.HealthRechargeMultiplier = 0.0 -- Health recharge (0.0 = none, 1.0 = full)
Config.NotificationLocation = 'top' -- 'top', 'top-right', 'top-left', 'bottom', etc.
Config.ProgressCircle = true
Config.DeathLogs = true -- Log player deaths via Discord webhook
Config.ReviveLogs = true -- Log admin revives via Discord webhook
Config.LogIPaddresse = true -- Include IP addresses in logs

Configure webhook URLs in server/sv_customize.lua.

Config.BagProp = 'xm_prop_x17_bag_med_01a' -- Medical bag prop
Config.StretcherProp = 'prop_ld_binbag_01' -- Stretcher prop
Config.StretcherGroundOffset = 0.85 -- Height offset for stretcher
Config.StretcherKey = 38 -- Key to place stretcher (E)
Config.LastStand = true -- Enable two-stage death
Config.AutoRespawn = true -- Auto respawn after timer
Config.RespawnTimer = 1 * Minutes -- Time before optional respawn
Config.BleedoutTimer = 5 * Minutes -- Time before forced respawn
Config.EnableAnimReset = false -- Reset animations
Config.DisableDeathAnimation = false -- Disable death animation
Config.DisableLastStandCrawl = false -- Disable crawling in last stand
Config.LastStandTickTime = 10 * Seconds -- Health deduction interval
Config.DeathScreenEffects = false -- Dark overlay when dead
Config.EnableExtremeEffects = true -- Enable critical effects
Config.DeathAnimation = {
anim = 'mini@cpr@char_b@cpr_def',
lib = 'cpr_pumpchest_idle'
}
Config.EnableInjury = true -- Enable injury tracking
Config.InjuryChance = 70 -- Chance of injury (0-100)
Config.InjuryNotification = true -- Show injury notifications
Config.InjuryNotificationFrequency = 1 * Minutes
Config.DamageDetectThreshold = {
armour = 15, -- Damage threshold through armour
health = 10 -- Damage threshold to health
}
Config.PreventJumpingInjuries = true -- Prevent jumping when injured
Config.BleedingMultiplier = {
shot = 2, -- Bleeding rate for gunshot
stabbed = 2, -- Bleeding rate for stab
beat = 1, -- Bleeding rate for blunt force
burned = 1 -- Bleeding rate for burns
}
Config.TreatmentTime = 9 * Seconds
Config.DiagnoseTime = 7 * Seconds
Config.HealthAfterRevive = {
shot = 60, -- Health after gunshot revive
stabbed = 50, -- Health after stab revive
beat = 40, -- Health after beat revive
burned = 20 -- Health after burn revive
}
Config.ItemsNeededForTreatment = {
shot = 'tweezers', -- Item for gunshot wounds
stabbed = 'suturekit', -- Item for stab wounds
beat = 'icepack', -- Item for blunt force
burned = 'burncream' -- Item for burns
}
Config.InjuryBypassWeaponsList = {
`WEAPON_FLARE`, `WEAPON_UNARMED`, `WEAPON_STUNGUN`,
`WEAPON_SNOWBALL`, `WEAPON_DROWNING`, `WEAPON_SMOKEGRENADE`,
`WEAPON_FIREEXTINGUISHER`, `WEAPON_DROWNING_IN_VEHICLE`
}
Config.EnablePainPills = true -- Enable pain medication system
Config.PhoneDistress = false -- Phone distress signal feature
Config.MythicHospital = false -- Use old MythicHospital injury system
Config.MedicineList = {
['morphine10'] = { label = 'Morphine 10MG', duration = 50, level = 5 },
['morphine30'] = { label = 'Morphine 30MG', duration = 120, level = 9 },
['percocet5'] = { label = 'Percocet 5MG', duration = 30, level = 2 },
['percocet10'] = { label = 'Percocet 10MG', duration = 45, level = 4 },
['percocet30'] = { label = 'Percocet 30MG', duration = 60, level = 6 },
['vicodin5'] = { label = 'Vicodin 5MG', duration = 20, level = 2 },
['vicodin10'] = { label = 'Vicodin 10MG', duration = 40, level = 3 }
}
Config.Inventory = 'ox' -- Inventory system
Config.RemoveItemsOnDeath = false -- Clear inventory on death

Supported: ox, qb, qs, mf, esx, ak47, custom – Note: ‘ps’ (ps-inventory) and ‘lj’ (lj-inventory) are qb-based options

Config.InventoryImage = 'nui://ox_inventory/web/images/' -- Path to item images

Set to false to disable custom image paths.

Config.FuelSystem = 'default' -- 'legacy', 'ox', 'ps', 'default'
Config.EnableAmbulanceDriveFeature = true -- NPC driver transport
Config.DrivingStyleFlag = 828 -- Driving style flag
Config.VehicleSpeed = 35 / 2.23694 -- Speed in MPH (converted)
Config.AmbulanceOffsets = {
['ambulance'] = {
trunkAsBackDoor = false,
pos = { x = 0.0, y = -3.0, z = 0.68 },
rot = { x = -1.3, y = 0.0, z = 90.0 }
}
}
Config.Bandages = {
enabled = false, -- Enable bandage system
item = 'bandage', -- Bandage item name
HealthRegen = 30, -- Health restored
duration = 7 * Seconds -- Application time
}
Config.PoliceCanTreat = {
enabled = true, -- Allow police to treat patients
jobs = { -- Jobs that can treat
'police',
'sheriff'
}
}
Config.BillingSystem = 'esx' -- 'okok', 'qb', 'esx', 'pefcl', false
Config.TargetSystem = true -- Enable qtarget, qb-target, ox_target
Config.JobMenu = 'F6' -- Key to open EMS menu
Config.OXMenu = {
enabled = false,
position = 'bottom-right'
}
Config.UseRadialMenu = false -- Requires ox_lib 3.0+
Config.EnabledKeys = {
onDead = { 1, 2, 38, 46, 47, 245 }, -- Controls while dead
onStretcher = { 1, 2, 38, 46, 245, 249 } -- Controls on stretcher
}

See controls documentation for key IDs.

Config.GPSBlips = {
enabled = false,
refreshrate = 5,
item = false
}
Config.MessagePosition = {
respawn = { x = 0.50, y = 0.80 }, -- Respawn text position
bleedout = { x = 0.50, y = 0.80 }, -- Bleedout text position
distress = { x = 0.1750, y = 0.80 } -- Distress signal position
}
Config.EMSItems = {
sedate = { item = 'sedative', duration = 8 * Seconds, remove = true },
heal = {
item = 'medikit',
duration = 5 * Seconds,
remove = true, -- Remove medikit after use
healInjurys = false, -- Heal injuries on use
allowReviveLaststand = false, -- Enable laststand revive feature
reviveRange = 2.0, -- Detection range (units)
laststandReviveHealth = 40 -- Health on revive (uses GetEntityMaxHealth)
},
revive = { item = 'defibrillator', remove = false },
medbag = 'medbag'
}

The heal configuration now includes optional medikit laststand revive functionality:

Option Type Default Description
allowReviveLaststand boolean false Enable players to revive nearby laststand players with medikits
reviveRange number 2.0 Detection range for finding laststand players (in units)
laststandReviveHealth number 40 Health amount when reviving from laststand (1-200, where 200 is default max)

When enabled, players using a medikit near a player in laststand will see a context menu with two options:

  • Heal Yourself (heart icon) - Use medikit on self (original behavior)
  • Revive [Player Name] (user icon) - Use medikit to revive the downed player

The revived player receives partial health (20% by default) and needs proper medical attention.

Technical Implementation:

  • Uses ox_lib context menu system (lib.registerContext and lib.showContext)
  • Event handlers: ars_ambulance:medikitHealSelf and ars_ambulance:medikitReviveTarget
  • Icons provide visual clarity for quick selection
  • Menu closes automatically after selection or cancellation

Enable with default settings (20% health):

Config.EMSItems.heal.allowReviveLaststand = true

Custom revive health (30% of max):

Config.EMSItems.heal.allowReviveLaststand = true
Config.EMSItems.heal.laststandReviveHealth = 60 -- 30% of default 200 max health

Increase detection range:

Config.EMSItems.heal.allowReviveLaststand = true
Config.EMSItems.heal.reviveRange = 3.5 -- Larger detection area
  • Uses GetEntityMaxHealth() for dynamic max health detection
  • Server-side validation prevents exploits (distance checks, player validation)
  • Works with both ESX and QBCore frameworks
  • Complete locale support (7 languages)
  • Backwards compatible (disabled by default)
  • See the original script documentation for full details on the medikit laststand revive feature
Config.CrutchAndWheelchair = {
crutch = {
useable = true,
maxAssignTime = 10,
item = 'crutch',
disableOnDeath = true,
crutchOnBleedout = 3,
crutchOnCheckOut = 3
},
wheelchair = { useable = true, maxAssignTime = 10, item = 'wheelchair' }
}
  • crutchOnBleedout and crutchOnCheckOut are both measured in minutes.
  • Set either value to false to disable the automatic crutch assignment.
  • crutchOnCheckOut is the recommended setting for automatic crutch assignment after leaving a hospital bed.
Config.StandaloneCheckIns = {
Prison = {
Target = {
enabled = true,
label = 'Check In',
coords = vec3(1729.03, 2563.33, 45.56),
heading = 63.26,
distance = 5.0,
width = 2.0,
length = 1.0,
minZ = 43.28 - 1.0,
maxZ = 43.28 + 1.0
},
Ped = 's_m_m_scientist_01',
Coords = vec3(1729.03, 2563.33, 45.56 - 1.0),
Distance = 4.85,
Heading = 181.42,
Cost = 500,
Duration = 15 * Seconds,
PayAccount = 'bank',
Label = '[E] - Check In',
HotKey = 38,
DisableHospitalBeds = true,
HospitalBeds = {
{ coords = vec3(317.67, -585.37, 42.84), heading = 160.0, model = 1631638868 }
}
}
}

Add custom check-in locations here.

Config.ReviveRewards = {
enabled = true,
accountType = 'money',
burned = 2000,
beat = 1800,
stabbed = 1500,
bleedout = 1200,
shot = 1000
}
Config.AntiCombatLog = {
enabled = false,
notification = { enabled = true }
}
Config.DeathScreenOverlay = {
enabled = true,
giveUpHoldTime = 60,
revealKillerIdentity = true
}
Config.LowHealthAlert = {
enabled = false,
health = 40,
notification = {
title = 'ATTENTION',
description = 'You are low on health, please take care of yourself!'
}
}
Config.KnockoutSettings = {
enabled = true, -- Enable knockout system
knockoutDuration = 10, -- How long player stays knocked out
knockoutWeapon = `WEAPON_UNARMED` -- Weapon that triggers knockout
}

Located in modules/knockedout/config.lua.


Note: This guide is written by a third party. If you find any incorrect or outdated information, please contact us on Discord so we can update it for you.