International Amazon Sites

 

Guide to Setting up Archipelago MUD on Cygwin (Unix Platform for Windows)  

By Thon

What's This All About ?

1.) This page is a place to get you started running Archipelago MUD on Windows using the Cygwin Unix program.

Archipelago was a popular and excellent MUD (Multi User Dungeon) based on CIRCLEMUD.  The source code is available to play with, the only successor to Archipelago online today is Tempora Heroica

Cygwin is a Unix - like platform that will run on any Windows based PC, it is possibly the easiest Unix/ Linux type system to run on Windows, as it doesn't require drive partition or any special hardware installation, it installs as simply as a windows application.  Please read on to see how to install Cygwin and get Archipelago running.

Credits - If you decide to use the Archipelago code, please leave the credits text on the opening screen (the text file in src/config.c), the credits file in lib/text and elsewhere.  Please do not remove any credit references to Alastair Neil (Ponder), David Czeck (Magnifico) and other individuals who have developed Archipelago MUD, Circlemud or Dikumud.  Please give credit where it is due, thanks.

Warnings / Bugs - there are a few warnings when compiling Archipelago on Cygwin in Windows, but no serious bugs that stop the game compiling or running.  See later on the page for info on these.

Modifications - I have done a little update on one of the Archipelago files - it enables  autoexits to display full room exits after the room description (Archi only had directions, you had to type 'exits' to see them.  More info at the bottom of the page.)

Discussion Board - I have set up a discussion board to record people's ideas and contributions to getting Archipelago working on Cygwin, you can also post queries and new bugs on here for people to read and hopefully help solve. See end of page for the link.  See later in page for the board.

The Archipelago files - You will need to download the Archipelago source code as a compressed archive from the Tempora Heroica Web page, do not do this now, instead I will tell you how to get the file once you have installed Cygwin.  There are some extra files I will discuss too.

Quick Guide to Compiling the MUD - if you want to skip my detailed instructions below, you can just download Cygwin and read Magnifico's short guide on the Tempora Heroica Website - this is only for the test server. 

Running MUDs -  Please be aware I'm not trying to encourage people to start Archipelago MUD clones, MUDs are hard work, and it's better to contribute to developing an existing mud like Tempora Heroica than starting a new one - this site is mainly for nostalgia and fun, many thanks to Magnifico on Tempora Herocia, he does a great job, and I think it's great the way he's kept the mud alive all these years.  If you haven't done so already please check out the Tempora Heroica website and log into the TH MUD  you might never leave !

Downloading Cygwin

2.)  To install Cygwin, a Unix - like program. You need to go to the Cygwin web site : http://www.cygwin.com 

3.) Click on the link to the Setup program

4.) Once setup has downloaded, run it from you hard drive.

5.) The Cygwin setup program will ask you if you want to 'Install from Internet', Download from Internet', or 'Install from local directory' - I recommend you start off by downloading the files to your hard drive first, and installing later, so select Download from Internet. Then click next. 

6.) You will be asked where to save the files (Local package directory) - type in or browse to the folder you want to save the install files to. You may want to create a new folder for this, eg: c:\temp\cygwin.  Then click next. 

7.) Next you will be asked how you want to download, I recommend you choose the 'direct connection' option, but if you are behind a proxy server which causes problems, you can provide the proxy host address and port number in the 'Use.. Proxy'  box.  Then click next. 

8.) Next you must click on an FTP location to download the files, I tried a few and there's not much difference in speed, click on one of these, then click next.

9.) The setup file will download, then you will go straight to the options screen, where you can choose which specific files to download, - there are several categories - you need to expand them by clicking on the (+) symbol,  if you want to have a full UNIX-like OS, then you should choose all the options, but if you want a minimal install taking less time to download, just make sure you tick the following in 'Devel' :  binutils, gcc, gdb and make.
To be on the safe side, you might want to tick all the 'Devel' options. Personally, I ticked every option in every category, just to be sure I had everything I needed.  If someone has a definitive list of the options needed for Archipelago, please let me know or post it on the discussion board.

10.) Once you have ticked the options you want, click next, the download should begin

11.) Once all the file have downloaded, you will get a confirmation box (download complete)

Installing Cygwin

12.) Now run the 'Setup' program on your hard drive again - this time choose the option Install from Local Directory.  Click next.

13.) You will be asked where to install Cygwin, I reccommend you use the default  C:\Cygwin.  Leave the other options as they are (Install for : All Users, File type default : Unix.)

Click Next, Cygwin will install to your hard drive. Let Cygwin go through all it's setup processes, do not close the Shell box (like the DOS box).

14.) A lot of automated batch processes will run, leave these alone for a while until you see 'Install Complete' This could take a while. Once Cygwin has finished installing, and you are back to Windows desktop, restart Windows. (This seems to be required.)

Running Cygwin

15.) Start Cygwin from the Windows Start menu or the icon on your desktop (You will have had the option to create these earlier.) Wait for bash to initialize.

You will see a command prompt, looking something like:

