.TH xconq "" "" "X Application"
.PC "X-based strategy game"
\fBxconq [ \fIoptions \fB] ...\fR
.PP
.B xconq
is a multi-player strategic war game.
Your goal is to save the world from the evil empires attempting to
take over.
You get cities, armies, airplanes, and ships with which to
accomplish your task.
Success is achieved by the neutralization or
defeat of the other sides, by any means available.
First you have to find them!
.PP
Although the game can become complicated, to start you need only
know about the help command `?', which is valid at any time.
You start with only one city, which makes things even simpler.
The city will automatically produce a military unit, which you
will be prompted to move around.
Eventually, you receive get more and can attempt to take over other cities.
The game continues until only one side is left in action;
this player is then declared the winner.
.PP
By default,
.B xconq
starts up with one human (on the display in
.BR $DISPLAY )
and one machine, playing on a randomly generated 60\(mu30 world.
Options are available to set numbers and kinds of players, as well as the
kind of map used.
In addition,
.B xconq
has extensive and elaborate facilities for building maps, scenarios,
and historical periods, resulting in a wide variety of games.
.SH "Command-line Options"
.B xconq
was not built with the Xt toolkit, so it does not recognize the standard
Xt command-line options.
However, it does recognize the following options:
.IP \fIhost\^\fB:\fIdisplay\fR"
This option adds a human player to the game and assigns him
to the given host and display.
.B xconq
creates players in the same order as they appear on the command line,
interleaved with the players created via the options
.B \-e
and
.BR \-A .
You can use
all of the player-adding options any number of times, and in any order.
.IP "\fB\-A \fIhost\^\fB:\fIdisplay\fR"
Attach a machine player to
.IR display .
This is ideal for those who like to watch.
.IP \fB\-C\fR
Let the machine player play in cheat mode.
It receives complete update of the screen every turn.
.IP "\-e \fInumber\fR"
Set to
.I number
the number of machine players not attached to displays.
Non-displayed machine players form alliance blocks of five to nine countries.
.IP "\fB\-m \fIname\fR"
Read the map
.I name
and starts a game on it.
.IP "\fB\-M \fIwidth height\fR"
Generate a random map of the given size.
The size must be at least 5\(mu5,
although some periods impose additional constraints on the lower bound.
In theory, there is no upper bound (but 200\(mu100 is huge).
.IP "\fB\-p \fIname\fR"
Read the historical period specified by
.IR name ,
and set everything up for that period.
.IP \fB\-r\fR
Reset the list of players on the command line.
This is most useful when
placed before other player specifications, to clear out the default players.
.IP "\fB\-s \fIname\fR"
Read the scenario
.IR name .
A scenario sets up a particular situation;
it has a fixed number of sides that can participate.
.IP "\fB\-t \fIminutes\fR"
Toggle a chess-clock-like feature that limits the time of play for each side to
.IR minutes .
Time is only counted while waiting for input.
.IP \fB\-v\fR
Make the entire world seen by all players at the outset.
This is useful if the players decide that exploration is time-consuming,
or if the map is already known to everybody.
Some maps already have this enabled.
.PP
In addition,
.B xconq
recognizes options.
These are explained in the customization document.
.SH Examples
The following give some examples of how to invoke
.BR xconq .
.IP \fBxconq\fR
One human on local display, one machine, with 60\(mu30 randomly generated map.
.IP "\fBxconq -m crater\fR"
One human vs one machine, on the ``crater lake'' map.
.IP "\fBxconq -e 0 blitzen:0 kzin.eel:0\fR"
Three humans:
one on the local display, one on
.BR blitzen:0
in the same network, and a third on
.B kzin.eel:0
in another network.
The map is the default 60\(mu30 randomly generated map.
.IP "\fBxconq -e 2 -M 90 40 -A shark:0\fR"
One human, three machines (one on display
.BR shark:0 ),
using a 90\(mu40, randomly generated map.
.IP "\fBxconq -r -e 3 -m 1987 wind:0 surfer:0 -A springs:0\fR"
Six players, four of whom are machines (one on
.BR springs:0 )
and two of whom are human
(on
.B wind:0
and
.BR  surfer:0 ).
They are playing on a 360\(mu122 map of the earth with present-day cities.
.SH "X Defaults"
You can modify the resources in file
.B /usr/X11/lib/app-defaults/XConq
to change the appearance or behavior of
.BR xconq .
You can also
set resources in file
.B $HOME/.Xdefaults
using a specification of the form
.DS
	\fBXConq.\fIClass\^ \fB: \fIvalue\fR
.DE
.PP
.DM
	\fBXConq.\fIname\^ \fB: \fIvalue\fR
.DE
.PP
You can mix classes and names in the specification.
.PP
The following describes the resources within
.B xconq
that are commonly manipulated:
.IP "\fBXConq.Map.Period.HexDisplayMode\fR"
.IS "\fBxconq.map.hexDisplayMode\fR"
This is how
.B xconq
displays the terrain hexes.
The legal values are
\fBFullHex\fR,
\fBBorderHex\fR,
\fBTerrIcons\fR,
and \fBBothIcons\fR.
.IP "\fBXConq.Map.Period.Background\fR"
.IS "\fBxconq.map.ownColor\fR"
The color for your own units.
.IP "\fBXConq.Map.Period.Background\fR"
.IS "\fBxconq.map.alternateColor\fR"
Manner of setting background colors.
.IP "\fBXConq.Map.Period.Background\fR"
.IS "\fBxconq.map.differentColor\fR"
Manner of setting background colors.
.IP "\fBXConq.Map.Period.Foreground\fR"
.IS "\fBxconq.map.borderColor\fR
Border color.
.IP "\fBXConq.Map.Period.Foreground\fR"
.IS "\fBxconq.map.grayColor\fR"
Foreground color.
.IP "\fBXConq.Map.Period.Foreground\fR"
.IS "\fBxconq.map.enemyColor\fR"
The color of enemy units.
.IP "\fBXConq.Map.Period.Foreground\fR"
.IS "\fBxconq.map.neutralColor\fR"
The color of neutral units
.IP "\fBXConq.Map.Period.Foreground\fR"
.IS "\fBxconq.map.goodColor\fR"
The color of allied units.
.IP "\fBXConq.Map.Period.Foreground\fR"
.IS "\fBxconq.map.badColor\fR"
The color of the bad guys' units.
.IP "\fBXConq.Map.Period.Font\fR"
.IS "\fBxconq.map.text.font\fR
Font for all text.
.IP "\fBXConq.Map.Period.Font\fR"
.IS "\fBxconq.map.iconFont\fR"
Font for miscellaneous pictures.
.IP "\fBXConq.Map.Period.Font\fR"
.IS "\fBxconq.map.helpFont\fR"
Font for the help pages.
.SH FILES
.nf
\fBsave.xconq\fR \(em Saved game
\fBemergency.save.xconq\fR \(em Game saved after program crash
\fBstats.xconq\fR \(em Performance statistics for a game
\fBcmds.xconq\fR \(em Listing of commands
\fBparms.xconq\fR \(em Listing of units and their characteristics
\fBview.xconq\fR \(em Printable version of the map display
\fB/usr/games/lib/xconq/*.map\fR \(em Predefined maps
\fB/usr/games/lib/xconq/*.scn\fR \(em Predefined scenarios
\fB/usr/games/lib/xconq/*.per\fR \(em Predefined historical periods
\fB/usr/games/lib/xconq/*.onx\fR \(em X10 fonts
\fB/usr/games/lib/xconq/*.bdf\fR X11 uncompiled fonts
\fB/usr/games/lib/xconq/xconq.news\fR \(em News about features and additions
.SH "See Also"
.B
X applications
.R
.br
Keegan, John:
\fIThe Face of Battle.\fR
New York, Viking Press, 1978.
.br
Directory
.B /usr/X11/doc/xconq
contains several tutorials on
.BR xconq .
.SH Diagnostics
If a given display cannot be opened due to a missing \fIxhost(1)\fP command,
.B xconq
quits with a message
.DM
	Error opening display host:0
.DE
.SH Notes
If
.B xconq
cannot find or open the icon fonts, it substitute text.
This is not aesthetic.
.PP
If the map is too small for the desired number of players,
.B xconq
complains about not being able to place units.
.PP
There are some panic messages which usually precede a core dump by a few
milliseconds.
.PP
Incorrect combinations of periods, maps, and scenarios
can generate a host of different error messages.
.PP
Because some periods, maps, and scenarios are interdependent,
they must be specified in a particular order on the command line
(usually period first).
.PP
.B xconq
does not cope gracefully with insufficient memory.
The message
.DM
	Memory fault
.DE
.PP
usually indicates that a call to
.B malloc()
returned NULL (that is, you have run out of memory)
but the program tried to initialize the object anyway.
.PP
Some annoying behaviors are actually features.
.PP
Feel free to report bugs to
.BR xconq@uunet.uu.net .
There are people there willing (if not able) to help you.
If you wish to listen in on the list, you can join by sending mail to
.BR xconq-request@uunet.uu.net .
.PP
.II "Shebs, Stan"
.II "Fisher, Greg"
.II "Forsman, Robert"
.B xconq
was written by Stan Shebs (shebs@cs.utah.edu).
Version 5.4 was created by Greg Fisher (fisher@cs.rutgers.edu).
Version 5.5 was created by Robert Forsman (thoth@lightning.cis.ufl.edu).
