home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Dream 44
/
Amiga_Dream_44.iso
/
Amiga
/
jeux
/
2joueurs
/
xpilot7_030f.lha
/
xpilot7_030f
/
xpilot.txt
< prev
next >
Wrap
Text File
|
1997-08-10
|
86KB
|
1,887 lines
NAME
xpilot - XPilot/UX Multiplayer gravity war game client
SYNOPSIS
xpilot [-help] [-version] [-name nickname] [-team team-
number] [-join] [-list] [-shutdown [message]] [-display
string] [-port port-number] [configuration-options]
[server-host ...]
OVERVIEW
XPilot is a multiplayer game which looks a bit like Thrust
for the Commodore 64. Thrust has some similarities with
Atari's coin-up games Gravitar and Asteriods (not a mis-
spelling) - they were the originals. Several clones have
appeared for various computers, among others Gravity Force
for the Commodore Amiga.
The main objective of the game varies as you can choose
different game modes, although the only modes supported as
of today are combat (optionally with teams and/or limited
lives) and race. The former mode focuses more strongly on
shooting each other down, while the latter is more a
piloting test than anything else.
To start playing, you need to connect to a server by using
a client program called xpilot. If there are no servers
running, you will have to start one of your own (see man-
page xpilots()).
Options
-help Prints some help, including commandline
options.
-version Prints the current version.
-name player-name
Lets you use an alternative name during the
play (may be handy :). If this option
isn't specified, and you haven't set the X
resource name, you will be known by your
login name.
-team team-number
Joins team number team-number. See below
for notes about team play. When the server
is not configured for team mode, this
option has no effect.
1
XPILOT
-help Prints a small usage message.
-version Prints version information.
-join Automatically joins the first server you
get response from.
-list Queries status information from all servers
found.
-shutdown [message]
Sends a shutdown to the server, the message
part is optional.
-name nick Specifies your nick name.
-team number Specifies your wanted team number.
-display display-string
Specifies which X server to contact.
-port number Specifies the port number to use when con-
tacting a server.
configuration-options
All the X resource values can be configured
seperately from the command line. For
example to change the ecm key to just `z'
use; -keyEcm z
server-host Tries to connect to server at host server-
host. The default is to send a broadcast
query on your attached network.
PROMPT COMMANDS
When you startup xpilot without the -join option, you will
get a prompt asking you for directions. You may type h or
? to list the available commands. These are quite obvi-
ous and deal with communication to the current server
only. You may enter the game by pressing CR
(Return/Enter).
If you are the owner of the server you will have a few
extra options. See xpilots().
THE GRAPHICAL USER INTERFACE
When you enter a game you will hopefully be presented a
window. This window is divided into three major areas:
Radar (Top left) This area shows the map the
server you are playing on is using as
2
XPILOT
well as the position of your fellow play-
ers (if they aren't cloaked). In race
mode the radar also outputs the position
of the control posts. Players are shown
as small rectangles The player you are
currently locked onto is shown as a
flashing rectangle.
The server can optionally display mis-
siles, mines and/or bombs (moving mines)
on this radar, and will display them
using different symbols; missiles are
quick flashing small dots, mines and
bombs slow flashing small dots. If
nuclear mines or missiles are launched
the radar can detect the high energy
radation emiited and will show these
types of weapons on the radar as alter-
nating small and large rectangles. The
radar always has a limited range for
these objects, due to their small size.
The maximum range depends on how much
fuel you are carrying.
Rating list (Bottom left) This area shows the list of
players (sorted with respect to their
rating, or `score') currently logged on
the server. The player with the highest
<rating>/<num of times died> ratio - that
is, the most `deadly' player - is under-
lined with a stipled line.
First on each line, you might find a let-
ter which gives you some information
about the status of the player: R means
the player is a robot, T means the player
is not a player but a detached tank, D
means player is dead (only possible in
limited lives mode), P means the player
is paused and W means the player is wait-
ing to join the game after login (in lim-
ited lives mode).
Depending on the current game mode, you
will also find information about which
teams each player belong to and how many
lives each player has left.
Game area (Right) This is where the action is.
Most notably you will see your fighter in
the middle of the screen, hopefully you
won't see any shots or explosions yet!
3
XPILOT
You may also see some strange blue draw-
ings surrounding your fighter - this is
the HUD (Head Up Display) which greatly
simplifies and compresses the information
you need to know. Currently, the HUD
displays the following information:
Bonus items You may notice some symbols and num-
bers on the left side of the HUD,
these indicate which, and what quan-
tity, of extra equipment you have.
This list can be turned off using
the `o' key, then only items which
you gain or loose will be briefly
shown on the HUD. Pressing `o'
again will constantly show owned
items.
Fuel A fuel meter will appear on the
right side of the HUD when you are
getting low on fuel, it will start
flashing when your fuel level gets
dangerously low. The fuel is numer-
ically displayed on the bottom right
corner of the HUD.
Lock The name of the player you have cur-
rently locked on is shown on the top
of the HUD. The distance and bear-
ing to that same player is visual-
ized by a dot where placement of the
dot gives the direction, and the
size of the dot gives the distance.
The dot will be filled if the player
is not on the same team as you. The
distance to the player also numeri-
cally displayed on the top right
corner of the HUD, it is measured in
`blocks'.
Velocity (Optional) The position of the HUD
changes with the current velocity.
The distance from the center of your
screen is proportional to your
velocity. Moving to the top moves
the HUD to the bottom.
In addition to the moving HUD, you
can display a line from the center
of the HUD to the center of your
ship.
Both indicators can be combined or
used exclusivly (see discussion
4
XPILOT
about Xresources below).
Score messages
Relevant score information is shown
below the HUD, as well as on the
game field.
Time left The amount of time the game will
last if the the server was started
with a time limit. This is dis-
played in the upper left corner of
your HUD.
Between the radar and the Rating list there are three
push buttons:
Quit Exits the game and the program.
About Pressing the About button will popup
a three page help window. It
explains in short the functionality
of all the items you may encounter
together with a graphical depiction
of them.
Menu The Menu button pops up a pull down
menu with the following buttons:
Keys Will popup the Keys window,
which contains a list of all
the X keysyms that have one or
more xpilot actions bound to
them.
Config Changes the Rating list into a
window with a list of most of
the options. The options can
be changed interactively.
Pushing the Save configuration
button will save the options
and the key bindings to the
.xpilotrc file in your home
directory.
Score Displays the players and their
scores in the Rating list win-
dow.
Player Lists the players with their
login name and their host
address in the Rating list win-
dow.
MOTD Displays the Message Of The Day
5
XPILOT
if the server has one avail-
able.
GAME CONCEPTS
The game objective varies as the server (xpilots()) is
very configurable. However, below you will find short
descriptions of some of the main concepts of the game.
Gravity
All objects in the game are affected by gravity - that is,
they will accelerate in the direction the gravity is
strongest. The strength and direction of the gravity is
user configurable (see xpilots()), and can even be set to
0.
Some objects affect the gravity in a limited area, these
are called gravs and they exist in miscellaneous types
(attractive, repulsive, clockwise, anti-clockwise). Gravs
are shown as red circles with some symbol inside which is
different for each type of grav. (For more information on
how the affect the gravity, see xpilots().)
Wormholes
Wormholes are shown as red rotating circles. They will
`teleport' you to another place in the world. Generally,
when you go through a wormhole, you'll come out at the
nearest wormhole in the direction you were travelling.
Some wormholes are enter-only and some are exit-only. The
exit-only ones are invisible. Passing through a wormhole
will make you visible for a while if you were cloaked.
Fuel
You will also have to worry about your fuel level as most
equipment use fuel/energy and some even work better the
more fuel you have.
You may gain fuel by picking up special `fuel cans' (see
bonus items section) or refueling at a refuel station.
Refuel stations may be found in blocks in the world, they
differ from standard background blocks in that they have a
red/black F in them, and they are partly or completely
filled with red. The amount of red determines how much
fuel the station has at available for you. To refuel, you
must hit the keyRefuel key (see controls section).
Fuel takes up mass and will also determine how big the
explosion will be when (sorry, `if' :) you meet your
6
XPILOT
destiny.
Combat
There are two different and mutually exclusive modes which
have greatly different objectives: combat mode and race
mode. The most extensive is the combat mode, which also
happens to be the default.
Here your main objective is to get as high a rating as
possible by `blasting away' on enemy fighters (human or
robot controlled) and cannons. All will naturally fire
back at you, so you will also need some nifty piloting
skills and/or some heavy equipment to really enjoy living.
Extra weapons are explained in the bonus items section.
Race
In race mode, your objective is to fly as fast as you can
through a specified route. This is done by passing check-
points in a specified order. The finish is reached after
three laps.
The next checkpoint is always visible on the radar.
Team play
Team play is useful in combination with combat mode. It
is different from straight combat mode in that players on
your own team are not considered enemies. There are some
additional objectives too.
You can gain points if the map you are using have targets
or treasures. The main difference is that you get points
by blowing up an enemy's target using shots or mines. A
shot will only damage a target and if the target is com-
pletely damaged then the next shot will blow it up. A
mine will immediately destroy a target. Two missile hits
will also destroy a target.
Enemy treasures have to be stolen from the enemies and
dropped on your own treasure. You pick up a treasure by
using keyConnector when flying nearby the enemies trea-
sure. This will attach the treasure to your ship with a
strong rubber band. Now you have to move your ship away
from the treasure while holding the keyConnector down.
When you reach a certain distance the rubber band will be
drawn in a sollied line. This means that the treasure is
attached to your ship. It is possible (in emergency situ-
ations :) to detach the enemy treasure by pressing key-
DropBall, but this will of course not gain you or your
7
XPILOT
team any points.
Certain maps may configure targets as passable by team
members, in which case they can act as wall shields for
team bases.
Shields
You may or may not have shields at your disposal, depend-
ing on the server options specified. If you have, they
are activacted with the keyShield key (see controls sec-
tion). Generally collisions with other objects (except
for debris and sparks) are lethal, but when you are hit by
something with your shields up then it will only cost you
some fuel/energy. If you didn't have enough fuel then the
collision will be lethal again. Having your shields up
costs fuel.
Bonus items
During the game you might encounter blue triangles with
red symbols on - these are special bonus items which will
make your life easier. As of today, these items include:
Fuel can More fuel/energy.
Cloaking device
Makes you invisible for other players,
both on radar and on the screen. How-
ever, when you are hit by a shot or mis-
sile or bounce with another player then
you will be temporarily visible again.
Sensors Enables you to see cloakers to a limited
extent. Having more sensors improves
this.
Rear cannon Extra rear cannon.
Front cannons
2 extra front cannons.
Afterburner Your main engine becomes more powerful
and uses your fuel more efficiently.
Rockets Pack of rockets. These may be used as
smart missiles, heat seaking missiles, or
just plain dumb torpedos. Usually these
explode on impact with a small debris
explosion. However, if enabled, nuclear
and/or cluster variants of each may be
possible. See the description of
8
XPILOT
keyToggleNuclear, keyToggleCluster and
keyToggleModifier.
Mine Pack of mines. Can be dropped as either
moving mine (bombing) or stationary mine
(mining). Usually these will explode
when someone else comes within a few
blocks, causing a large debris explosion.
However, if enabled, nuclear and/or clus-
ter variants of each may be possible.
Mines have a little intelligence and will
not explode for the player (or team mem-
bers) who dropped them. However, the
targetting of mines can be effected by
ECMs (unless the server option ecmsRepro-
gramMines is false). If you get close
enough to a mine, you will be able to
sense who the mine is currently pro-
grammed by. Mines dropped by different
players have a different external appear-
ance -- mines dropped by you or your team
show up hollow. Reprogramming does not
change the appearance of a mine, so be
careful because a hollow mine may not be
safe. See the description of keyTog-
gleNuclear, keyToggleCluster, and keyTog-
gleModifier.
Tank Additional fuel tank (perhaps with some
spare fuel). As you pick up more tanks,
your weight increases and you'll have to
compensate by picking up afterburners.
You can change which tank is the `active
tank', that is the one that fuel is
drained from (if this tank is empty, fuel
is drained from all tanks). Refueling is
quicker with more tanks.
To ease filling several tanks in paral-
lel, all the tanks drain into their left
neighbours (0<-1<-...<-8); except your
active tank, which is watertight (it
seems a bit complicated at first, but
trust me, you'll get it eventually :-).
Tanks don't drain if they reach a certain
minimum level (unless of course, you use
it as the active tank).
When you detach a tank it is the active
one that is detached, unless the active
tank happens to be your main tank, in
which the tank with the highest number is
used. The detached tank will have the
shape of a ship and will carry your name,
9
XPILOT
it will immediately start thrusting (as
long as fuel permits) and will fool all
heat-seekers to follow it.
ECM Electronic Counter Measures. ECM allows
you to confuse and re-target smart mis-
siles within a certain range of your
ship. When missiles are zapped by ECM,
they will become confused for a while and
then have a high probability of going
after the player who you were locked onto
when you used the ECM. The ECM will also
cause within a certain range to either
explode or be more likely be temporarily
be blinded such that they do not explode
if you go near them. The closest mine
within ECM range may be reprogrammed to
be safe for you and your team members. If
another ship is within range of the ECM,
all it's sensors will freeze for a while
and if the ship was cloaked, it will
become visible for a while. The ECM is
activated by pressing the keyECM key.
Transporter Enables you to steal equipment and
energy/fuel from the closest fighter,
provided it is within the transporters
range. You activate the transporter by
pressing the keyTransporter key.
Laser Gives you a laser weapon with limited
range. Having more of these increases
the range and the repeat rate of the
laser subsystem.
Emergency Thrust
Gives you a limited amount of super
thrusters, equivalent to a full comple-
ment of afterburners. With a light ship
this is equivalent to hitting hyperspace
or warp factor 9.99. Useful for stopping
quickly or running away fast from a
deadly encounter. The extra thrust capa-
bility is toggled on and off by a seper-
ate key and can thus be saved, the amount
of time remaining is shown by a status
bar below the HUD.
Autopilot Gives you a hover capability. When
engaged an `Autopilot' light will flash
above the HUD. When engaged the autopi-
lot computer will bring the ship to a
hover by the quickest (perhaps not
safest) method possible. It will then
10
XPILOT
leave you in a hover, unless in a strong
gravity field where your engines cannot
cope. Useful for hovering next to a
refuel depot.
Tractor Beam
Not to be confused with a transporter,
this enables you to push or pull the ship
you are currently locked onto. The force
is mutual, and thus if your ship is
lighter than your target you will move
more towards him than him towards you.
Best used with heavy ships to pull then
push annoying players into walls.
Emergency Shield
Gives you a limited amount of extra
shield power, which prevents any fuel
loss from shots, debri, player and wall
collisions, missiles, mines, etc. While
in use, the ship can smash into walls at
any speed and angle without fear of being
killed. The extra shield capability is
toggled on and off by a separate key and
can thus be saved, with the remaining
amount of extra shield power being saved
for later use. Once toggled on, the
extra shield power will take effect and
be used only while the normal shields are
up. Best used when confronted with clus-
ter mines and missles or deadly cannons.
CONTROLS
The game understands quite some keys, but not all of them
are equally important. The following keys are more or
less sorted by importance. The name of the keys are also
the Xresources you use to redefine them, and the words
inside the curly braces {} are their default bindings.
See Xresources section below.
Primary keys
The primary keys are:
keyTurnLeft {a}
Turn left (anti-clockwise).
keyTurnRight {s}
Turn right (clockwise).
keyThrust {right Shift or left Shift}
Thrust me.
11
XPILOT
keyFireShot {return or linefeed}
Fire normal shot.
keyShield {space or Caps Lock}
Raise shield. Must be held down for
continuous use.
keyRefuel {f or left Ctrl or right Ctrl}
Try to connect to nearest fuel station.
Must be held down during refueling.
keyRepair {f}
Repair a target.
Secondary keys
The following commands are not always available,
some require bonus items to have any functionality
at all.
keySelfDestruct {q}
Self destruct. At last we managed to
include a timer, got rid of all those
nasty I'd-rather-die-by-my-own-hands-
than-let-you-kill-me-and-get-all- the-
points pilots.
keyIdMode {u}
Toggle the ID mode. Instead of the
score list it will display the list of
players with their real names and com-
puter addresses.
keyCloak {BackSpace or Delete}
Enable/disable cloaking device if
available. You will be invisible on
both radar and on screen, but beware -
the device is not foolproof, it is not
cheap on your fuel and the only thing
becoming invisible is your ship, i.e.
the exhaust-flames will still be visi-
ble.
keySwapSettings {Escape}
Toggle between two different settings.
You'll probably want more power and a
larger turn rate in combat than when
you're doing some critical maneuvering.
keyDropMine {Tab}
Drop a proximity mine. The mine will
detonate after a certain amount of time
(quite large actually) or when a foe
comes too near.
12
XPILOT
keyDetachMine {bracketright}
Drop a moving mine - that is, a bomb.
keyDetonateMines {equal}
Detonate the mine you have dropped or
thrown, which is closest to you.
keyEcm {bracketleft}
Fire an ECM pulse.
keyChangeHome {Home or h}
Change home base. You will need to be
landed on the base of your choice.
(The Home key is located just right of
the Return key on most HP-keyboards.)
These keys are convenient for HP key-
boards, also somewhat adapted to SUN
keyboards.
keyTankNext {e}
If you have additional tanks, the cur-
rent tank will be the next tank.
keyTankPrev {w}
If you have additional tanks, the cur-
rent tank will be the previous tank.
keyTankDetach {r}
Detach the current tank (or the last
additional tank). Heat-seeking mis-
siles will hopefully follow this tank.
keyPause {p or Pause}
Park or paused hover mode - you can
only park while you're landed on your
own home base, and when you park, you
cannot rejoin the game until the P has
stopped blinking (to prevent users from
using this option to run away from a
battle). If you are not near your base
and you are travelling very slowly the
ship will be brought to a standstill on
autopilot and cannot be unpaused until
the `Autopilot' light stops blinking.
keyFireMissile {backslash}
Fire smart missile if available. The
missile will home onto the player that
you have currently locked on. You must
have a clear lock on a player for this
to work. Requires lock.
keyFireHeat {semicolon}
Fire a thrust controlled missile. Works
13
XPILOT
like a smart missle, but is faster and
ECM isn't able to confuse it. Needs the
thrust for navigating.
keyFireTorpedo {quoteright}
Fire a missile without flight control.
It runs very fast in shot direction.
keyFireLaser {slash}
Fires a laser weapon in the direction
you are pointing. Lasers have limited
range and use a lot of fuel, but they
are instantaneous and therefore much
more deadly than normal shots. The
precise electronics of lasers can be
irretrivially damaged by the high
energy interference generated by enemy
ECMs.
keyToggleNuclear {n}
Pressing this key will toggle through
the following indicators on your HUD
(bottom left), only if nuclear weapons
are allowed;
N All missiles or mines launched from
now are limited nuclear weapons.
FN All missiles or mines launched from
now are full (or fusion) nuclear
weapons.
Pressing the key again clears the
nuclear weapons mode.
You must have eight or more missiles,
or four or more mines to launch a
nuclear missile or mine, and perhaps
enough fuel as well. If you do not a
message will be displayed at the bottom
of the game area explaining why and the
weapon will not be fired.
Firing a full (or fusion) nuclear
weapon completely depletes your stock
of that weapon, limited nuclear weapons
will deplete your stock by eight mis-
siles or four mines.
A nuclear missile or mine fired will
have a mass and explosive power equal
and usually greater than the total num-
ber that were used. Nuclear torpedos
14
XPILOT
are very fast, and all nuclear weapons
explode violently (this may freeze the
server momentarily). After firing a
one off nuclear weapon, the `n' indica-
tor is cleared.
keyToggleCluster {c}
Pressing this key will toggle the
following indicator on your HUD
(bottom left), only if cluster
weapons are allowed;
C All missiles or mines launched
are cluster weapons.
Cluster weapons explode differ-
ently from normal weapons. The
explode with a slower moving
shower of killing shots and not
debris, which may kill or deplete
shields just like a normal shot
fired by your self. Thus, since
cluster debris is deadly to your-
self, you should be careful when
firing such a weapon. After fir-
ing a one off cluster weapon, the
`c' indicator is cleared.
A cluster weapon will also use an
almost equivalent amount of fuel
as if you had fired the shots
using your cannon, and thus large
cluster explosions will use large
amounts of fuel. If you do not
have enough fuel a message saying
so will be displayed at the bottom
of the game area and the weapon
will not be launched.
keyToggleImplosion {i}
Pressing this key will toggle
the following indicator on
your HUD (bottom left), only
if modifiers are allowed;
I All mine and missile
explosions will be implo-
sions instead.
keyToggleVelocity {v}
Pressing this key will
toggle through V1
through V3 and to no
modifier in turn. It
15
XPILOT
affects the speed of
nuclear and/or cluster
explosions, higher modi-
fier numbers produce
lower explosion veloci-
ties, and thus for the
most effective nuclear
cluster explosion a V2
or V3 modifier should be
used.
keyToggleMini {x}
Pressing this key will
toggle through X2
through X4 and then no
modifier in turn. The
number shows how many
miniture mines or mis-
siles will be fired for
every key press. The
sum total damage and
cost of using miniture
weapon is equivalent to
a normal weapon of that
type.
keyToggleSpread {z}
Pressing this key will
toggle through Z1
through Z3 and then no
modifier. The higher
the number the closer
the spread of fire for
minature weapons, it
also affects the spread
of wide and rear shots,
successively narrowing
the stream of bullets
such that V3 is a single
beam of shots.
keyTogglePower {b}
Pressing this key will
toggle through B1
through B3 and then no
modifier. The higher
the number the less pow-
erful a tractor beam is
used, mainly for con-
serving energy or fine
adjustment in pulling
somebody around. The
power setting also
affects the engine to
16
XPILOT
warhead ratio in mis-
siles, a higher setting
will cause each missile
to have more powerful
engines, and thus be
much quicker and more
maneaverable, but at the
cost of a drastically
reduced damage capabil-
ity. However when cou-
pled with other modi-
fiers this can cause
severe psychological
advantages, consider the
effect of trying to out-
run four minuture full
cluster powered up
nuclear smart missiles.
keyClearModifiers {k}
Clears all current modi-
fiers in effect.
keyLoadModifiers1 {1}
Loads the modifiers
stored in bank 1, as set
by the modifierBank1
resource.
keyLoadModifiers2 {2}
Loads the modifiers
stored in bank 2, as set
by the modifierBank2
resource.
keyLoadModifiers3 {3}
Loads the modifiers
stored in bank 3, as set
by the modifierBank3
resource.
keyLoadModifiers4 {4}
Loads the modifiers
stored in bank 4, as set
by the modifierBank4
resource.
keyToggleAutoPilot {h}
This toggles the autopi-
lot feature. You need
atleast one Autopilot
item before this will
work.
17
XPILOT
keyToggleEmergencyThrust {j}
This toggles the emer-
gency thrust item. You
need at least one emer-
gency thrust item, on
first turning this on
the item is used up and
ten seconds or so of
emergency thrust is
placed at your disposal.
The time is only used up
as you thrust, and hit-
ting this key will
return you back to nor-
mal thrust while con-
serving the remaining
boosted thrust. If you
posses both Autopilot
and Emergency Thrust
items, pressing the Meta
or Alt keys will give
the equivalent of emer-
gency brakes.
keyToggleEmergencyShield {g}
This toggles the emer-
gency shield item. You
need at least one emer-
gency shield item. When
first turning on, this
item is used up and ten
seconds or so of emer-
gency shield power is
placed at your disposal.
The time is only used up
as you use your regular
shields, and hitting
this key again will
return you back to nor-
mal shield power while
conserving the remaining
emergency shield power.
keyTractorBeam {comma}
This will engage any
tractor beam items on
the player who you hold
a lock on, it causes a
mutual attractive force
between you and them,
causing both players to
move towards each other.
18
XPILOT
keyPressorBeam {period}
This will engage any
tractor beam items on
the player who you hold
a lock on, it causes a
mutual repulsive force
between you and them,
causing both players to
move away from each
other.
keyTalk {m} Pressing this key will
toggle between the talk
window being shown below
the HUD. If your mouse
pointer is outside the
window you will still
have full control of
your ship and pressing
the talk key will disap-
pear (the current mes-
sage will not be lost).
If you position your
mouse pointer within the
window you can type a
message using the key-
board, however you ship
will no longer respond
to key presses. The
following special keys
are available;
Return Linefeed
This finishes and
sends the message.
The talk window is
also removed from
the screen and the
message text
cleared.
Backspace Del
These keys delete
the last character.
Ctrl-W
This deletes the
last word.
Ctrl-U
This deletes the
entire line of text.
Esc This removes the
19
XPILOT
talk window without
clearing the text.
This is useful if
you are typing a
message and some-
thing important in
the game happens
that requires you to
control your ship.
Messages will usually be
sent to every player
logged in, including
yourself. Messages
received will always
appear in the bottom of
the Game area, and will
look like;
<<Viper shouts>> Hello world.
However you can send
messages to individual
players or teams by
starting the message
with the player's name
(or enough character
from the beginning of
their name to make it
unique) or team number
followed by a colon, and
then the message. Just
placing a colon at the
start of the message
will send it to every-
one. For example;
vip: Hello
will send a message to
only one player who's
name begins the letters
vip (the case does not
matter).
keyToggleCompass {y}
Turns of the HUD
compass display.
keyLockClose {Select Up}
Will lock onto the
closest player if
he/she is within
range.
20
XPILOT
keyLockNextClose {Down}
Will lock onto the
next closest player
after the currently
locked player.
keyLockNext {Next Right}
Will, if possible,
lock onto the next
player in the game.
keyLockPrev {Prior Left}
Will, if possible,
lock onto the pre-
vious player in the
game.
keyConnector {Control_L}
Use connector (for
the moment, all
this is used for is
picking up trea-
sures/balls).
keyDropBall {d}
Drop the ball if
you are carrying
it.
These keys let you adjust the
control sensitivity:
keyIncreasePower {KP_Multiply}
Increase engine
power.
keyDecreasePower {KP_Divide}
Decrease engine
power.
keyIncreaseTurnspeed {KP_Add}
Increase turn
speed.
keyDecreaseTurnspeed
{KP_Subtract}
Decrease turn
speed.
keyToggleOwnedItems {o}
Causes all owned
bonus items to be
shown either con-
stantly or for a
21
XPILOT
brief period after
they change in
amount on the HUD.
keyToggleMessages {0}
Causes messages to
be shown or not
shown.
keyReprogram {quoteleft}
Reprogram a modi-
fier bank or lock
bank.
keyLoadLock1 {5}
Load player lock
from bank 1.
keyLoadLock2 {6}
Load player lock
from bank 2.
keyLoadLock3 {7}
Load player lock
from bank 3.
keyLoadLock4 {8}
Load player lock
from bank 4.
keyToggleRecord {KP_5}.
Toggle recording of
session to file
(see the recordFile
option). This
recording can later
be reviewed with
the xp-replay()
program
keyPointerControl {KP_Enter}
Toggle mouse
pointer control.
keySelectItem {KP_0 KP_Insert}
Press repeatedly to
select an item to
drop. A small
rectangle will be
drawn around the
item you can drop.
Use the keyLoseItem
key to actually
drop the item.
22
XPILOT
Note that you can-
not select tanks to
drop, tanks can
only be released
(see the keyTankDe-
tach option).
keyLoseItem {KP_Delete
KP_Decimal}
Drop the item
selected with the
keySelectItem key.
The server can
either delete the
item or drop it
back into the map
depending upon the
value of the
loseItemDestroys
option.
Mouse control
There are up to five mouse but-
tons available to define as
keys:
pointerButton1 {keyFireShot}
Define which keys
are pressed when
mouse button one is
pressed.
pointerButton2 {keyThrust}
Define which keys
are pressed when
mouse button two is
pressed.
pointerButton3 {keyShield}
Define which keys
are pressed when
mouse button three
is pressed.
pointerButton4 {}
Define which keys
are pressed when
mouse button four
is pressed.
pointerButton5 {}
Define which keys
are pressed when
23
XPILOT
mouse button five
is pressed.
X RESOURCES
At startup xpilot will look for X resources in several
places. First it looks in the LIBDIR (as defined during
compilation, mostly as something like
/usr/local/games/xpilot/lib/) for the file named XPilot.
After that it looks for more resources in
/usr/lib/X11/$LANG/app-defaults/XPilot, $XUSERFILESEARCH-
PATH/XPilot, $XAPPLRESDIR/$LANG/XPilot, $HOME/app-
defaults/$LANG/XPilot, resources set using xrdb or else
$HOME/.Xdefaults, host specific resources in the file
pointed to by $XENVIRONMENT or else in $HOME/.Xdefaults-
hostname and finally in $HOME/.xpilotrc. If the LANG
environment variable is undefined or if that file doesn't
exist then it will look for the file as if LANG had been
undefined. Resources defined in files listed later will
override resources in files listed earlier. If the XPI-
LOTRC environment variable is defined then its value is
used instead of $HOME/.xpilotrc. All of these resources
can be overridden by their corresponding command line
arguments.
name Nick name of your player.
team Preferred team number.
port Set the port number of the server.
Almost all servers use the default port,
which is the recommended policy. You can
find out about which port is used by a
server by querying the XPilot Meta
server.
power Primary power setting of your engine.
Primary in this context means that it is
part of the default setting, secondary
means the other setting (two different
settings are available, pressing Esc will
switch between them). You may change
"sensitivity" of your ship by adjusting
these parameters. Often you would like
one setting to be more "rough" than the
other - one setting for fine maneuvering
and one for racing. (Default 45.0)
turnSpeed Primary turnspeed setting of your ship.
(Default 30.0)
turnResistance
Primary turnresistance setting of your
ship. This value determines how fast
24
XPILOT
your ship will stop rotating, i.e. the
rotating speed of your ship is set equal
to itself multiplied by this value.
Obviously the value has to lie between
0.0 (exclusive) and 1.0 (inclusive).
(Default 0.12)
altPower Secondary power setting of your engine.
(Default 35.0)
altTurnSpeed
Secondary turnspeed setting of your ship.
(Default 25.0)
altTurnResistance
Secondary turnresistance setting of your
ship. (Default 0.12)
shipShape Define the ship shape to use. Because
the argument to this option is rather
large (up to 500 bytes) the recommended
way to set this option is in the .xpi-
lotrc file in your home directory. The
exact format is defined in the file
README.ships in the XPilot distribution.
Note that there is a nifty tool called
editss for easy ship creation. See the
XPilot FAQ for details. See also the
shipShapeFile option.
shipShapeFile
An optional file where shipshapes can be
stored. If this resource is defined and
it refers to an existing file then ship-
shapes can be referenced to by their
name. For instance if you define ship-
ShapeFile to be /home/myself/.shipshapes
and this file contains one or more ship-
shapes then you can select the shipshape
by starting xpilot as:
xpilot -shipShape myshipshapename
Where "myshipshapename" should be the
"name:" or "NM:" of one of the shipshapes
defined in /home/myself/.shipshapes.
Each shipshape definition should be
defined on only one line. All characters
up to the first left parenthesis are
ignored.
fuelNotify The limit when the HUD fuel bar will
become visible. (Default 500.0)
25
XPILOT
fuelWarning The limit when the HUD fuel bar will
start flashing. (Default 200.0)
fuelCritical
The limit when the HUD fuel bar will
flash faster. (Default 100.0)
showHUD Should the HUD be on or off. (Default
true)
verticalHUDLine
Should the vertical lines in the HUD be
drawn. (Default false)
horizontalHUDLine
Should the horizontal lines in the HUD be
drawn. (Default true)
speedFactHUD
Should the HUD me moved, to indicate the
current velocity. Negativ values will
inverse the moving of the HUD. (Default
0.0)
speedFactPTR
Uses a red line to indicate the current
velocity. On edge of the line is the cen-
ter of the ship. The other end is moved
in the same way, as the HUD, if speed-
FactPTR is set.
charsPerSecond
This determines the speed in which mes-
sages are written, in characters per sec-
ond.
markingLights
Should the fighters have marking lights,
just like airplanes?
sparkProb The chance that sparks are drawn or not.
This gives a sparkling effect. Valid
values are in the range [0.0-1.0]
sparkSize Size of sparks in pixels.
shotSize Size of shots in pixels.
teamShotSize
Size of team shots in pixels. Note that
team shots are drawn in blue.
showShipName
Should all ships have the name of the
26
XPILOT
player drawn below them.
showMineName
Should the name of the owner of the mine
be drawn below the mine.
showMessages
Should messages appear on screen.
showItems Should owned items be displayed perma-
nently on the HUD, or only when their
amount has changed?
showItemsTime
The time in seconds to display item
information when it has changed and the
showItems option is turned on.
clock Display a small digital clock.
clockAMPM Displays clock in 24hr or 12hr format.
(Default: False)
noLocalMotd Do not display the local Message Of The
Day.
autoServerMotdPopup
Automatically popup the MOTD of the
server on startup.
toggleShield
Have the shield status be changed only by
a key press and ignore the key release.
autoShield When this option is on then shields are
lowered automatically when firing a
weapon or dropping a mine. After the
firing the shields are raised again too.
shieldDrawSolid
Are shields drawn in a solid line. Not
setting a value for this option will
select the best value automatically for
your particular display system.
fuelMeter Determines if the fuel meter should be
visible. This meter visualizes your fuel
level in a different way than fuelGauge
does.
fuelGauge Determines if the fuel gauge should be
visible. See fuelMeter.
27
XPILOT
turnSpeedMeter
Should the turnspeed meter be visible at
all times. (Default false)
powerMeter Should the power meter be visible at all
times. (Default false)
backgroundPointDist
Specifies the block distance between
points drawn in the background, used in
empty map regions. 8 is default, 0 means
no points.
backgroundPointSize
Specifies the size of the background
points. The default is 2, 0 means no
points.
titleFlip Should the title bar change or not. Some
window managers like twm may have prob-
lems with flipping title bars. Hence
this option to turn it off.
slidingRadar
If the game is in edgewrap mode (see xpi-
lots()) then the radar will keep your
position on the radar in the center and
draw the rest of the radar around it.
This requires very good X performance and
a pretty fast workstation. Default is
off.
outlineWorld
Draws only the outline of all the blue
map constructs.
filledWorld Draws the walls solid. Needs a fast
graphics system.
texturedWalls
Draws the walls filled with a texture
pattern. See also the wallTextureFile
option. Be warned that this needs a very
fast graphics system.
wallTextureFile
Specify a XPM format pixmap file to load
the wall texture from.
texturePath Optional search path for XPM texture
files. This is a list of one or more
directories separated by colons.
28
XPILOT
packetSizeMeter
Turns on a meter displaying the maximum
packet size of the last few seconds.
packetLostMeter
Turns on a meter displaying the percent-
age of packets lost in the last second
due to network failure (overload).
packetDropMeter
Turns on a meter displaying the percent-
age of packets dropped due to your dis-
play not being able to keep up with the
rate at which the server is generating
frame updates. If possible lower the
frame update rate of the server with the
-fps option.
receiveWindowSize
Specifies how big the receive window
should be. See NOTES below.
sounds Specifies the sound file. (Only if sound
is enabled.)
maxVolume Specifies the volume to play sounds with,
where 0 turns off sound. (Only if sound
is enabled.)
audioServer Specifies the audio server to use. (Only
if sound is enabled.)
geometry Specifies the geometry to use like:
-geometry 1280x1024+0+0.
keyboard Set the X keyboard input if you want key-
board input from another display. The
default is to use the keyboard input from
the X display.
recordFile An optional file where a recording of a
game can be made. If this file is unde-
fined then recording isn't possible. See
the keyToggleRecord option for how to
make recordings.
visual Specifies which visual to use. You can
see which visuals your display supports
by running: xpilot -visual list.
mono Turns on mono display type.
colorSwitch <true/false>
Tells xpilot to use a color switching
29
XPILOT
display technique or not. Default is
true if your display hardware has enough
colors available.
maxColors Tells xpilot how many colors you want it
to use. Default is 4, with a maximum of
16. Valid values are 4, 8 and 16.
targetRadarColor
Which color number to use for drawing
targets on the radar. Valid values all
powers of 2 smaller than maxColors.
hudColor Specifies which color index to use for
drawing the HUD. The value for this
option is a number ranging from 1 till
the maxColors value.
hudLockColor
Specifies which color index to use for
drawing the lock dot on the HUD. The
value for this option is a number ranging
from 1 till the maxColors value.
wallColor Specifies which color index to use for
drawing the walls. The value for this
option is a number ranging from 1 till
the maxColors value.
sparkColors A list of color numbers to use for draw-
ing sparks and debris of varying tempera-
ture.
gameFont The font used on the HUD and for nearly
all text part of the game field.
messageFont The font used for messages displayed in
the bottom left corner of the game field.
scoreListFont
The font used on the score list. Must be
non-proportional.
buttonFont The font used on all buttons.
textFont The font used in the help and about win-
dows.
talkFont The font used in the talk window.
motdFont The font used in the MOTD window and in
the key list window. This must be a non-
proportional font.
30
XPILOT
black Specifies the color to use for black.
Default is #000000 which is equivalent to
specifying Black.
white Specifies the color to use for white.
Default is #FFFFFF which is equivalent to
specifying White.
blue Specifies the color to use for blue.
red Specifies the color to use for red.
color0 Specifies the color to use for color 0.
One can specify colors up to color15 this
way. Black, white, blue and red are
equivalent to color0, color1, color2 and
color3 respectively.
INVOCATION EXAMPLES
The simplest invocation of the hand-shake program is to
just type:
xpilot
This will force the program to search after a server on
all the machines on your attached network.
Say you know where the server is, and you don't want to be
prompted (handy in scripts etc.), you may type for exam-
ple:
xpilot -join lglab08
where lglab08 is the name of the host running the
server.
In the examples above your name would be your login name.
Let's say you want to be really cool and your login name
is gudmari, well - you're in loads of trouble if you don't
know about the -name option;
xpilot -name FireEater
will fix the problem for you.
NOTES
For credit list, see the provided CREDITS file.
31
XPILOT
If the client crashes, you will be without autorepeat on
your keyboard. To re-enable autorepeat, issue this com-
mand:
xset r
Please also note that xpilot can be addictive, and stre-
nous for both you and your keyboard. We take no responsi-
bility. :)
There is a meta server running on meta.xpilot.org, port
4400, into which all servers registers. This way you can
easily check if there are any servers running nearby. To
use it, try:
telnet meta.xpilot.org 4400 help list
Or:
telnet meta.xpilot.org 4401
If you experience any problems with `jerkiness', you
should try to adjust the receiveWindowSize Xresource. The
problem may be that your X server can't display as fast as
the XPilot server is generating new frame updates. So
another option is setting the number of frames for the
server to a lower number or get a faster X display system
:)
The receiveWindowSize resource allows you to tune the
buffering of frame updates a little. When set to one then
there is no buffering and xpilot will just read the next
frame and display it. When the display is slower than the
XPilot server this may give all sorts of problems like
lagging behind and lack of keyboard control.
When you set receiveWindowSize to two then xpilot will
always try to read a second frame from the network and if
this succeeds it will discard the oldest frame. A better
number for receiveWindowSize is three which will discard
the oldest frame out of three and therefore be less sub-
ject to small changes in network delivery times. If your
display is fast enough and can keep up with rate at which
the server is generating frames then specifying a value
bigger than one will not result in dropping frames, but
rather will it be a buffer for small changes in network
performance and computer load. The maximum value of
receiveWindowSize is four.
32
XPILOT
ENVIRONMENT
If XPILOTRC is set then its value is used instead of
$HOME/.xpilotrc to find the file containing the XPilot
resources. XPILOTUSER and XPILOTHOST set the loginname
and hostname as reported to the xpilots server.
AUTHORS
XPilot was developed by Bjrn Stabell <bjoern@xpilot.org>
and Ken Ronny Schouten <ken@xpilot.org> from the Univer-
sity of Troms, and Bert Gsbers <bert@xpilot.org> from the
University of Amsterdam.
BUG REPORTS
The product is seemingly stable, so bug reports are highly
appreciated. Send email to xpilot@xpilot.org and we will
see what we can do. We merely ask that you remember to
include the following information:
+o The platforms the bug occurs on
+o What kind of display you have (depth, color, type)
+o Which Xresources you're using.
+o The full version of XPilot, i.e., 3.6.1
+o What the bug looks like (symptoms)
+o When the bug usually occurs
We would also like to receive changes you do to make the
code compile on your machine (we would NOT like to receive
the whole program translated to K&R C, keep it ANSI :) If
you don't have an ANSI compiler, there are several utili-
ties which may help you de-ANSI-fy the code (unproto,
unprotoize etc), but a better solution will be to install
the GNU C compiler on your system.
COPYRIGHT & DISCLAIMER
XPilot is Copyright 1991-96 by Bjrn Stabell, Ken Ronny
Schouten & Bert Gijsbers. XPilot comes with ABSOLUTELY NO
WARRANTY; for details see the provided LICENSE file.
FILES
/usr/lib/X11/motd Message of the
day.
/usr/lib/X11/sounds File containing
the sound to
sound-file map-
ping.
33
XPILOT
SEE ALSO
xpilots(), xp-replay()
34