As I stray away from using the default system with my systems that I'm preparing for the Classic server, I've encountered quite a few complications with the default pausing system, and the system that determines whether players block or don't block.
I see a lot of potential in straying away from that system and implementing a scripted one, but the amount of structuring that would go into it might scare anyone.
You can't detect whether a player should or shouldn't be blocking on the clientside without using onwall/onwall2, though it seems you should. However, my movement system doesn't use these commands. In fact, I'm waiting on the next release of v4 to complete the handling of NPCs not blocking.
The ideas for a new pausing system flow out of my mind like a great river of disarray. I've been trying to design a structure for this using diagrams.
So far I've figured: (serverside)
serverr.noblocking: players not blocking
serverr.nohurting: players that can't be hurt
The catch is that the noblocking list needs to be accessable to any client where the player might run into a player in the serverr.noblocking list. What my biggest fear is: the server vars being overloaded with a list of noblocking or paused players.
Yea, I've decided to rescript nicks in this system too. The problem is that it doesn't pick up paused as part of the nickname. I also am going to add different forms of pausing.
serverr.paused: players that are paused
serverr.spectate: players that are spectating
Having two different server vars for something as simple as drawing (paused) or (spectating) at the end of a nick display? This is starting to sound a little bit outrageous to even myself

. I think I need to find a different approach for making paused/spectating players decipherable.