Driving School Job Dependencies & Compatibility

2 min read

Dependencies & Compatibility

Compatibility matrix

LayerSupportedConfig keyNotes
FrameworkESX · QBCore · QboxConfig.Framework'auto' detects all three. Qbox is read through qbx_core natively, so it works with or without the qb-core bridge.
Targetox_target · qb-target · noneConfig.Target'none' falls back to an E-key with 3D text.
Inventoryox_inventoryHard dependency. Items, the theory papers, the eyesight form, the cone tool, and school storage all run on it.
Bankinginternal · Renewed · qb-banking · esxConfig.SchoolBank'internal' (default) needs no banking script. The others are opt-in and you create each school's society account yourself.

Required resources

Start all of these before vs-dmvjob.

ResourcePurpose
ox_libcallbacks, notify, shared init
oxmysqlpersists schools, licenses, settings, bookings, fleet
ox_targetin-world interactions (or qb-target, or the E-key fallback)
ox_inventoryitems, usable papers/forms, the cone tool, school stash
vs-npc-dialoguethe reception and exam dialogue (free companion resource)

Keep vs-npc-dialogue updated in lockstep with the script. The exam and reception conversations are driven through its exports, so a mismatched version can break the flow. See its docs.

Banking

School balances are held wherever Config.SchoolBank points:

  • 'internal' (default) uses the resource's own account table. It is complete and works on a server with no banking script at all. This is the right answer unless you deliberately set up the alternative.
  • 'renewed' / 'qb' / 'esx' force an external bank. These are opt-in, and you must create each school's society account yourself (the naming differs per bank). On a missing account the school falls back to internal and warns once.

Pointing SchoolBank at a bank with no society account does not look broken. Credits silently no-op while the ledger keeps logging, so the school reads $0 next to "activity +$150". Set it in config.lua (not the Creator), and only if you have created the accounts.

Police / license integration

Any script can read a player's licenses through the script's exports, and a police script can revoke one. This is optional and covered on the Developers page.

Pairs with the Driving School MLO

The script places its schools in-game, so it does not hard-require a map. It pairs naturally with the Driving School MLO as a home for the school, and the two are offered together as a bundle.