Kartik Scripts

Configuration

Most settings can be changed live in /emsadmin → Settings, which overrides the file until you reset it there. Only edit files for things the panel does not cover.

/shared contains configuration only. Every third-party integration lives in /bridge. Both are outside the escrow, so you can read and edit them freely.


🗂️ The config map

FileContains
shared/config/general.luaDebug, integrations, compatibility, duty and police jobs, admin ace
shared/config/interface.luaUI colours and sounds, radial, keybinds, commands, blips
shared/config/damage.luaBody zones and bones, damage → injury rules, weapons, ignored resources
shared/config/trauma.luaLife threats, pneumothorax, cardiac tamponade, airway, pelvic bleeding: timings, effects, causes
shared/config/death.luaLast stand and death, respawn, AI medic, CPR and revive
shared/config/vitals.luaVitals simulation, injury effects, alcohol, temperature and environment
shared/config/impairments.luaHow injuries affect shooting, driving, movement and carrying
shared/config/treatments.luaTreatments, healing times, treatment animations, surgery & procedure minigames, failure costs, IO access
shared/config/medications.luaMedications and fluids
shared/config/diseases.luaSymptoms, diseases, addictions
shared/config/tests.luaDiagnostic tools and hands-on checks, hospital tests, imaging workstation films and the film item, blood bank
shared/config/hospital.luaCheck-in and triage tickets, discharge, billing, insurance, lockers, uniforms, TV boards, imaging screens
shared/config/physio.luaPhysiotherapy, price, cooldown, requirements, minigame difficulty, exercises
shared/config/pharmacy.luaPharmacy stock and prescriptions
shared/config/equipment.luaStretcher, wheelchair, crutch, mobility orders, med bag, body bag, monitor, treatment props
shared/config/vehicles.luaAmbulance models, garage presets and owned medic vehicles
shared/config/dispatch.luaDistress and EMS calls, code blue, pager, unit blips
shared/config/progression.luaReputation and XP progression
shared/config/shops.luaMedic supply shops
shared/config/reports.luaMedical report templates, categories, paper copy item
shared/config/ai_patients.luaAI patient callouts, locations, complaints, rewards, the crash scene
shared/config/academy.luaEMS Academy, training scenarios, protocols, grading
shared/config/tutorial.luaFirst-run walkthrough tracks
shared/config/permadeath.luaFinal character kills: approvals, causes, poses, decomposition, forensics
shared/server/config.luaDiscord / ox_lib logs, anti-abuse, database, version check, server only

shared/config/README.md inside the resource lists every Config. table and the file it lives in.


📚 Guides


🔊 Sounds

Every interface sound is a file in web/sounds. Replace them with your own, keeping the names:

pager.wav · alarm.wav · heartbeat.wav · beep.wav · charge.wav · shock.wav · flatline.wav · success.wav · fail.wav

If a file fails to load, a generated tone plays instead, so a missing sound never breaks anything.

The breath, heart and pulse sounds of the hands-on checks are generated. Add breath_<kind>, heart_<kind> or pulse to Config.UI.sounds to use your own recordings.

Volume: Config.UI.soundVolume (0.5 by default).

Coughs and sneezes

cough.wav and sneeze.wav play when a sick player coughs or sneezes, also inside a vehicle. Players within Config.UI.symptomSoundRange metres (12 by default) hear it too, quieter with distance.

The sound follows the character's voice: female characters use the same recording at a higher pitch. Change the pitch per gender in shared/config/interface.lua, or add your own recordings per voice:

sounds = {
    -- ...
    cough = 'sounds/cough.wav', sneeze = 'sounds/sneeze.wav',
    cough_female = 'sounds/cough_female.wav', sneeze_female = 'sounds/sneeze_female.wav', -- optional
},
voicePitch = { male = 1.0, female = 1.2 }, -- 0.5 to 2.0, used when there is no own recording

Put your own files in web/sounds. A recording set for a voice plays at its normal pitch. Every cough or sneeze also varies its pitch very slightly so repeats do not sound identical.

On this page