I'll most likely kill you in the morning.

Moe progress has been slowed to pitiful rates by interviews and by the fact that I've run out of designed things to implement. It's good that I don't just implement things without designing them anymore, but bad that it rather stops development. As for interviews, there was nothing promising. Just more recruiters who couldn't care less and ill-fitting, low paying, bureaucracy riddled, career anchors.

Anyways, I've gotten Moe back to the Lobby stage adding proper connect functionality and server spawning. I've also added a configuration class which should allow for more flexibility down the road. The ChatBox and Console were also moved into their own classes to hide away initialization stuff, allow for changes to be done there rather than in client code, and so they're better contained/labeled for RenderTree manipulation. Logging is there and more reliable/consistant.

Next comes some of the pre-game messaging setup and the game start transition.

One usage pattern I've found is very nice in C# is the use of non-public EventHandlers:

publicclass EventGenerator{publicevent delegateType Event;}

publicclass EventConsumer{protected ... EventHandler(...){ ... }//// Then in a property assignment or constructor,// the EventHandler is attached to a particular EventGenerator.//}

This seems to be a good way to get friend-like limited public use for methods. The EventHandler can then be triggered by the generator, but not by random objects/users.