General Compiler Information

In order to get your zone onto a Valhalla Mud Engine (VME) server you must convert your zone from readable English text to binary form the server can understand. The way you do this is with a compiler. No, don't freak out! You don't have to be a skilled programmer to use a compiler. The only thing you have to do is format your rooms, objects, and non-player characters (NPC) in a form which the compiler can understand. The great thing about the VME is you can do all your zone writing in your favorite editor with out having to log on to code. For those of you who have coded for other mud servers and are used to coding online, this may be a new experience for you but you will find you can plan out better designed areas offline than you can online.

Note

In the future the VME coding team is thinking of adding an online coding module for those mud administrators that prefer one. If you are one of these individuals, make sure you write and express your desires so you can be counted.

This chapter will mainly cover the Valhalla Mud Compiler (VMC), how it works, and the Valhalla Mud Pre Processor (VMC -p) works. We will also throw in some debugging hints but debugging will be covered more as you begin creating parts of your areas in the following chapters.

The compiler

VMC is the Valhalla Mud Engine Compiler for VME servers. A compiler takes a source file or better described as your areas input file and converts it to a binary file the server can then load and use online. In the VME we call areas you build 'zones', therefore the source file for a zone has the extension 'zon'. In order to make this more clear we will start with our first example.

Let's say you were making a zone of dragons. You may want to call the file something resembling its contents like, dragon.zon. Notice we have appended the '.zon' extension. The compiler requires all zones to end in '.zon' in order for it to know this is a zone source file.

Now let's say we have completed writing our first zone and want to compile it. The command is simply: VMC> dragon.zon If the zone compiles correctly it will indicate success by printing a message to the screen and outputting two files both with the same root name as the original zone source file but with different extensions. In this case, there would be the following:

dragon.data

The file holding the binary version of the zone

dragon.reset

The file containing the reset information for the zone.

If the zone doesn't compile correctly and you have errors, it prints a list of the errors and where they can be found so you can fix them. The debugging process will be explained more as you learn how to create rooms, monsters, and objects.