Skip to content

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 Core

VORP 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

StageRoughlyCancellable
Plant animation and three crate hauls13.9 sNo
Scripted 180° turn2 sNo
Fuse walk, plaque on screen with a live distance readoutuntil you actYes
Wiring animation8.8 sNo
Detonator entry1.8 sNo
Detonator promptuntil you actYes, on the item path
Plunger pressed → first burst2.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_1firework_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.

EditionPriceCode access
Open Source$50The full codebase
RedM Escrow$20CFX 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

GameRedM — game 'rdr3', fx_version 'cerulean', lua54 'yes'
FrameworkVORP (vorp_core + vorp_inventory) or RSG (rsg-core)
Library dependenciesNone. No ox_lib, no notify/menu/input library, no target system
DatabaseVORP only, and only four rows in the items table
OptionalJD_logsV3 for Discord logging
Build toolingNone 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:

lua
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

PageWhat's in it
InstallationVORP and RSG install, items, icons, load order, verification
ConfigurationEvery key in config/config.lua, effect tuning, translation, worked examples
Developer APIThe single export, its five functions, every event, integration gotchas
UI ReferenceNUI payloads, restyling the plaque, rebuilding with Vite
TroubleshootingSymptom to cause to fix, performance, known limitations

Support

Version 2.0.0.

Documentation for RedMorrow. Scripts are licensed per server — redistribution is not permitted.