Skip to content

Bridges ​

np_mdt runs on a bare server. fxmanifest.lua has no dependency entries: whatever is running gets used, and anything missing is replaced by a built-in fallback. Detection runs once at start (core/bridge/resolve.lua), so start your dependencies before np_mdt.

ConcernDetected, in order of precedenceBuilt-in fallback
Frameworkes_extended, qb-core, qbx_core, essentialmode (old ESX)standalone: identifier from GetPlayerIdentifierByType
Inventoryox_inventory, qb-inventory, es_extendedbuiltin: an in-memory table
Targetox_target, qb-target, qtargetbuiltin: raycast with its own markers
UIox_libbuiltin: the resource's own NUI (menu, progress, notifications)
Databaseoxmysql, ghmattimysql (table np_mdt_kv)file: JSON next to the resource

Framework order

Unlike the other np_* resources, np_mdt checks ESX first: it's the main target. Qbox also provides qb-core, so on a Qbox server the qb adapter is used either way.

The choice is printed as a single line at start:

[np_mdt] bridge: db=file framework=standalone inventory=builtin target=builtin ui=builtin

mdtstatus shows the same line.

Overriding detection ​

If detection picks the wrong one, pin it in config/core.lua. Leave a concern out to keep auto-detection for it:

lua
Config.Bridge = { inventory = "builtin" }
ConcernAdapter names
frameworkesx_current, esx_legacy, qb, standalone
inventoryox, qb, esx, builtin
targetox, qb, builtin
uioxlib, builtin
dboxmysql, ghmatti, file

What the framework bridge is used for ​

  • Identity. Character identifier and name. The MDT itself always matches players by Discord id.
  • Jobs and duty for the ranks, timeclock and tablet modules and the medic care tiers. Duty comes from job.onduty (QBCore), job.onDuty (ESX 1.10+) or the ESX off<job> convention.
  • Money for the hospital bill after a respawn (Config.Medic.Respawn.account, default bank).
  • Death state for other scripts when the medic simulation is on: ESX state bag isDead / isDowned and xPlayer.get("isDead"), QBCore metadata inlaststand / isdead. After a revive ESX gets esx:onPlayerSpawn.
  • Ambulance scripts that conflict with the simulation: esx_ambulancejob under ESX; qb-ambulancejob, qbx_medical, qbx_ambulancejob under QBCore / Qbox. See Medic module.

Inventory ​

The medic and ausweis modules use items. Items are looked up by name through the inventory bridge (count, add, remove, and per-use consumption for multi-use items such as ointment tubes). With ox_inventory, usable items are handled through ox_inventory:usedItem. Make sure the items from config/medic/items.lua and mdt_dienstausweis exist in your inventory, or rename them in the config.

np_* FiveM resources