Description
A two-phase EMS revive: a rhythm chest-compression minigame followed by a charge-and-shock defibrillator step that restores spontaneous circulation (ROSC) on a downed player. It is the highest-traffic medical interaction on any roleplay server, so a server sells it to replace the flat one-button revive with a tense, skill-based loop that keeps medics engaged.
Prompt Template
You are writing a FiveM resource for a roleplay server. Detect the framework…
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
See content/expected-outputs/medical/07-cpr-defib-revive-minigame.lua. It…
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-side revive — the patient is healed inside the client minigame, so
any client can spoof a ROSC. The heal must be a server event guarded by the
downedtable. - Missing anim-load wait —
RequestAnimDictwithout theHasAnimDictLoadedloop means the first compression plays nothing. - Round-trip via TriggerEvent — using
TriggerEventinstead ofRegisterNetEvent+AddEventHandlerdrops the compressions-done / shock messages at the network boundary.
Corrective re-prompt: "Move the actual revive out of the client. The patient
may only be revived inside the server handler for medical:defib:shock, and only
when downed[targetServerId] is true; the client must merely run the minigame and
TriggerServerEvent the result. Confirm RequestAnimDict is followed by a
while not HasAnimDictLoaded(dict) do Wait(0) end loop on every animation."
Framework Integration
- ESX: resolve
exports["es_extended"]:getSharedObject()and callxPlayer.triggerEventor your revive export inside themedical:defib:shockserver handler instead of the placeholder notify. - QBCore: swap the revive apply for
TriggerClientEvent('hospital:client:Revive', patient)orQBCore.Functions.GetPlayer(patient)health setters. - QBox: use
exports.qbx_core:GetPlayer(src)and theqbx_medicalrevive export; thedownedtable maps cleanly onto qbx_medical's laststand state.
Profit Potential
$400–$6000/mo on Tebex (expected ~$1500). [INFERRED] priced inside the $50-389 script band against the signal-scraper tebex corpus (median seller $11.85K/mo, n=100); a hot, core-loop EMS module sits in the upper half of its niche.
Trend Signal
🔥 hot — corpus: CPR+defib ROSC minigame ships in the dominant medical sellers (wasabi/codem-ambulancejob); core revive loop with high forum velocity.
Sales Angle
Position as the revive your medics actually feel — a paced, two-stage minigame that replaces the flat one-button revive. Recommended Tebex price $349.
Difficulty & Ship Time
intermediate · ships in 2-4h.