defualt@(your computer's name) >

You need to use a few UNIX commands later in Cygwin, if you get lost usng my instructions here are some basic UNIX commands for your reference :

pwd Print working directory, shows you the path / directory name you are in
ls Shows you all files / folders in current directory
cd  Return to the root (home/default  directory)
cd .. Go back a directory
cd path Move up to the specified directory(s) from the current directory, eg:  cd archipelago    or   cd archipelago/src
cp file destination Copy a file to specified path, eg:  cp archi.zip new
Copies archi.zip to a folder called new from the current location.
rm file Remove the specified file in the current directory
mkdir name Make a new directory in the current directory.
rmdir name Remove a new directory in the current directory.
man keyword Search the manual for help on a keyword
./  run a file, eg:   ./hello.exe
gunzip filename uncompress a tar.gz  compressed archive in current directory, into a tar archive, eg :    gunzip ok.tar.gz 
it will convert to a tar archive in the current directory
tar xvf filename uncompress a tar archive in current directory, eg : tar xvf ok.tar
It will expand fully into the directory structure contained in the archive.
wget path download a file into current directory, eg  wget http://awebsite.com/file.zip
make    send 'make' command to a makefile in the current directory to compile files specified in the makefile
make all send 'make all' command to a makefile in the current directory to compile files specified in the makefile
  Other Unix Command Reference Pages

Extracting the Archipelago.zip Files

16.) Now you need to download the Archipelago archive (compressed file) to the /default/  folder in Cygwin.

In cygwin, make sure you are at the command prompt, and in the home/default directory, you can check this by typing   pwd  (print working directory), you should see :

home/default 

Download the archive (Archipelago-1.1-fixed.tar.gz) from the TH Website by typing :

wget http://www.ibiblio.org/TH/Archipelago-1.1-fixed.tar.gz

You will see a slider bar showing the progress of the download, once downloaded, type ls  to check the archive file is present.

If you want a backup of the archive, you should use the cp command to copy the Archipelago-1.1-fixed.tar.gz  file from  home/default to a backup location on your hard drive. If you leave this until later the archive will have expanded to a tar file, eg: make a folder called backup in home/default, 
cd && mkdir backup    copy the archive to the backup directory: cd && cp Archipelago-1.1-fixed.tar.gz backup

17) At the Cygwin command prompt, you need to uncompress the archive, so type :

gunzip Archipelago-1.1-fixed.tar.gz

then type: 

tar xvf Archipelago-1.1-fixed.tar

You will see lots of confirms saying the files have uncompressed.  It should have created a folder called archipelago, type  ls  to check the folder is there.

Type  cd archipelago to move to the new folder containing all the files.

Type  ls to check the directory contents, you should have the following :

doc
html
lib
log
slave
src
other files at this level, eg: readme etc.

18.) Next, you need to download and replace the comm.c file in the source directory with the new one on the TH site :

At the Cygwin command prompt, type  cd src  to move up to the src directory.

First, delete the existing  comm.c file by typing :  rm comm.c   

then download the update by typing : 

wget http://www.ibiblio.org/th/comm.c

The comm.c file will download into src directory. 

** Optional Autoexits **

If you want autoexits (i.e: the ability to show full exits automatically without having to type 'exits' ) then you can get my version of  /src/act.inform1.c   

First, delete the existing  act.inform1.c file by typing :  rm act.inform1.c   

Then type :

wget http://draigweb.co.uk/archipelago/act.inform1.c

The act.inform1.c file will download into the src directory.

** Optional Roomedit fix **

To enable you to use the Roomedit (redit) feature without having to use uppercase 'Q' to quit options, (just an annoying bug)  you can get my version of  /src/roomedit.c  This replaces the uppercase command with lowercase, so you just type q to quit options, rather than have to hold down the Shift key every time

First, delete the existing  roomedit.c  file by typing :  rm roomedit.c 

Then type :

wget http://draigweb.co.uk/archipelago/roomedit.c

The roomedit.c file will download into the src directory.

My updates are unsupported, and used at your own risk !

Compiling Archipelago

19.)  Ok, you are at the archipelago/src directory in Cygwin, to confirm you are here, type pwd

You should see :

home/default/archipelago/src

20) Ok we are in the src directory, now type    make clean

You will see lots of confirms, you may see some warnings, you can ignore these as they don't stop the game working.

Then type   make

You will see more confirms, you may see some warnings, you can ignore these also.

The test server will be created in the bin directory

21.)  If you want the main server and all the utilities as well, go to  22, if you just want to play on the test server, go to 23.

22.) To get all the utilities Type      make all clean

then   make all

All the archipelago exe files will be created in the bin directory.    (This will create the normal server and some old CircleMud admin programs - I'm not sure if they are any use but they are described in the Circlemud  Wizhelp.doc file, which I have a link to later in this page.)

23.) You can use Cygwin to make sure the exe file(s) are there using cd && cd archipelago/bin && ls
You should at least have test1.exe (a replica of the server exe) to run the mud, and some other exe's if you made all the files :

