T H E _____ _____ _ _ _ / ____\ / ___ \ || || || | | | | | | \\ /\ // | |___ | |_| | \\//\\// \_____/ o \_____/ o \/ \/ o R E F E R E N C E M A N U A L
COW Written by: Chris Guthrie, Ed James, Scott Silvey, and Kevin Smith, Tedd Hadley, Andy McFadden, Eric Mehlhaff, J. Mark Noworolski, Nick Trown, Lars Bernhardsson, Sam Shen, Rick Weinstein, Jeff Nelson, Jeff Waller, Robert Kenney, Steve Sheldon, Jonathan Shekter, Dave Gosselin, Heiko Wengler, Neil Cook, Kurt Siegl and many others.
COW is a rather feature-laden (some would say "bloated") client. There are also a lot of things that can be configured. This manual includes a complete xtrekrc reference and a list of every keyboard command. If you want to know something about COW in particular, you'll find it here. (Incidentally, more than 90% of the information here is also applicable to other clients, so this file makes a good general-purpose client manual.)
Sit back, take your socks off, and enjoy!
d Detonate enemy torps. All enemy torps within a certain range will
explode. They do as little as a quarter of their normal damage at maximum
det range. Detting is useful for protecting another ship, causing damage to
other ships (if you can manage to det enemy torpedos fired by one enemy
over another) or preventing torps from hitting you. Use it carefully,
though: if there are many torps nearby and only one or two will actually
hit you, it is better to let them hit than det, as one direct hit will do
less damge than say, 5 detted torps, each at minimally 1/4 normal damage,
probably more.
D Detonate your torps. It does not do damage to anyone.
But it will enable you to fire again if you have 8 torps active
(the maximum.) This is not a very good idea however as you will be wastring
gobs of fuel firing and then detting useless torps.
f Fire plasma torpedo. You need at least 2 kills, and must be flying a
BB/DD/CA to do this. Plasma torpedos are tracking, but they can be shot
down fairly easily by phaser. They do a lot of damage but use a lot of
fuel. Note also that when they are shot down they explode and ships that
are too close can take damage.
p Fire phaser. The mouse cursor specifies direction.
s Toggle shields
t Fire photon torpedo. The mouse cursor specifies direction.
u Toggle shields
T Toggle tractor beam. The mouse indicates the target. This pulls the
target towards you but uses a lot of fuel and raises your engine temp.
Since tractors are very useful and hitting shift-T is inconvenient, many
players map lowercase t to this function (see the section on keymaps.)
y Toggle pressor beam. Same as tractor (see 'T') but pushes.
_ (underscore) Turn tractor beam on. Mouse indicates target.
^ Turn pressor beam on. Mouse indicates target.
$ Turn tractor or pressor beam off.
k Set course. The mouse cursor specifies direction.
l Lock onto object. The mouse cursor specifies what; it can be either a
ship or a planet. A small triangle indicates the lock, and you will fly
towards that object. If it is a planet or SB you will orbit / dock when you
arrive.
; Like l but only locks onto planets and starbases (things you can orbit
or dock at)
* Send in practice robot, if there's no one else playing. On many
servers, this is also the key for starbase transwarp. This is Really Cool.
Lock onto your SB, go no faster than warp 2, hit transwarp, and you will go
warp 99 until you reach the SB (at which point you will dock), run out of
fuel, or die. This is handy for reaching the front lines fast. Not all servers
support this.
C Try to coup your home planet. This is a way to get back your home planet
if you have no other planets. Only possible after a genocide without a server
reset, then everyone leaves, losing T, and people join the team that lost
again. You must have kills and be orbiting it.
o Enter orbit or dock. You must be going no faster than warp 2 and be on
top of a planet or starbase.
x Beam armies down to planet (yours or enemy) or a starbase. You must be
orbiting or docked to the planet or stabase in question.
z Beam armies up from friendly planet or starbase. Again, you must orbit
or dock.
F Send armies carried report
m Start sending message. After hitting this key type the destination
(0..9 and a..j = specific player, F/R/K/O = specific team, T = your team,
A = all) and then the body of the message. Hit enter to send or escape to
abort.
X Enter macro mode. After pressing the macro key, you can send the
macros you have assigned to those keys. See the section on macros. You also
have available all the standard distress calls. Both the distress format
and key can be changed (see: RCD). See the sections on Macros and RCD for
specifics, including what the default macros are.
^0..^9
The distress calls are all mapped to similar control keys. For
example, instead of pressing <macro>0 to send an armies carried report, you
can use ^0. See the section on RCDs for available distress calls / reports.
i or I Get information on object near mouse. Uppercase shows different
info than lowercase. You can use this to, for example, find out how many
armies are on a planet, where a player is logged in from, how many kills
they have, or whether a planet is agricultural.
K Show Kathy Ireland
N Toggle short/long planet Names display on tactical window.
r Refit. Use this to change your ship type. You must be orbiting your
home planet (Earth for Fed, Romulus for Rom, Klingus for Kli, Orion for
Ori) or your team's SB. After pressing r, press the key corresponding to
the ship type you want (s=scout, d=destroyer, c=cruiser, b=battleship,
a=assault, o=starbase/outpost)
R Enter repair mode. This sets you at warp 0, and turns off shields and
cloaking. Damage is repaired faster than normal in this state, but you
cannot fire. To exit repair mode, raise shields or start moving. The
fastest way to repair yourself is to do this while orbiting a repair
planet or docked on an SB. When you are in repair mode a little R will
appear in your flags and you will not be able to fire or cloak.
w Change war declarations. This is important. Your weapons will not lock
or explode on ships belonging to races which you are not at war with, and
you will take damage if you orbit planets of hostile races. So, declare war
with your enemy and peace with everyone else (so you can use their fuel and
repair planets.) Note that if you change your war settings while an enemy
is on the screen you will be unable to do anything for about ten seconds
while "the computers get reprogrammed." The moral of this is: declare war
before you go into battle. Note that you start out hostile to everyone, so
if you forget before your first engagement it's not too critical.
q Quit, don't re-read MOTD ("fastquit").
: Toggle message logging. Saves all messages to a file so you can laugh
at them later.
- Request partial update (see the section on UDP and Short Packets)
= or | Request full update (see the section on UDP and Short Packets)
& Re-read xtrekrc file
h Toggle help window. Display a brief summary of these commands, as well
as what key each command is currenly assigned to.
L Toggle player window. This lets you see the names of the players,
their stats, and, most importantly for defending planets, their kills.
/ Toggle between new and old playerlist format
M Toggle tools window
O Toggle options window. There are many neat things here, most of which
are configurable via the xtrekrc file. Experiment! This is a really useful
command.
P Bring up the Planet window. Lists all planets, owner, who has info on
them, number of armies, and facilities at each.
S Toggle stats window. This is a larger version of your dashboard, sort
of. Kind of big and annoying and I don't like it but you might.
U Toggle rank window. Shows you what ratings you need for promotion.
V Cycle through tactical planet display options. Possible options are
show nothing, show owner, or show resources (the most useful, as on a color
display you can tell owner by color.)
~ Toggle sound control window
. Toggle network stats window
\ Toggle lagmeter
, Toggle ping stats window
` Toggle short packets control window
+ Toggle UDP control window.
? Cycle through show nothing / show one big message window / show three
message windows.
<space> Turn off all special windows (planet, rank, help, udp, etc.)
The Metaserver
To access the MetaServer, use the command line switch "-m". For
example "cow -m". To access the MetaServerCache, use the "-k" switch
instead.
1) Where to find the MetaServer:
You can use the options "metaport" and "metaserver" to point COW
to a new MetaServer. The defaults for these options are:
Before you can use the MetaServerCache, you must give COW a file in
which to cache the information from the MetaServer. Use the .xtrekrc
option "metaCache" to specify this file. The files path will be
relative to your home directory unless you start the file name with a
slash (/).
For example, to set the cache file to "~/.metaCache" use:
Warning: If "metaCache" is set, COW will also use a second, temporary
file. This file with have the name of the metaCache file with the
last character changed to either a 'T' or an 'R'. Eg, ".metaCache"
becomes ".metaCachT" and "BEAST" becomes "BEASR". Ensure that this
temporary file does not overwrite something important.
3) How much information will be shown:
You can now control the amount of information that the MetaServer
displays for you by setting the "metaStatusLevel" flag. The default
is:
NOTE2: If you are a long way from the MetaServer, you are advised to
ignore TimeOut errors. For example, the MetaServer in America may
have difficulty contacting to a server in Holland while the link from
England to Holland is very good.
3) The Fallback
If you attempt to contact the MetaServer, and the connection times
out, COW will try to show the MetaServerCache instead.
Similarly, if you attempt to use the MetaServerCache, and your
"metaCache" file does not exist, COW will attempt to call
theMetaServer.
The benefits of this feature include the ability to change
displays, recompile code (if you happen to be a code hack),
or simply recover from a core dump.
In order to use it, you have to pay attention to two numbers
which are displayed when you connect to the server. A line
like this appears:
This indicates which player slot you have been assigned, and
which socket number has been chosen as your ghostbust socket.
Now in order to restart, just do:
The important options are -G followed by the player slot you
occupy, and -s followed by the ghostbust socket. Notice that
you don't even specify a server!
This feature may NOT work on all servers. Many server gods use
server code which is too old to support this feature. Also,
keep an eye out for small details that are off. It is NOT
logically possible to account for everything with this feature.
Such things as the motd are not resent by the server when you
connect, so you won't have that around anymore. Further, the
client won't know who it is even connected to (see above), thus
don't be shocked if the client claims you are connected to a
bogus server.
WARNING: Some servers have *very* short ghostbust timeout
periods. You must reconnect before this timeout expires or
your slot will be given to someone else, you won't be able
to reconnect. On most servers it is around 6 minutes long.
Note to experts: The server will reverify clients using whatever
available means it has, including RSA or reserved.c when a ghostbust
occurs and therefore whenever this feature is used.
There is an .xtrekrc option called "playerlist". What it allows
you to do is specify which columns of the player list you want to show
and in what order. The following is a table of the available columns.
playerlist: NR
NOTE ON SB STATS :
1) Predefined "playerlist" styles:
For your viewing pleasure we have predefined some playerlist layouts
that you might like to try. These predefined styles can be selected
using the "playerListStyle" option in your .xtrekrc or by using the
options menu (shift-O).
The "playerListStyle" options are:
2) The "partitionPlist" option:
Lets face it, the main role of the player list is so that you can keep
track of who has kills.
To make life easier, the player list is sorted so that enemy and
friendly teams are always in the same place in the list. However, in
mono it is not immediatly obvious where one team starts and another
team ends. If the "partitionPlist" option is "on", white space will
be added to the player list to separate your teams from the other
teams and the players entering the game. In color, this option is not
usually required because the teams are distinct anyway.
In order to even the playing field, the current feature was proposed.
This feature causes certain types of RCD messages to beep or even
highlite specific objects on the screen. This is done via a
macro-like interface which is highly configurable. Further, bitmaps
used to highlite can be substituted with your preferences.
1) Turning Beeping and Highliting on
In order to turn message beeping and highliting on, you must include
the following in your .xtrekrc.
WARNING: Use beep _sparingly_, people (including you) will get sick
very quickly of hearing your workstation beep every 5 seconds.
2) Configuring via xtrekrc
Message beeps are configured as on and off. They are turned on
if the proper line is in your .xtrekrc. Otherwise they are left off.
Message lites are configured in a way very similar to macros.
However, in addition to the original set of macro arguments, a new
class of arguments is introduced to handle the highliting.
To configure message highliting, include something like the line
below. Here "name of distress" is the RCD message type. "macro" is
the macro style syntax specifying what is to be highlited.
"taking" message highlites the planet and taker
"base_ogg" message highlites the person to sync and your ship
(to REALLY get your attention)
"pickup" message highlites the enemy who picked up
"help" tests to see if the player sending the distress is a base, if so
he is highlited
You might like to change the last one to:
Using TTS you may change the pickup macro to:
Note that all the MACRO parsing routines are run on these, and plain
text left over is ignored. Only the highlite argument matter.
The following are the arguments for highliting:
The xtrekrc value warnHull enables this extension, the defaults value
is off.
Example xtrekrc value:
You get:
Since this is a first pass, I'm looking for more input on what
would make them better. Here are some of my comments:
1) Lines are hard coded into the software. They should be
based upon planet location, so the hockey gods can move the
planets around.
2) You either have them all or none. Perhaps the set of
desired lines should be configurable from the xtrekrc. Also,
you cannot change the colors.
3) Lines on the galactic would look pretty
If you have any comments, mail them to kantner@hot.caltech.edu
You may execute any Unix shell comand within the client. Read your mail
now within the client. To do so, just send a message to the destination
"!" and you get a shell prompt. Enter the comand and it's output will
be displayed in the tools window. Works also with macros to "!".
You may disable it in the .xtrekrc for security reasons with shellTools: off
CAUTION: The client will be blocked for the time the comand is executed.
Also some programs suspend the client if it is started in the background.
The personalized cursor extensions allows the user to specify
their own cursors for the map, local, text, menus and info list windows.
This may now work on all machines. I know of at least one X terminal
which this doesn't work properly for. It works fine on my sun:)
For infoCursorDef, textCursorDef, arrowCursorDef an optional mask may
be specified. To specify a mask, first create your new cursor, say called
mycursor, then create the mask and call it mycursor.mask. They both need to
be on the same path. Cursor and mask *must* be the same size, if not the
cursor cannot be used (why anybody would want to do this makes no sense,
but... :)
These are the xtrekrc values:
Each pair of characters assigns the key specified by <key> to perform the
function originally assigned to the key specified by <function>. For
example, to map toggle tractor (T) to 't', and set max warp (%) to 's', you
would use
Any combination of normal keys and control keys can be mapped to one
another. In other words, you can map from control key to control key,
control key to normal key, normal key to normal key, and normal key
to control key.
New format for ckeymap is:
Each entry is a pair, like:
Notes:
Analogously, control keys may be used for buttonmap, singleMacro and
all macro and RCD definitions.
[WinCOW only: color names should be specified without spaces]
Race Colors: For those of you who like different colors than the defaults
but are tired of going on "Purple Alert", it is possible to define race
colors separately from the alert colors:
You can also send multiline macros, for example:
If there is some macro you want to activate without hitting the macro
mode key first, you can add it to the singleMacro option. For example, to
make the above two macros single key macros (which might be a bad idea as
you would then have now way to use the info window normally activated by
'i'):
Here is the idea: A player should be able to include in his/her macros
whatever reasonable information is available. And configuring its display
in whatever way is desired. In order to do this, the following syntax is
used (while remaining completely compatible with old NBT macros).
A key is assigned in the defaults file (ie .xtrekrc, etc) by a line
like:
Note, this is NOT printf syntax! Any attempt to use formatting will
fail miserably. Maybe in the future someone will want to develop a means
of formatting the variables used in macros, but the only means I can think
of are both bulky and ugly.
Here is another example:
Also '?' can still not be used as a macro key. The following
definitions will work in a macro (where 'target x' = whatever x the mouse
cursor is closest to when the macro is sent):
Further, tests may be done within the macro system, the syntax for
these test is as follows.
Test are then fed to a syntax I call conditional text. The best way
to demonstrate how this works is example.
Here are a few more samples to work from:
Receiver configurable distress calls have been added to the client
and use a MACRO-like syntax.
In order to change which key you would like a message to map to, all
you have to do is use either keymap like you have always done, or ckeymap,
a new feature introduced to accomodate the massive number of new functions
(ie message sending) that have been added in this client. Please see the
ckeymap section of this document for more information on that.
In order to change *how a message appears to you* a line such as the
following should be in your defaults file:
You MAY NOT affect how a message appears to anyone else, this is
against the basic concepts of RCD.
The format of the messages is:
msg.[name of message]: [RCM macro]
Available messages and their defaults are:
All these examples assume: you are player F0 (%T%c), alias "Twinky"
(%i), flying a CA (%S), carrying 3 (%a) armies, with the mouse closest to
Cassiopia (%l or %L), which has 5 (%n) armies. The nearest friendly player
to the mouse is player Fc (%T%g) and the nearest player of any team to the
mouse cursor is player 06 (%p). You yourself are near Beta Crucis.
In order to change the message,
1. Did you receive RC_DISTRESS when you logged in?
The server must send this to the client to tell the client that it
understands RCD messages. Otherwise the client will just send the standard
formatted RCDs.
Some clients have a mod which shows you whether RC_DISTRESS is on by
looking at the first line of the macro window. If it says, "Packages
active: NBT, NEWMACRO, SMARTMACRO", you have no guarantee that RCD was
turned on by the server. If it says, "Packages active: NBT, NEWMACRO,
SMARTMACRO, RC_DISTRESS" then RCD is definitely on. Don't worry about #1,
go to #2.
2. Are any MACROs assigned to the same key as the RCD you are
configuring?
If this occurs, you will see the macro and NOT the RCD.
3. Are any other RCDs assigned to the same key as the RCD you are
configuring (this includes the DEFAULT RCDS!!) ?
If this occurs, you will see whichever RCD happens to be listed first
when the client examines the RCD list.
The following is an alphabetical list of every option that can be set in the
netrekrc file. The values immediately following the option names are the
default value of the option if not set.
If "playerListStyle" is set, newPlist is ignored.
For examples of all of these, see the example netrekrc.
This is an insanely long netrekrc (or xtrekrc, same thing). It has
almost all the options available in COW in it. It is not really meant to be
used as is! It is meant to be an example and to be edited down to what
you need. Why shouldn't you use it? Well, you can, but there are a lot
of lines that just set things to their defaults and this serves no purpose,
just makes the client load slower and take up more memory.
1.1 Acknowledgements
Many people have contributed to COW and many many others contributed
to its ancestor clients. Here is an undoubtedly incomplete list of credits
presented in no particular order. Where possible their typical netrek name is
provided in the hope that you will ogg them:
Scott Silvey
Kevin Smith
Rick Weinstein
J. Mark Noworolski Passing Wind
Tedd Hadley pteroducktyl
Heiko Wengler Musashi
Andy McFadden ShadowSpawn
Chris Guthrie
Ed James
Eric Mehlhaff
Nick Trown Netherworld
Lars Bernhardsson lab
Sam Shen
Rick Videodrome
Jeff Nelson Miles Teg
Jeff Waller
Robert Kenney Zhi'Gau
Steve Sheldon Ceasar
Dave Gosselin Tom Servo
Kurt Siegl 007
Kevin Powell seurat
Alec Habig Entropy
Jonathan Shekter KillThemAll!
2. Command Line Options
Summary of command line options available for COW:
u (existance) prints usage information for the client
C (string of chars) name to auto-login with
A (string of chars) password to auto-login with
c (existance) checking - this will check server_port-1 and spew out
a list of all players currently playing on that server - not all
servers are intelligent enough to do this
s (integer) passive port to use, useful to attempt a manual reconnect
after a ghostbust. Used in conjuction with -G, see section 4.5
G (integer) passive player slot to use, useful to attempt a manual reconnect
after a ghostbust. Used in conjuction with -s, see section 4.5
f (filename) file to record packets in
l (filename) file to log messages
p (integer) port to connect to server
d (string of chars) display name
m (existance) use meta window instead of selecting a server with
command line options - See section 4
k (existance) use known server window instead of selecting a server
with command line options.
o (existance) use reserved.c blessing for client authentification
R (existance) use RSA blessing for client authentification (default)
h (string of chars) server name
H (string of chars) Gateway name
P (existance) log packets, generally don't want to use this
t (string of chars) title- the name of the window the client makes
r (filename) netrek default file, instead of .xtrekrc
D (existance) debug mode
v (existance) display version/expiration info then exit
3. Complete Command Reference
The following is the complete list of commands you can use while in
play. Note that all commands are case sensitive, and a ^ denotes a control
key, e.g. ^a means control+a, which is different from ^A, which is
control+A (control+shift+a, in other words.)
Combat Functions:
c Toggle cloak.
{ Turn cloak on.
} Turn cloak off.
[ Shields down
] Shields up
Movement And Navigation Functions:
0-9 Set speed to 0..9
( or ) Set speed to 10
! Set speed to 11
@ Set speed to 12
# Set speed to half of your maxwarp
% Set speed to max
> Increase speed by one
< Decrease speed by one
Planet Functions:
b Bomb planet. You must be orbiting an enemy planet and in T-mode to do
this. You only need to press it once and you will continue bombing untill
the planet reaches 4 or less armies.
Message Functions
E Send generic distress call.
^@
^#
etc... Misc. Functions
e Toggle docking permission (when playing a starbase). This allows or
disallows other players to dock on you and repair, refuel, beam up/down
armies, etc. If you turn off docking while players are docked, they will be
ejected, hence the assigned key.
Q Quit, exiting to MOTD screen. If you hit either of these in red alert,
a self destruct timer will start. This is so you can blow up over your
enemy. While the countdown is in progress, any input cancels it.
Window And Display Functions:
B Cycle through galactic map planet display options. Possible options
are show nothing, show owner, or show resources (the most useful, as on a
color display you can tell owner by color.)
4. Features
This section describes in detail some of the newer, more interesting
features of COW. There are many! Here is a mini index of this section:
4.1. Connection and Utility Features
4.1.1. The Metaserver
4.1.2. GhostBusts and Restarts
4.2. Display Features
4.2.1. PlayerList Configuration
4.2.2. BeepLite
4.2.3. Warning Shields
4.2.4. Hockey Lines
4.3. Interesting Features
4.3.1. Shell Tools
4.3.2. Customizable Cursors
4.1 Connection and Utility Features
In this section we have:
Ghostbusts and Restarts
4.1.1. The Metaserver
The MetaServer and the MetaServerCache are provided to help
you find a netrek game to join. Both services provide a list of the
popular netrek servers. The MetaServer is neat because provides information
on the number of players at each site. The MetaServerCache is neat
because it is much faster if you can guess where a game will be.
metaport: 3521
metaserver: metaserver.ecst.csuchico.edu
2) How to create a list of known servers for the MetaServerCache:
metaCache: .metaCache
Unlike the MetaServer, the MetaServerCache will not show the number of
people playing at a server. If a server is contactable, it will be
shown as "Active".
metaStatusLevel: 3
The status levels are coded as follows:
0 Servers which have players but not a wait queue.
1 + Servers with a wait queue.
2 + Servers with nobody playing. (see NOTE1).
3 + Servers which have Timed Out for the MetaServer (see NOTE2).
4 + Servers which the MetaServer has not been able to connect to.
NOTE1: When using the MetaServerCache, "metaStatusLevel" values of
less than 3 are treated as the value 3. This minimum is enforced
because the cache does not attempt to show the number of people
playing at a site.
4.1.2. GhostBusts and Restarts
After a client dies, or even if you kill the client on purpose,
you can recover the game and continue playing. In fact the
server won't have any idea that anything but bad lag (called
a ghostbust) has occurred.
*** socket 11323, player 0 ***
netrek -G 0 -s 11323
4.2. Display-ish Features
In this section we have features which all control some visual aspect,
i.e. something you see or the way information is presented.
4.2.1. Playerlist Configuration
[ Originally by: dave, gosselin@ll.mit.edu ]
Spc Let Name Header
--- --- -------------------- -------------------
3 'n' Ship Number " No"
3 'T' Ship Type " Ty"
11 'R' Rank " Rank "
17 'N' Name " Name "
6 'K' Kills " Kills"
17 'l' Login Name " Login "
6 'O' Offense " Offse"
6 'W' Wins " Wins"
6 'D' Defense " Defse"
6 'L' Losses " Loss"
6 'S' Total Rating (stats) " Stats"
6 'r' Ratio " Ratio"
8 'd' Damage Inflicted(DI) " DI"
1 ' ' White Space " "
6 'B' Bombing " Bmbng"
6 'b' Armies Bombed " Bmbed"
6 'P' Planets " Plnts"
6 'p' Planets Taken " Plnts"
17 'M' Display/Host Machine " Host Machine "
7 'H' Hours Played " Hours "
6 'k' Max Kills " Max K"
6 'V' Kills per Hour " KPH"
6 'v' Deaths per Hour " DPH"
So for example if you just wanted to see names and rank you'd add this
line to your .xtrekrc:
On servers which support the SBHOURS .feature, you will see slightly
different things when you info a SB, or show the SB player on the
playerlist. The usual offense and defense lines are replaced with SB
kills/hour and deaths/hour. The kills, deaths, hours and ratio entries
are all the player's SB stats as long as he is in the SB, and his normal
stats otherwise.
0: Custom style = playerlist
1: Old style = "nTRNKWLr O D d "
2: COW style = "nTR N K lrSd"
3: Kill watch style = "nTK RNlr Sd"
4):BRMH style = "nTR N K l M"
For backward compatability, the option "newPlist" will still select
between the old style playerlist (off) and the COW style playerlist
(on) if the "playerListStyle" option does not appear in your .xtrekrc.
4.2.2. BeepLite
Local weenies cheat. They talk to each other. Those of us who have
never met another netrek player are forced to rely heavily on the
message window.
UseLite: on
The above leaves you with the feature on, but nothing is automatically
setup. If you want to configure it yourself, go to the "CONFIGURING
VIA XTREKRC" section. You can include a set of reasonable defaults,
instead of bothering to learn to configure it yourself by including
the lines.
DefLite: on
At any time, you can extend these simply by including some of the
configuration syntax in your .xtrekrc as described in the "CONFIGURING VIA
XTREKRC" section.
lite.[name of distress]: [macro]
Below are the configurations which are equivalent to the defaults
which are setup for you if using DefLite. These provide good
examples for how the system works.
lite.taking: /c/l
lite.base_ogg: /g/m
lite.pickup: /h
lite.help: %?%S=SB%{/c%}
The above does the following:
lite.help: %?%S=SB%{/c%}%?%a>0%{/c%}
This will highlite bases who distress AND carriers who distress.
lite.pickup: /h/|%p++ @ %l|
This sends a big ++ message on the tactical map in addition to the light.
/c /i /I sender
/m /M _your_ ship
/p target player
/g target friendly player
/h target enemy player
/P player nearest sender
/G friendly player nearest sender
/H enemy player nearest sender
/b planet nearest sender
/l target planet
The following are the arguments for sounds:
/0 Standard window beep (incoming message sound if sound is on)
/1 - /9 Play nt_message1 - nt_message9 sound.
Tactical Text Solution for the Tactical Tunnel Syndrome (TTS):
/| .. | displays Text in between via TTS.
Additional defaults:
planetCycleTime: highlighting time for planets
playerCycleTime: highlighting time for players
[ Note: while TTS works, thefollowing are Not Yet Implemented in WinCOW ]
tts_color: color of TTS message (should be dark)
tts_font: Font (large prefered)
tts_max_len: Max length of a message
tts_time: Time a TTS message is displayed
tts_pos: y location of the TTS message
4.2.3. WarnHull
The warnHull extension is a direct analogue of the varyShields extension
to the BRM client. Like varyShields, warnHull tries to keep the player
informed of the state of your hull by using a bitmap. The bitmap consists
of eight pixels arranged around your ship in a circle just outside you shields
(see diagrams below). When warnHull is on your ship looks like it has small
spikes sticking out of the shields.
warnHull: on
It works by using 8 pixels arrayed at the 4 cardinal point of the
compass and 4 more at equal intervals between them.
o
o o
o o ; 100% -- neato diagram 1 :)
o o
o
So as the hull is damaged, the pixels disappear for every 12% of
damage accumulated (clockwise from the top).
o
o ; <76% -- neato diagram 2 :)
o o
o
4.2.4. Hockey Lines
Due to popular demand, hockey lines have been added. These
are used when playing Netrek Hockey. For those of you who want
to see a hockey rink on the tactical, just use the features menu
(shift-O) and toggle them on.
They are a little awkward at first, but once you get used to them,
you'll wonder how you lived without them.
4.3. Interesting Features
These are some of the more esoteric and questionable features.
Still, they're there!
4.3.1. ShellTools
[Note: This is not yet implemented in WinCOW ]
4.3.2. Personalized Cursors
[ Not implemented in WinCOW ]
localCursorDef: /usr/me/.local.xbm
mapCursorDef: /usr/me/.map.xbm
infoCursorDef: /usr/me/.info.xbm-
textCursorDef: /usr/me/.text.xbm # the mask would be called /usr/me/.text.xbm.mask
arrowCursorDef: /usr/me/.arrow.xbm
5. Xtrekrc Options
5.1. Keymaps
The original key assignments were created more out of ease of
memorization than speed of access in combat. For example, enabling the
tractor beam is awkward, requiring the use of the shift key. Also, people
will always have their particular preferences. For this reason, almost all
netrek players use a keymap to change the key assignments. Its use it quite
simple. Simply add a line of the form "keymap:
<key><function><key><function><key><function>...." to your xtrekrc file.
keymap: tTs%
The space bar can be remapped, but it cannot be the first key to be
remapped in a sequence (obviously). It is often mapped to det:
keymap: tTs% d
5.2. CKeymaps
Control keymaps (ckeymap) handles the remapping of keys in an
analoguous manner to the normal keymap (keymap). The control keymap
also allows the user to map both *upper* and *lower* case letters keys
when pressed with the control key. This means that ^u and ^U are
*different* keys when it come to mapping them.
c = any printable ascii character.
^ = introduce control mapping (the key '^' not control + key.)
cc # regular format
c^c # regular->control
^cc # control->regular
^c^c # control->control
Example ckeymap:
ckeymap: ^a%r^b^m^ca%d5 tfDFf^^E
Special case:
The '^' must be mapped with a double ^ ("^^") in either the bound or
binding key position.
If you experience difficulties (you shouldn't) you might wish to use a
normal keymap and a new ckeymap in combination. Both are read in, the
keymap first then the ckeymap. This means that if a key which is defined
in both the keymap and ckeymap, the ckeymap's definition will be the one
used.
5.3. Color
It is possible to set the color of various elements in COW. In
particular, any of the six standard colors, as well as the races, can
be remapped. The settable colors are:
#resource example value
#-------- --------------
color.white: seashell
color.black: black
color.red: red
color.green: chartreuse
color.yellow: #fff850
color.cyan: light blue
color.light grey: light grey
Colors can be specified as text strings, i.e. tan, chocolate, green,
MediumSpringGreen (all the standard X-windows colors, in other words) or as
the pound symbol '#' followed by six hexidecimal digits representing the red,
green, and blue components of the color.
#resource example value
#-------- --------------
color.Ind: light grey
color.Fed: yellow
color.Rom: tomato
color.Kli: green2
color.Ori: light steel blue
If a race color is not set, it defaults to the usual. (ie, if you omit
color.Ori above, the orions will be color.cyan, which defaults to cyan)
6. Macros
6.1. Your Basic Macro
Typing takes time. Time is critical in dogfighting or teamwork. Most
of the messages sent in Netrek are standard warnings, distress calls,
requests, notifications, etc. Also retyping that insulting message
everytime you doosh someone is a drag. Hence, you can put macros in your
xtrekrc, and allow a single keystroke to send a message. The format is:
mac.<key>.<dest>: <text>
<key> is the character you wish to assign to that macro, <dest> is a
standard message destination (0-9a-j for player, F/R/K/O for teams, T for
your team, A for all), and <text> is what you want to send. So, for
example, if you put:
mac.b.T: Bomb enemy core, please!
in your xtrekrc file, you could then press X (or whatever key you
assigned to macro mode with the macroKey option -- I like TAB) and then b,
and the above message would be sent to your team.
mac.i.A: \\\\ You have just been DOOSHED!
mac.i.A: (o o) Didn't that feel good?
mac.i.A: ( . )
mac.i.A: \V/
In this case the macro invoked by X,i will send the above to all.
WARNING: multiline macros can be a waste of bandwidth and very annoying!
Use them rarely, if at all. Some servers do not support them at all, e.g.
you can send them but the server will not repeat it to the players.
singleMacro: bi
But, there's more!
6.2. Newmacro
(Documentation by Jeff Nelson 6/4/1993)
mac.F.T Help! Carrying %a!!
This defines a macro which will send a distress containing the number
of armies a player is carrying to his team.
mac.f Help! Carrying %a!!
Unlike the first, this macro will not send directly to the team,
instead it requires that you give a third keystroke specifying the
recipient. For example, it could be invoked by:
XfT <- to your team
Xf1 <- to player 1
XfG <- if you are desperate, send to God
XfA <- if you are stupid, send to ALL
Old macros will still work in addition to these, thus be sure there
are no conflicts. These generally cause suprising results. For example,
if this is in your macro file:
mac.E.T Help! I'm carrying!!
macro.E.A You all suck!
mac.E Help! I'm a twink!!
mac.E.T Help! I'm carrying again!!
macro.E.A You all suck even worse NOW!
The suprising results would be that pressing XE would broadcast the
first two messages, and then wait for the destination of the third. It
would be impossible to ever use the last two. Unfortunately, multiline
macros also do not work if they require a destination. There is no good
reason for this, but since multiline macros annoy the hell out of me, I
ain't fixing it. You can still do something like:
mac.D.A: D
mac.D.A: O
mac.D.A: O
mac.D.A: S
mac.D.A: H
This would properly broadcase 5 messages containing 1 character to
all. If you tried to specify the destination for these by using "mac.D:",
only 'D' would be sent.
Standard:
%a armies carried by sender
%d sender damage percentage
%s sender shield percentage
%f sender fuel percentage
%w sender wtemp percentage
%e sender etemp percentage
%t team id character of target planet
%T team id character of sender team
%c sender id character
%n armies on target planet
%E 1 if etemped, 0 if not
%W 1 if wtemped, 0 if not
%S sender two character ship type
%p id character of target player
%g id char of target friendly player
%h id char of target enemy player
%P id character of player nearest sender
%G id char of friendly player nearest sender
%H id char of enemy player nearest sender
%l three character name of target planet
%i sender full player name (16 character max)
%u full name of target player (16 character max)
%z 3 letter team id of target planet
%b planet nearest sender
%o three letter team name of sender
%k number of kills sender has
%K number of kills target player has
%* if this is encountered, the macro IS NOT PRINTED
%(SPACE) this is replaced by a space, mainly useful for starting a
message
FULLY CAPITALIZED:
%L three character name of target planet
%I sender full player name (16 character max)
%U full name of target player (16 character max)
%Z 3 letter team id of target planet
%B sender nearest planet
%O three letter team name of sender
Ping stats: (may differ slightly from server '!' ping stats)
%v average ping stat round trip time
%V ping stat round trip standard deviation
%y percent total packet loss as calculated by server formula
Miscellanous:
%m the last message you sent
%M the last message you sent in all caps
As a further extension to NEWMACRO, a macro may now be sent to any of
the following destinations:
%i %I %c send message to self
%u %U %p send message to player nearest mouse
%t %z %Z send message to team of player nearest mouse
%g send message to nearest friendly player to my ship
%h send message to nearest enemy player to my ship
with a syntax like
#useful for INL...
mac.C.%i: CAPTAIN
mac.N.%i: NEWGALAXY
mac.S.%i: START
mac.T.%i: %Z
mac.W.%t: SHUT UP, TWINKS!!
mac.I.%u: %u: det when you escort!
mac.O.%u: (%i) ogging
What this does is allows you to send a macro to a player or team
specified by your mouse location instead of requiring a 3rd character to
be input. Also, it allows you to send message to yourself without having
to actual sit there and figure out who you are (they tried and failed back
in the '60s).
%? introduces a test
= equivalence
> greater
< less
Expressions are evaluated on a character by character basis until the
test is resolved. The text of the test is then replaced in the macro by 1
or 0.
"1%{included if true%!included if false%}"
This would print:
"included if true"
whereas
"0%{included if true%!included if false%}"
would print:
"included if false"
Combining the whole package, a very robust macroing system is quickly
generated. One can easily design or mimic Distress calls, including the
variable NBT distress of the BRM client and all the hardcoded message
macroing built into my own client but never released.
mac.F.T: Help! Carrying %a!!
mac.f: Help! Carrying %a!!
mac.c.T: %p++ near %l
mac.b.T: %?%n>4%{bomb %l at %n%!bomb%}
mac.d.T: %E%{%!%W%{%!I'm fine. How are you? %}%}%E%{ETEMPED!!! %}
%W%{WTEMPED!!! %}Carrying %?%a>0%{%a armies!%!NO armies.%}
mac.a.T: %E%{ETEMPED!!! %}%W%{WTEMPED!!! %}Carrying %?%a>0%{%a
armies! %!NO armies.%}
mac.R.A: I'm a %?%S=SB%{star base!%!twink!%}
mac.K.A: KissMy%S
mac.t: thanks
mac.y: yes
mac.n: no
mac.B: bye, getting hungry/sleep/horny
mac.e.T: need escort going to %l%?%a>0%{, carrying %a armies!%}
mac.v.%t %T%c PING stats: Average: %v ms, Stdv: %V ms, Loss: %y%%
My Favorite:
mac.m: %m
6.3 RCD
There is an even more interestring thing that you can do with macros.
It's called Receiver Configurable Distress (RCD). The basic idea is that
everyone likes certain standard types of messages, such as distress, pickup,
carrying, etc, to appear in a certain way. Unfortunately this is usually
not the way everyone else sends them. To make matters worse, everyone sends
their messages in a different way and this hopelessly clutters the message
window. Fortunately, there is help! You can configure the way certain
standard messages and distress calls appear to you. This is an important
point: you do not configure the way the messages are sent with RCD.
Instead, you are configuring how they appear to _you_.
9/2/93 - jmn, jn (no relation 8^)
dist.taking: (%i) Carrying %a to %l%?%n>-1%{ @ %n%}
dist.help: Help! I've fallen! I can't get up! %a
This has the format
dist.[name of distress]: [macro]
Arguments for the macro and SMARTMACRO syntax are exactly the same as
before. Any argument can be used, but usually only those in the groups
"Standard" and "FULLY CAPITALIZED" apply.
6.4 RCM (Receiver Configurable Server Messages)
Short packet kill messages may be freely configured using
the macro syntax interpreter where:
All others are undefined.
msg.kill: ........
msg.kill:GOD->ALL %i (%S) (%T%c%?%a>0%{+%a armies%!%}) was kill
%?%d>0%{%k%!NO CREDIT)%} for %u (%r%p) %?%w>0%{%W%!%}
msg.planet:GOD->ALL %i (%S) (%T%c%?%a>0%{+%a armies%!%} killed by %l (%z)
%?%w>0%{%W%!%}
msg.bomb:%N->%Z We are being attacked by %i (%T%c) who is %d%% damaged.
msg.destroy:%N->%Z %N destroyed by %i (%T%c)
msg.take:%N->%O %N taken by %i (%T%c)
msg.ghostbust:GOD->ALL %i (%S) (%T%c) was kill %k for the GhostBusters
BRMH formated kill windows may be optain by something like:
msg.kill: %i (%S) (%T%c%?%a>0%{+%a armies%!%}) %>30 kill
%?%d>0%{%k%!NO CREDIT)%} for %u (%r%p) %?%w>0%{%>65%W%!%}
6.5 Default Macros And Distresses
Below is a table giving the name of each distress, the key it is
assigned to, and the default macro (at the time of this writing). In the
table below, the first character indicates which control character each of
these messages is assigned to. There are two exceptions, the generic
distress call and army report are still mapped to E and F; they do not use
control keys. You can also of course always hit the macro key and then the
non-control version of the key indicated.
Key Distress Name
t taking
%T%c->%O (%S) Carrying %a to %l%?%n>-1%{ @ %n%}
Taking a planet. Example:
"F0->FED (CA) Carrying 3 to Cas @ 5"
o ogg
%T%c->%O Help Ogg %p at %l
Tell your team to ogg a carrier. Example:
"FO->FED Help Ogg 6 at Cas"
b bomb
%T%c->%O %?%n>4%{bomb %l @ %n%!bomb%}
Tell your team to bomb a planet. Example:
"F0->FED bomb Cas @ 5"
c space_control
%T%c->%O Help Control at %L
Request space control at specified location. Example:
"F0->FED Help Control at CAS"
1 save_planet
%T%c->%O Help at %l! %?%a>0%{ (have %a arm%?%a=1 %{y%!ies%}) %}
%s%% shld, %d%% dam, %f%% fuel
Need help NOW to take or protect a planet. Example:
"F0->FED Help at Cas! (have 3 armies) 60% shld, 13% dam, 63% fuel"
2 base_ogg,
%T%c->%O Sync with --]> %g <[-- OGG ogg OGG base!!
That greatest of manuevres, the Ogg, as applied to an enemy SB.
Example:
"F0->FED Sync with --] c [--- OGG ogg OGG base!!"
3 help1
%T%c->%O Help me! %d%% dam, %s%% shd, %f%% fuel %a armies.
General distress. Same for help2. Example:
"F0->FED Help me! 13% dam, 60%shd, 63% fuel 3 armies"
4 help2
%T%c->%O Help me! %d%% dam, %s%% shd, %f%% fuel %a armies.
Defaults to same as above.
e escorting
%T%c->%O ESCORTING %g (%d%%D %s%%S %f%%F)
Tells your team who you are escorting. Example:
"F0->FED ESCORTING c (13%D 60%S 62%F)"
p ogging
%T%c->%O Ogging %h
Tells your team who you are ogging. Example:
"F0->FED Ogging 6"
m bombing
%T%c->%O Bombing %l @ %n
Tells your team that you are bombing. Many players turn this message
off (by inserting a %* anywhere in the message string) as they can
figure out for themselves where someone is going to bomb by their
course. Example:
"F0->FED Bombing Cas @ 5"
l controlling
%T%c->%O Controlling at %l
Tells your team that you are space controlling somewhere. This is
the art of dominating a region of space. Example:
"F0->FED Controlling at Cas"
5 asw
%T%c->%O Anti-bombing %p near %b.
Tells your team that you are doing Anti Scout (bomber) Warfare.
Example:
"F0->FED Anti-bombing 6 near Bet"
6 asbomb
%T%c->%O DON'T BOMB %l. Let me bomb it (%S)
Respectfully requests that you be allowed to bomb something. This is
typically used if you are flying an AS as they have a much better
chance of bombing a planet to a lower number, making it easier to
take. Example:
"F0->FED DON'T BOMB Cas. Let me bomb it (CA)"
7 doing1
%T%c->%O (%i)%?%a>0%{ has %a arm%?%a=1%{y%!ies%}%} at lal.
%d%% dam, %s%% shd, %f%% fuel
General information message. Example:
"F0->FED (Twinky) has 3 armies at lal. 13% dam, 60% shd, 62%
fuel"
8 doing2
%T%c->%O (%i)%?%a>0%{ has %a arm%?%a=1%{y%!ies%}%} at lal.
%d%% dam, %s%% shd, %f%% fuel
Same as doing1, by default
f free_beer
%T%c->%O %p is free beer
Tells your team about a clueless player who is an easy kill.
Example:
"F0->FED 6 is free beer"
n no_gas
%T%c->%O %p @ %l has no gas
Tells your team about someone who is out of fuel, good or bad.
Example:
"F0->FED 6 @ Cas has no gas"
h crippled
%T%c->%O %p @ %l crippled
Tells your team that someone is crippled, i.e. badly damaged.
Example:
"F0->FED 6 @ Cas crippled"
9 pickup
%T%c->%O %p++ @ %l
One of the most useful macros. Use this if you see an enemy pick up
armies . Example:
"F0->FED 6++ @ Cas"
0 pop
%T%c->%O %l%?%n>-1%{ @ %n%}!
Tells your team the number of armies on a planet or that it has
popped or been bombed or dropped on recently. Example:
"FO->FED Cas @ 5!"
F carrying
%T%c->%O %?%S=SB%{Your Starbase is c%!C%}arrying
%? %a>0%{%a%!NO%} arm%?%a=1%{y%!ies%}.
Tells your team the number of armies you are carrying. Example:
"F0->FED Carrying 3 armies."
@ other1
%T%c->%O (%i)%?%a>0%{ has %a arm%?%a=1%{y%!ies%}%} at lal.
(%d%%D, %s%%S, %f%%F)
Another general call.
# other2
%T%c->%O (%i)%?%a>0%{ has %a arm%?%a=1%{y%!ies%}%} at lal.
(%d%%D, %s%%S, %f%%F)
Same as above
E help
%T%c->%O Help(%S)! %s%% shd, %d%% dmg, %f%% fuel,
%?%S=SB%{ %w%% wtmp,%!%}%E%{ ETEMP!%}%W%{ WTEMP!%} %a armies!
General distress call. This one also reports if you are wtemped
or etemped, if you are an SB. Example:
"F0->FED Help(CA)! 60%shd, 13% dam, 63% fuel, 3 armies!
Let's walk through two simple examples.
First try to seperate in your mind the two types of configurability
that are going on here.
In order to do (1), just use a keymap. Nearly everyone who has tried
to configure their netrek client has generated some form of keymap.
keymap: hE
This performs the key configuration we wanted for the first example.
dist.help: %T%c->%O I'm about to die with %a of your team's armies!
If you configure an RCD, you also must configure the header of that
message. This isn't is difficult as it sounds, just add the header to the
beginning of the RCD. For example, instead of
dist.T.taking: Carrying %a to %l%?%n>-1%{ @ %n%}
use
dist.T.taking: % %T%c@%b Carrying %a to %l%?%n>-1%{ @ %n%}
Two headers that I recommend (the last is the default):
% %T%c@%b
% %T%c->%O
If you want to map the asbomb distress onto control-shift-a that is
slightly more difficult. The asbomb distress normally is associated with
control-6. Since control keys are involved, we MUST use the control key
map feature called ckeymap. The following line would perform the
operation we would like.
ckeymap: ^A^6
If you *also* want control-a to be asbomb, then use
ckeymap: ^A^6^a^6
If you have read all the documentation, are sure you are using the
right syntax, and RCD (or MACRO) still is not working, then check out the
following.
7. Xtrekrc Reference
Upon startup, Netrek looks for a configuration file called ".xtrekrc"
(or, equivalently, ".netrekrc", in first the current directory, then the
user's home directory, and then in the same directory as netrek.exe. (WinCOW
note: to keep with convention, the files checked for are named xtrekrc and
netrekrc -- no preceding dot -- and WinCOW also checks the HOMEDRIVE and
HOMEPATH environment variables) You can also set the filename with the XTREKRC
envirinment variable. Many, many things can be set in the xtrekrc file, and its
proper use is essential to good Netrek play.
Available buttons:
1 = left 2 = middle 3 = right
4 = Shift+Left 5 = Shift+Middle 6 = Shift+Right
7 = Control+Left 8 = Control+Middle 9 = Control+Right
a = Shft+Ctrl+Left b = Shft+Ctrl+Middle c = Shft+Ctrl+Right
[ Windows client included netrekrc adds 4p = shift+Left for phaser. ]
Use the options menu (shift-O) to try the different styles.
Login Options:
Server Options:
These can be used to set up server aliases and server-specific options
Window placments:
These are of the form
<window>.geometry: <width>x<height>+<xpos+<ypos>
Or you can specifiy just the position:
<window>.geometrey: +<xpos>+<ypos>
or just the size:
<window>.geometry: <width>x<height>
Possible windows are:
netrek - main window
local - Main fighting window
map - Galactic map
warn - warning window
message - message window
review - all messages window
review_all - messages to all window
review_team - messages to team window
review_your - messages to individual window
review_kill - kills messages window
review_phaser - phaser hits window
planet - planet list window
player - playerlist window
war - war declarations window
fed - Fed selection window
ori - Orion selection window
rom - Romulan selection window
kli - Klingon selection window
quit - The quit countdown clock
option - options menu window
rank - rank window
sound - sound options window
stats - statistics window
tstat - dasboard window
help - help window
UDP - UDP options window
lagMeter - lag meter window
pingStats - ping statistics window
buttonkeymap - the key map window
xtrekrc_help - the xtrekrc help window (duh)
MetaServer List- (including the space) Metaserver window
tools - the shell tools window
DocWin - Documentation window
xtrekrcWin - xtrekrc display window
You can specify whether windows are initially mapped (displayed), like
this:
<window>.mapped: <on/off>.
You can also specify parenting of windows. If one window is a child of
another, when that window's parent is hidden or displayed, the child window
will also be hidden or displayed. Also, a window that is not parented may
have a caption on it, depending on your window manager or OS.
Technical Options:
8. Example .xtrekrc
Thanks to Jaime Allistair for this.
# xtrekrc file for Netrek
# version: .01
# date: 3-1-95
# The purpose of of this xtrekrc file is to have all the options available
# to anyone who wants to make a change to the xtrekrc. This file will
# bring up all the message windows. This will help in the area of newbies
# not reading messages because they do not know how to get a message window
# up.
# If you have any changes, typos, fixes, additions, or any things
# that were left out, please email me. I will try to make these files
# grow with the clients, as the client grows.
# EMAIL: jaime@diamondmm.com
# NAME: Jaime Pirnie
# Enjoy!
# /-----------------------\
# | ### Login Options ### |
# \-----------------------/
#--------------------
# Name
# Your automatic character login name
name: allister
#--------------------
# Password
# Your default character login password
password: secret
#--------------------
# Default Ship type
#
# Your default ship type
#
# AS = Assault Ship
# BB = Battleship
# DD = Destroyer
# CA = Cruiser
# SC = Scout
defaultShip: CA
# /------------------------\
# | ### Server Options ### |
# \------------------------/
#--------------------
# Default Server port
# Default server port to use
port: 2592
#--------------------
# New Message Flags
# Server-dependent. Should be on for all new servers
newMesgFlags: on
#--------------------
# Default Server
# Name of the default server if the -h flag is not used
server: factoryx.factoryx.com
#--------------------
# Server Aliases
#
# Server aliases. Syntax: [server.alias: <x.y.z>] Replace x.y.z with full
# server name, and specify <alias>. From then on you can specify that
# server by doing 'netrek -h <alias>' instead of the full server name.
# Below is an alias for wormhole.
server.wormhole: wormhole.ecst.csuchico.edu
#--------------------
# Use RSA on a specific server
# Use RSA on server x.y.z? NOTE: if x.y.z is aliased (server.alias: x.y.z),
# use the alias instead.
# Below it tells it to use RSA on wormhole.
useRSA.wormhole: on
# /---------------------------\
# | ### Technical Options ### |
# \---------------------------/
#--------------------
# Don't Ping
# Don't attempt to start ping packets from the server
dontPing: off
#--------------------
# Force Display type
#
# Force the display type for the client
# NOTE: Windows client ONLY
#
# 0 = monochrome or 16 colors
# 1 = 256 colors
# 2 = 16/24 bit color
forceDisplay: 1
#--------------------
# Force monochrome display
# (actually, color is still used internally, but
# the colors are chosen so that they map correctly to black & white.)
forceMono:
#--------------------
# Network statistics frequency
#
# Lag stats update
#
# 1 = least often
# 2 = a bit more often
# |
# |
# \|/
# 10 = most often
#
netStatFreq: 3
#--------------------
# Network Statistics
#
# Keep lag statistics
# (Bringing up the lagmeter ('l') will toggle this anyway, but its there)
netstats: off
#--------------------
# Try UPD packets
# Try to use UDP upon entering the game
tryUDP: on
#--------------------
# Try short packets
# Try using short packets upon entering the game
# (Windows client: This really help for SLIP connections)
tryShort: on
#--------------------
# UDP Client Receive
#
# How UDP packets should be received
#
# 0 = TCP
# 1 = simple UDP
# 2 = fat UDP
udpClientReceive: 2
#--------------------
# UDP Client Send
#
# How UDP packets should be sent
#
# 0 = TCP
# 1 = simple UDP
# 2 = enforced UDP (state only)
# 3 = enforced UDP (state & weapon)
udpClientSend: 3
#--------------------
# UDP Debugging Level
# Level of UDP code debugging. You may enjoy seeing debug trace messages.
udpDebug: 0
#--------------------
# UDP Sequence Checking
# Throw out UDP packets that arrive out of order. This is a good idea.
udpSequenceChk: on
#--------------------
# Updates Per Second
# Number of updates (frames) per second (most servers limit to 5)
updatesPerSecond: 5
#---------------------
# Use RSA binary varification.
# If you turn this off you will not be able
# to play on many servers.
useRSA: on
#---------------------
# I have no idea ????? Anybody know??!
useTRports:
# /---------------------------\
# | ### Features, options ### |
# \---------------------------/
#--------------------
# Ask For Update
# Get full update from server when you enter the game. This is a good
# idea when using UDP and/or short packets.
askForUpdate: on
#--------------------
# Mouse Button Map
#
# Maps mouse buttons to key functions
# Format: <button><key>... just like the keymap
# Available buttons:
#
# 1 = left
# 2 = middle
# 3 = right
# 4 = Shift+Left
# 5 = Shift+Middle
# 6 = Shift+Right
# 7 = Control+Left
# 8 = Control+Middle
# 9 = Control+Right
# a = Shft+Ctrl+Left
# b = Shft+Ctrl+Middle
# c = Shft+Ctrl+Right
buttonmap: 1a2p3k
#---------------------
# Cloak Characters
# The characters to use to show cloaked ships on the galactic map.
# Popular choices are:
#
# ()
# <>
# ><
# ??
cloakChars: ??
#---------------------
# Clock Type
#
# Which type of clock to show
#
# 0 = No clock
# 1 = hh:mm
# 2 = hh:mm:ss
clock: 2
#--------------------
# Continue Tractor Beam
# Show tractor beam at all times when locked
# If off, it will only show tractor beam for a short time.
continueTractor: on
#--------------------
# Continuous Mouse
# Allows you to hold down a mouse button, it will have the same effect if
# you hit the button rapidly.
continuousMouse: on
#--------------------
# Dashboard
# Use a dashboard (LAB) style for the stats line.
dashboard: on
#--------------------
# Use alternate dashboard
# (Cup half full vs. Cup half empty) dashboard.
# NOTE: Requires dashboard on.
newdashboard: on
#--------------------
# Use the new new dashboard
newnewdashboard: on
#--------------------
# Use the new dashboard2
newdashboard2: on
#--------------------
# Use default BeepLite RCD highlighting (?)
defLite: on
#--------------------
# Enemy Phasers
# Width of enemy phaser lines. Mostly useful on mono displays so you can
# distinguish your phasers from enemy phasers.
ememyPhasers: 1
#--------------------
# Extra Alert Border
# Use inside border for alert status
extraAlertBorder: on
#--------------------
# Fill Lock Triangle
# If locks are shown, whether or not to fill the lock triangle.
fillTriangle: off
#--------------------
# Galactic Map Updates
# Update Galactic map frequently. This is good for phaser locking cloakers.
galacticFrequent: on
#--------------------
# Keyboard Keymap
# Maps new keys to old keys. Format: <new key><old key><new key><old key>
...
keymap: attT p
#--------------------
# Keep Info on screen
# How many updates (frames) to keep the info windows (activated by i and I)
# on the screen.
keepInfo: 15
#--------------------
# Keep Peace after Death
# Keep peace with races after death. Useful so you dont have to reset your
# war declarations window every time you start a new ship.
keepPeace: on
#--------------------
# Message Log
# Log all messages to a file.
logMessage: off
#--------------------
# Macro Escape Key
# Name of the key used for macro escape (TAB,ESC, or <key>). I like using
# ESC because it is easy to hit, butter than the default 'X' which requires
# two keystrokes.
macroKey: ESC
#--------------------
# Meta Server List level
#
# Tells the client what to list when using the MetaServer.
#
# 0 Servers which have players but not a wait queue.
# 1 + Servers with a wait queue.
# 2 + Servers with nobody playing. (see NOTE1).
# 3 + Servers which have Timed Out for the MetaServer (see NOTE2).
# 4 + Servers which the MetaServer has not been able to connect to.
metaStatusLevel: 4
#---------------------
# Motion Threshhold
# How many pixels (x+y) before each simulated button-press when using
# continuous mause mode.
motionThresh: 16
#---------------------
# New Planet Bitmaps
# Use MOO style planet bitmaps
newPlanetBitmaps: on
#---------------------
# Player List Style
#
# 0 Custom player list
# 1 Old player list
# 2 Traditional COW player list
# 3 Kill watch player list
# 4 BRMH Player list
playerListStyle: 1
#---------------------
# New Player List
# Reduced stats format for the player list.
# Can also be toggled with the '\' key.
newPlayerList: off
newPlist: off
#---------------------
# User Configurable Player List
# Use ('\') to toggle between your player list, and the stock one (or
# visa/versa depending on the status of newplist or newplayerlist).
# With newPlayerList or newPlist set to on (depending on your client),
# it will use the user configurable player list as the default. If set
# to off, it will use the stock player list as the default. Again,
# the ('\') key toggles between the two.
#
# Here are the possible columns:
#
# Spc Let Name Header
# --- --- -------------------- -------------------
# 3 'n' Ship Number " No"
# 3 'T' Ship Type " Ty"
# 11 'R' Rank " Rank "
# 17 'N' Name " Name "
# 6 'K' Kills " Kills"
# 17 'l' Login Name " Login "
# 6 'O' Offense " Offse"
# 6 'W' Wins " Wins"
# 6 'D' Defense " Defse"
# 6 'L' Losses " Loss"
# 6 'S' Total Rating (stats) " Stats"
# 6 'r' Ratio " Ratio"
# 8 'd' Damage Inflicted(DI) " DI"
# 1 ' ' White Space " "
# 6 'B' Bombing " Bmbng"
# 6 'b' Armies Bombed " Bmbed"
# 6 'P' Planets " Plnts"
# 6 'p' Planets Taken " Plnts"
# 17 'M' Display/Host Machine " Host Machine "
# 7 'H' Hours Played " Hours "
# 6 'k' Max Kills " Max K"
# 6 'V' Kills per Hour " KPH"
# 6 'v' Deaths per Hour " DPH"
#
playerlist: nTMSBbPpHkVv
#---------------------
# Phaser Messages (client dependent)
#
# 0 = none
# 1 = all
# 2 = team
# 3 = indiv
# 4 = kill
# 5 = total
PhaserMsg: 5
#---------------------
# Phaser Messages in Individual Window (See also phaserwindow)
# Displays the phaser hit points in the individual window.
phaserMsgI: on
#---------------------
# Phaser Window
# Show Phaser hit messages in separate window. (See also
# reveiw_phaser for default mapping and geometry)
phaserWindow: on
#---------------------
# Unknown.. Anybody know?!
planetCycleTime: 8
#---------------------
# Unknown.. Anybody know?!
refreshInterval:
#---------------------
# Report Kill Messages
# Shows kill messages
reportKills: on
#---------------------
# ROMVLVS bitmaps for Rom Team
ROMVLVS: on
#---------------------
# Single Macro Keys
# List of macros that can be invoked with a single keypress
# (i.e. dont have to press the macro key first to enter macro mode)
singleMacro: FE
#---------------------
# Shifted Mouse buttons
# Allows you to use shift and control keys for extra mouse buttons
# (this would be for mouse buttons 4-c)
shiftedMouse: off
#---------------------
# Short Kill Messages
# This option shirinks and lines up all the kill messages.
# It makes it easyer to see if somebody was killed while carrying
# armies or not.
shortKillMesg: on
#---------------------
# Show Fuel on Local
# This makes the border color indicate fuel status
showFuelOnLocal: off
#---------------------
# Show Galactic
# This option sets what is shown on the planet bitmaps
#
# 0 = show owner
# 1 = show recources
# 2 = show nothing
showGalactic: 1
#---------------------
# Show Local
# This option sets what is shown on the local planet bitmaps
#
# 0 = show owner
# 1 = show recources
# 2 = show nothing
showLocal: 1
#---------------------
# Show Lock Triangle
#
# 0=don't show
# 1=galactic only
# 2=tactical only
# 3=both
showLock: 3
#---------------------
# Show Map Planet Names
# This option shows on the map (galactic) window.
showMapPlanetNames: on
#---------------------
# Show my Speed
# This option prints your current speed next to your player number in your
# tactical display.
showMySpeed: off
#---------------------
# Show Planet Names
# This option shows the planet names on the local (tactical) window.
showPlanetNames: on
#---------------------
# Show Player Status
# This option, when on, shows players in the player list who are not alive.
showPlayerStatus: on
#---------------------
# Show Shields
# This option lets you see your ships shields.
showShields: on
#---------------------
# Show Stats
# Shows the stats window. You can accomplish this same thing
# with "stats.mapped: <on/off>" but its here as well.
showStats: off
#---------------------
# Show Tractor / Pressor Beams
# This option lets you see your own tractor/pressor beams.
showTractorPressor: on
#---------------------
# Sort Player List
# This option sorts the players in the player list according to team.
sortPlayers: on
#---------------------
# BeepLite
# This option turns on BeepLite. This highlights the planets and players
# that are the subject of people's messages when they use RCD.
useLite: on
#---------------------
# Display last message
# This option displays the last message in the warning message window.
useMsgw: off
#---------------------
# Use [T]he [N]ext [G]eneration style bitmaps
# Need I say more?
useTNGBitmaps: on
#---------------------
# Updates Per Second
# How many frames/sec the server should send. Max is 10.
updatesPerSecond: 10
#---------------------
# Vary Shields
# This option changes the shield bitmap to reflect your shield damage.
varyShields: on
#---------------------
# Warn Hull state
# Warns you on hull state based off of damage.
warnHull: on
#---------------------
# Mouse Cursor Warp
# Warp the mouse to the message window during message send. This
# used to be useful when you have to have the mouse cursor in the message
# window to type a message.
warp: off
#---------------------
# Show MOTD
# This option shows the [M]essage [O]f [T]he [D]ay while in the wait queue.
waitMotd: on
#---------------------
# Which New Planet Bitmaps
# This option actually sets the same option internally as newPlanetBitmaps.
# 1 and 2 are, presumably, the Rabbit Ear bitmaps and the ZZ Minimal
bitmaps.
whichNewPlanetBitmaps: 2
#---------------------
# Zero Argument Usage
# This option when on: If no arguments, print usage instead of connecting
# to the default server.
zeroArgUsage: on
# /-------------------------\
# | ### Window Placment ### |
# \-------------------------/
#---------------------
# Window Placment syntax (geometry)
#
# This displays the size, and position of the window.
# <window>.geometry:<width>x<height>+<xpos>+<ypos>
#
# This displays just the position of the window.
# <window>.geometry:+<xpos>+<ypos>
#
# ...or just the size
# <window>.geometry:<width>x<height>
#
#---------------------
# This option sets whether windows are initially mapped (displayed).
#
# <window>.mapped:<on/off>
#---------------------
# This option sets the parenting of windows. If one window is a child of
# another, when that window's parent is hidden or displayed, the child
# window will also be hidden or displayed. Also, a window that is not
# parented will have a title bar at the top of the window.
#
# <window>.parent:<parent window name>
#
#---------------------
# List of possible window names
#
# netrek Main Window
# local Main Fighting Window
# map Galactic Map
# warn Warning Window
# message Message Window
# review All Messages Window
# review_all Messages to All Window
# review_team Messages to Team Window
# review_your Messages to Individual Window
# review_kill Kill Messages Window
# review_phaser Phaser hits Window
# planet Planet List Window
# player Player List Window
# war War Declarations Window
# fed Federation Selection Window
# ori Orion Selection Window
# rom Romulan Selection Window
# kli Klingon Selection Window
# quit The Quit Countdown Clock
# option Option Menu Window
# rank Rank Window
# stats Statistics Window
# sstat Dashboard Window
# help Help Window
# UDP UDP Options Window
# lagMeter Lag Meter Window
# pingStats Ping Statistics Window
# buttonkeymap Keymap Window
# xtrekrc_help The xtrekrc help Window
# macro Active Macros Window
#-------------------
# Actual Window placments
netrek_icon.geometry: +1031+0
#netrek.geometry: 1018x740+0+0
netrek.geometry: +0-20
#local.parent: netrek
#map.parent: netrek
#warn.parent: netrek
#warn.geometry: +0+549
#message.parent: netrek
#message.geometry: +0+575
#review.parent: netrek
#review.geometry: +510+500
review.geometry: +512+556
#review.mapped: off
#review_all.parent: netrek
#review_all.geometry: +510+500
review_all.geometry: +504+556
#review_all.mapped: on
#review_team.parent: netrek
#review_team.geometry: +510+608
#review_team.mapped: on
#review_your.parent: netrek
#review_your.geometry: +510+666
#review_your.mapped: on
#review_kill.parent: netrek
#review_kill.geometry: +0+600
#review_kill.mapped: on
#review_phaser.parent: netrek
#review_phaser.geometry: +0+672
review_phaser.geometry: 81x5+0+800
review_phaser.mapped: off
#planet.parent: netrek
#player.parent: netrek
#player.geometry: +510+500
player.geometry: 81x23+0+556
player.mapped: on
#war.parent: netrek
war.geometry: +800
#fed.parent: netrek
#ori.parent: netrek
#rom.parent: netrek
#kli.parent: netrek
#quit.parent: netrek
#option.parent: netrek
#rank.parent: netrek
#stats.parent: netrek
#tstat.parent: netrek
#help.parent: netrek
#UDP.parent: netrek
#lagMeter.parent: netrek
#pingStats.parent: netrek
#buttonkeymap.parent: netrek
#xtrekrc_help.parent: netrek
#macro.parent: netrek
# /----------------\
# | ### Macros ### |
# \----------------/
#----------------------
# Macro syntax:
#
# mac.<key>.<dest>:<text>
#
# <key> is the character you wish to assign to the macro.
# <dest> is a standard message destination
# (0-9a-j for player, F/R/K/O for teams, T for your team, A for ALL)
# <text> is the text you want to be printed when the macro is used.
# Here is two examples :
mac.b.T: Bomb enemy core, please!
mac.i.A: \\\\ You have just been DOOSHED !!
mac.i.A: (o o) Didn't that feel good?!
mac.i.A: ( . )
mac.i.A: \V/
For further information check:
http://cow.netrek.org/
Comments, suggestions and bug reports to
cow@netrek.org