The hospital addon enables players to speak to a hospital receptionist NPC to request treatment. The addon charges a configurable fee with optional job-based discounts and a voice confirmation step before charging.
Config file: shared/hospital/default.lua
HospitalConfig.enabled#| Type | Default |
|---|---|
boolean | true |
Enable or disable the hospital addon entirely.
HospitalConfig.debug#| Type | Default |
|---|---|
boolean | Config.AddonDebug |
Enable debug logging for the hospital addon. Follows the global AddonDebug setting by default.
HospitalConfig.spawnPeds#| Type | Default |
|---|---|
string[] | {"qb-ambulancejob", "qb-medical", "esx-ambulancejob", "standalone"} |
Integrations for which the addon spawns its own hospital receptionist peds. All listed integrations require the addon to create the NPCs.
HospitalConfig.spawnPeds = { 'qb-ambulancejob', 'qb-medical', 'esx-ambulancejob', 'standalone' }
HospitalConfig.pedDefaults#Default ped model and scenario used when the addon spawns a receptionist.
HospitalConfig.pedDefaults = { model = 's_f_y_scrubs_01', scenario = 'WORLD_HUMAN_CLIPBOARD', }
HospitalConfig.npcModel#| Type | Default |
|---|---|
string | "s_f_y_scrubs_01" |
The ped model used for the hospital receptionist NPC.
HospitalConfig.proximity#| Field | Type | Default | Description |
|---|---|---|---|
width | number | 3.5 | Box zone width around reception desk (meters) |
length | number | 4.0 | Box zone length around reception desk (meters) |
updateInterval | number | 500 | How often to check proximity (ms) |
HospitalConfig.proximity = { width = 3.5, length = 4.0, updateInterval = 500, }
HospitalConfig.zoneGeometry#| Field | Type | Default | Description |
|---|---|---|---|
height | number | 3.0 | Height of the box zone in meters |
HospitalConfig.zoneGeometry = { height = 3.0 }
HospitalConfig.npcDetection#| Field | Type | Default | Description |
|---|---|---|---|
searchRadius | number | 8.0 | Primary NPC search radius (meters) |
fallbackSearchRadius | number | 12.0 | Fallback radius if primary finds nothing |
waitForSpawn | number | 500 | Max ms to retry NPC detection after zone entry |
greetingDelay | number | 0 | Delay (ms) before NPC delivers automatic greeting |
HospitalConfig.npcDetection = { searchRadius = 8.0, fallbackSearchRadius = 12.0, waitForSpawn = 500, greetingDelay = 0, }
HospitalConfig.fee#| Field | Type | Default | Description |
|---|---|---|---|
base | number | 1500 | Base treatment cost. Set to 0 for free treatment (skips confirmation) |
moneyType | string | "cash" | Payment account — "cash" or "bank" |
jobDiscounts | table | — | Per-job discount multipliers (see below) |
Job discounts are keyed by job name and define the fraction of the base fee that is waived.
HospitalConfig.fee = { base = 1500, moneyType = 'cash', jobDiscounts = { police = 0.3, -- 30% off for police ambulance = 0.0, -- Free for EMS fire = 0.15, -- 15% off for fire department }, }
Setting base = 0 makes treatment free for everyone and skips the confirmation step entirely.
HospitalConfig.confirmation#Voice confirmation step before charging the player.
| Field | Type | Default | Description |
|---|---|---|---|
enabled | boolean | true | Require player to confirm before charging |
timeout | number | 12000 | Ms before unconfirmed request is auto-cancelled |
HospitalConfig.confirmation = { enabled = true, timeout = 12000, }
HospitalConfig.progressBar#Progress bar shown during the revive sequence on the standalone / no-ambulancejob path.
| Field | Type | Default | Description |
|---|---|---|---|
duration | number | 6000 | Duration of the progress bar in ms |
HospitalConfig.progressBar = { duration = 6000, }
HospitalConfig.matching#Per-intent similarity thresholds. Lower values allow less exact matches.
HospitalConfig.matching = { revive = 0.65, health = 0.70, price = 0.68, confirm = 0.60, cancel = 0.60, }
HospitalConfig.feedback#HospitalConfig.feedback.enabled#| Type | Default |
|---|---|
boolean | true |
Master toggle for NPC TTS speech responses.
HospitalConfig.feedback.responseToggles#Individual toggles for each response category.
HospitalConfig.feedback.responseToggles = { greeting = true, -- greet player on entry farewell = true, -- farewell on exit revive = true, -- revive/treatment responses health = true, -- health inquiry responses price = true, -- price inquiry responses confirmation = true, -- "please confirm" prompts errors = true, -- insufficient funds, etc. }
HospitalConfig.feedbackTiming#| Field | Default | Description |
|---|---|---|
responseCooldown | 1000 ms | Minimum time between NPC responses |
duplicatePrevention | 5000 ms | Suppress duplicate responses within this window |
HospitalConfig.feedbackTiming = { responseCooldown = 1000, duplicatePrevention = 5000, }
Last updated about 9 hours ago