Space Wrath version 0.0 - 4-22-2002


Manual

Space Wrath is a space strategy conquest game. It is played in a two-dimensional
matrix of areas which represent a galaxy. Stars are scattered across the
galaxy, up to one star per area. A star has up to nine planets. Planets have
economic values between 0 and 100, and at the start most are unowned. If a
planet is owned by a player, he may tell it to build new ships. Ships can
generally move, attack other ships, and conquer planets. Some have additional
special abilities based on their type. There are 13 different ship types,
including scout, gunboat, destroyer and many others. Normally each player
starts the game in control of a small number of planets and ships, and must
fight other players and conquer new planets in order to expand. The goal of
every player is to dominate the galaxy. To dominate the galaxy, a player must
control at least half of the total planetary econ value in the galaxy, and at
least half the military strength. Military strength is measured by amount and
power of warships; a warship is any ship with an attack of at least one. For
example, a scout is not a warship, but a destroyer is a warship, and a
battleship is an even more powerful warship than a destroyer. There are 9
players, they each have different names (like Federation, Klingons, Romulons,
etc.) but have no special abilities or differences other than that. An unowned
planet is considered to be owned by player 0, the "" player. The real
players are numbered 1 through 9. This is a single-player game. The user always
plays the Federation, and a computer AI plays all the other players.

To start the game, just run one of the two executables: either spacewrath_gd or
spacewrath_nogd. Both programs are basically the same game, except that one
uses the GD library to enable the "mapgen" command, whereas the other does not.
More information about GD is given later in this manual, so for now we'll
continue on our original topic. For sake of clarity, we'll assume you've
renamed the version you wish to use to "spacewrath". If you start the game in
this manner it will create a new galaxy and start a new game in it at turn 1.
But if you have a previously saved game and would like to continue playing from
that instead, then simply follow the program name with the filename of the
saved game, like this:

	spacewrath 

where  should be replaced with the filename of the saved game
you wish to load.

Once playing, to save the current game type "save" and hit return. To quit,
type "q". To end your player turn, type "d". To get help, do "h".

Mention how text is meant to "scroll past" in the window, so for example, if
you type lships and get a really long list of ships, you may have to use the
scroll feature of your window/terminal/shell to see the text that scrolled past.


System Requirements

Linux/x86 computer, kernal 2.2 or 2.4, with at least 32 mb of ram, and about
1 mb of HD space, with additional space for saved games (about 300 kb per saved
game).


Sample Screen:

   000000000011111111112222222222333333333344444444445555555555666666666677777
   012345678901234567890123456789012345678901234567890123456789012345678901234
  /---------------------------------------------------------------------------\
16|....................u......u....u..................u..u....u......u........|
15|............6..............u...u......u...u......4....u....................|
14|............u........u..................................................u..|
13|.............................u.....................u..........u............|
12|.....1..................u........8........3........u.......2...........u...|
11|................................................u..........................|
10|..................u........u......uu.......................*.u.u...........|
 9|u....u........7...u.......................u................................|
 8|.................u...*........................u.....u..................u...|
 7|......uu.........u...................................u...*uu.u.............|
 6|..............................u....u...u...................u.....*.......uu|
 5|.....u....u..........9.............................u..u....................|
 4|.u..................................u.u....................................|
 3|...........................u.....u...............u...........u.u...........|
 2|..............u.*....................u.......................*.........u...|
 1|......u.......u....................5.............u...u......u..............|
 0|.......u.......*.............u...........................u.......u.....u...|
  \---------------------------------------------------------------------------/
  | Space Wrath      nor-0001:n/a      Map: (2) PLANETS BY PLAYER             |
  | t0001 Federation (1) (05,12) 001p 00040/00020e000% 0003s-100%hp-100%sup W |
  \---------------------------------------------------------------------------/


Interface Key:

the numbers along the top are the X coordinates of the column of areas below
on the map

the numbers along the left side are the Y coordinates of the row of areas to
the right on the map

the map is the big region with periods, numbers and letters in it; a period
(".") means an area that is empty; an asterisk ("*") indicates an area with a
star that has no planets; a letter U ("u") means an area with one or more
planets, all of which happen to be unowned; a number (like "1") indicates that
that player owns at least one of the planets in that area, and that there are
no other players who own planets in that area; a letter M ("m") means multiple
players have at least one planet in that area

