Spell: Movement boost from distance distortion sometimes does not cancel

Issue #91 resolved
Frumple created an issue

As per title. Haven't been able to find an entirely consistent pattern, but occasionally the movement boost from being inside a friendly distance distortion field will not cancel appropriately, leaving the character with doubled move speed.

With the attached character, the issue inconsistently replicates if you dismiss the allied summons (t->target creature->o->return to home plane) and allow the field to drop while the player is inside, instead of walking out of the field. The 180% movespeed will maintain, instead of returning to 90%.

Comments (3)

  1. RMTEW FULL NAME repo owner

    Fields created that are not mobile, do not get cancelled by the removal of the creator. This appears to be by design, as the code checks everywhere that fields created by a removed creature have to be mobile, to be removed.

  2. RMTEW FULL NAME repo owner

    This problem is caused by the fact that these non-mobile fields are explicitly left in place when the owner is destroyed, and removed in a post-owner-destruction step. But when they are removed, in Creature::StatiOff()/case FI_MODIFIER, it skips the official removal if the owner no longer exists.

    This is a mystery wrapped in an enigma wrapped in an old tissue that also contains a sloppy dog turd. Why is field removal done this way on purpose? Will doing it the way that works introduce new unmentioned problems? No idea!

  3. Log in to comment