Description
A tiered medical certification system for ESX or QB: medics earn XP by taking training courses, the server recomputes their certification tier against XP thresholds, and each procedure is gated behind a required tier. It is a familiar progression pattern — best bundled into a larger medical pack as the layer that turns a flat job into a career ladder rather than sold as a headline feature.
Prompt Template
You are writing a FiveM resource for esextended (stable, exports getSharedObject).
The full prompt template and its reference Lua are part of a one-time pack. Pick your depth — both are lifetime access, no subscription, ever.
- 60 prompts + syntax-validated reference Lua
- Lifetime access — pay once
- All 510 prompts — the full library
- Per-prompt profit/trend intelligence (CSV + playbook)
- Lifetime free updates — new niches as the market moves
$49 for 60 · $199 for all 510 + intelligence — one-time, no subscription.
Expected Output
The reference Lua lives at content/expected-outputs/medical/28-medical-license-certification.lua. It implements a server-owned XP/tier table, a training round-trip that recomputes the tier from…
The full prompt template and its reference Lua are part of a one-time pack. Pick your depth — both are lifetime access, no subscription, ever.
- 60 prompts + syntax-validated reference Lua
- Lifetime access — pay once
- All 510 prompts — the full library
- Per-prompt profit/trend intelligence (CSV + playbook)
- Lifetime free updates — new niches as the market moves
$49 for 60 · $199 for all 510 + intelligence — one-time, no subscription.
Known Failure Modes & Corrective Prompt
- Client-trusted tier — Claude lets the client decide procedure eligibility; keep XP, tier and the gate server-side keyed by source.
- Anim before load — the study
TaskPlayAnimno-ops if the dict is not loaded; alwaysRequestAnimDict+ aHasAnimDictLoadedwait loop. - One-sided net event —
cert:syncon only one side leaves the tier stale after a course; both sides useRegisterNetEvent+AddEventHandler.
Corrective re-prompt: "Move XP and tier into server.lua keyed by source, recompute the tier from the XP thresholds inside cert:train, and in cert:procedure reject the procedure whenever the server-side tier is below PROC_REQ for that code — never read the tier the client sends."
Framework Integration
- ESX:
local ESX = exports['es_extended']:getSharedObject(); persist withxPlayer.set('medXp', xp)so progression survives relogs. - QBCore:
local QBCore = exports['qb-core']:GetCoreObject(); store onPlayer.PlayerData.metadata.medCertviaPlayer.Functions.SetMetaData. - QBox: use
exports.qbx_core:GetPlayer(src)and the same metadata accessor for persistence.
Profit Potential
$80–$1200/mo on Tebex (expected ~$300). [INFERRED] within the $50-389 script band against the signal-scraper tebex_snapshot corpus (n=100, median seller $11.85K/mo), sized for a saturated cert-gating niche.
Trend Signal
↘ saturated — inferred: Cert/license gating is a common, low-novelty pattern; saturated — bundle it, do not lead with it.
Sales Angle
Bundle as the progression layer inside a larger medical pack — it turns a flat job into a career ladder but should not be the headline. Recommended Tebex price $59.
Difficulty & Ship Time
beginner · ships in 2-4h.