Skip to content

Administrator Guide

This guide covers administrative features and server management for ARS Ambulance.


EMS supervisors can access the boss menu at the hospital to:

  • Manage EMS employees
  • View and adjust grades
  • Access society funds (ESX)

Location: Pillbox Hospital - Second Floor Access: Press E at the boss menu marker


Configure webhooks in server/sv_customize.lua:

Webhooks = {
deathLogs = {
webhook = 'YOUR_DISCORD_WEBHOOK_URL',
color = 15548997 -- Red color
},
reviveLogs = {
webhook = 'YOUR_DISCORD_WEBHOOK_URL',
color = 5763719 -- Green color
}
}

In config.lua:

Config.DeathLogs = true -- Log player deaths
Config.ReviveLogs = true -- Log admin revives
Config.LogIPaddresse = true -- Include IP in logs (privacy consideration)
ColorDecimal
Red15548997
Green5763719
Blue5793266
Yellow16776960

ARS Ambulance has extensive configuration options. Below are the most important settings for server administrators.

Config.Framework = 'esx' -- 'esx' or 'qb'
Config.AmbulanceJob = 'ambulance' -- Job name
Config.NotificationLocation = 'top' -- Notification position
Config.ProgressCircle = true -- Use circle progress bars
Config.LastStand = true -- Two-stage death system
Config.AutoRespawn = true -- Auto-respawn after timer
Config.RespawnTimer = 1 * Minutes -- Time before optional respawn
Config.BleedoutTimer = 5 * Minutes -- Time before forced respawn
Config.MutePlayerOnDead = false -- Mute dead players
Config.DeathScreenOverlay = {
enabled = true, -- Enable overlay UI
giveUpHoldTime = 60, -- Frames to hold E (60 = ~1 second)
revealKillerIdentity = true -- Show killer's name
}
Config.DeathScreenEffects = false -- Dark screen overlay
Config.EnableExtremeEffects = true -- Critical effects
Config.EnableInjury = true -- Enable injury tracking
Config.InjuryChance = 70 -- Chance of injury (0-100)
Config.InjuryNotification = true -- Show injury notifications
Config.TreatmentTime = 9 * Seconds -- Time to treat injuries
Config.DiagnoseTime = 7 * Seconds -- Time to diagnose
Config.HealthAfterRevive = {
shot = 60, -- After gunshot revive
stabbed = 50, -- After stab revive
beat = 40, -- After blunt force revive
burned = 20 -- After burn revive
}
Config.EMSItems = {
sedate = { item = 'sedative', duration = 8 * Seconds },
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 (1-200)
},
revive = { item = 'defibrillator' },
medbag = 'medbag'
}
Config.ItemsNeededForTreatment = {
shot = 'tweezers',
stabbed = 'suturekit',
beat = 'icepack',
burned = 'burncream'
}

Medikit Laststand Revive Configuration (NEW v2.7)

Section titled “Medikit Laststand Revive Configuration (NEW v2.7)”

The medikit heal configuration includes optional laststand revive functionality:

SettingTypeDefaultDescription
allowReviveLaststandbooleanfalseEnable players to revive nearby laststand players with medikits
reviveRangenumber2.0Detection range for finding laststand players (in units)
laststandReviveHealthnumber40Health amount when reviving from laststand

Example Configurations:

Enable with default settings (20% health revive):

Config.EMSItems.heal.allowReviveLaststand = true

Custom revive health (30% of max):

Config.EMSItems.heal.allowReviveLaststand = true
Config.EMSItems.heal.laststandReviveHealth = 60

Increase detection range:

Config.EMSItems.heal.allowReviveLaststand = true
Config.EMSItems.heal.reviveRange = 3.5

Important Notes:

  • Feature is disabled by default - must be explicitly enabled
  • Uses GetEntityMaxHealth() for dynamic max health detection
  • Server-side validation prevents exploits (distance checks, player validation)
  • Works with both ESX and QBCore frameworks
  • Uses ox_lib context menu with visual icons for better UX
  • Backwards compatible - existing behavior unchanged when disabled
  • See Configuration guide for complete details
Config.EnableAmbulanceDriveFeature = true -- NPC driver transport
Config.DrivingStyleFlag = 828 -- Driving behavior
Config.VehicleSpeed = 35 / 2.23694 -- Speed in MPH
Config.PoliceCanTreat = {
enabled = true, -- Allow police to treat patients
jobs = { 'police', 'sheriff' }
}
Config.EnablePainPills = true -- Enable pain meds
Config.MedicineList = {
['morphine10'] = { label = 'Morphine 10MG', duration = 50, level = 5 },
-- ... (other medications)
}
Config.GPSBlips = {
enabled = false, -- Enable EMS player tracking
refreshrate = 5, -- Update interval in seconds
item = false -- Required item (false = none)
}
Config.AntiCombatLog = {
enabled = false, -- Track combat logging
notification = {
enabled = true,
title = 'Logged While Dead',
desc = 'You left while dead and returned dead'
}
}
Config.DisableCharacter = {
enabled = false, -- Enable character deletion
countAfterDeath = false, -- Count deaths immediately
maxDeaths = 255 -- Max deaths before deletion
}

Warning: Character deletion is permanent. Use with caution.

Config.Bandages = {
enabled = false,
item = 'bandage',
HealthRegen = 30,
duration = 7 * Seconds
}
Config.LowHealthAlert = {
enabled = false,
health = 40,
notification = {
title = 'ATTENTION',
description = 'You are low on health!'
}
}

In config.lua:

