How to live longer, better, healthier, and improve your sex life, while eating more meat, less vegetables, exercising less (as if that were possible), and watching more TV.

Actually, my goals for this documentation are not so lofty as the title might suggest. Nor am I afraid to admit that I don't quite make the mark on any of those points. However, with any luck, I will be able to get you up to speed on FUSE and FUSERUN in no time.

FUSE can be setup and run within seconds. The first part of this documentation is all that you need to read for your first time around. The information towards the end will help more experienced users.

FUSE

Using FUSE is simple. Much of the server startup is automatically configured.

Unzip the file fuse.zip into its own directory. Then run it. A window will appear which gives you the IP address of the server, the name of the server, and the location of the UO map file. For most users, the IP address in the list box is accurate. However, if applicable, you may select an alternate IP address from the dropdown list box.

The name of the server is up to you. Call it whatever you like. Using the name "Test Server", which is the default, is optional. :)

The server must know the location of the UO map file. For those of you who installed Ultima Online to the C drive, the information in the edit field might be correct. If not, then type in the location of the map file. It should be in the UO root directory, along with client.exe, and is named map0.mul.

Now, you need to start up the client. Select the "Options" menu item from the FUSE window and then select "View Status...". This will open up a small window which contains the IP address and port number that FUSE is currently using. From there, you can simply click the button labeled "Execute Client" ("execute" as in start, not the other kind... for now) and then FUSERUN should start (see info below).

If you would like others to log into your server, they should obtain FUSERUN as well, so that they don't have to manually edit the UO login.cfg file. FUSERUN can be obtained separately from http://fuse.warzone.com/. The only information that they will need is the IP address of your server. This can be obtained from "Options -> View Status..." as in the paragraph above. Once the window opens, the IP address should already be selected. You can "copy" it with a right click and send it to the user (instructions for sending data over the internet are not provided here).

Well, that is enough to run FUSE. When you have mastered the basics, then you may move onto more advanced information, including setting up accounts and customizing the starting character locales.

FUSERUN

FUSERUN is also quite simple to use. When you start it up, it displays a dialog box that asks for the IP address and port number of the server you would like to attach to as well as the location of the Ultima Online client.exe executable. If you installed UO to drive C, the default information might be enough. As for the IP address, that information corresponds to the IP address of the user who is running the server and can be obtained from them.

If you are running your own server, it is best to run FUSERUN from within FUSE. Thay way, the IP Address is automatically passed from FUSE to FUSERUN and you don't have to enter those values into the dialog box. Just be sure that FUSERUN is in the same directory as FUSE. If you installed FUSE, this should already be the case. If you obtained FUSERUN separately, FUSE can be obtained from http://fuse.warzone.com/.

If FUSERUN complains about not being able to run client.exe, then you have probably told it to look in the wrong directory. Run FUSERUN again and browse the directory tree for the UO directory, using the button labeled "...". The program "client.exe" should be in the UO root directory.

When you want to go back to running UO, go into FUSERUN and press the button titled "UO".

To use the new UOFont feature of FUSERUN, you need to let FUSERUN know your current IP address. The IP address is detected automatically. If you have more than one IP address, you'll need to select the one that is visible to the server you want to attach to. The selections are available in the little list box labeled "Local IP". Also, make sure you check the box labeled "UOFont".

FUSERUN modifies the same file whether or not it is using the UOFont feature. However, the way that the file is modified is different depending on whether or not you are using UOFont. For this reason, to avoid confusion, you may want to get into the habit of using FUSERUN to start up the UO client, whether you are playing UO or FUSE, whether you are using UOFont or you are not.

When using the UOFont feature of FUSERUN, the information in the Server Address area is all ignored, just like when you are not using UOFont. FUSERUN knows how to find the IP address of the UO servers. You only need to enter in that information if you are planning on playing at another server which is run by third party software such as FUSE.

UOFont has a few, simple commands. There are four types of UO speech that you can control. There is normal talking speech, emoting, whispering, and yelling. For each of these, you can control the font and color used.

