Yesterday marked the end of my first month of code crafting after leaving Microsoft at the end of last September. Come to think of it, its really my first full month of code crafting since I switched from the VS SDK team at then of July 2006. The last leg of my tenure at MS was with the VS Core team, and my work there consisted mostly of looking at code (12 million of lines of it were owned by about 20 developers), talking to people, wrestling with fragile processes, and making small changes to that existing code (bug fixing). About this time last year, in my spare time, I did start doing some work with Python to towards creating a dynamic website of my own design. I haven’t picked that up again yet as I’ll need to get either a business internet connection at home so I can run a server or I’ll need to get a machine in a data center, and either of those options carries a monthly fee, so I want to put it off until until I’ve gotten far enough down my game development road map that the cost will be worthwhile.
At this point I’ve got the viewer playing back what the simulator generates. Everything the simulator displays is based on data that actually has some bearing on game play and it doesn’t use any static artwork. Generating static artwork (i.e. bitmaps, 3D models, animated 3D models, sounds, spoken dialog, etc.) requires a lot of artist man hours and since I’m not trained as an artist I would either need to invest a lot of time and money in learning these skills, find it free online, or pay for it. There actually is an open content movement that is a kind to the open source movement so there is a fair amount of artwork available online, but then the game play would be limited by what art was available for free. I really want to focus on doing something new in terms of game play, so I’d prefer to have the game play limited by what I can code rather then what I can find for free. That way I’ll never run out of new technical challenges.
Both the viewer and the simulator still need a lot of work, but at this point they are done enough that I can move onto the designer component of this distributed application. Once the basics of the designer are crafted then the full local user scenario will be in place. I say local user scenario as there will also be some remote user scenarios to come as well. The local user scenario is start up the designer, design your combatant, press a button to run your combatant through a bunch of combat simulations and be shown the overall results, select specific simulations to view the play back of, and repeat until you’ve got your combatant wiping the floor with all of the opponents. Once your done with that local user scenario you move onto the first remote user scenario, which is press a button to upload your combatant to the official simulator, eventually get back the official results, and select specific simulation to view the play back of. Another remote user scenario will be viewing the rankings for various categories for all of the users and their combatants. Winning means getting high rank and a fancy title. Other remote user scenarios may be built-in chat, a built-in discussion forum, built-in messaging, etc. These things can also be done via a web server as well, so in the future I’ll need to decide how if I want build these into the app, do them via a web server, or both.
My parents a flying in tomorrow, Leah’s parents and brothers are flying in a few days after my folks leave, and our friends Pete and Candice are flying at the beginning of next month. So I won’t be as active on game development for the next month and a week as I have been for the last month.