xscorch - Annihilate enemy tanks using overpowered guns.
Xscorch is a clone of the classic DOS game, "Scorched Earth". The
basic goal is to annihilate enemy tanks using overpowered guns :). Basically,
you buy weapons, you target the enemy by adjusting the angle of your turret
and firing power, and you hope to destroy their tank before they destroy
First, fiddle with the options in the main menu. There are a number of options
which are described below, which may make the game easier or harder. The
default options make for a reasonable level of gameplay. Most of the game
configuration is controlled from the user interface, although there are a few
command-line options which are mentioned below. Once you are ready to begin a
new game, you might want to Save Options
to save your configuration,
then select Begin Game
to start a new game.
Gameplay is divided up into several rounds. Each round consists of two parts:
phase and the Battle
phase. In the Inventory
phase, you can buy weapons to shoot at your opponents, and accessories to help
defend your tank. See the Inventory section below for information on the
weapons and accessories you may buy. In the Battle phase, you setup defenses,
choose a weapon, aim and fire at your opponents. See the section on Battle
below, for more information.
The player has the option to buy weapons and accessories to make the game more
interesting. Weapons are just that: an assortment of missiles, including
ICBM-like warheads, napalm, lasers, and a number of custom weapons to bring
down specific defenses. Accessories are methods to make gameplay easier for
the player and increase their chance of survival, with guidance systems,
shields, fuel, batteries, and other odds-and-ends.
At the beginning of a round, each player is given an opportunity to buy or sell
weapons and accessories. Each player may have up to 99 of any item in their
inventory. A few weapons have an infinite supply (for example, Baby Missiles)
- these weapons cannot be purchased.
Weapons and accessories are sold in bundles; the price for the bundle is
displayed in the inventory, and you must buy items as a complete bundle. The
exception to this is when a player attempts to buy more of an item than their
inventory can hold; in this case, the bundle will be broken and the weapons
are sold on an individual basis, with a small markup applied.
Weapons and accessories may also be sold from a player's inventory. Again, items
are generally sold as a bundle. The player will receive a reduced amount of
money for the sale - hey, the middleman has to make money somewhere :)
In the Inventory screen, two panels are displayed, listing the weapons and
accessories that are available. The Tab
key will switch between the
various panes. Up Arrow
and Down Arrow
will allow the player to
scroll through the list of items, Right Arrow
will buy a bundle, and
will sell a bundle of the currently highlighted item.
For each item, the name
, bundle size
Items which can neither be bought or sold will appear darkened. If the player
has maxed their inventory for that item, or they cannot afford to purchase the
item, or the item has a higher arms level
than the player is allowed,
then the item cannot be purchased. Items which can be bought will appear with
an arrow pointing to the right, and items which can be sold will appear with
an arrow pointing to the left.
The items that are available are listed in the next two sections.
This list will be added once the weapons list is reasonably stable.
This list will be added once the accessories list is reasonably stable.
This overview is sadly, incomplete.
- Left, Right
- Change the turret angle. This will adjust the turret angle
in increments of 5 degrees. For finer control, hold Shift to adjust
the angle in increments of 1 degree.
- Up, Down
- Change the firing power, in the range of 0 to 1000. This
will adjust the firing power in increments of 20. For finer control, hold
Shift to adjust the firing power in increments of 1.
- Select the next weapon available in your inventory.
- Select the previous weapon available in your
- B, b
- Activate a battery. A single battery can restore 5% of
damage done to your tank, and therefore restore the maximum firing power
by 5% when you are damaged. You must have a battery to discharge in your
inventory to excercise this option.
- E, e
- Activate or energize the currently selected shields.
- F, f
- Activate your fuel tanks. A window will be displayed,
indicating the amount of fuel you have available. As long as you have
fuel, you may use the Left and Right arrows to move one unit
to the left or right, respectively. In general, you cannot move your tank
up a steep hill. Immobile tanks will not be able to excercise this
- R, r
- Force a redraw of the screen.
- S, s
- Toggle the currently selected shields. The currently
selected shields are the shields which will be used when you Energize.
Shields are classified by a power number with a type suffix: M for
magnetic shielding, F for force shielding, and S for your
standard, run-of-the-mill shields. If no shields are available, 0S
- T, t
- Toggle contact triggers on/off. This is only meaningful if
you actually have some contact triggers of course, and when
tunneling is enabled. Weapons that are fired after this point will have
contact triggers equipped (until you run out).
- 0 - 9
- Display information about a particular player. 1
gives information about Player 1, and 0 gives information about
- Accept your orders.
- Bring up the System Menu (this can also be accessed from
the menus). You can control certain graphics options from the system menu,
clear the screen of smoke trails, and end a round prematurely.
- Pauses the game.
- Resign from the game. This will end the game for everyone.
You will be asked to confirm the resignation.
The system menu gives you some control over the game while it is in progress. In
this menu, you will have options to change how the game is displayed (e.g. the
option described below). You also have access to a few
useful commands, described below.
- Mass Kill
- Kills everyone still alive in the round. No player gets
credit for the kills, and none are considered a suicide. This option is
useful if all human players have already been eliminated from the game,
but the AI players are making no progress whatsoever in annihilating each
other. This option ends the current round only.
- Erase Smoke
- If you have used smoke tracers or have Trace Paths
enabled, then this option will clear all smoke trails from the sky.
- Resign Game
- Resigns from the current round and all remaining rounds.
This option ends the entire game, and will take you back to the intro
- Sound Setup
- Takes you to the Sound Options window.
- The humans believe they are the superior mind. The AI's
rather disagree with that sentiment. Keep this in mind when you are
wondering why 9 AI's would want to simultaneously target your tank...
- This AI fires at random. Of all the AI's, this one has by
far the highest suicide rate. An alternate name is ``Cannon Fodder''.
- This AI goes for targets it has a line-of-sight to. It's
not a great player otherwise. This AI buys weapons that have the best
economical yield, but during the game it will select weapons which have
the highest yield.
- This AI is similar to the Shooter, except a Spreader buys
weapons with the highest yield, without regard for the price.
- This AI chooses a victim. Once chosen, the victim is
attacked until they are dead, or the Chooser loses the ability to reach
the victim. This AI does not need line-of-sight, but fortunately it cannot
compensate for wind.
- This AI is like Chooser, except a Calculater can compensate
for the wind. These guys are fairly deadly in a fight; they also tend to
allocate large budgets to defense and offense.
- This AI goes for weapons that will cause as much damage as
possible, without much regard for individual victims. This AI prefers
spread weapons to the more focused, precision weapons. A few Annihilaters
can clear the terrain easily. These AI's don't worry about defenses too
much. With their destructive tendency, they won't survive long anyway -
but neither will anyone else.
- No one knows what this AI thinks...
- This selects one of the above AI's at random, but you will
not be informed which AI was selected.
- Number of Players (integer, 2-10)
- Set the number of players participating in the game.
- Number of Rounds (integer, >= 1)
- Set the number of rounds to play for this game.
- AI Type (list)
- Select the AI type. Human players are ``Human''; the
remaining AI's are documented above.
- Player Name (string)
- Give a unique name for each player.
- Tank Style (list)
- Select the type/shape of the tank, for each player.
- Interest Rate (float, 0-0.30)
- Interest rate for savings, compounded once per round.
- Dynamic Interest (toggle)
- If enabled, interest rates will change during the
- Initial Cash (integer, 0-1000000)
- Amount of money each player should start with.
- AIs Can Buy (toggle)
- If enabled, computers are permitted to buy items. The AI's
are very uninteresting if this option is turned off.
- AIs Buy Aggressively (toggle)
- If the previous option is enabled, the AI's will buy items
conservatively. With this option, the AI's will allocate larger budgets
and buy bigger items early in the game.
- Free Market (toggle)
- Scoring (list)
- Specify how scoring works, selecting from Basic, Standard,
Greedy, or possibly other methods defined in the configuration file:
- Players only receive money for kills and survival.
- Players receive less money for kills and survival, but they
will also receive money for damaging an opponent.
- Players are paid as in Standard scoring, but with bonuses
for unused inventory at the end of the round.
- The Lottery (toggle)
- If the lottery is enabled, there will be a random drawing
at the start of each round. A random player will receive a bundle of a
random weapon for free as the lottery award. This is a great way to inject
a little extra life into AIs who are usually conservative buyers. Plus
it's always great fun when you get a free Annihilator...
- Air Viscosity (float)
- Gravity (float, 0-10)
- Specify the gravity, in pixels per cycle squared (one cycle
is roughly 50 milliseconds).
- Ground Damping (float, 0-10)
- Specify the ground damping, used in tunnelling
- Maximum Wind Speed (float, 0-10)
- Specify the maximum wind speed, in pixels per cycle
squared. The actual wind velocity is initialised once per round, to some
value in (- max, max).
- Wind is Dynamic (toggle)
- Normally the wind remains constant through a round. If this
is enabled, the wind will change once per turn.
- Suspend Dirt (percentage)
- Tanks Fall (percentage)
- Borders Extend (integer, >= 0)
- This specifies how far off-screen weapons should be
tracked, when you are playing with no walls. When this value is zero,
weapons will disappear as soon as they leave the screen in the horizontal
direction, even if wind would have brought them back on-screen.
- Walls Are (list)
- Specify how weapons behave when they hit a boundary. Note,
the ground is always ``concrete'' -- this specifies how the sides and
- The sides and ceiling are open.
- All sides are solid. Weapons hitting any boundary will
- Weapons hitting the sides and ceiling will bounce off,
although at a reduced velocity.
- Weapons hitting the boundary will bounce off at exactly the
- Weapons hitting the boundary will bounce off with an
additional ``kick'' to the velocity.
- The ceiling is open. Weapons going off one side will
reappear on the opposite side. Explosions will also wrap around the screen
if they detonate near an edge.
- One of the above types of walls are selected at
- Sky (list)
- Specify the background sky.
- Hostile Environment (toggle)
- Land Generator (list)
- Specify the generator to use to create the land.
- Bumpiness (percentage)
- Specify the noise on the generated landscape.
- Arms Level (integer, 0-4)
- Specify the maximum arms level for the game. Only weapons
with this arms level or lower may be purchased by any player, under normal
- Bomb Icon Size (integer, 0-4)
- Specify the size of the bomb icons, while they are
traversing their path in the sky. This does not affect the size of
explosions, or the size of the smoke paths (if trace paths is
- Tunneling (toggle)
- If set, weapons are allowed to tunnel through land. If you
enable this, you will want to buy contact triggers if you want a
particular weapon to always detonate on impact (instead of tunneling
- Scaling (float)
- Scale the size of explosions by this value. If playing on a
very large or very small playing field, you might want to adjust this
- Trace Paths (toggle)
- If enabled, all weapons leave a smoke trail to reveal their
trajectory. If this option is off, you can still use Smoke Tracers
to determine the path a weapon will take.
- Useless Items (toggle)
- Some weapons are not useful given the current configuration
(e.g. contact triggers are irrelevant if tunneling is disabled). If this
option is enabled, then weapons which will have no effect are not listed
in the inventory screens.
- Screen Width (integer)
- Set the width of the playing field, in pixels.
- Screen Height (integer)
- Set the height of the playing field, in pixels.
- Dithering (toggle)
- If enabled, the land and sky gradients will be dithered.
This option is particularly useful on 16-bit displays, where the gradient
is very noticeable otherwise. This does slow down land generation
- Animation (toggle)
- If enabled, explosions and other effects will be animated.
This option can also be controlled from the System Menu.
- Graphics Are Fast (toggle)
- If enabled, all graphics are always as fast as possible.
This option can also be controlled from the System Menu.
- Computers Are Fast (toggle)
- If enabled, graphics are fast when there only computer
players are alive. This option can also be controlled from the System
- Mode (list)
- Determines if all players will fire at once
(Synchronous), or whether each player will fire independently (
- Teams (list)
- Order (list)
- Determines the player order.
- Talk Mode (list)
- Determines who is allowed to talk.
- Talk Probability (percentage)
- Determines the likelihood that a player will speak at the
end of a turn.
- Extended Status (toggle)
- If set, the status bar will contain an additional row of
extended information during the game (things such as trigger and battery
inventories, life, wind).
- Tooltips (toggle)
- If set, tooltips will be displayed where available. A
restart is required to change the value of this option.
- Human Target Practice (toggle)
- AI's will always prefer human targets to AI targets (except
for AI's that fire at random). When playing against 9 Calculators, this
can make your day pretty lousy.
- Allow Offset Targetting (toggle)
- Generally, when a weapon hits a shield it does less damage
than an explosion detonating right outside the shield (weapons hitting the
shield do not have a chance to detonate). This changes the AI targetting
behaviour so they will deliberately aim outside the shield, if their
intended victim has raised shields.
- Always Offset (toggle)
- If the above option is set, this option will force the AI
to always offset its targetting as if the player had raised shields. This
allows the AI to compensate for cases where the player may simply not have
had their turn yet to raise shields. The downside is the AI will never
attempt to score a direct hit with this option enabled.
- Enable Scan Refinement (toggle)
- If set, harder AIs are allowed to refine their trajectories
by computing trajectories that take into account player shielding effect
and various other factors they do not normally consider. This option could
slow down gameplay a bit but makes the AIs much more difficult.
- No Budget Constraints (toggle)
- AI's will spend as much money as they can, disregarding
their budget preferences.
- Enable Sound (toggle)
- When set, music and sound effects will be played.
- Use HQ Mixer (toggle)
- When set, mikmod's high-quality mixer will be used.
- Display a brief synopsis of the command-line options
- This is insanity, Max! Or what if it's genius?
- Display weapon yields, and economical yields.
- Specify an initial window geometry for xscorch, where
w is the width and h is the height of the playing field.
Useful for displays less than around 800x600 resolution. Note this option
overrides the settings in the config file, but you can save the new
options to your config file so you don't have to specify this every time.
You may also use -g.
- Load an alternate user config file, in file.
- Enable music and sound effects. You may also use
- Disable music and sound effects. You may also use
- Enable use of the high-quality mixer, if sound is enabled.
This may use a lot of CPU power on older machines.
- Disable use of the high-quality mixer, if sound is
- Set the name of your player, if you are initiating a
network game. By default, your user name is used.
- Set the port number to use in a network game. This option
is only relevant if you also specify --client or --server.
The default is dependent on the protocol number, but is some large port
- Start xscorch in client mode, and connect to server
(which should already be running). If --name and --port are
not specified, reasonable defaults are used.
- Start xscorch in server mode, and wait for connections from
the clients. --name may be used in conjunction to specify the name
of this player.
This is very unstable right now, and therefore is not documented.
- User's default configuration for xscorch.
- Profile bitmaps for the tanks, usually stored in the local
The xscorch home page at <http://www.xscorch.org/>. There is also
additional documentation in the source distribution.
xscorch was written by Justin David Smith <justins(at)chaos2.org> and
Jacob Luna Lundberg <jacob(at)gnifty.net>. (Please do not list these
e-mail addresses on webpages, or list them in other packages, without
contacting us first.)
This manual page written by Justin David Smith <justins(at)chaos2.org>.
Copyright(c) 2001,2000 Justin David Smith.