A GM's 'Code of Conduct'

Here is a list of things you should consider before running a game:

Backups

The GM should keep backups of the game, preferably on a separate machine or hard drive. Offsite backups are even better. Oh yeah, and they should be automated if at all possible. If you don't know how to make backups, or even what backups are, you shouldn't be running a game. Back up *everything* - source code, executables, log files and your scripts, as well as the game files, turn reports, etc. If you do have a mishap, you don't want to have to remember your changes and then recompile all of your code.

Automation

While it is possible to run an Atlantis game manually, it is far better to use an automated script to respond to order submissions, and running turns in general. Humans are fallible - you *will* send the wrong orders out at 1AM. Computers won't, unless you mistakenly tell them to.

Email

Every effort should be made to make the game as accessible as possible, but the GM is *not* responsible for the vagaries of email. Not even slightly. If you're trying to get your turn in 5 minutes before the deadline, and its mysteriously delayed, I am not going to rerun the turn.

Impartiality

The GM should make an effort to appear impartial, particularly when handling disuptes between players. Playing in your own game, while possible to do fairly, is generally frowned upon, and it makes it much harder to punish people who are rude to you or your friends.

Communication

Generally it's a good idea to keep players in the loop. Group mailing lists such as yahoogroups (and others) are ideal for this. You can just maintain a list of email addresses for people who are playing, but this requires effort on your part, which is always to be avoided. You should always inform your players if:

It's generally considered good manners to inform the other players when someone is banned, so that they can avoid a similar fate. Plus it helps to keep them on their toes...

Finding bugs and bug reports

Bugs are generally difficult to avoid, and crop up even in well tested code. There's always some player who wants to do things differently, and when they do, they'll usually tickle some bug or other. When they give you a bug report, make sure that you verify that the bug exists as they have reported it - don't just take their word for it!

Fixing bugs

Once you know that it's definitely a bug, take steps to fix it. In a test game it's normally straightforward, but in a running game you should make the *minimum* change necessary to fix the problem. Don't be tempted to 'fix' anything else - you'll introduce more problems. Also don't be tempted to rush in a quick fix to get the game going again. You're just as likely to create two more bugs if you do that.

Test your bug fixes

Above all, once you think that you've fixed the bug, test your fix thoroughly to make sure that it all works. This normally means rerunning the turn locally and verifying it before you set the turns going, as well as checking the other turns too. Don't just check the fix itself, either - check that you haven't broken something else in the process of fixing the first bug. Nothing annoys players more than having to rerun the turn three times because you didn't test stuff - or worse, you fixed the bug but broke something else, or fixed the wrong bug. A final point - any bug fix that affects game play should be reported to the players, so that they don't get caught out.

Rerunning turns

A rerun takes a lot of effort, inconveniences players and uses up valuable network bandwidth. It should only be done as a last resort when all other options, such as replacing units or skills, or compensation paid into a player's unclaimed silver, have been exhausted. A player messing up their orders, or not getting their turn in on time, or misreading the rules is not grounds for a rerun. All of the players should be informed as soon as humanly possible of the rerun, the reason for the rerun, and if necessary, the revised deadline for turn submissions (a really good idea). When the turn is actually rerun, the subject line of everything that you send out should clearly state that it is a rerun, so that players don't get confused.