Well AS is dead, it official died a few days ago and will likely never be revived. However Archverse is trying really hard to be born. For those interested in the Architecture I finally settled on a C++ Core with a PHP front end. The C++ Core just sits around updating the game while the PHP uses XML-RPC to ask for Data and Update things. Its a fairly efficient system and I should be able to make the C++ pretty crash resistant since its only got the one client to worry about. A nice added benefit is that I don't have to worry about security or validating things in C++ because such hassles are handled by the front end and not the back.
Well I Need to do work on Archspace again, the game seems to be loosing entirely to many players recently to the point that we almost only have hard core vets left. Something like 80-90 players, I'm not really sure. But suffice it to say that this game that has at its peak have somewhere in the 10k range really needs reviving. Not sure what I can really do code wise to bring it back to life most of the damage to the game seems to be from the player base themselves. Vets constantly pick on new players but such is the life in web strategy games. Maybe Archspace will die, but I hope we can at least get Archspace 2 up and going before then. Maybe we need to find a different name when we come out with the next one so we don't get any bad publicity. Well I need to go to sleep so I can wake up early in the morning.
Ive yet again picked up working on Archspace 2, this must be the 100th time. Each time I come back to it though I look at the design and tweak it a little, eventually I might actually get the one I want. Hopefully when I do its crazy awesome good. Just a little overview for those of you who care, Ive taken a loosely coupled approach to design. Pretty much everything is an entity and entity's can contain other entity's, of course. That was design round one, in round two I realized that I would have to do a little more then just basic updates of entity's in their own self contained worlds but it would be horribly hard to do so looking through the entity's children for all the info. So I decided to keep the children and add some members that were really just pointers to the children but with type info associated. At this point I have the architecture to update anything in the game using implementations of a visitor and in that update I can actualy do something with the info contained.
Lately I've been working on the next version of Archspace. While I knew about a lot of the great things in boost I had never really used them in practice. Well I've found my new digital best friend, Boost Lambda Library. Its just so damn cool though I should say that it wouldn't be nearly as cool without Boost Bind along with it.