nor-0001:n/a means you are in normal econ mode, which began on turn 1, and the
n/a is where the phase of the econ mode would go, but since you're in normal
econ mode it is not applicable (n/a); other econ modes are war and emergency
(emg); if you are in war or emergency econ mode then you are also either in
the bonus (bon) phase or the penalty (pen) phase of that mode; if you are in
normal econ mode, then this space will be empty.

Map: (2) PLANETS BY PLAYER indicates what map is being shown: map # 2, which is
the one that shows where each player owns planets

t0001 means that it is turn 1

Federation (1) means that it is currently the Federation player turn, and that
his player # is 1

(05,12) is the location of the current player's capital; it will say (NOCAP) if
you have no capital

001p is the number of planets the current player owns

00040/00020e000% means you have 20 total base econ, 40 total adjusted econ, and
0% of your planets are actively building something

0003s means you have 3 ships

100%hp means the total current HP of your ships is 100% their total max HP

100%sup means 100% of your ships are in supply

W means you have the won the game; an L would mean you have lost the game; the
absence of both W and L means you have neither won or lost; if both W and L are
present it means you have simultaneously won and lost the game and that there
is a terrible bug in the software


Ship Types

There are 13 different types of ship. The same set of ship types are available
to all players. A Federation cruiser is identical to a Klingon cruiser, a Gorn
gunboat is identical to a Hydran gunboat, and so forth.

id abbrev name        buildcost att def hp mv special
 0 sc     scout              35   0   1  2  5
 1 gb     gunboat            40   1   1  2  4
 2 dd     destroyer         170   2   2  3  3
 3 ma     mauler           1070   2   2  3  3 MAUL
 4 cc     cruiser           520   3   3  6  2
 5 bb     battleship       2490   4   4  9  2
 6 dn     dreadnaught     11795   5   5 12  2
 7 tb     tugboat          1020   0   1  2  2 TOW
 8 tn     tender           1020   0   1  2  1 REP-1
 9 bu     sensorbuoy        115   0   1  2  0 SEE-2
10 op     outpost          2045   0   1  5  0 SRC
11 do     dock             2075   0   1  8  0 REP-2
12 sb     starbase        14100   1   2 10  0 SRC FRP

Sight

Things only appear on the map if they can be seen. Stars can always be seen,
by anything and everybody. Planets only have to be seen once and their
location will be remembered. Ships must currently be actively seen in order
to appear on the map.  You don't have to "see" your own things: all planets
and ships you own will always appear on the map. Planets and ships do the
"seeing". They see things up to 1 area away, which means they see into their
own area as well as into all immediately adjacent areas. Sensor buoys can see
up to 2 away.

The map is of a galaxy containing various stars and planets. It is broken down
into areas and there is a rectangular matrix of them, 17 high by 75 wide. The
edges don't wrap: in other words, for example, a ship in an area along the
western edge of the map cannot move any further west, because that would be
moving "off-map", which is not allowed. The same is true for the eastern,
northern and southern edge areas too.

Movement

Ships can move orthogonally and diagonally, and any two areas which are either
orthogonally or diagonally adjacent are considered adjacent. A ship must
expend 1 movement point to move one area. A ship's movement points are
"refilled" (that is, reset to the normal maximum for that type) each turn,
during the move refill phase. If it is in supply, its move is fully refilled.
If it is not in supply, then it gains only up to 1 point. If it is damaged its
effective max move may be lower than its normal max move. Move refills are only
towards this effective max move, not the normal max move. At any time during
your player turn you may order one of your ships to move immediately with the
"mv" command. Alternately, you may give it a movement destination (via the
"dest" command), and it will move towards it during any Automove phases.

Planet Conquest

To acquire ownership of a planet you must conquer it with one of your ships.
Only warships may conquer. A warship is any ship of a type with attack, defense
and move each at 1 or more. A ship must expend 1 movement point to conquer. A
towing or towed ship may not conquer. You may not conquer your own planet. You
may only conquer planets in the same area as the conquering ship. When a planet
is conquered: its proddest is turned off, its building is turned off, its build
progress is reset to zero, and its justconquered flag is set. If you conquer
another player's capital planet then it loses its capital status.

Effect of Ship Damage on Movement

