Starting a MOO: or Before You Milk the Cow

Server Specifications

The server is the computer the MOO is run on. No computer, no MOO. The server has to run some kind of Unix operating system. Any one of the usual Unix flavored servers, sun, sgi, and their ilk, will do. You can also run the MOO on a PC or a Mac; however, you will  have to install Unix first. Linux, or Free-BSD, are usually the flavor of choice because they are shareware. It may be better to install Unix even though there is cost involved. Just remember that the requirements for the PC are the same as for any other server; whatever the platform, the server must have enough RAM and CPU frequency to serve the MOO without too much lag.

While it is preferable to run the MOO on a computer by itself so that it will not have to compete with other applications for memory, you do not need an entire server dedicated solely to the MOO. MOOs have been run successfully on servers with other applications such as news groups and web servers. The important thing is that the server have enough RAM, which will help to prevent server lag, the bane of a MOO existence.

If you do not have the resources to purchase your own server, you might be able to share space on someone else's server, or lacking that, rent space on a server. Regardless of how you acquire a server, you will want to keep in mind the basic requirements for your choice of server. These requirements depend on the size of your MOO and how big you think it's going to be, the computer type, and the operating system. You should look for how much space, RAM, you can use on the server, how much processor power and how much hard drive you can have, all of which determine how big the MOO can get and if it will be lagged or not. An example for a fictitious MOO follows, illustrating how you might estimate server requirements based on what you want the MOO to do. These estimates can vary, depending on different computer types and the set-up of the MOOserver.

Server example

The computer for a MOO with a database of approximately 15M(egabytes):


You will need at least 32M of RAM to run the MOO. But you should have more to compensate for the checkpoints as well. When checkpointing, the MOO will need twice the amount of RAM it usually uses. You can do this by either not forking the MOO at checkpoints, or by having virtual memory, using swapping, or by having enough RAM.

Hard Drive

The MOO contains two copies of the complete database and also keeps a log file of the MOO program itself as it runs. Therefore, the minimum space required for a 15M MOO is 50M. The amount of hard disk space is dependent on how many backups you want to keep for security reasons. You will also want to have some backups of the database from earlier days for safety. We will look more into backups in the section on running the MOO. So, although you might be able to squeak by with 50M, you really should have closer to 100M of hard disk to ensure the security of the database.

Operating System

The computer has to run some kind of the unix operating system and be equipped with the usual net communications packages. It also has to be connected to the internet for all the world to reach it, or just a local net if its use is to be restricted heavily. More on restrictions in a later section.

You don't need a computer as big as this to start a MOO. I think the minimum requirements would be 8M of RAM, and about 20M hard disk. But this would limit your MOO to very few players and objects.

Back to the implementation index.