Explosions from TNTs and wind charges do not affect wind charges.
Steps to Reproduce:
Summon a wind charge near the ground or any surface.
Throw a wind charge at the summoned wind charge.
Place and ignite TNT near the summoned wind charge.
Observed Results:
The summoned wind charge is not affected by either explosions.
Expected Results:
The explosions should propel the wind charges.
Screenshots/Videos:
Attached videos of the interaction with wind charges on other wind charges in 1.21.3 and 1.21.4
In 0:07 of the 1.21.4-wind-charge video, I punched the wind charge and it hit the ground that's why it disappeared/exploded
Notes:
In 1.21.3, ServerExplosion#hurtEntities
directly calls Entity#setDeltaMovement(Vec3)
to move entities.
In 1.21.4, the wrapper method Entity#push(Vec3)
is used instead. It calls Entity#push(double, double, double)
and that then calls Entity#setDeltaMovement(Vec3)
.
The issue is that AbstractWindCharge
is overriding Entity#push(double, double, double)
but has an empty body, so Entity#setDeltaMovement(Vec3)
is never called and the wind charges are not moved.
Unless there is a specific reason for AbstractWindCharge#push(double, double, double)
to have an empty body, removing it fixes the issue.
Linked issues
is duplicated by 1
Attachments
Comments 13
Regular explosions from tnts cant accelerate wind charge entities too, which makes wind charge cannons (the ones that shoot the charges) impossible
Yet in the 1.21.3 the regular explosions could accelerate wind charge items
(thats a follow up to my previous comment)
Note that wind charge explosions not affecting other wind charges is useful and should not be changed, because it allows for cannons that use stacked wind charges as propellant, which would be broken if wind charges started pushing eachother, because the first wind charge to explode would change momentum and therefore explosion location of the following ones, causing unpredictable behaviour. This wouldn’t be an issue if wind charges were only affected by non wind charge explosions.
Affects 1.21.5
Unless there is a specific reason for AbstractWindCharge#push(double, double, double)
to have an empty body, removing it fixes the issue.
This issue still persists as of 1.21.7-rc1. Is there a way to elevate the priority of this bug? This bug is preventing me from releasing a major build that has taken 4+ years overall to make.
I feel like this should not be fixed, in my experimentation with wind charges there are a lot of specific dynamics about how wind charges work that makes the explosion effect between wind charges cause very undesirable behaviours such as wind charges clipping through blocks and the explosion point for large wind charge batches “drifting” through collision faces. With the behaviour outlined in the report wind charges are unique in contrast with TnT as they can be made to explode at precise locations without those explosions affecting other wind charges.
Can confirm.