                                XROADS v0.5
                                -----------
What's New?
-----------
	Here's the main things added in v0.5:

- Improved character movement
- Joystick support under Linux
- Random maze generator (Thanks to Michele Bini)
- More mazes from Crossroads I and II
- The Green Vaccuum can now suck you up with his vaccuum
- Install/uninstall procedure
- More wall tiles
- Bug fixes, Code cleanups, and other niceties

Intro:
------
	Welcome to XRoads! XRoads is a game for the X Windows system that
attempts to be like the game Crossroads (and it's sequel, Pandemonium) for
the Commodore 64. Basically, it is a 2-dimensional, overhead view maze
game in which you fight against a gang of monsters. Sounds simple? Guess
again! There are (or at least, there will be) tons of different twists in
the game which make it fun.

Compiling:
----------
	Sounds good you say? Okay, lets get you started with compiling the
program first. I should tell you that this game was originally built on a
Linux Slackware machine (i586) using XFree86 X11R6, and I really don't
have access to a lot of different machines, so I can't test it on
different operating systems. I have reports that it works fine on Solaris
machines (With one small change to the Makefile), but that BSD has some
problems with it. Your mileage may vary. Truthfully, it's not a very
complex game, so all that will probably be needed for other OS's would be
a few tweaks in the Makefile.

	First of all, you'll have to unzip and untar the program. There
are a few different ways to do it, but the easiest is like this:

hostname:~$ tar zxvf xroads-v0.4.tar.gz

	Then, you may want to check the Makefile to make sure it'll work
on your system (Check the "LINK = " line if you're not using Linux). This
step is optional. I believe the standard Makefile should work on most
boxes (Sorry, no Imake... yet...). You may also want to look in the 
config.h, as it contains a lot of default values, and the keyboard setup:

hostname:~$ cd xroads
hostname:~/xroads$ vi Makefile
hostname:~/xroads$ vi config.h

	Oh.. I probably should have mentioned that you should enter the
xroads directory that the .tar.gz makes when it is uncompressed. I really
shouldn't have to tell you that though :P Anyways, then just run "make":

hostname:~/xroads$ make

	If you get any errors, there's a good chance it's because of the
Makefile. If you're positive it's not the Makefile, send me an email and
I'll see if I can fix it for you. Hopefully, you should have a binary all
ready to run. (I suppose you could run "strip xroads" afterwards.. though
the executable isn't very large as it is, so it doesn't make much
difference)

Installing:
-----------
	To install XRoads and it's data files:

hostname:~/xroads# make install

	Note that you have to be root to do this. By default, this will
put the xroads binary in /usr/X11R6/bin, and will put the data files in
/usr/games/xroads. If you want to change these directories, just edit the
Makefile

	The *.xrm files that XRoads installs are used for maps. They can
be edited.. but you must be VERY careful, as XRoads is very sensitive to
the format of the map files. If that warning doesn't bother you, then
here's some advice: Use vi to edit the maps, and make sure you're in
"replace" mode. Each asterisk is a wall, and each space is not a wall.
There must be exactly 20 characters per line with a carriage return at the
end (21 in total), and they should be 23 lines long. I believe anything
after the 23rd line will be effectively ignored, so I suppose you could
put comments in there if you want. This README is also copied to the data
directory, just in case you need it.

	If you get tired of XRoads and want to get rid of it, just type
'make uninstall' (assuming you still have the source code), and all the
files that 'make install' put on your system will be removed.

Playing:
--------
	So, it compiled alright? Great! Now you'll need to know how to
play the game. If you run the program, it should come up with a rather
bland title screen. Just click the window to start the game. Use the arrow
keys to move your character, and Enter to fire. Some other keys are:

1 - New map
r - Redraw Screen
Escape - Exit Game
Pause or P - Pause Game

	To play a multiplayer game, just start the game using the command
line parameter -p, for example "xroads -p 2" will start a two player game.
You can play with up to four players. The controls for the other three
players are as follows:

Player:       1             2             3             4
Color:      Green          Red          Yellow         Blue
-------------------------------------------------------------
Up            Up            W             I             8
Left         Down           A             J             4
Down         Down           S             K             5
Right       Right           D             L             6
Fire        Enter          Tab          Space         Enter
Fire 2        \          CapsLock         N             +

(Note: Player 4 uses the keypad)
(Note #2: Fire 2 doesn't do anything yet, but will someday)

	Also, if you type "xroads -keys", you will be given a list of the
keyboard setup. If you don't like the default keys, you can change them in
config.h and recompile. If four players on a keyboard is too crowded for
your tastes, you can use a joystick for one player (if you have one). See
below for details.

	The rest of the game is pretty simple to learn. Run around and
shoot the monsters, and avoid being shot yourself. The white swirling fan
things are called "Spars". You must pick 10 of them up to get to the next
level (I know, it was 5 in the original Crossroads, but XRoads is faster
paced, so I upped the number). Each spar will also give you one more hit
point, you start with 5 hit points, and you can never have more than 9
hit points at once. Your spar count, health, and score are printed at the
bottom of the screen. Each player has their own health and score, and a
level is ended as soon as any of the players collects ten spars (Spars are
counted individually)

	As an added bonus, there are two special spars in the game; the
Red and Blue spars. The Red Spar speeds up your firing rate, letting you
shoot a lot quicker (though the bullets don't actually move quicker), and
the Blue Spar makes you run faster. This may be difficult to control at
first, but it will become quite powerful once you get used to it. These
spars still count as regular spars too, giving you an extra hit point and
counting towards your spar count.

	Each monster you kill earns you 100 points, and a spar gives you
200 points. Passing a level rewards all players with an extra 500 points.
(This scoring system will likely change in the future)

	If you die, you'll be presented with another bland screen, which
(when clicked on) will go back to the title screen. If you are playing a
multiplayer game, then all players must die before the game will end. To
exit the game, just hit Escape, or click the delete button on your window
manager.

	Run XRoads with the parameter "-help" to get information on other
command line parameters you can use to change some of the games options.

Random Mazes:
-------------
	Getting bored of the levels in XRoads? Try random maze mode! Just
start XRoads with "xroads -maze", and each level will be generated
randomly. The random levels can be quite difficult, but should all be
solvable (If for some reason, you get a map that is unsolvable, just hit
'1' to generate a new map.) The seed used to generate each random maze is
printed to the console, though there is (as of yet) no way of entering a
seed to use

Joystick Control:
-----------------
	If you compiled with joystick support enabled (Linux only), the
joystick will be enabled by default, and will control player 1. For a
multiplayer game, you can have the joystick control a different player
with the -j option. For example, "xroads -p 4 -j 2" will start a four
player game, and the joystick will control player 2.

	If you are using an analog joystick, you might want to change the
value of JS_SENS in config.h and recompile. The higher it is, the farther
you will have to push the stick before your player will move. This was
meant for poor joysticks that are not very accurate.

Bugs:
-----
	Yes, there's bugs... after all, it's a really early version of the
game, so don't rag on me too bad... There should have been a file called
BUGS included in the .tar.gz... it has what you're looking for. If I
manage to fix a big bug, I'll probably release another version (Such as
0.4.1 or something).

What's Coming?
--------------
	XRoads is also quite unfinished as well. My current plan is to get
it working about as well as Crossroads itself works first (hopefully, this
will be version 1.0), and then add my own extra features and powerups and
such. In case you want to know exactly what I have in mind, take a look at
the TODO file that came with XRoads. There's a ton of stuff in there, and
a lot of it is just stuff I thought up off the top of my head, so don't
hold your breath.

	Hopefully, v0.6 will improve character motion even moreso, and I
really want to implement some of the character specific stuff from
Crossroads (especially Rubberheads). Monster targetting needs an overhaul,
as it's currently just a hack of an AI intended for single player. And
monster alliances need to be programmed. Lastly, I'd like to get the
scoring system to assign the same values as the original game did (This
*should* be an easy task) How much of this will make it into 0.6 and how
much will have to wait for 0.7 remains to be seen. I'm also hoping to
create a GUI options menu so that you don't need to do everything on the
command line, but that won't happen for a long time (1.x?)

Contacting Me:
--------------
	Got a question? Found a new bug? Want to tell me my game sucks?
Got XRoads to compile a different operating system? Go right ahead! My
email address is foxtrot@autobahn.mb.ca and it is checked fairly often, so
I'll probably reply rather quickly. However, if you send me a message
like: "Your game sucks bad! You're not as l33t as I am! Muhahaha!" there's
a good chance I'll just delete it and forget about it. I don't work on
this game to get yelled at :P If you don't get a reply, well, sorry... I'm
a pretty lazy person, and my life gets a little hectic at times...

	I'm also on ICQ and IRC once in a blue moon... My UIN is 5149932,
and on IRC, I usually go by the nickname Ze_ro

Note:
-----
	This program is provided "as is". I accept no responsibility for
any problems resulting from the use (or mis-use) or this program in any 
way. Do whatever you want with this program, as long as you do me a few 
favors:

 1 - Make sure to give me *some* credit (all you have to do is mention my
     name somewhere)
 2 - Any use of this code, wether in it's original form or in an altered
     state, must be provided free of charge. That goes for binaries AND
     source code.

That's all for now... have fun!
						--Brad Johnson
						  foxtrot@autobahn.mb.ca
