Back when the Entity Framework first started coming together as a product—well before any sane person outside the product team would actually try to use it to build an end-to-end solution—we had an application building contest within the team which we called ADO.NET Idol. The idea was to get a number of people to explore what it’s like to use the product in the way we intend for our customers to use it.
I’m always up for a challenge, and a couple friends of mine from elsewhere in Microsoft had been bugging me for a while to write a game together. So I dropped them an email and that was the beginning of a project we unimaginatively named DPMud. DP, of course, was for Data Programmability, and Mud was because the game we decided to build was a multi-user dungeon (see this page on wikipedia for some background on MUDs). One of my friends, Josh, was working on AI in the FlightSim/TrainSim team, and he was excited to help out not only with general coding, but especially with adding some AI. My other buddy, Jay, is a pretty serious gamer and a really creative guy, so I knew that he would be a great resource for story-line and content for the game. Jay got the process off to a good start by whipping up some concept art that has been part of DPMud ever since:
I believe the phrase “zombie chicks with shotguns” went with the diagram. Thus, in early April 2006, began a project which has off and on occupied a lot of my spare time ever since. The first version which had all of the basic elements working was completed on May 24, 2006. We continued to improve and expand the game for some time after that, and meanwhile the Entity Framework was expanded and revised to the point that a year after we started the effort, in April 2007, we began version 2, “DPMud Rarloaded” which was a pretty major rewrite to take advantage of new EF features.
Now, after a hiatus of quite some time, the major features of the second release of the EF are coming together, which creates the opportunity for some significant architectural improvements. So I’ve decided it’s time for version 3 which we’re going to call DPMud3: The Zombies Search for Spock.
So why am I telling you about all this? This time my plan is to share the project with all of you. In fact, I intend to build the app from scratch and journal the process as I go in the hope that some of you may find the journey educational. I’m sure that I will learn a lot, and I trust that if you spot something I could do better, you will let me know.
I guess that’s all for tonight. Next time I’ll share some more details about project goals and architecture ideas, but before I can actually start sharing source code, I’ve got to engage in one of those tasks that tend to show up in the early stages of a great many projects: working out some details with legal.