Configuration file syntax

TODO: improve the text below!

The new system uses a block-based format. Each entry, or block, in the new format has a specific format. The format works like:

  {  ; };

 is the type of block, such as me, or admin.  sometimes specifies a value, such as /oper login, but other times it will be a sub-type such as in ban user.

 is an individual variable specific to the block, and  is the Associated value. If  contains spaces, or characters that represents a comment it must be contained in double quotes. If you want to use a quote character inside a quoted string use \" and it will be understood as a quote character.

A  can have directives within it, if that’s the case it will have it's own set of curly braces surrounding it. Some blocks do not have directives and are specified just by , such as include. Also note that there is no set format, meaning the whole block can appear on one line or over multiple lines. The format above is what is normally used (and what will be used in this file) because it is easy to read.

Note: the configuration file is currently case sensitive so BLOCK-NAME is not the same as block-name.

There is a special notation used to talk about entries in the config file. For example, to talk about  in the example above, you'd say ::, and if that directive has a sub block you want to reverence, you would add another :: and the name of the sub directive. To talk about an unnamed directive you would do :: which would in this case mean , or it could be an entry in a sub block that has no name.

Three types of comments are supported: // One line comment /* Multi line comment */
 * 1) One line comment

Now that you know how it works, copy doc/example.conf to your UnrealIRCd directory (eg: /home/user/Unreal3.2) and rename it to unrealircd.conf (OR create your unrealircd.conf from scratch). It's recommended to walk step by step through all block types and settings in your conf and use this manual as a reference.