QBX Installation

Install oxide-medical on Qbox — coexistence with qbx_medical, ox_inventory item registration, needs polling, and death integration.

Qbox (qbx_core) specific steps for oxide-medical. Follow the Installation Guide first — this page only covers what differs on Qbox.

Nothing to Disable — and Keep qbx_medical

oxide-medical does not replace anything Qbox ships, and in particular it does not replace qbx_medical.

The two do different jobs and are meant to run together:

qbx_medicaloxide-medical
The downed and dead state machine — laststand, bleedout, respawnWhat is actually wrong with the player: fractures, wounds, diseases, sickness
Qbox's own lightweight injury and bleed modelBlood type, DNA, immunity, disease progression, contagion, vitals

Leave qbx_medical running.

If you are also installing oxide-ems, that one replaces qbx_ambulancejob — but keeps qbx_medical too. See its own Qbox guide.

A note on overlap

qbx_medical has its own injury and bleed concept, and oxide-medical has a much deeper one. They coexist without erroring, but a player can carry both — a qbx_medical bleed and an oxide-medical gunshot wound from the same shot.

Most servers running both want qbx_medical's own damage effects turned down or off in its config, and oxide-medical treated as the source of truth for injuries. Its laststand, bleedout and respawn handling should stay exactly as it is — that is the part oxide-medical relies on.

Register the Cure Items

Every item oxide-medical looks for is ready to paste in itemimages/ox_inventory_items.lua in the resource folder. Copy the entries between its braces into ox_inventory/data/items.lua, above that file's final closing brace. Do not rename them.

The file also includes the two supply items the fracture and wound catalogs name (medical_bandage, medical_splint). If you are installing oxide-ems alongside this, they are the same entries its file has, so add them once.

Restart ox_inventory (or the server) after saving.

The sixth item: painkillers

painkillers is the cure for fever. Stock ox_inventory ships it, so it is usually already in data/items.lua — but search the file for it and confirm, because a trimmed or hand-written item list often drops it, and the failure is silent: using the item does nothing at all and no error appears in F8 or the server console.

If it is missing, paste the painkillers entry at the bottom of itemimages/ox_inventory_items.lua too.

oxide-medical owns painkillers as a usable item. If oxide-ems is installed alongside it, oxide-ems deliberately leaves the item alone so the fever cure keeps working — on Qbox that means using painkillers cures fever instead of applying the qbx_medical damage-effect stack. ifaks still applies that stack.

If you would rather keep the qbx_medical behaviour, set ClaimPainkillers = true under ['qbx'] in oxide-ems/shared/config/compat.lua and restart (see EMS configuration). oxide-ems takes the item back and the fever cure stops working.

Copy the Images

Copy the .png files into:

ox_inventory/web/images/

Images for all five non-stock items ship in itemimages/ in this resource. painkillers is stock in ox_inventory and already has an image.

Needs Integration

Qbox keeps hunger, thirst and stress in player metadata, and o-link reads all three. The needs-driven parts of oxide-medical work out of the box:

  • going hungry can bring on nausea
  • sustained stress can bring on dizziness
  • neglect erodes the immune stat; looking after yourself regenerates it
  • low thirst brings on dehydration, which clears when the player drinks

Those values are read on a poll — every 30 seconds, with the sickness rules rolling every fourth read. See Config.Triggers.NeedsPolling in Configuration.

Death Integration

oxide-medical reads downed and dead state through o-link, which on Qbox means the inlaststand and isdead metadata that qbx_medical maintains. While a player is either, no new injuries register, no illness rolls happen, damage over time pauses, and physical effects clear.

That is another reason to leave qbx_medical running.

Vitals are the deliberate exception. They keep simulating on a downed patient, because a deteriorating patient is the point — it is what feeds the operating-table monitor in oxide-ems.

Verification on Qbox

  1. Server starts with no dependency errors, and qbx_medical is still running.
  2. /med test as an admin — every check should pass.
  3. /med sim fracture — you should limp and your aim should drift.
  4. /med add me disease infection - 1, then /med give me antibiotics and use it. A progress bar should run and the infection should clear.
  5. /med checkneeds me — should print your real hunger, thirst and stress values, not nil.
  6. Go into laststand and confirm damage over time and effects pause, while /med vitals me keeps updating.
  7. /med sim reset to clean up.