So I was playing my game and used a Pulverizing Bludgeon against one of the War Monkeys. His Acrobatic Flip triggered, and therein lies the bug. The Pulverizing Bludgeon if blocked, still causes 6 points of damage. The Acrobatic Flip blocks and then moves the attacker. Since said War Monkey only had 4 points of health left, he was killed, and thus the game couldn't initiate the movement of my character. So as seen in the screenshot, the game just stopped with the Acrobatic Flip card attached to my character and no further progress.
I understand that, that is not the bug I am discussing. I'll just remove the last sentence so it isn't confusing.
To guard against such rare bugs on a general level the game logic could have a subsystem like this: When non-player-initiated events are running (like Acrobatic Flip, any stuff that the game runs internally, no player input required during the event), at event start raise a flag "Event Running" and start an event timer (when the event is complete, reset the flag and stop the timer). These would allow running a bug guard daemon which would check every few seconds whether the flag is set and whether the timer has reached a defined maximum value. If it has, forcibly resolve whatever event is running as it certainly has run into a bug (also, log the error for the developers to look into). This would solve all such obscure bugs. I realize the guard system is nontrivial and would cause bugs of its own for a while but maybe the effort would still be worth it. Worth a think? All such game events might need their own forced resolve method to make the system work. With them implemented the daemon could always just call the ForcedResolve method of the event without needing any more knowledge about the event. Probably you've already considered such a system, being extremely experienced developers. Just some idle musings from me.
The weirdness of Disorienting Block (a block that also acts like Dodge, plus allows moving the attacker) is bound to require some extra coding. I wouldn't expect it to play well with things like Pulverizing or Staggering attacks without significant oversight.
I tried to repro this and couldn't get the problem to happen. I killed the blocker, after which the attacker got moved and the game proceeded normally. If you see it again, I'd love to know.
Was yours the last monkey of his group? I wonder if that was also part of the problem. I honestly don't remember if mine was the last or not though. Edit: looked at my picture and saw he was not last in group.
Maybe you just happened to have an Internet disconnection at the moment the server was moving your character. Did you need to reconnect to the server to proceed after you noticed the problem? Did you try writing anything in the chat and see it appear there at the time?
Nope. I was on a hardline at my school. No chance of disconnection. The game was still working except the script got stuck there and held up the game. The chat was running, and I could still change options in the menu. As long as Jon can't repro, then chances are it was a 1/1000 type of thing, so not too many people would run up against it. It could suck more if you were in PVP, since there are block cards with similar affects.
I have seen many reports of this though (none detailed but all along the same lines)... Well we will keep an eye out for it!