Config.AntiCombatLog = {
enabled = true,
notification = {
enabled = true,
title = 'Logged While Dead',
desc = 'You left while dead and returned dead'
}
}
  • Tracks players who disconnect while dead
  • ESX: Stores in database is_dead column
  • QBCore: Stores in player metadata
  • Players return dead on reconnect

The Last Stand system is a two-stage death mechanism that provides a brief window for rescue before permanent death.

Stage 1: Last Stand

  • Player is critically injured but alive
  • Can crawl slowly (if enabled)
  • Can use distress signal
  • Last stand timer begins

Stage 2: Death

  • If not revived within Last Stand timer
  • Player fully dies
  • Death screen overlay appears
  • Bleedout timer begins
Config.LastStand = true -- Enable two-stage death
Config.DisableLastStandCrawl = false -- Allow crawling
Config.LastStandTickTime = 10 * Seconds -- Health loss interval

During Last Stand, players can:

  • Call for help using distress signal
  • Crawl to safety (if enabled)
  • Accept their fate and respawn

EMS personnel can:

  • Revive player during Last Stand
  • Treat injuries to stabilize
  • Load into ambulance for transport

For servers migrating from MythicHospital, ARS Ambulance includes a compatibility mode.

Config.MythicHospital = false -- Use old MythicHospital injury system

Enable this if:

  • Migrating from MythicHospital
  • Want to maintain old injury behavior
  • Have custom scripts relying on old system

Disable for new installations to use the improved injury system.


In config.lua:

Config.DisableCharacter = {
enabled = false, -- Enable character deletion
countAfterDeath = false, -- Count deaths immediately or after respawn
maxDeaths = 255 -- Maximum deaths before deletion
}

Warning: This permanently deletes characters. Use with caution.


Certain weapons are configured to bypass the injury system to prevent unwanted effects.

Config.InjuryBypassWeaponsList = {
`WEAPON_FLARE`, -- Flare gun
`WEAPON_UNARMED`, -- Fist fighting
`WEAPON_STUNGUN`, -- Taser
`WEAPON_SNOWBALL`, -- Snowballs
`WEAPON_DROWNING`, -- Drowning damage
`WEAPON_SMOKEGRENADE`, -- Smoke grenades
`WEAPON_FIREEXTINGUISHER`, -- Fire extinguisher
`WEAPON_DROWNING_IN_VEHICLE` -- Drowning in vehicle
}

Add or remove weapons from this list based on your server’s needs.


ARS Ambulance provides two death screen systems with different features.

Modern NUI-based overlay with interactive controls:

Config.DeathScreenOverlay = {
enabled = true,
giveUpHoldTime = 60, -- Hold E duration
revealKillerIdentity = true -- Show killer name
}

Features:

  • Incident report with killer/cause
  • Hold-to-give-up interactive button
  • Injury status display
  • Bleedout and respawn timers
  • Customizable appearance

Simple dark screen overlay:

Config.DeathScreenEffects = false
Config.EnableExtremeEffects = true

Features:

  • Darkens screen
  • Critical effects when enabled
  • Less immersive but simpler

Use Death Screen Overlay for best player experience. Only use classic effects if you have performance issues or prefer simpler UI.


Configure money rewards for EMS players who revive patients:

Config.ReviveRewards = {
enabled = true,
accountType = 'money', -- 'money', 'bank', 'black_money'
burned = 2000,
beat = 1800,
stabbed = 1500,
bleedout = 1200,
shot = 1000,
no_injury = 0,
}

Configured in hospital/pillbox.lua:

Config.Locations['pillbox'] = {
RespawnPoint = {
coords = vector3(319.41, -581.01, 44.2),
heading = 340.31
},
Blip = {
Enabled = true,
Coords = vec3(324.15, -583.14, 44.20),
Sprite = 61,
Color = 2,
Scale = 1.0,
String = 'Pillbox Hospital'
}
}

Add to hospital/pillbox.lua:

Config.Locations['yourhospital'] = {
RespawnPoint = {
coords = vector3(x, y, z),
heading = 0.0
},
Blip = {
Enabled = true,
Coords = vec3(x, y, z),
Sprite = 61,
Color = 2,
Scale = 1.0,
String = 'Your Hospital Name'
},
-- Add CheckIn, Vehicles, Elevators, etc.
}

  • Check Config.EnableInjury is true
  • Verify no other death scripts are interfering
  • Check for conflicting event handlers
  • Verify bed coordinates are correct
  • Check HospitalBeds table is populated
  • Ensure target system is enabled
  • Verify billing system is configured (Config.BillingSystem)
  • Check that society account exists (ESX)
  • Verify billing resource is running
  • Verify webhook URL is correct
  • Check that Config.DeathLogs or Config.ReviveLogs is enabled
  • Ensure server has internet access
  • Verify Config.DeathScreenOverlay.enabled = true
  • Check that NUI files are present in html/ folder
  • Ensure no conflicting death screen resources
  • Verify Config.EnableAmbulanceDriveFeature = true
  • Check Config.VehicleSpeed is set appropriately
  • Ensure spawn points are clear of obstacles
  • Verify Config.GPSBlips.enabled = true
  • Check that players have required item (if configured)
  • Ensure refreshrate is not too high (impacts performance)
  • Verify Config.PoliceCanTreat.enabled = true
  • Check that police jobs are listed in jobs array
  • Ensure police have required treatment items
  • Verify Config.LowHealthAlert.enabled = true
  • Check health threshold is appropriate (default: 40)
  • Test with damage that drops below threshold
  • Verify Config.Bandages.enabled = true
  • Ensure bandage item exists in inventory
  • Check that players can use bandage item

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.