1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279
|
+--------------------------------------------------------+
| CCC OOO N N QQQ U U EEEEE SSSS TTTTT |
| C C O O NN N Q Q U U E S T |
| C O O N N N Q Q U U EEE SSS T |
| C C O O N NN Q Q U U E S T |
| CCC OOO N N QQ Q UUU EEEEE SSSS T |
+--------------------------------------------------------+
CONTENTS:
### QUICKSTART GUIDE
### DISTRIBUTION
### BUILDING
### OTHER USEFUL INFORMATION
# GENERAL TERMINAL NOTE
# TERMINFO ENTRIES
## UNIXWARE NOTE
## SOLARIS/DU NOTE
## CONQUEST GROUP
### QUICKSTART GUIDE
So you are impatient and want to build and play. Here's a short
list to get you going. Read the later sections for more details.
- unpack and build the sources. (If you are using Cygwin under MS
Windows, see README.cygwin for further information. Ignore the
'groupadd' commands listed below.)
# groupadd conquest
$ tar xzvf conquest-x.y.src.tar.gz
$ cd conquest-x.y
$ ./configure
$ make
$ make install
- to play on your own local server
- Init everything
$ conqoper -C
$ conqoper -Ie -E
$ conqoper
- this runs conqoper in interactive mode. Go into the
Options menu and set any flags you want enabled for your
server.
- startup a server
$ conquestd -d
- play
$ conquest
- to play on a remote server
- using the meta server to list available servers, and allow you
to select one to play on:
$ conquest -m
- to go directly to a specific server (conquest.radscan.com in
this case):
$ conquest -s conquest.radscan.com
### DISTRIBUTION
conquest-x.y.src.tar.gz - gziped tar archive of the source
distribution.
Unzip/untar this in a nice, quiet, peaceful place. I use:
$ tar xzvf conquest-x.y.src.tar.gz
Currently, only the following OS's have ports (these are the
minimum versions needed. It should run on newer versions of these
OS's):
Unixware 2.03 (1.x/2.x/7.x should be fine too)
Linux 2.0.0, with ncurses-1.9.9e+ (older ncurses *may* work)
Solaris Intel/Sparc 2.6 with gcc 2.7.2
FreeBSD 2.2-100696-SNAP (stock curses works, but
without color apparently...)
OSF1/Digital Unix V4.0 for Alpha
- Thanks to Jim Anderson (janderson@NOVALIS.COM)
for this port!
MS Windows using the Cygwin (www.cygwin.com) environment.
Note, I no longer have access to these machines (only
linux) so YMMV...
At least ncurses-1.9.9e is required on both FreeBSD and Linux. If
the curses implementation on your machine has problems, you might
try ncurses... It's free and does a reasonable job at emulating
svr4 curses.
The README file provides useful information about conquest, please
look it over.
### BUILDING
To build conquest, unpack the src archive.
Create the 'conquest' group. In Linux this can be done with
(as root) 'groupadd conquest'. Don't bother doing this on Cygwin
systems. See README.cygwin for further info on these systems.
NOTE: You *must* create a conquest group, or '[make |make install]'
will fail.
Then cd into the src directory.
Conquest makes use of the GNU Autoconf system for maintaining
source code able to compile on many different machines.
Theoretically, all you will need to do is:
$ ./configure
$ make
(note: you will not be able to execute many of the binaries
until you do a make install, then run the installed
binary)
$ su
# make install
Options to configure:
--prefix=
By default, conquest will be installed in /opt. To install it
somewhere else, supply the '--prefix=/other/dir' option to
configure.
--disable-gl
If you do not want to build the GLUT/OpenGL bits, pass
'--disable-gl' the the configure cmdline.
You may also want to peek at the defs.h file, though the defaults
should be fine. If your porting this to something else, good
luck...But if you do succeed in a port to a new platform, please
let me know so I can incorporate it into the distribution. The
autoconf source file 'configure.in' is supplied for this purpose
;-)
As root, intialize the system-wide conquestrc file
(/opt/conquest/etc/conquestrc by default) by typing:
/opt/bin/conqoper -C
'make install' will do this for you, but if you want to be sure...
Then, you will want to Initialize the universe and enable the
game. You can do this from the main menu in conqoper, or
non-interactively from the command line like so:
conqoper -Ie -E
- this Initializes everything, then Enables the game.
Next, you may want to enter the Options menu and configure the
options you want enabled for your game.
You should now be ready to run the server and try it out.
See the README file for more information.
See the SERVER.DOC file for information on running a Conquest
server.
Read the conquest.doc and the HISTORY files to get info on
what conquest is and how to play it.
### OTHER USEFUL INFORMATION
# GENERAL TERMINAL NOTE: Conquest depends on a properly configured
terminfo entry for your terminal in order to make use of Fkey's, the
arrow keys, the keypad, and color. The standard at386 terminfo entry
on Unixware for example, does not define the SHIFT-Fkeys, nor the
Keypad keys (upperright, lowerleft, etc). Some modification to your
terminfo entry may be required to use these extended features.
# TERMINFO ENTRIES
I recieved permission from SCO to supply my modified terminfo
entries for Unixware. Thanks SCO! The modified entries are located
in the ti/ subdirectory of the source distribution along with some
other entries I've used over the years, and are never installed by the
install process. If you wish to use these entries, you will have to
compile them yourself as root like this:
# tic filename
Here are the ones supplied:
at386.ti - a replacement for the unixware at386 console
entry. This is completely compatible with the default version, but
adds support for SHIFT-F1 thru F12, and proper entries for the
keypad.
xterm-acs - a replacement for the unixware xterm-acs entry
that adds support for the keypad (No Shift-Fkeys are possible without
xmodmap tweaking though).
linux-cq.ti - linux console replacement, fixing (actually
working around) some problems described above. This entry is the same
as the original 'linux' entry, but ACS, ich/ich1, dch/dch1, il/il1,
and dl/dl1 capabilities have been removed.
mskerm.ti - for DOS MS-Kermit
mskerm-c.ti - for DOS MS-Kermit, adds color
vt100-c - vt100 entry with color cap added, This will work
with most PC based vt100 emulations (like telix), though the keypad
and function keys may not work... There are just no real standard
definitions for these, since the original vt100 didn't support
function keys, or a keypad like the standard PC-AT keyboard.
## UNIXWARE NOTE
Unixware understands the notion of providing specific
privileges to an executable, without requiring suid root programs.
By default, when installing the Unixware binary package or
doing a 'gmake install' on a Unixware system, the Makefile will use
the 'filepriv(1m)' command to give Conquest the ability to raise it's
priority and lock the common block (256KB) into memory via the TSHAR
and the PLOCK privileges. If you don't like this, either don't set
the priveleges, OR comment out '#define USE_COMMONMLOCK' and '#define
SET_PRIORITY' in defs.h and recompile.
Conquest will complain in the /opt/conquest/etc/conquest.log
file if you simply remove the privileges, but it will still run. If
your not building or running this on Unixware this doesn't apply to
you. Unfortunately the only way to provide these services on other
Unixen besides Unixware is to give Conquest suid root privileges,
which I consider extremely unwise. There's something to be said about
giving processes only those privileges they really need...
Once again, DO NOT run Conquest suid root on any machine.
(currently the only way to get priority privs on Linux). Conquest was
not designed to run suid root (or suid at all) and I take *no*
responsibility for the consequences if you try to do so. Actually, I
take no responsibiliy for anything regarding the use of this software
;-)
## SOLARIS/DU NOTE
There is a problem with the lexer (lex) on Solaris and Digital Unix
(OSF1). When it processes conqstrat.c.l into lex.yy.c, a syntax error
is introduced. If you compile the resulting code (make will try this)
you'll get a syntax error. Simply edit the file (should be lex.yy.c)
delete the offending line, and recompile. The only result of this
'fix' is that when (or if) you use conqstrat to build a new robot
strategy table, all whitespace in the rule file will be output to
stdout. Annoying, but livable. It does not affect the parsing of the
rule file in any other way.
## CONQUEST GROUP
Conquest's binaries *do* have to run setgid to 'conquest' to
prevent unscrupulous tampering/cheating. Installing the Unixware
binary package will add the Conquest group id to your system.
If you're using the source package, you'll need to be sure to
create the conquest group before building.
$Id: INSTALL,v 1.14 2004/12/28 01:35:26 jon Exp $
|