Firework Rocket

Firework rockets, or simply fireworks, are items (and entities) used to create decorative explosions, propel the elytra, and serve as ammunition for crossbows.

Obtaining
In Java Edition, fireworks can only be obtained by crafting and commands, but as of 1.13, it can also be obtained by the creative inventory.

Creative inventory
Five pre-made firework rockets are listed in the Creative inventory.

They are equivalent to the following rockets:

Launching fireworks
To launch a firework rocket, its item on a block. They can also be launched from dispensers or Crossbows.

Elytra
When the player holds a firework rocket in their hand and are gliding with the elytra, the firework rocket will boost the flying speed. If the rocket is equipped with a firework star of any kind, the player will be hurt; the amount depending on the duration of the rocket. The duration or strength of the speed boost depends on the flight duration of the firework rocket.

Crossbow
A firework rocket can be used as ammunition for crossbows. However, if the firework rocket has no explosion effect, it deals no damage. A higher flight duration will give the firework rocket a longer range. When firework rockets shot from a crossbow hit an entity it instantly explodes, no matter the flight duration. More damage will be added per firework star.

Behavior
Once launched, fireworks will fly out vertically, with random horizontal offset up to 5 blocks. In the Bedrock Edition, fireworks can fly in any direction. After some time, the firework will explode into a colorful explosion based on the effects of the firework stars added upon crafting, or no explosion if no firework star was used. If multiple firework stars were added to the rocket upon crafting, they will all explode simultaneously.

The explosion of firework rockets deals 2.5 hearts of damage, per firework star. There is also a delay between detonation and the player hearing the sound, emulating real fireworks, but this sound travels much more slowly than in the real world. The explosion of a firework can be seen 64 blocks away, regardless of its height.

Care should be taken during firework assembly so as not to exceed the (unmodded) particle limit of 16,384 with fireworks. If the limit is exceeded, the oldest particles are removed before displaying new ones, resulting in severely diminished firework quality / duration. At most a firework should have 3 trail stars, more than that could waste diamonds, firework stars, and other fireworks. Particle counts per star are:

Twinkle effect adds 2 particles to the count.

Like most other entities, they can be moved by water and explosions, and teleported via portals. They also cannot move through solid surfaced blocks, upon hitting one they will either move to a side or explode based on the duration. If a firework explodes under a block, its explosion will be flattened.

Duration and direction
Fireworks travel different heights based on the amount of gunpowder added. The number will be displayed as a tag on the item's tooltip with the description of "Flight Duration".

The height it rises is between 12 to 22 blocks with 1 gunpowder, 23 to 39 blocks with 2 gunpowder, and 40 to 60 blocks with 3 gunpowder. (Note: Using command blocks, firework rockets with higher durations will go much higher and keep accelerating with virtually no terminal velocity. If the duration is long enough, the firework rocket could reach heights of over 1000000 blocks and speeds of over 10000 m/s in a matter of minutes. Such fireworks with significant X and Z motions will speed up sideways exponentially and reach outside the world boundary in a matter of seconds.)

When spawned fireworks have a vertical speed of .05 and a random small X and Z speed (random value near zero with a standard deviation of .001). Each firework also determines its lifetime in ticks by 10 &times; (number of gunpowder + 1) + random value from 0 to 5 + random value from 0 to 6, after which it will explode. Each tick, the firework will accelerate horizontally by multiplying its X and Z velocities by 1.15, and vertically by adding a constant factor of .04.

Fireworks can be made to travel different directions by being dispensed or launched under flowing water. The firework's direction then rapidly arcs to the horizontal and the travel distance increases to a point further than the height.

Item data

 * : The item's tag tag.

Trivia

 * Launching a rocket by hand on a wooden pressure plate will activate it. The same doesn't hold for stone pressure plates, or for a dispenser placing a rocket onto a wooden pressure plate.
 * 2012 New Years is what inspired Jeb to add fireworks.
 * If the player shoots a firework into a Nether portal, it will explode in the Nether.