If you're wondering what para.note executes, it's a simple echo, really:
Now, if I read through that first if, I read that as long as vitals.health is smaller than oldhealth, the if will always execute as false and not execute, right?
Then how could this happen:
Obviously, by that "Damage check failure" echo, at the point this fired my oldhealth was 1614 and vitals.health was 888. How then could the if be evaluated to "true"? (Which it seems it did.)1614[ ], 3967(99%), 100%, 99% cexkdb 10.8%-(19:57:18.111)
Mioswen swings a gleaming scimitar at you with all her might.
Lightning-quick, Mioswen jabs you with a gleaming scimitar.
888[-726], 3967(99%), 100%, 99% cexkdb 10.8%-(19:57:18.254)
>Damage check failure (Health: 1614 -> 888).
I had no errors in the error view, and this is the only script I have that echoes such a "Damage check failure".
The only way I could see this happening is if either vitals.health or oldhealth changed its value after the if but before the para.note. Is there any way this could happen? (vitals.health is updated via a gmcp event, by the way.)
P.S. This issue only comes up very rarely, at seemingly random moments, making it very hard to reproduce.