Some time ago I made a Behavior tree implementation for this game. While the implementation seems to work, the NPCs sometimes behave very silly, so I thought it would clarify their behavior when I could look into their “head”. Classical debugging a game or game server is always a pain. When everything is executed 60 or 20 times per second it's hard to step through and inspect variables. This is even more difficult with a game server which may disconnect the client when you don't inspect the variables fast enough, because of some timeout.
IPC
I solved this …