%sfont is the command to set the font for normal talking. If you enter %sfont with no parameters, it will numerically display the current font. If you enter %sfont followed by a number, you change the current font setting. Valid settings appear to be 0-9. For those of you who prefer hexadecimal numbers (like me), you can use %sfontx in the same fashion.

%scolor is the command for the speech color for normal talking. It is used in the same way as %sfont. Also, there are %efont and %ecolor, for emoting, %wfont and %wcolor, for whispering, and %yfont and %ycolor, for yelling.

For the colors, 1 is jet black. High numbers are transparent, except for the outline. In fact, the outlines never change color. The fonts are interesting, but many of them are illegible, because they either have light or white outlines, or they have no outlines at all, or they are just plain ugly. I wonder what would happen if they made them all have single-pixel black outlines...

Additional FUSE Information

To setup accounts, you must use a file called "accounts.txt". The way the server uses this file is not so intuitive, so it is important to take careful note. The account file doesn't represent the current accounts in the system. Rather, it represents the changes that the sysop (whoever is running the server) wishes to make to the server. Right now, the only changes that can be made are adding an account and changing a password. Account names and passwords exist on one line and are separated by a pipe character (|). So fallo|mypass represents a username of fallo with a password of mypass. User names and passwords are case sensitive. User names and passwords are case sensitive. Many people don't believe me or understand me when I say that. User names and passwords are case sensitive. There, I hope that does the trick.

If you put a line such as fallo|mypass in the accounts.txt file, it first checks the existing accounts to see if one with the name fallo exists. If it does, it changes the password to mypass. If not, it adds the account fallo with password mypass. As I said, that is the only type of acceptable accounting changes for now. Soon, you will be able to ban users as well. Also, once accounts are in place, you really don't even need accounts.txt anymore, unless you wish to make changes.

To customize the starting locales for newbie characters, you must use a file called "locales.txt". It is composed simply of a list of locations. Each location is composed of three lines each. The first line is the general locale name, Britain, for example. The next line is a more specific location, for example, The Wayfarer's Inn. The final line is the physical coordinates of the place. The x and y coordinates are mandatory. If a z coordinate exists, it is used. If not, the z location of the map at the provided x and y coordinates is used. In most cases, this should be sufficient. Remember that these coordinates are in hexadecimal. They can be obtained once you are in the game by going to places of your choosing and viewing you character's x, y, and z properties (see the FUSE docs for more info).

If you ever wish to clear the data from your server, simply delete the file called save.fus. Remember that all accounts, characters, and items in the world will be "wiped". However, the starting locale information contained in "locales.txt" and the account directives in "account.txt" will still be there.

Important Note

Fuse constantly saves the current world state to disk. There are no manual saves. It does it by writing to disk during the idle time in between cycles. One effect that this has is to make overall system performance a little sluggish for the server operator. It isn't too bad, but trying to start the Ultima Online client software may take a minute or two. The current save file is save.fus. The incremental save file is save.bak. When a save cycle is complete, the incremental file is copied over to the save file. On one occasion, I had a system crash during the copying due to the immense stress that my system was under at the time. When I started back up, I noticed that save.fus had a size of 0. This means that the crash happened right when the system was about to begin copying the file but before it had finished.

For this reason, it is necessary for the server operator to exercise some caution and common sense. Backup the saves files from time to time (once a day should be plenty, but I wouldn't try it while the server is running). Also, if you crash, first of all, allow Windows to run scandisk if it prompts you to. If not, then check the file sizes of save.fus and save.bak. If save.fus is smaller (especially if it is 0 size), it might have been cut off. I would recommend backing up *both* files and trying each one to see which one works. Remember, FUSE looks for save.fus to load the world data, so you will need to rename any save file to that if you want to try loading it.

Well, I think that should be enough to get all interested parties into the game. Now, if you want to know how to actually do stuff, then I suggest you read the docs.

FUSE and all included materials Copyright © 1998 Erik McClenney. All Rights Reserved.