safe-room: handle stunned when using pc empath
* Morrgann joins the adventure.
!SP>
[safe-room: ***STATUS*** Bleeding: true, poison: false]
[safe-room]>find Empath
Brave Adventurer in the Realms:
Empath.
[safe-room]>whisper Empath heal
You are still stunned.
[safe-room]>listen to Empath
You are still stunned.
!SP>
The 'You are still stunned' messaging isn't being handled properly. It should what until not stunned then retry.
This came up in conversation recently and the problem with resolving this is that the stunned check is often used in combat so we can't make it slower. Closing as won't fix. Nobody is stunned for that long, and they can't do anything whilst stunned anyway. A little spam won't hurt anyone. 😀
I don't think the idea here was to change stun checking in any common way. My understanding is that the ask was to change safe-room to detect stun and wait, e.g. here: https://github.com/rpherbig/dr-scripts/blob/master/safe-room.lic#L270
Even if my understanding is correct, I have no opinion on whether or not this is worth changing.
We were testing stuns last night. Lich.rbw has a check for stuns, stunned?, and it works most of the time. Some stuns don't register though, which is a bug on Simu's end. We can use this relatively reliably to deal with stuns, and request that if anyone finds any other stuns that it doesn't work that they bug it with Simu.
As Binu says, we're actually looking into this in a general way. Reopening for now.
From last year... I've learned a lot. As Binu says, stuns don't always register, and lich can't detect whether you're stunned or not, unless... the XML stream sends the flag. This is really spotty for DR (and very reliable for GS.)
To address this for DR, the change would have to be in the lich stunned? predicate and not in safe-room as such. (although we could add that match to every action in safe-room, and make every bput a case bput, with a check for stunned messaging, but since this issue is 4 years old now... I'm closing it as stale.