Codex: Fireworks
A firework mod for NeoForge 1.21.1. It adds new burst shapes, rockets that pop into formations of up to 8 bursts, drawn patterns and text, launchers and timed shows. Install it on both the server and the client.
Rockets made by this mod are normal vanilla firework rockets with extra data. If the mod is removed they still fly and pop like any other rocket.
Burst shapes
Peony, Chrysanthemum, Willow, Palm, Ring, Double Ring, Heart, Spiral, Crossette, Crackle, Strobe, Comet, Fish and Brocade. Every shape keeps the vanilla options: colors, fade colors, trail and twinkle. Hearts, rings and spirals face the player watching them. Crackle, Comet, Willow and Strobe have their own sounds.
Rocket presets
| Preset | What it does |
|---|---|
| Golden Willow | One big gold willow that fades to dark orange |
| Rainbow Ring | Seven rings stacked bottom to top, one color each |
| Crossette Storm | A peony, then four crossettes around it |
| Heart Cluster | Six small hearts around one big heart |
| Comet Fan | Five comets in a fan |
| Strobe Field | A peony followed by blinking strobes scattered around it |
| Chrysanthemum Bloom | A chrysanthemum with late brocade glitter |
| Triple Break | Peony, ring and crackle, each higher than the last |
| Spiral Tower | Four spirals stacked up |
| Fish School | Six fish bursts in a line |
| Palm Grove | Three gold palms in a row |
| Grand Finale | All 8 slots in one quick rocket |
Presets are datapack files, so servers can change them or add their own. Presets can have a rarity (Common, Rare, Epic) that shows on the item name and tooltip.
Firework Workbench
Crafted from a crafting table, 4 paper and 4 gunpowder. Put in paper, 1-3 gunpowder and up to 8 bursts: firework stars or Pattern Cards.
- Set the size, delay and position of each burst, or place them all at once with a formation: Single, Ring, Line, Cross, Stack, Multi-break or Random cluster.
- Preview pops the rocket in the sky without using anything.
- Name the rocket, then craft it. Pattern Cards are not used up.
- The rocket presets can be made here too, for paper and gunpowder.
Pattern Cards
Craft a blank card from paper and any dye, then use it to draw a 16x16 picture that bursts in the sky.
- Draw, Erase, Fill and Clear tools with the 16 dye colors. Custom hex colors for staff, or for everyone if the server turns it on.
- Options: size, face the viewer or a fixed direction, spin, sparkle and fade color.
- Text mode: up to 12 characters on 2 lines.
- 13 ready-made patterns: Smiley, Star, Ghost, Sword, Crown, Skull, Pumpkin, Snowflake, Christmas Tree, Present, GG, Happy New Year and Welcome.
- Put a drawn card and blank cards in a crafting grid to copy it.
Mystery Rocket
Turns into a random rocket preset when it's launched. The mod adds no loot; give it with a command or put it in your own loot tables or crates.
Launcher
Crafted from a dispenser, 7 iron ingots and 1 gunpowder. Holds 9 stacks of rockets.
- A redstone pulse fires a volley.
- Settings: direction, tilt, random spread, rockets per pulse and interval. Test fires one rocket.
Show Controller
Crafted from a launcher, a clock and 4 redstone.
- Shift-right-click the controller (or press Link in its screen), then shift-right-click launchers to link them. Shift-right-click the controller again to finish.
- Build a timeline of cues: each cue has a time, a launcher (or all of them) and a rocket slot (or the next rocket).
- Shows can loop and start on a redstone pulse. A looping show stops by itself once its launchers are empty.
- Name a show to start it with
/fireworks show start <name>. - Show Cards (paper + redstone) copy a show from one controller to another.
Launchers and controllers belong to the player who placed them. Only that player, the land owner (Elements: Claims, Open Parties and Claims or FTB Chunks, if installed) and staff can change them.
Size
Bursts can be made bigger or smaller without rebuilding the mod:
limits.toml,[display]section, for every rocket on the server:burst_scale(default 1.6) for how far the sparks spread, andspark_scale(default 1.5) for the size of each spark. 1.0 is vanilla size. Players get new values while the server runs."scale"in a rocket preset file makes that one rocket bigger or smaller on top of the[display]values.
Bigger bursts use more particles. Players on slower PCs can lower quality in their own client.toml.
Commands
| Command | Permission | Default |
|---|---|---|
/fireworks give rocket <id> [players] [amount] |
fireworks.give |
OP 2 |
/fireworks give pattern <id> [players] [amount] |
fireworks.give |
OP 2 |
/fireworks give mystery [players] [amount] |
fireworks.give |
OP 2 |
/fireworks show start <name> / stop <name> / list |
fireworks.show.command |
OP 2 |
/fireworks reload |
fireworks.admin |
OP 3 |
| Permission | What it allows | Default |
|---|---|---|
fireworks.design |
Firework Workbench and Pattern Cards | everyone |
fireworks.launcher.use |
Using launchers | everyone |
fireworks.show.edit |
Editing shows and linking launchers | everyone |
fireworks.pattern.hex |
Custom hex colors in patterns | OP 2 |
fireworks.bypass |
Changing anyone's launchers and controllers | OP 2 |
Config
Files are in config/codex_fireworks/.
features.toml: master switch, one switch per shape and per feature, firework damage to playerslimits.toml: burst and spark size, bursts per rocket, pattern size, Mystery Rocket pool, launcher and show limitsmessages.toml: every message, with&colorspatterns/: the server's own patternsclient.toml(each player's own): particle quality, spark limits, sound volume
Full details and the preset file format are on GitHub. https://github.com/Telmarine/Codex-Fireworks/wiki
License
Free to use in any modpack. Credit Telmarine. No resale.