A crippled ship is one with current HP divided by max HP is less than or equal
to 0.34. Its effective max move is zero. A wounded ship is one with current HP
divided by max HP is greater than 0.34 and less than or equal to 0.5. than its
effective max move becomes one less than normal max move (and if its current
move is greater than this new eff max move when the damage occurs, it will be
lowered accordingly.) Any time a ship is repaired its eff max move will be
restored if applicable. If a ship is neither crippled or wounded but still
has less cur hp than max hp, then it is considered merely damaged.

Move Dests and Automove

You may give a ship a movement destination towards which it will move during
any Automove phase. You may cause an Automove phase at any time in your turn,
using the automove command. You may also have Automove occur automatically at
the beginning of your turn. By default, this is turned on. There is no limit
to how many times the Automove command may be issued a turn, but it will only
move ships with movement points left to spend. I tend to rely on the default
start-of-turn Automove doing its thing, while also issuing the automove command
myself at various times in my turn, essentially making "extra flushes" to make
sure all my ships make progress towards their respective destinations, and that
no movement points are left unused at the end of the turn, which is usually
considered wasteful (but sometimes not -- especially if you want your ships
to have enough movement points available to "react" during other player's
turns!).

New Games and Galaxy Generation

The "new" command replaces the current galaxy with a new one, in which each
player owns 1 planet of 20 econ, which is the capital, and 2 ships (a scout
and gunboat); this planet is at least 5 (?) away from nearest other player.
Play in a galaxy created by this algorithm if you want to start tiny and
have a primarily growth-oriented game. When you start the Space Wrath
program, by default it automatically creates a galaxy using this algorithm.

The "new2" command replaces the current galaxy with a new one, in which every
player already has an established empire. It does this by first doing the same
algorithm used by the new command, and treating those planets as the capital
and center of their empires, and proceeds to go around claiming all the closest
planets to the capital, trying to be fair and give every player about the same
size of empire. Also, a certain portion of the galaxy may go unclaimed, just
for variety's sake. Each player is then given a quantity and mixture of ships
that makes sense for the size of their empire. Each player will get roughly the
same proportion of scouts, gunboats, destroyers, etc., though only the largest
empires will get some of the more exotic ship types. Play in a galaxy created
with this algorithm if you want to start large and have a primarily
war-oriented game.

Garrison

Each ship has a garrison flag. The computer players use it to remind themselves
that the ship in question should not be moved out of a given system, because
that ship is part of the "garrison" for that system.  For human players, in
only serves as a toggleable lock to remind you that you wanted that ship to
stay where it is. When you tell a ship that has its garrison flag set to move
out of its area, the game refuses and reminds you that its garrison flag is
set. You may turn on/off the garrison flag for any of your ships, at any time.

Auto-Attack Invader