archipelago.exe  (the normal server file to run the game see next section.)
autowiz.exe (updates the immortal list, I think..)
delobjs.exe
hasmail.exe
listrent.exe
mailindex.exe
test1.exe  (the test server - can run the game using this see next section.)

(I'd like to put a description of what each does soon.)

Running the Archipelago Server

24.)  Now, to run the server, go back to the root archipelago directory by typing 

cd ..

type   pwd

You should see  

home/default/archipelago

If you only made the test server, type :  ./bin/test1.exe

If you made all the exe files and utilities, type :  ./bin/archipelago.exe 

 ./  is the command to run an executable in Unix

Note, the server Must be run from the archipelago root directory as shown above, NOT   archipelago/bin/ 

25.)  Now, you should see a lot of text, ending in some info about the 'game loop' - just minimize Cygwin and run your favorite terminal program - to connect, just use localhost as the address on port 2000, eg:  localhost:2000

You can change settings such as the port in  the src/config.c file, but remember to delete config.o in src and all exe files in bin, then  re-compile to take effect (to recompile, go to 19).

26.) Ok you should see the prompt to set your color on or off and all the rest of the archipelago mud.  

Configuring Archipelago MUD

There are lots of settings that you can change in the /src/config.c file, as far as I can tell, you will need to delete the config.o file in /src/ and  all the exe files in /bin/ and recompile the mud  after your changes have been made (step 19).  config.c options include the port setting,  login page details, and things like player killing, you may discover other configurable c files, but config.c  appears to be the main one.

BUGs / Warnings in Archipelago on Cygwin

Compile time warnings (these don't break the game) - Apart from a few issues compiling under Cygwin (see below) there are some unresolved warnings when you compile, warnings about ISO C89. These issues at compile-time don't seem to affect the game, it runs very stable, but if you have any workarounds or fixes to stop the warnings, please post them on the discussion board.. 

Fixes / Known Issues in Cygwin that have been solved (kindof) :

Winzip Problem - If you extract the files using Winzip, you see the tilde (~) after most room names and mobile names, and the text of descriptions are  mixed with each other, this is because it's not been extracted as unix file format, you must extract the files as shown earlier in Cygwin.  Never extract the files using Winzip !

Missing Room 4008 - There is a room missing in Lamman to the south west (I think)  - while the game is running you get an error Room 4008 does not exist  - I guess you just need to use the online builder commands to recreate it.  If you have info on this post it on the discussion board.

If you want to email me any bug details or code contributions, you can email me on this form :
http://draigweb.co.uk    If the form is down for some reason,  use the discussion board you can also mudmail me (Thon) on Tempora Heroica, or just look out for me one evening.

Modifications to Archipelago

Updated file :  /src/act.inform1.c   to enable autoexits

I have done an update on act.inform1.c,  it has autoexits, replacing the simple exits: north, south, east etc.   Note: these added autoexits are not optional, they always show - but you can use Brief or Compact to reduce the display format.  (This update also displays portals, - eg: South  - A door to Courtts Bank.) 

For example :

You fly south.
South Market Square
This is the southern most part of Lamman's famous market square. To the
north you can see the fountain. Across Harbour Road to the south you can see
the Bank of Lamman, where adventurers and the local burghers alike store their
money for safekeeping. It's bright here.
Obvious exits:
North - The Central Fountain
East - Southeast Market Square
South - Harbour Road
West - Southwest Market Square
Cart - Gaspode's little red cart
Gaspode the Wonderdog is here smelling a bit. (citizen)
Gaspode the Wonderdog glows with a bright light!
The Wonderdog is hitched to a small red cart.
A cute little sparrow is here bathing in a dirty puddle.
Rogan the Pieman is here, earnestly selling hot meat pies. (citizen)

H: 34/34 V: 78/78 Ex: 75
>

If you downloaded and replaced the file act.inform1.c file  in step 18, it should work, I must add I don't know C well myself, I just hacked it around based on other parts of the code, but it seems to work ok.

Updated file :  /src/roomedit.c

If you downloaded and used my updated roomedit.c then this fixes the uppercase-only 'Q' for quit when using redit to edit rooms.

Wishlist for Archipelago MUD

Some things I'd like to do :

Documentation

There is precious little documentation on using Archipelago MUD, but it is possible to piece it all together..

Other Information on Cygwin and MUDs

Most of the semi-useful  info out there on the Web is about Circlemud, what Archipelago is based on.  I have managed to compile Circlemud on Cygwin, if you ask me I'll put some more info on here, but frankly Circlemud is pretty dire and I'd rather see Archipelago up to speed on Cygwin.

Discussion Board

Go to the discussion board to post topics on getting Archipelago working on Cygwin in Windows.

If you want to email me any ideas, workarounds or code contributions, you can email me on this form :
http://draigweb.co.uk

Other Links

Disclaimer !

I'm not responsible for any mishaps that may occur on your own PC if you follow any of the above instructions, it's all at your own risk, I could be a Martian, or a giant Wombat for all you know.. 90% of the Internet community probably are anyway, so be aware, it's all at your own risk..

Look for PC, PS2, X-Box and other games on Amazon