Hexal

Hexal

5M Downloads

Entity References Aren't Invalidated when stored in a Cyclic Wisp

Aurailus opened this issue ยท 1 comments

commented

When working on an optimal slipway wisp consumer, I discovered that when an entity that is referenced in a cyclic wisp's stack despawns (via death, consume wisp, etc), the reference will not get set to NULL as it would with a player's stack.

I was able to replicate this with Wandering Wisps, and a Zombie. Killing / consuming them will not set the reference to null, and they can continue to be used by the Wisp as though they exist. This is especially harmful for Wandering wisps, as they can be consumed as many times as you want to continually gain their media.

Attached is a video of this infinite consumption behaviour, which only stops when the cyclic wisp's media value overflows to a negative number (I think), and a screenshot of a list of wandering wisps that was being outputted by a cyclic wisp, where most of the wisps listed despawned some time ago.

Image / Video

This is on Fabric 1.19.2, Hex Casting 0.11.0-pre-495, Hexal 0.2.1

commented

Should be fixed for 1.18 and 1.19 now