LCA-EET / Lichdom

Repository for the Lichdom Mod
Creative Commons Attribution Share Alike 4.0 International
2 stars 1 forks source link

[Possible rare bug] Infinite spawning of "paralyzing touch" #21

Closed rubyFeedback closed 2 weeks ago

rubyFeedback commented 2 weeks ago

I think I may have found a rare bug; which is triggered probably only rarely.

Anyway. Viconia is a lich now. I also finished the Underdark and now the mod addon Ellistrae's song - from Lava, I think.

I get a special ability that increases the party AC and increases their hitpoints as well, due to that mod from Lava.

So, when I first used this ability just now, at the area where these drow are, the game actually crashed. Or rather, hit that spinning perma-loop that is basically a crash (need to restart it, in order to continue to play).

I then moved to the Southern District, and tried to use that ability again. Now something interesting happened: Viconia entered some kind of infinite loop that, about every 2 seconds or so, was spawning "Paralyzing touch". Interestingly this became an object and dropped to the ground, probably because Viconia's inventory was overflowing. So I suddenly had some reddish objects on the ground, that looked like meat, and when I hovered over it, it wrote "paralyzing touch". And Viconia would not stop spawning this object. I guess this would be an infinite object creation if given enough time (and if we could reach infinity that way ...)

Now - this may not be a bug at fault of the Lichdom mod, since I think Lava wrote the mod in regards to Ellistrae's features. But, the infinite loop situation here is still strange - first, I don't know why it is invoked via a loop to begin with; but I also don'T think such a loop should occur. So perhaps there may be two unrelated bugs or so.

Either way - and I don't know the code - I think a simple fix, or semi-fix, may be to add some query in regards to the "paralyzing touch" object, if that object is not a bug.

A conditional check perhaps like: "if paralyzing touch is already in the inventory, do not continue to spawn more of them". In other words an "if it already exists" check.

This is the first time I noticed that loop, by the way. It may be that another mod triggers this actually (I have had all sorts of weird results; I am presently installing about 60 different mods, and some cause issues every once in a while, so it is not entirely clear which mod is responsible for something).

PS: Also, unrelated to this, for convenience it may be nice to be able to exit talking with Morris at all times. Right now I only seem to exit the talk via a few dialogue options, so adding a new dialogue option such as "I must be on my way." or something like this may be more convenient.

LCA-EET commented 2 weeks ago

Thanks, I agree that the Morris dialog needs a simpler way to exit.

As for Paralyzing Touch, it may be the case that Viconia is already holding a weapon that she cannot unequip. If so, the code that spawns the Paralyzing Touch weapon would continue to run every cycle, as it only stops once it detects that the Paralyzing Touch item is equipped.

Now that I think of it, this bug might also trigger when Viconia's inventory is full, and the Paralyzing Touch ability is triggered. When you have a chance, please send me your save game and I'll investigate further. Also, if you can provide the BALDUR.BCS and BALDUR25.BCS files from your playthrough, I'd appreciate it. If I need to, I can change the Paralyzing Touch ability so that, rather than spawning a weapon, it would be a melee ability that would target an enemy.

If you need any assistance in obtaining those files, let me know, thanks.

LCA-EET commented 2 weeks ago

I changed Paralyzing Touch from a weapon to a targetable ability (similar to Harm). I also updated the Morris dialog to provide more opportunities to exit. Thanks again for reporting the issues.