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
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
Gameplay is divided up into several rounds. Each round consists of two
parts: the Inventory 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
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
Left Arrow will sell a bundle of the currently highlighted item.
For each item, the name, bundle size/total price, and current inventory
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.
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.
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.
Tab Select the next weapon available in your inventory.
Select the previous weapon available in your inventory.
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 option.
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 is displayed.
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 Player
Enter Accept your orders.
Ctrl+Y 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
Ctrl+Z Pauses the game.
Ctrl+R 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 Graphics Fast option described below). You
also have access to a few useful commands, described below.
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
If you have used smoke tracers or have Trace Paths enabled, then
this option will clear all smoke trails from the sky.
Resigns from the current round and all remaining rounds. This
option ends the entire game, and will take you back to the intro
Takes you to the Sound Options window.
Human 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
Moron This AI fires at random. Of all the AI’s, this one has by far
the highest suicide rate. An alternate name is ‘‘Cannon
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
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 game.
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)
Specify how scoring works, selecting from Basic, Standard,
Greedy, or possibly other methods defined in the configuration
Basic Players only receive money for kills and survival.
Standard Players receive less money for kills and survival,
but they will also receive money for damaging an
Greedy Players are paid as in Standard scoring, but with
bonuses for unused inventory at the end of the
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
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 calculations.
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
Walls Are (list)
Specify how weapons behave when they hit a boundary. Note, the
ground is always ‘‘concrete’’ -- this specifies how the sides
and ceiling behave:
None The sides and ceiling are open.
Concrete All sides are solid. Weapons hitting any
boundary will explode.
Padded Weapons hitting the sides and ceiling will
bounce off, although at a reduced velocity.
Rubber Weapons hitting the boundary will bounce off at
exactly the same velocity.
Springy Weapons hitting the boundary will bounce off
with an additional ‘‘kick’’ to the velocity.
Wraparound 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.
Random One of the above types of walls are selected at
Specify the background sky.
Hostile Environment (toggle)
Land Generator (list)
Specify the generator to use to create the land.
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
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
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 through land).
Scale the size of explosions by this value. If playing on a
very large or very small playing field, you might want to adjust
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.
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
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
Determines if all players will fire at once (Synchronous), or
whether each player will fire independently (Sequential).
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
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).
If set, tooltips will be displayed where available.
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
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
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.
--help Display a brief synopsis of the command-line options available.
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 -S.
Disable music and sound effects. You may also use -s.
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 enabled.
--name Set the name of your player, if you are initiating a network
game. By default, your user name is used.
--port 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
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 share
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)chaos2.org>. (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.