If a ship has its autoattackinvader flag set, it means that when a foreign ship
moves into its area, that he will attack this foreign ship. Since it is an
attack, the normal requirements for attack must also be met. Additionally, in
order for autoattackinvader to work, there must be a friendly planet in that
area (afterall, it must be considered an "invasion" not just a "he's too close
to me"). By default, all warships have this flag turned on at birth.

Intercepts

When one ship attacks another, he may find that his attack gets "intercepted"
by one or more of his victim's fellow ships. Potentially every ship in the
victim ship's area -- who share the same owner -- has the chance to possibly
perform an interception. An interception is itself an attack, so an
intercepting ship must meet the requirements for attack, as normal. An
interceptor must have at least as high attack, defense and HP traits. In other
words, if a ship is weaker or wimpier than the one being attacked, it would be
stupid (and possibly suicidal) for him to intervene, because he would be even
worse off than the guy originally being attacked! Furthermore, the algorithm
that picks interceptor candidates will also try to pick the smallest/weakest
ship it can, at first, that still otherwise is greater-than-or-equal-to the
victim ship. If it finds a valid candidate to perform an intercept, it does so,
essentually just having the interceptor perform an attack on the original
would-be attacker. Note that this interception attack actually takes place
before the original attacker gets to make his attack. If the interceptor wins
(by killing the original attacker), then nothing else happens. If, however, the
interceptor loses (by dying), then the game will continue looking for other
candidates to perform interception, and so on, until either the original
attacker is dead, or, there are no more valid and able interceptors. If no
interceptions occur, or if all intercepts are exhausted, then the original
attack attempt is then finally resolved against the original defender/victim.
When a mauler attacks (or any ship with the maul ability, to be more specific),
there is a 90% chance that he will be un-intercept-able. Since weak, special-
purpose ships tend to be protected by friendly warships who intercept for them,
a mauler is often used to attack them since he might "bypass" the interceptors.

turns, player turns, player turn phases

the fact that you are the Federation, and that is the only player you can be,
and that is the only human player, and that players 2 thru 9 are AI's and that
player 0 is a dumb "do nothing" player that owns all the uncontrolled planets

movement

combat

Capitals

Every player normally has one planet which serves as its capital. A capital
planet will have double its normal economic value. If this doubled-value is
still less than 5, then it is set to 5. If a player has no capital planet, then
*ALL* of his planets will have 90% normal econ. If this penalty would make it
less than 1, and if it was normally more than 1, then it will be 1. A planet
that is a former capital (but isn't one now) will have 150% normal econ. If
this is less than 3 then it will be 3. If a capital planet is conquered,
thereby becoming owned by another player, then it loses its capital status. A
capital that is conquered by another player will give no capital-related
economic bonus to the conquering player. However, the game code "remembers" the
fact that the planet once served as the capital of its former owner. If you
have no capital -- or if you do but simply wish to move it to a different
planet -- then you may tell one of your planets to start building a new
capital. Building a new capital is like building a new ship, except that rich
planets don't build capitals faster than poor planets do -- because the cost of
a capital is not fixed, it's relative to a planet's natural economic value. The
build cost of a capital is 5 times the natural econ of that planet. So normally
it takes 5 turns to build a new capital. Econ bonuses (like war, etc.) and
penalties (like menace, etc.) can shorten or lengthen this time, just like with
ship production.

can you attack (both initiate and just shoot back when attacked) with a 0-move
ship that does have attack >= 1?

Maulers

Maulers are basically destroyers except there's only a 10% chance of being
intercepted by anybody. This is an all-or-nothing thing: if the maul "roll"
succeeds then no interceptions will be possible. If the maul roll fails then
interceptions will be checked for as normal. Since they have this special
ability, they cost much more than destroyers.

Phoenix Effect

At the start of each player's player turn, a check is made to see whether he is
extinct or not. If he is extinct, then he might "come back from the dead" via
something called Phoenix Effect. It doesn't happen automatically if a player is
extinct, there is a 50% chance. If that succeeds, then it calculates how many
ships he will gain. He will get a random number between 1 and 10 ships. Then it
calculates how long the player has been extinct and reduces the number of ships
he gets by that amount. So for example if he would normally get 8 ships, but
he's been extinct for 5 turns, then he will only get 3 ships. So, effectively,
if it's been 10 or more turns since he went extinct, then he will not get any
ships from Phoenix Effect. The type of each ship is random, but weighted to
more likely be a smaller ship type. The ships will be placed in an area along
the edge of the map which is considered closest to his old capital. The Phoenix
Effect can only occur within 10 turns of the very *first* time that player was
ever wiped out. If he becomes extinct again at some point more than 10 turns
after that very first extinction, then the Phoenix Effect will no longer be
possible. During the 10-turn period of time in which a player is eligible for
the Phoenix Effect, it is possible for him to come back from the dead several
times: gaining ships one turn, then getting wiped out, gaining ships again the
next turn, dying again, etc. Any player lucky enough to get the Phoenix Effect
is really getting a second chance at life in the game. He should probably use
his ships wisely, perhaps concentrating them to conquer and defend a small
star system along the galaxy's edge. Keep in mind that it is quite possible in
Space Wrath for a single, small but heavily-defended system to successfully
hold off a much larger enemy empire.

Player Extinction

A player is considered extinct when he owns no planets or ships. Extinction is
not the absolute end of any chance for that player, become he may come back
from the dead via various means, including Phoenix Effect.

Hulks

when ship dies it leaves a hulk; a hulk is basically this big chunk of metal
and stuff that looks like it used to be a ship but then something really bad
happened to it; hulks basically don't do anything, they're just decoration
right now, but eventually they will be salvageable; hulks decay and eventually
disappear, a hulk of a small ship type will decay faster than a large one;
basically a hulk will last N turns where N is max HP squared; so a scout hulk
(1 HP) disappears in 1 turn, a gunboat hulk (2 HP) disappears in 4 turns, a
destroyer (3 HP) in 9 turns, and a dreadnaught (12 HP) in 144 turns. there are
1000 hulks possible at once, no new hulks will be created if there are already
1000 in existance. Hulks only decay during their owning player's turn. Note
that hulks use different ID numbers than ships do. Hulks are created no matter
how a ship dies: whether destroyed in combat, or scuttled by its owner, or
dying due to severe supply shortage.

Menace

menace, passive/active, menace flag of ship, alotta menace means blockade, if
planet blockaded it can't finish a new capital (or do other things?) or
dreadnaught! in order to clarify certain matters brought up by users, the 
author would like to explicitly go on the record as saying that while it is
possible for a planet to be passively menaced, actively menaced, and even
blockaded under certain conditions, it can never be phantomly menaced.

Extraordinary Economic Modes

Under certain conditions, a player may tell his empire to enter into an
extraordinary economic mode, basically jumping up the econ of all his planets
for a certain period of time, in exchange for having a later period of time
where econ is lower than normal. In order to declare one of these modes, you
must have the proper casus belli. That is if any foreign ship is in the same
area as one of your planets, excluding just conquered ones. Overall, it is
unwise to use this feature, because overall you "lose" econ. (Analyze the
numbers in the chart below and you'll see what I mean!) However, it's
useful in much the same way that using a credit card is useful -- if your
empire is suddenly and unexpectedly attacked by a large enemy navy, it may be
wise to enter a war or emergency mode so you can pump out new warships ASAP,
not worrying about the econ penalty later on, because maybe if you don't do
this, there may not BE an empire left over to experience that penalty anyway!
There are two types of extraordinary economic modes: war and emergency. War is
generally used to improve your output of ships prior to, say, launching a major
invasion of a neighboring empire. Emergency is intended for extreme crisis
situations, where, for example, a previously unseen enemy fleet has appeared in
the midst of your juicy heartland and will probably devour your core worlds
unless you can push him out very quickly -- since emergency doubles your
production for a bit it might let you rush to completion large capital warships
in a time frame favorable enough to save your capital (and possibly your ass,
assuming it's located somewhere near the capital!). The casus belli condition
is the same for both war and emergency. The difference between war and
emergency is that emergency gives you a stronger bonus (but for a shorter
period of time) than war, and also has a more harsh penalty rate later on,
though this penalty phase does only last for the same period of time. In the
long run, emergency causes you twice as much econ loss than war does, though of
course the benefits are much better during the bonus phase. If you are
currently in a war or emergency mode -- regardless of whether its the bonus
phases or the penalty phase -- you cannot switched to a different mode. You
must let the current extraordinary econ mode completely "run its course",
including both bonus and penalty phases, before starting a different mode.

	          |   bonus phase   |  penalty phase  |
	          |-----------------|-----------------|
	mode      | rate for period | rate for period |
	-----------------------------------------------
	war       | 125%   10 turns |  70%   10 turns |
	emergency | 200%    5 turns |  40%   10 turns |

Repairs

There are two kinds of repairs. Free (automatic) repairs and direct repairs.

Here's how free repairs work: Each player turn, each of that player's ships may
receive free repairs. A ship must be damaged, and insupply is true. There must
also be a friendly source of free repairs there, typically either a planet or a
starbase. If so, it will gain 1 HP, and have its eff max move restored (fully,
or only partially, depending on whether it's new ratio of current to max HP has
just been brought back above the 0.34 or the 0.5 thresholds that caused,
respectively, either immobilization or reduced (-1) max move), if necessary.

Direct repairs: some types of ships have the ability to repair other ships.
Namely, tenders and docks. Each turn you may direct each of your tenders and
docks to repair damaged ships. A tender may repair only 1 ship per turn,
whereas as a dock may repair 2 ships. Like free repairs, this is only for 1 HP.
A ship may only receive one direct repair a turn, however it may recieve the
free repair in addition to a direct repair. So the most any ship can be
repaired per turn is 2 HP.

Mapgen

The mapgen command will create a file on your computer that contains a pretty
graphical map of the galaxy. It will be in PNG format, and saved to a file
called "sw_map.png". If a file with that name already exists it will overwrite
it. The map is from the point-of-view of the player who issued the command:
in other words, if it's the Fed turn it will only show things on the map that
Fed can see, and so on.

towing, tugboat

Supply/Support

The number of ships you can support is equal to the total effective econ of all
your planets added together, divided by ten, rounded down. For example, if your
empire has 243 effective econ, then you can support 24 ships. If you have more
ships than what you can support, some may go "out-of-supply" or even be
destroyed. If you go a little over your support limit, there is no penalty. If
you're over by a small to medium amount then the excess ships will go out-of-
supply, and if you go seriously over your supply limit then all the excess will
die.  Every ship counts for 1 towards the supply limit: a dreadnaught has the
same supply requirements as a scout, and so on. This will be corrected in a
future version of the game, however. If a player has 10 ships or less, he is
exempt from supply/support rules. If a player has between 11 and 25 ships then 
the worst supply penalty he'll get is that some ships might go out-of-supply:
but none will die, no matter how badly over the limit he is. These exemptions
are designed to help new players, weak empires, and also anybody whose come
back from the dead via Phoenix Effect. Currently it's possible to "abuse"
these exemptions by paring your fleet down to, oh, say, 10 dreadnaughts,
then just roam around the galaxy like a nomad not worrying about owning any
planets (just "renting" planets occasionally in order to repair your
dreadnaughts, before skipping town and looking for other star systems to
punish, etc.) but eventually the game will compensate (in some evil fashion)
for such situations. Or not.

(supply need, have, supply req exemptions for small fleets, the "in supply" ship
flag)

ship building, buildprogress?

scuttling, the scuttle command

move refills

win/lose conditions check

ship xp, veterancy, eliteness, xp decay, xp watching battles from afar, etc.
each of your ships loses 1 xp during the beginning of your player turn, due
to "experience decay"; basically the longer its been since a ship has been in
battle, the more he will forget of what it was like, he'll forget what he
learned, he'll get out of shape, a "use it or lose it" factor; gain 2 xp for
attacking, 1 xp for defending, for each attack attempt; each specific
interception attack is considered an attack for this purposes; right now xp
has no impact on performance of a ship, but eventually it will make him
fight better (increased chance he'll do "brilliant manuevers" in combat to
get lucky hits, and/or he'll fight always with attack or defense bonuses,
etc.)

planet.buildimportance? ai uses it, but means nothing for human players

Saving and Restoring Games (and playing with a Scenario file (basically just a
save game file that's a snapshot of an interesting game situation)

history records, commands to report from them in diff ways, mapgen commands to
plot graphs of it, etc. fact that history records are snapshots of things at
start of every player turn; history only recorded up through the last player
turn of turn 999; the history command shows a history of data snapshots about
all the players, what was true at the start of each player turn, currently
only captures the planet ownership count, and is currently omniscient but will
be changed to reflected limited knowledge of the player issuing the command

The mapgen command is not available in the Win32 version of Space Wrath.

Here are the valid id ranges for various types of things:
	PLAYERS        0-9
	STARS          0-89
	PLANETS        0-249
	SHIPTYPES      0-11
	SHIPS          0-4499 (at most, but depends on how many ships exist)
	COMBATREPORTS  0-499 (at most, works same as ships)
	HULKS          0-999 (at most, works same as ships)
	TURNSINHISTORY 0-999

explain what stuff means on the graphic (mapgen, GD) map

For the phases below, its only for the player whose current player turn it is;
in other words, during the Build Progress phase, for example, it only performs
Build Progress for the current player's planets, not for all player's planets.

Phases in a Player Turn:
	* menace
	* econmode changes
	* hulk decay
	* ship xp decay
	* supply (but not for player 0)
	* free repairs
	* progress cur player builds
	* birth ships
	* new capital
	* extinct or not
	* phoenix effect
	* clear tender repair_flags
	* reset my ships mvmt pts
	* do_automove (only if player has autoautomove set)
	* clear justconquered flags
	* dump winlose report
	* loop: command prompt for user I/O, commands, reports


Commands

have a brief list like below but also have separate section that's more verbose

explain what  means in command syntax, and [] and 

should commands be alpha sorted?

There are 107 commands:

p                                 - current player
t                                 - current turn
cap                               - your capital planet
wcap                              - list whatsin your capital area
1                                 - show planet qty map
2                                 - show ownership
3                                 - show ships map
4                                 - show best map
5                                 - show rel econ map
6                                 - show range2foreign map
7                                 - show player ships map (a=1,b=2,etc.)
8 []                  - show shiptype map (shiptype opt., uses last)
9                                 - show proddest map
10                                - show your dmg ships map
11                                - show menace/blockade map
winlose                           - report on who's won or lost so far
combat                            - list battles inv. your ships since last turn
lplayers                          - list players
lstars                            - list stars
lplanets                          - list planets
ltypes                            - list shiptypes
lships                            - list ships
lshipsxp                          - list ships with more than 0 xp
lshipsbytype                      - list ships by type, one line per player
lhulks                            - list hulks
lfreeplanetswheremyships          - list free planets in same area as your ships
dplayer                 - describe player
dstar                     - describe star
dplanet                 - describe planet
dtype                 - describe shiptype
dship                     - describe ship
myships                           - list my ships
myhulks                           - list my hulks
myshipswithmv                     - list my ships with move left
myshipsbytype                     - list my ships by type, all in one line
myshipsng                         - list my ships (no garrison)
myshipsngnd                       - list my ships (no garrison, no move dests)
myshipsngndnm0                    - list my ships (no garr, no dests, no move 0)
myshipsoftype         - list my ships of given type
myshipsdmg                        - list my ships who are damaged
myplanets                         - list my planets
myplanetsjustconq                 - list my planets just conquered
myplanetsnotprodnotconq           - list my planets not prod & not just conq
myplanetsbtype        - list my planets building given ship type
myplanetsnopd                     - list my planets without prod dests
mythings                          - list my planets and ships
myareas                           - list my areas
pareas                  - list player areas
lpareas                           - list all player areas
pshipsbytype            - list player ships by type, all in one line
phulks                  - list player hulks
w                           - list all things in that area (w = whats in?)
withstar                  - list all things in same area with star
withplanet              - list all things in same area with planet
withship                  - list all things in same area with ship
withhulk                  - list all things in same area with hulk
b           - start building shiptype at planet
bcap                    - start building new capital at planet
bs                      - stop building at planet
mv   - move ship one or more areas in direction
dest                - set ship destination
destallmy                   - set ship destination for all your ships
nodest                    - turn off a ship's automove
nodestallmy                       - turn off all your ship's automove
c               - conquer planet with ship
a   - attack a ship
scut                      - scuttle one of your ships
automove                          - move all your ships with destinstions, now
autoautomove                      - toggle auto-automove on/off
autorestoremap                    - toggle auto-restore of last map each turn
listhulks                         - toggle whether to list hulks in area content
autoattackinvader  <1|0>  - set if ship should auto attack invader
autoattackinvaderallmy <1|0>      - set if your ships should auto attack invader
mytypehist                        - shiptype hist (built,scut,kill/die-vs-p)
ltypehists                        - show every player's shiptype hist
shipsattackedhim        - list living shipid's that attacked player
shipsattackedme                   - list living shipid's that attacked you
pd                - set auto dest for new ships built at planet
nopd                    - turn off proddest at planet
pdallmy                     - set prod dest for all your planets
nopdallmy                         - turn off proddest for all your planets
tow            - attach towing rig to a ship, so can tow it
notow                  - release tow
fix      - fix damaged ship with a tender
garr                      - declare that ship should garrison its area
nogarr                    - turn off ship's garrison flag
menace                    - toggle whether ship should actively menace
menaceallmyon                     - turn active menace ON for all your ships
menaceallmyoff                    - turn active menace OFF for all your ships
war                               - go to war economy
emergency                         - go to emergency economy
econmodes                         - explain econ modes
sup                               - supply/support report
history                           - show history
t                                 - show current turn number
d                                 - means you are done and wish to end your turn
h,help,?                          - this help menu
mapgen                            - put a graphic map in file "sw_map.png"
titles                            - see the title sequence
credits                           - see the credits
rules                             - description of game rules and mechanics
v                                 - version info
save []                 - save game to  else to default
new                               - replace current game w/new rnd one - genesis
new2                              - replace current game w/new rnd one - establ.
passturns               - don't prompt you for next  turns
q,quit,exit                       - quit game and exit program
** NOTE:  means one of the following: n s w e nw ne sw se


Most Frequently Used Commands

The commands you will probably use most are: h, d, w, mv, dest, automove, a,
c, b, bs, lplayers, lshipsbytype, mytypehist, combat, mapgen, myplanets,
myships, garr, nogarr, 2, and 6.


Technical Implementation Notes

Space Wrath is written in the ANSI C programming language and compiled for
Linux and Windows. There is also a CygWin version for Windows, though it may
be discontinued eventually as it's redundant and was only really done out of
curiosity. The Linux version is further split into two different versions,
which are basically the same, except that in one version the mapgen command
works and in the other it does not. The one without the mapgen command requires
less special-purpose libraries, and so may be the better choice for some
people. The one with mapgen is called spacewrath_gd and the other is
spacewrath_nogd. The "gd" refers to the GD graphics library. The main body of
the GD code is built directly into the game executable, but it in turn relies
on libpng, libz and libm, which might not be on all machines (they probably are
on all those that were installed from modern "big name" Linux distributions,
however.) GD is a very nice and useful little C library for programmatically
creating and drawing on graphic images, and saving them to files.


The Linux "_gd" version of the program expects that the following shared
(dynamic) libraries are on your machine. The version numbers are also important:

	Library			Location (Typical)
	-----------------------	------------------
	libpng.so.2		/usr/lib
	libc.so.6		/lib
	libz.so.1		/lib
	libm.so.6		/lib
	/lib/ld-linux.so.2	/lib

The Linux "_nogd" version expects only this:

	Library			Location (Typical)
	-----------------------	------------------
	libc.so.6		/lib
	/lib/ld-linux.so.2	/lib

Space Wrath is available for Windows 98/ME/2000/XP and for Linux/x86 (kernel
2.2 or 2.4). Windows-wise, the author has only tested it on Windows 98 and sees
no reason why it shouldn't work the same on ME, 2000 and XP -- though he may be
wrong. Linux-wise, the author has tested it on SuSE 7.1 Pro distro (2.4.4
kernel) and it works fine; he suspects it should also work fine on other modern
distributions and also on 2.2 kernels, though he is not positive about it.
Eventually he will try to get better evidence of exactly what platform
variations it works on.

REVISE: In order for mapgen to work, the program needs to dynamically link
against a special graphics library called GD. The GD library -- sometimes
also called just "gd" or "libgd" is a nice C library for programmatically
creating, drawing, manipulating and saving graphic images in a variety of
popular formats. Once I figured out roughly what I needed, I did some research
on the web and GD jumped out at me as being the perfect fit, especially
because it's so simple and in C. By default, GD itself also requires the PNG
library (also called "libpng") and zlib (also called "libz"). If you do not
have these libraries on your system already, or if you don't wish to get them,
then Space Wrath should still work fine, just don't type the mapgen command!
If I'm wrong about this, please let me know.

You don't need to grab the GD library because the part that Space Wrath needs
is already built into the final program, but in case you're curious about where
it came from or would like to learn more about it, here's the official website
for it:

	http://www.boutell.com/gd/

The website for libpng is:

	http://www.libpng.org/pub/png/

The website for zlib is:

	http://www.gzip.org/zlib/

I recommend the latest versions of each. I'm using GD 1.8.4, libpng 1.2.1 and
zlib 1.1.3 on my machine. I believe all three are only distributed in source
form, so you must have a C compiler and libraries installed to build them,
and to build them it's mindlessly easy, basically just:

	./configure
	make
	make install

You must be root to do the last one though. Read the documentation that comes
with each for specific instructions, but it's pretty close to that.


Ideas and Inspiration

Each of the following things had an impact on my design of Space Wrath:
Empire (the biggest influence! and btw, I'm talking about the Baldwin/Bright
game with this name, sometimes also called PC Empire or Empire: Wargame of the
Century -- I'm not referring to the UNIX/VAX massively multiplayer wargame with
hexes and lots of economic micromanagement and "fodder"-ism), Star Trek,
Star Wars, NetHack, Federation & Empire, Stellar Conquest, Galaxy,
Reach for the Stars, and Master of Orion.

Designer Notes

The short story is that I thought...hmmmm, how about a game like Empire (one of
my favorite computer games of all time), but with stars and planets and
spaceships, and all-text/console (like NetHack, another one of my favorite
games of all time) for ease of development and maximum portability, and have no
"tech research" meta-game within it.

Feedback

Comments, suggestions, bug reports and requests for new features are welcome.

Credits

design and programming by Mike Kramlich

Author contact info:

       email:   groglogic@gmail.com
       website: http://synisma.neocities.org

Space Wrath was made under the auspices of the imaginary Groglogic project.
It was brought to you by the numbers 0 and 9, the letters S and W, and
also by the colors "on" and "off". It was wholly conceived and brought to
fruition by a small demonic lord who resides on the Nth plane of Heck and
therein reigns supreme. Yes, I'm drunk on the heady vapors of keyboard
freedom, folks. Somebody slap me.

Copyright 2002 by Michael A. Kramlich
All rights reserved worldwide