The Untitled Tank Game

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Index & NewsWritingWebcomicsProgrammingArtworkAll ElseLinks & Mail Cutting to the chase with the archives:
Win32 Exe (ZIP,32K)
Above w/ DLL (ZIP,272K) If you get nasty messages alleg42.dll, get this one.
Source Code (ZIP,24K) You'll need Allegro 4.2.0 libraries for this.
And the Recent Changes

  1. Overview
  2. Gameplay
  3. Weapons Data
  4. Suggestions

Overview
Yet another game knocked off the artillery concept, the nifty feature I'm working towards here, is a fully editable weapon set. I'm still working on adding in new features and other nifty things. Allegro 4.2.0 is used for the graphics.

Gameplay
At the opening screen, each player selects their tank's color and enters a name. Enter commits the settings. Different terrain will be displayed until one is selected. In-game, the commands are:
Up ArrowIncrease Velocity
Down ArrowDecrease Velocity
Left ArrowTurn Cannon Counter Clockwise
Right ArrowTurn Cannon Clockwise
Page UpIncrease Velocity Fast
Page DownDecrease Velocity Fast
TabSwitch Weapon
SpaceFire
Shift+While Shift is down, changes to angle/velocity is restricted to once per keypress.
When a tank reaches 100% damage, the game ends and any key will close the window.

Weapons Data
The weapons are defined in the weapons.dat file with the following parameters:
IDThis parameter is ignored and is used so that you can tell what ID# a weapon will get assigned.
DETDetonation
0 - Detonates on impact
1 - Detonates at apogee
2 - Detonates immediately
3 - Detonates on 45° below horizontal
SUBSubmunitions
This indicates the # of submunitions launched on detonation. If zero, the weapon will simply explode.
APATAngle Pattern
0 - Fixed spacing around parent's
1 - Random spacing around parent's
2 - Fixed spacing around vertical
3 - Random spacing around vertical
ADISTAngle Distribution
if APAT is 0 or 2 this equals the degrees between shells.
if APAT is 1 or 3, this equals maximum deviation from center.
VPATVelocity Pattern
0 - Multiple of parent's
1 - Decreasing multiple of parent's
2 - Random
VDISTVelocity Distribution
if VPAT is 0, it is thousandths of the parent velocity.
if VPAT is 1, this is the number of thousandths of the parent velocity lost for each successive submunition.
if VPAT is 2, this is the maximum velocity imparted
SIZExplosion Size
The size of the shell's explosion.
COLColor Set
The sequence of colors to use in the explosion
0 - Red/Orange/Yellow
1 - Green/Yellow
SWEPSubmunition Weapon ID
DECDamage Equation Type0 is DMG - (DRATE * DST)
1 is DMG * [1 - (DST/DSIZ) ^ (DRATE/1000)]
2 is DMG * (DRATE/1000)^DST
where DST is the distance from the explosion.
DMGMaximum Damage
DRATEDecrease Rate of Damage
DSIZDamage Radius
beyond this distance, damage is always zero.
FLAGFlags
Or together any of the following:
1 - Weapon cannot be selected by players
2 - Submunitions are still released if the shell does not detonate as in DET
4 - No explosion occurs if detonation as in DET
8 - Explosion does not destroy dirt

See the weapons.dat included in the ZIP file for examples. The weapon list is currently limited to 10 entries.

Suggestions
I want suggestions. I have a small list of ideas to implement, but more are welcome (but you're only allowed to suggest sound effects if you come bearing samples in a format Allegro can work with). jms_blkfox@yahoo.com

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

The BEST Text Editor Ever