FieryMUD

Background

FieryMUD is one of the oldest DikuMUD derivative MUDs that still runs today. I originally played around 1996-1997, and intermittently until the "Great Crash" in which most of the servers contents (including the code) were lost. In 2002, I found out that the game had been reborn, and began playing again.

After graduating from the University of Illinois in May, I began inquiring about a coding position. After proving myself, through some coding-unrelated tasks, I was finally given the chance to see their code, and begin submitting patches. Within several months, the "Head Coder" decided to move into the "Head Builder" role, since our previous Head Builder hadn't been able to devote time in a number of months, and named me his successor.

The project

Some of my contributions to the current game (smallest first) :

After about a year, I was let in on the fact that they were working on a new top-secret codebase, and asked to join on that effort. The general gist of it was that people were impressed with the progress I had made on cleaning up the codebase, but we all realized I could potentially work for years just to get things stable. As such, we started Fiery V3.

Our main focus was on stability and balance; the two factors which we believed had slowly caused us to lose players over time. I spent some time working on the old code, just to keep up the appearance of things being normal, but spent most of my time on the new code, which had not at that time been announced to the players. Some of the highlights included:

What's a Head Coder?

The Head Coder acted effectively as a development lead, including such tasks as maintaining the "starter kit" for new coders, training new coders on how the system worked, and making overall architectural decisions about the code. In general, the role also entailed making game design decisions with the two other peers - a Head Builder (responsible for the actual content of the game) and the Overlord, who effectively had been passed down the responsibility of maintaining the game in general.