RedM Fireworks
A firework placement and detonation script for RedM. A player uses a firework item, plays a planting animation, sets a crate on the ground, walks away unspooling a fuse line held in the left hand, and once far enough away wires it to a plunger detonator and sets off a launched rocket show at the crate.
VORP RSG CoreVORP and RSG only
Unlike the rest of the catalog, this resource has no standalone mode and no RedEM:RP bridge. Without VORP or RSG the usable items never register. The fixed-coordinate event path does work with no framework at all — see Fixed-coordinate shows.
The sequence
| Stage | Roughly | Cancellable |
|---|---|---|
| Plant animation and three crate hauls | 13.9 s | No |
| Scripted 180° turn | 2 s | No |
| Fuse walk, plaque on screen with a live distance readout | until you act | Yes |
| Wiring animation | 8.8 s | No |
| Detonator entry | 1.8 s | No |
| Detonator prompt | until you act | Yes, on the item path |
| Plunger pressed → first burst | 2.6 s | — |
The first ~16 seconds cannot be interrupted
From the moment the item is consumed to the moment the cancel prompt appears — about 14 seconds of planting plus the 2-second turn — the cancel key is not read at all. Pressing use on the fuse then commits the player for a further ~10.6 seconds.
What it includes
- Four usable items (
firework_1…firework_4), each with its own burst-effect list. - A full planting sequence — plant animation, three crate hauls, ground placement, scripted turn, fuse unspool with a custom walk style, wiring, plunger detonator.
- A physics rope tying the spool to the crate, re-attached to the hand and then to the detonator as the sequence progresses.
- A distance gate before you can wire the detonator: 15 m outdoors, 5 m indoors, both configurable.
- A React NUI plaque — a painted brush stroke with a live distance readout that only pushes a message when the payload actually changes.
- Cancel and refund during the fuse walk and on the detonator, validated server-side so the refund event cannot mint items.
- Multiplayer sync, gated server-side on that player having genuinely consumed the item.
- Fixed-coordinate shows launched by config index, for events with no item.
- Optional Discord logging through JD_logsV3, skipped silently when it is not running.
Editions
Both are sold from the same product page.
| Edition | Price | Code access |
|---|---|---|
| Open Source | $50 | The full codebase |
| RedM Escrow | $20 | CFX Escrow |
Several fixes in these docs are source edits — audio, distance culling on synced shows, state guards, ACE checks. Those need the Open Source edition. Everything reachable from config/config.lua works on both.
Requirements
| Game | RedM — game 'rdr3', fx_version 'cerulean', lua54 'yes' |
| Framework | VORP (vorp_core + vorp_inventory) or RSG (rsg-core) |
| Library dependencies | None. No ox_lib, no notify/menu/input library, no target system |
| Database | VORP only, and only four rows in the items table |
| Optional | JD_logsV3 for Discord logging |
| Build tooling | None to run — the UI ships pre-built. Node only if you restyle |
The bridges are asymmetric, and it matters when you debug
The server side waits for vorp_core and vorp_inventory to both report started. The client side only waits for vorp_core. If vorp_inventory is stopped, the client reports a framework while the server never registers a single usable item — with no error printed.
Fixed-coordinate shows
An entry with item = false and a coords vector launches from a fixed point with no item, no animation and no prompt. The resource ships no commands; you trigger it from your own resource:
TriggerClientEvent("rm_fireworks:LaunchFireworks", -1, 5)An entry may also set both item and coords — that is supported and useful. The item path ignores coords and plants at the player's feet; LaunchFireworks still launches at the fixed position. One entry, two ways to fire it.
Three things that surprise people
Effects.sound plays no sound. Despite the name it is handed to a particle helper, so it spawns a second particle at the burst point. There are zero audio natives in the entire resource. See Configuration → Effects.sound is a particle.
The script never moves your character. The only ped task in the whole sequence is a scripted 2-second turn. There is no pathing — the player walks the fuse out under their own control.
Fireworks do no damage and start no fires. The crate is invincible and every rocket has collision disabled.
Documentation
| Page | What's in it |
|---|---|
| Installation | VORP and RSG install, items, icons, load order, verification |
| Configuration | Every key in config/config.lua, effect tuning, translation, worked examples |
| Developer API | The single export, its five functions, every event, integration gotchas |
| UI Reference | NUI payloads, restyling the plaque, rebuilding with Vite |
| Troubleshooting | Symptom to cause to fix, performance, known limitations |
Support
- 💬 Discord: https://discord.gg/w4Ew4k3Exn
- 🛒 Store: https://redmorrow.com/products/redm-fireworks
Version 2.0.0.