The Evolution of Tracks, Turrets, Armor, and Attitude

(or, Where This Game Came From)

This is a somewhat rambling essay.  Go here for a not-so-short, but more-to-the-point summary.  Look on the right for a more focused post.  Scan this post for something interesting.  Or just read it.

I started with the idea that I wanted a war game that would play like a two-player board game.  You set down the cardboard squares on the hex grid and the best tactician wins.  Next, it had to be a computer game, because board games:

  • Take too long to set up before hand and clean up afterwards.
  • Require long, frequent interruptions to check the fine points of the rules.
  • Make you waste ages waiting for your opponent to move.
  • Force players to cheat, because they honestly (or dishonestly) can’t remember where a unit started its move, or whether it had already made its move, or whether it’s even allowed to move this turn, or….
  • Don’t allow for hidden movement without referees and elaborate props.

Miniatures games have all these problems, plus a few others.

So it would be a computer game then.  From there:

Real Time Tactics:

The Real Time Strategy genre caught my attention as a starting point.  A player is able to observe and act 100% of the time.  No time is wasted waiting, and waiting, and waiting for other players to move.  Most RTS games involve a lot of busywork, but I could get rid of that with no problem.  The closest thing to what I wanted was the game Praetorians.  This had no resources but was otherwise quite RTS-ey.  The tactical part of Shogun: Total War (I played the original a lot) came closer still.

A problem with both these games is that it is often hard to tell what is going on.   The troops seem to slow down or even run or lose fights they should win for no reason at all.  No doubt this has to do with realistic problems such as moral, fatigue, and the like.  With a slower pace or more play I might have started to pick up on it.  I wanted, however, to add certain complications to my game, so I thought I’d better keep  the basics really simple.  Therefore I abandoned poor morale, out-of-ammo, out-of-fuel, and fatigue.  (For the tanks, anyway.  The players would have to look after themselves.)  A few simple numbers, easily available and mostly unchanging, would tell the player everything he needed to know about how two tanks will fare against each other.

Another problem with Praetorians, and every other RTS I’ve played (though not Shogun), and a few other games (such as Sid Meier’s Civilization—pick almost any Roman Numeral you wantplayed in simultaneous mode with a a time limit) is that important things tend to happen on unwatched parts of the board.  You think you’re about to win, then suddenly find half your army has disappeared—and half your buildings/walls/towers/cities if you have such things.   Or suddenly a large enemy army appears out of nowhere.  (Okay, this can definitely happen in TTA&A, but in TT&A you should know, at least, that an enemy army has gone missing.)  In Civ, you never know that a neighboring civilization is spending all it’s income recruiting a huge army as fast as it can until, suddenly, it pours over the boarder in overwhelming numbers.

There’s a place for hidden information, for making a player go and look to see where the enemy is.  But there is also “giving” the player information in such a clever way that they don’t see it.  Hence:

C3I:

Giving you the information you need, when you need it, where you need it, and letting you react immediately—that’s the critical feature of any real time game.  Perfection is impossible, but no player should have to ask, “Why wasn’t I told?”.  If enemy tanks are moving towards one of your key positions, it should not take several minutes of study to find them when they are on your maps…somewhere.

I wanted TTA&A to play something like a board game, or turn-based game, where you could take minutes to methodically check everything on the board.  But with TTA&A you should need only seconds, not minutes; real time with only the feel of turn-based.  I’ve used a bunch of techniques to bring this about:  fast zoom-in/zoom-out, grab the map and drag it, multiple maps (as many as a player wants, all synchronized), large-area maps that control normal maps, and a unit tray that shows the status of all your units in one place.  Okay, you have to look for something to see it, but if you do look for something, you will see it—and fast.

I also enhanced Unit Doctrine, so a tank held in reserve could act on its own, running away rather than remaining motionless until its player eventually noticed it had been destroyed.  This does complicate a unit’s behavior, but I’m convinced it simplifies game play by giving the player one less thing to worry about.

This C3I, the ability to know what is happening and respond, is at the Core of Tracks, Turrets, Armor, and Attitude.  It is what sets it apart from most other computer tactics and strategy games and what makes it worth playing.

C3I and the Fog of War:  Okay, there are things you don’t know in TTA&A.  You don’t know what kind of tanks or army your opponent is going to field.  Once the game starts you don’t know where the enemy is or where he is going.  But I hope these are interesting puzzles that can be managed, not something that makes all thought and planning meaningless.  I think there is a clear distinction here; I don’t regard it as a fine line.  I believe I’ve got it right.  (Though maybe it could be righter.)  I’d like to know if I’m wrong, or if there are ways to make it better.

Why Tanks?

My original plan was to do a historical war game.  I could set up generic rules for all sorts of pre-20th century military units and let players pick a date and select any army they wanted from that time or before.

But tanks seemed a lot easier to program.  I now doubt that they were (though I haven’t done a historical game yet), particularly with the need to pick targets automatically.  However, trying to explain hoplites and catapharcts to the vast majority of wargamers might not be practical, while anybody can understand a tank—a cannon, armor, wheels, and a motor.

Another option for units was warships.  20th century battleships, etc., are like tanks—guns, armor, propellers, and motors.  There are minor complications, like certain guns that can’t point in certain directions, and deck vs. belt armor.  In fact, I did steal one naval complication for my tanks:   the use of big guns to shoot at big ships and little guns to shoot at little ones—I didn’t want the tanks to be too simple.  In fact, at the game’s level of abstraction, there is almost no difference between tanks and battleships.

The real problem with naval warfare, though, was the lack of terrain.  Terrain is another complication, but it’s a good one—one that makes the game more interesting.  Ergo, tanks.

I did not much consider space ships.  My tanks don’t model real tanks very closely for a variety of reasons.  The advantage of space ships is that, as there are no real ones, any space game’s ships model them with absolute accuracy.  Hence whole vessel, the weapons and defenses and everything, can be designed purely to improve the game play.  But again, there’s not a lot in the way of terrain.  Also, my tanks aren’t very real anyway, so I lost nothing there either.

I have two other problems with space ships.  The first is that every space game I’ve seen is 2 dimensional, which is ridiculous.  In fact, in games, space war is just naval war with really hokey warships.  The second problem is, if you do go to 3 dimensions, how do you display fleets in 3D?  The methods I use for locating tanks in TTA&A, as well as the methods I use for getting visual range, travel times, and figuring blocked shots all work in 3D.  I really can track 3D motion.  But how do I show it?  Without, that is, confusing a space admiral who has to make correct snap decisions?

(I should add that I love most of the space games I’ve played.  Their creators can focus on creating a great game without any concern for any military reality, and they do.  While doing “tanks” instead of space ships, I hope I’ve grabbed some of that.)

From a completely different direction, I was inspired by Combat Mission: Afrika Korps.  This tank-heavy game plays in a series of simultaneous one-minute turns.  Each player spends the time they need to arrange their move, then one minute of battle time passes as the various tanks move and shoot as directed.  It is very realistic, using real World War II tanks.  And Afrika Korps improves over other games in the series by ditching the infantry.  (Infantry tends to bring any WWII-or-later game at the battalion level and above to a screeching halt.  They move too slowly to keep up with the tanks, and are soon out of the fight.)

That game teaches a lot about handling one, two, or three tanks, but for my goal of a company—or even battalion—level game with two players, it’s too slow and detailed.  But it definitely showed me the possibilities of swarms of tanks shooting it out.

Exploration:

Civilization taught me rather a lot about exploration and hidden movement.  I’ve spent hours (or maybe it’s days—I hope not weeks) exploring worlds in that game.  A lot of times, after uncovering the whole map, I’d drop that game and start another.  I definitely wanted exploration in TTA&A.

Exploration is a basic feature of RTS games—and a very awkward one.  If it hadn’t been for Civ I would never have considered using it.  It requires serious concentration by the player, and in an RTS game that concentration is usually needed elsewhere.  After finding it impossible to keep up with AI players, I ended up adding doctrine (that is, AI lieutenants for human players) for exploration; some tanks will automatically explore, and all tanks can be told to do so.

I don’t like automating things.  Making decisions is the human player’s job.  More importantly, if the AI lieutenants make bad decisions, it rather ruins the game for players.  My automation philosophy, here and in other places is:  I don’t do it, but if I do, I do it perfectly.  So I put a lot of work into the automatic exploration.  That, coupled with some of my other command-and-control features should provide the thrill of exploration without distracting the player from the clash of the big tanks.

Terrain stays hidden until you explore it.  (Actually, everything is hidden unless a friendly tank is in range to see it, but most things don’t change, so once found they stay on the display.)

Fog of War and Reconnaissance:

Enemy units, however, move, and so are visible only when in range of your tanks.  This is a basic problem faced by real commanders in battle, and I considered it a critical feature of the game.  It’s also something that can be done in a computer game; it’s almost impossible in a board or miniatures game.  It does complicate the player’s job—and I’ve tried to simplify other parts of the game to make up for it.

I almost made special sensors available (at a price) to let tanks see farther than the standard 3 kilometers, plus special countermeasures to hide them.  I think it would add a lot to the game, but I was afraid it would make it too hard to know when you weren’t seeing something because it was hidden and when you weren’t seeing it because it wasn’t there.  I’m still wondering, but my feeling is that I could do more with reconnaissance.

Build Your Own Tanks:

One thing space games tend to have that I love and wanted desperately was the ability to design your own battlewagons.  (Tanks, ships, weapons, vehicles, units, …— the word “battlewagons” sort of works for all of them, I think.)  I loved the original Masters of Orion for a number of reasons.  It was a straight Conquer the World Universe game with no SimCity (SimPlanet?) nonsense.  Most of what I liked did not apply to TTA&A, but it did let you design your own starships—and the design mattered.  At a given tech level, you could build very different weapons systems that behaved very differently, had to be commanded very differently, and had very different uses.

To win at TTA&A you need a variety of tanks for exploration, recon, observation, guarding control markers, holding key ground, taking key ground, catching and destroying various types of enemy tanks, and luring enemy tanks away from from important ground.

The Armory Mode lets you look at existing tanks in detail and design new ones.  Just type in the numbers you want, and the Armory adjusts the other numbers that need to change—most commonly tank weight and cost.  There’s a default set of tank designs when the program is first run.  You can add designs from another armory file.  You can create new ones.  And there’s a calculator to tell you how well a particular gun will work against another tank’s speed, size, and armor.

(I used this feature to design the current AI armies, the default player tanks, and my own, good weapons of war.  This construction work is an intense game in its own right.  It teaches you how to make tradeoffs—you can build the ultimate tank if you can figure out how to pay for it.)

Build Your Own Army:

Most games give you the army you are to fight, already formed—often for historical accuracy.  Unfortunately, many of these give you a bunch of useless units and maybe one or two items that can actually do things.  So you sit there with 30 tanks that have no purpose other than to give the other side’s helicopters, attack aircraft, and artillery target practice.  Any sane military would have spent the tank money on anti-aircraft and counter-battery weapons.  Perhaps the historical army builders were really stupid, or, more likely, the rules and the units’ abilities don’t match the historical reality.

Some games, however, let you build your own army, purchasing each unit after careful thought.  These games give you more power, more responsibility, and make you feel less like a marionette, less like you’re following a (rather dull) script—all the things a good game should try to do.  I’ve always liked these games and  I regard organizing an army to be as critical as maneuvering one in battle.  So building your own army is an important part of TTA&A.

Command Your Own Army:

TTA&A is all about commanding a bunch of tanks—an “army” as computer games go.  (A real “army”:  1000 tanks.  Computer game “army”:  100 tanks max.)  Being a tank game, the action takes place over a battlefield 20 kilometers or more across.  Being a real time game, things happen at widely separated spots at the same time.  Being a tactical game, the position of each tank matters.

Real Time Strategy games dodge the issue of tactics and handle it poorly too.  The combat mechanics are somewhat simplistic.  Melees are often one mob piling into another.  Lines and columns and flanks and such don’t make much difference, so the most primitive commands work fine.  Then the individual units think for themselves, so even the most primitive commands are not needed.  I’ve done very well at many of these games by focusing on developing resources, building the right buildings, and cranking out as many troops as possible.  I then direct these troops at the enemy in a very general way and forget about them.  My usual opponents, on the other hand, carefully arrange their troops and supervise their battles.

My troops fight just as well without me, and by focusing on construction I end up putting a lot more troops in the field.  I win easily.  My opponents, on the other hand, have the big advantage that they, unlike me, have been playing a war game.

Which brings me back to TTA&A.

The positioning of the tanks—the tactics—matters a lot.  You need to run when outnumbered, pursue when more powerful, make sure none of your tanks is blocking the fire of the others, and make sure no one tank can get blasted by enemy units too far away from your main body to be hurt.  (I cover this in detail in How To Play and Controlling Lots of Tanks and in a few other places.)  Tank fire and its effects are very carefully calculated.  The odds work just like they would in a miniatures game with (unloaded) dice or, for that matter, in real life.  I provide a number of tools that allow the player, theoretically, to figure out in advance what will happen in a melee.  In practice, of course, things happen a bit too fast for precise calculations, but after a few melees a player can get some feel for how one will play out.

The Proving Ground:

There are all kinds of numbers and calculations you can do to figure out how one tank will fare against another, and with a few more calculations you can figure out how one tank platoon will fare against another in a straight fight.  I even provide calculators to help.  But in reality it’s hard to make sense of the numbers, and once the tanks start to move and take odd positions the numbers become just plain wrong.  To get a feel for how your tanks, and their formations and tactics really work under fire, you need to try out small fights, repeating them several times with minor variations.

I played a game, Space Empires IV, for a bit that let you design your own space ships.  Unlike Master of Orion the design differences were not that dramatic, but some choices could make a difference in a fight.  This game let you set up melees among various types of space ships to test them out under fire, which was quite useful and which would have been even more useful  had there been more design choices.

In fact, this capability got into TTA&A without me deliberately putting it there.  You can run any number of player sessions on a single computer (or on two computers side by side).  The tanks will do exactly as told unless given specific doctrine.  It is more a matter of a player realizing he can set up these test battles.  The player can, in a turn-based manner, set up each set of tanks and move them into range of each other.  This usually gives the best sense (“information” is not really the right word here) of which tanks are under-gunned, under-armored, or under-powered.  (Okay, all tanks need bigger guns, more little guns, thicker armor, and double the horsepower.  I should perhaps say, “…which tanks lack an optimal balance of firepower, armor, speed, and cost.”)

More elaborate tests are available.  A player session can be set up from the start as AI, but in fact the AI can be switched on at any time.  An elaborate test of tank combinations can be made by setting up a complete game, selecting the armies, moving them into a test position, then switching on the AI on one or both sides.

The AI doesn’t play like a human player.  It can juggle more tanks on the one hand and isn’t really as smart on the other—if we ignore beginning human players.  But it won’t tweak its decisions to favor your pet theories about which designs are best.  If the emperor has no clothes, the AI will say so without hesitation.

No Artificial Humans:

I’ve tried to leave the human element out of TTA&A; you can view all these tanks as remote-controlled robots.  Why?

  • I’ve always found the behavior of people in battle to be quite rational; they stand and fight when it’s reasonably safe to do so and run when it isn’t.  I think the player can be trusted to take care of his tanks in a similar manner.  (It helps that in real tank battles most crews survived their tank’s destruction and so were a lot quicker to fight to the “death” than were other soldiers who couldn’t put quotes around “death”.)
  • I think the arithmetic of battle has its own fascination.  Even if one wants to understand the human element in battle it’s first necessary to understand the mechanical element.  Courage, patriotism, confidence, enthusiasm, faith, obedience—these things don’t mean much to incoming artillery rounds.
  • While I cheerfully do computer simulations of guns and armor and movement, I’m a bit reluctant to do the same with people.  (Not that I never will, but that with TTA&A I’ve pushed my simulations far enough for one game.)

And, of course, why simulate people when you can use real ones, as in…

Multiplayer:

Games don’t have to be social events, but there’s nothing like lots of people all playing the same game.  And using computers we can have a hard-core, serious, highly competitive, tactical war game and a party all in one.  I wanted a game that could handle any number of players, so I built the unlimited number of players and the team concept into TTA&A right from the start.  (This is also a reason for keeping the user interface simple enough to run on primitive computers; it makes it easier to get everybody a computer.)

Teams:  While the game itself does not attempt to model human behavior, using real humans does the job far better.  Indeed, while the tanks and battlefield are all simulations, dependent in part on the imaginations of the players, the interactions of the players on a team are the real thing.  Currently the basics are there:  each player gets his own army and can cooperate, or not, as they see fit.  The limits to team size depend only on the power of the host machine.  The game runs in windows, allowing other communications software to run in parallel, so there is a lot the game does not need to do even if all a team’s members are not in the same room.

I do think the game could do more to support a command structure and cooperation.  It should be possible for players to give  tanks and money to other players.  It might also be interesting to allow  certain players to be formally designated as, say, the brigade commander and battalion commanders, and given the ability to assign and reassign tanks in their command to the various company commanders.  An army with such a despotic structure could be pitted against an army wit the current feudal structure.  (If this interests anybody else, do let me know.)

Multi-Teams:  A game should be played between two sides.  There are multi-sided games, and I love them, but TTA&A is not really one of them.  The machinations of Diplomacy would not work in a real time game.  So don’t have more than two teams in a TTA&A game.

On the other hand, there’s nothing like a good free-for-all.  So TTA&A fully supports this.  My current guess is that there is not going to be a lot of diplomacy (lower case “D”, and no italics) in a game.  But there’s always somebody who lets two other players destroy each other, then mops up.  I intended this to be a game of tactical skill, not psychology.  To limit that tendency any player who destroys an enemy tank gets two thirds the price of thatd tank, with which they can build themselves new tanks.  This causes multi-team games to drag on a bit more than those with only two sides, but it rewards players who fight—if they fight well.

Client-Server:  I’ve known some extremely competitive people.  If I wasn’t careful how I put the game together, each would be sure the other player or players had some unfair advantage.  As a result, the program can be run as a player or the host.  Each player session connects to the host, which actually runs the game.  The host cannot distinguish among the players.  (For instance, it has no idea which players are AI and which are human.)  Nor does it trust the players in any way.  (For instance, it decides for itself the cost of each of a player’s tank designs.)  I would not trust the system for high-stakes gambling, but it will keep the players honest in a moderately unfriendly game.

Artificial Enemies:

TTA&A was originally to be a game between 2 human players—no AI need apply.  I soon found I needed Artificial Intelligence players if only for testing.  I needed to try out different tank combinations, and it was hard to get the feel of the game when playing both sides (the downside of real-time versus turn-based).  Also, a lot of action was needed to track down all the multithreading software bugs.  So the AI had to get better.

Then I realized that anyone playing the game for the first time would probably try it by themselves, just to see what it was all about.  The AI had to put on a good show just to make the game look good.  Then there was bound to be times when 1, 2, or 3 people would want to do a free-for-all with 20 players.  Good artificially intelligent players are needed again.  Then there’s cooperative play—man versus machine, 3 humans against AI.  Then there’s practicing up so you don’t look bad in human versus human games.  And testing out various army combinations against each other on your own.  And when you’re too tired to think, you can entertain yourself by watching 2 AI’s battle it out—you might learn something.

I never did get the AI to use formations.  On the other hand, the AI can manage a lot of tanks more easily than a human.  I left the AI a bit overly aggressive; it attacks sometimes when it should run.  I felt most beginners would get annoyed at having to chase an enemy all over the map, and I don’t want to annoy beginners.  A bigger problem is that the AI tends to scatter  its forces.  This gives a clever player the ability to mass against portions of the enemy, defeating a larger army with a smaller one.  I left this tendency there because I think it teaches the beginner a useful lesson about concentration of force as well as building his confidence.

Note/Warning: when the AI figures out where you are, it will concentrate on you, with no nonsense.  The scattering is a temporary, start-of-the-game advantage.  Also, this scattering may put all the AI’s units precisely where they want to be to grab control points or blow away your scouts, so it’s not a guaranteed human advantage.

Tank Physics:

The actual tanks were tricky.  They needed to be very simple because a player would command a lot of them—I call TTA&A a company level game, but I’d love to have a player command a battalion or regiment or brigade.  On the other hand, they needed to be complicated to make for an interesting, combined-arms game with with many radically different sorts of vehicles.

For a start, I used only tanks.  I’d love to add infantry, wheeled vehicles, ground effect vehicles, and helicopters.  Maybe even attack aircraft and artillery.  But for now everything’s a tank, with a frame, an engine, a few guns, and armor.

The game tanks are modeled rather like real tanks.  Add armor and they weigh more, move slower, and take less damage from enemy fire.  Double the horsepower and they move faster.  The bigger they are the easier they are to hit and the more a given thickness of armor weighs.

Generally more size give more fighting power for money spent.  This is a natural tendency due to the square-cube law; the bigger battleship is usually the more powerful battleship.  The law can work in reverse for tanks, particularly regarding wheels, and tracks, with the largest tanks crushing their own drive train and wheels.  However, in the game, favoring size discourages players from building large armies of little tanks, thus making their armies easier to control, so TTA&A plays up the advantages and downplays the problems of size.

The guns are modeled like real guns.  Smaller targets are harder to hit, just because they are smaller.  At a distance, vehicles with a high power-to-weight ratio are harder to hit because their location when the armor-piercing round arrives is harder to predict.  Close up, big guns have a hard time spinning fast enough to keep up with small, fast tanks (though smart big tanks usually carry a few small guns for this purpose).

I had to rig the tanks to fire automatically.  There was no way a player could take the time to direct a single tank ‘s fire without changing the nature of the game.  I did put a lot of effort into making the tanks shoot intelligently.  Hopefully this can be seen in test battles.  Guns will try to knock off damaged tanks first, to quickly stop them from harming friendly tanks.  Then they shoot at those tanks where they can do the most damage.

The tanks shoot a lot more quickly and more often than real tanks would, and they never run out of ammunition.  This isn’t realistic, but anything else would give the player too much trivia to worry about.

Tank movement is a bit crude.  They move in straight lines at constant speeds and turn on a dime.  This isn’t too bad for a small tank, but it is a bit silly to see a 500 ton behemoth do zero to 60 instantly and do 90° turns at top speed.  I’ve looked into changing this, but anything else would require a lot more programming, and it makes the player’s job a lot harder because the vehicles don’t follow the precise path he set out for them.  (And following roads gets more interesting.)  I am looking into this, because I might want to add jet aircraft and big warships (on the rivers and lakes) to the game someday, and they need to move in graceful curves.

Introducing Tracks, Turrets, Armor, and Attitude

I created this war game after playing all sorts and types of war games and studying a lot of military history.  It combines fast and simple play with many of the tactical and mechanical aspects of company/battalion level warfare.  I describe, in detail, the thoughts and ideas behind the game in A Serious Computer War GameHere I provide a quick, introductory overview.

The game can be downloaded for free at right—it’s the GameOne.jar file.  Double click on the downloaded file and and you are playing the game.  See Quick Start for a bit more information about getting started in single-player mode.  See Installation for an explanation of all the starting features and what to do if something doesn’t work.

This post has recent date so it is always the first, introductory post.  The “archives”, which almost everybody arrives at first, is getting rather long, and this post serves as a good introduction.  For best results, use the menus or the list at right to find articles that interest you and to avoid the ones that don’t.  (The posts actually make the most sense if read in reverse order, from the bottom of the list to the top.)

The Basics:

  • Written in pure Java:  runs on any PC, Mac, or Linux machine.
  • Plays on a single machine, a LAN, or any network.  Plays fine offline.  (No advertising).
  • Low system requirements—using low spec systems makes it simpler to set up a LAN for  a group of players.
  • Play can be competitive, cooperative, or both.
  • Single player, two player, multiplayer, massively multiplayer.  Any number of players on any number of teams; 2 sides, 3 sides, or a 100-side free-for-all.
  • Good AI (artificial intelligence)—enables solitaire and cooperative play.
  • Moves are simultaneous and made in real time; it’s a Real Time Tactics (RTT) game, which is a Real Time Strategy (RTS) game without the computer game nonsense.
  • But it keeps the spirit of a turn based strategy game, or even a board game or miniatures game.
  • Works great on multiple monitors.
  • Recovers quickly and easily from network problems.

The Game:

TTA&A is played on a battlefield 20 kilometers or more on a side.  Each player commands an army of tanks.  The mission is to locate and guard enough control points to win the game.  Terrain is hidden until explored.  Enemy units are hidden until within 3 kilometers, or closer in forests.  Tanks sizes, speeds, and gun ranges are all to the same scale.  The maps and controls are designed to give the player complete information and control (regarding the player’s tanks and what they see, anyway).  While a real-time game, it plays like a turn based one, with emphasis on tactics, operations, and strategy rather than frantically cycling about the map hoping to spot a melee before it’s lost.

Success depends on  maneuvering tanks of varying types to overwhelm the enemy, using the right tank for the right job in a combined-arms approach.  (In army terms, the game is played at about the company or battalion level.)

TTA&A is highly flexible.   Battlefields can be any size, as can armies.  There may be any number of teams, with any number of players on a team.  Individual players can be human or AI–and this mode may be switched during play.  As a players you can design your own tanks–several very different types are needed, there being no other combat units (yet).  Then you can create your own army using a point system.  To test new customized tank designs–and tactics–you can easily play both sides of a test game on one computer.

This is an indie game.  I’ve been writing software and playing war games of all types for ages.  I had an opportunity to  do a couple solid years of work on a game—much more than the typical hobbyist ever gets—and this is what I wrote.  As a game, as a computer program, and as network-based client-server software, it’s as good or better than anything else out there, even if it lacks the artwork and polish that a big team of artists and programmers could bring to it.

A Serious Computer War Game

Tracks, Turrets, Armor, and Attitude, a free computer game for LAN’s or single computers.  Download by clicking on GameOne.Jar at right.  (Double click on downloaded file to run.)  It is a medium-serious real-time tactics tank battle simulation, with each player commanding an army of ten or more tanks.  There can be two or more opposing teams, with one or more players on each team.  The game itself is a Java executable JAR file which can be copied about freely.  Should run on any PC, Mac, or Linux machine.  More detailed information is available under the Tracks, Turrets, Armor, & Attitude menu.  The game is both a simple, competitive, easily playable computer game and a more involved military simulation.  It runs in multiple windows, making it ideal for dual- and multi-monitor / multi-display computers, and it has a parallel / multithreaded design to take full advantage of multi-core machines and large networks with lots of players.

Basic Idea:

TTA&A is about making command decisions:  designing and selecting the right units and maneuvering them to beat the other side.  The user interface makes it easy to understand a complex situation and give orders.  There is no endless, pointless, mindless busywork like that which dominates most computer “war games”.

The idea is that a game be a battle between two or more players, each on their own computer, playing on a local network.  (It works fine offline.)  However, there is good AI, so a game can also be a single player on one machine or cooperative players on many machines.

Origins:

I have long played war games of all sorts, but never quite found one that was quite right.  The opportunity came my way to write the ideal war game and Tracks, Turrets, Armor, & Attitude  is the result.  It’s a computer game, but  incorporates the best of board and miniatures games also.

What, to me, is the perfect war game?  (In other words, would this game interest you?)  Well, the ideas I started with, and used, were:

  • It should be a network game that two or more players could play, each player on their own computer.
  • It should be a straight fight.  Sides should be roughly equal, with any handicaps agreed in advance; a game like Chess or Go or Napoleon’s Battles.  It would not be an endless quest like Dungeons and Dragons or World of Warcraft.  And for the most part, a complete game could be played in an hour.  Unlike a lot of computer games (and even some non-computer games), you fight with the troops you start with.  The enemy has to be out maneuvered, not overwhelmed with endless reinforcements.
  • It must have fog-of-war.  Exploring the terrain, locating the enemy by reconnaissance and deduction, and hiding your own movements plays a big role in real warfare but is hard to incorporate into a game.
  • It would be a real-time game (RTS/RTT).  This keeps players from spending half their time waiting for their opponents to move; they’re playing for the entire duration of the game.  Real-time does make it hard to follow the action and control the units; Real Time Strategy games are often hopeless in this regard.  But this struck me as an honest problem–one I wanted to face and solve.
  • The game must not bog players down in details.  The basic idea is to bring a superior force against a weaker force, and the player must always be thinking about how to do this.  Which tanks are low on ammunition or fuel, and which are positioned to allow a flank shot–the game is not about that.  Or about where to put an ore mine, or how many workers to put in it, or whether to build a blacksmith or a market, or….  In other words, it should be Real Time Tactics rather than Real Time Strategy.
  • It should be realistic.  Given the need to actually get the program written, plus the need for simplicity noted above, plus a few other factors, the resulting game does have certain fantasy elements to it.  It is not a real tank simulation, historical or modern.  But there’s is something very real in it.  It shows the importance of speed, of armor, of big guns, and of little guns, along with the importance of reconnaissance.
  • The game should be machine versus machine.  The human aspects of war build on top of the mechanical aspects; you have to understand the mechanics to even begin to understand human actions.  For simplicity’s sake, the game should stick to the mechanics.  (And with more than one player on a side, the human element will be added using real humans.  No need for awkward, arguably inaccurate, computer simulations!)
  • On the other hand, it should allow, even encourage, team play.  This puts the human element back in–real, with no simulations necessary.  It’s team building/team development with more options and aspects than anything else outside of real life.
  • It should let players buy their own mix of units; be a game where you build your own army.  Real generals don’t usually have this opportunity, but it’s a critical choice someone has to make, and I think the player ought to be able to make it.  It adds another dimension to the game.
  • The game should let players design their own weapons, vehicles, units, etc.  (Tanks, so far, in this case.)  This is a lot like  choosing your own mix of units, but different.  It adds another half-dimension to the game, and lets the player empathize with real military equipment designers and the generals, admirals, and top civilians who have to sweat out all the tradeoffs.
  • It must recover easily from a program crash or network failure.  Should the host session fail, it must be easy to restart it, restore the game from an automatic back-up, reconnect the players, and continue.  Should a player’s session fail, it must be possible for that player to quickly start a new session–perhaps on another machine–and reconnect to the game.  The game must not create a new, private host for the disconnected player and slip an AI replacement player into the original game without informing all players!

To summarize, the game is about making critical decisions, not testing the player’s dexterity with a mouse, or testing his endurance as he orders hundreds of units, one by one, to move from here to there.  The UI provides solid C3I support for a player commanding a tank company or even battalion, allowing them to focus on fighting the battle.

Design Your Own Tanks

Tracks, Turrets, Armor, and Attitude provides a few pre-designed tanks, so designing your own is not necessary.  However, these tanks are not the best.  Designing your own, at the least, gives you the opportunity to build tanks that work better, suit your command style better, fit a specific scenario better, and have better names.  Matching the tanks to the scenario is particularly important:  existing tanks may not work well in unusual circumstances–big maps, large numbers of teams, or very large or small budgets.

Tank Types You Can Use

Here are some tank types that either improve on the originals or add new capabilities:

  • A heavy scout.  Small, fast tank, but a lot heavier than the usual scout, having some armor and carrying a big gun.  Money can be saved by slowing it down slightly.  It may not explore as quickly or as cheaply as the usual scouts, but it will get the job done and may destroy the enemy scouting force in the process.  These tanks are apt to survive into the middle of the game, where they can be used to hold points against weak attacks and observe the battlefield.
  • A Guard Tank.  Medium sized, fast, decent armor, with a good gun plus a light gun for killing up scouts.  Used for guarding Control Points from everything but serious assault.  Similar to the standard Abrams tank, but a bit less expensive and with a light gun so scouts cannot ignore it.
  • A battlecruiser tank.  Large, expensive, fast, and carries a big gun.  Money can be saved by lightening the armor a bit.  It serves as a one-tank reserve.  It can be held back, then sent quickly to a critical point on the battlefield later in the game.  Its class doctrine for defense should be set to “Evade”, lest it get overrun by a powerful enemy force while your attention is elsewhere.  (The doctrine can be changed once you’re using it.)
  • A Main Battle Tank.  There are several of this type already provided, but this is a critical part of any army, and marginal improvements can turn defeat into victory.  There is a lot to consider here (gun size, fire rate, armor) but the biggest point is speed.  Too fast and it will be too weak.  Too slow and it won’t get to the fight in time.  And a machine that is unbeatable on a small map can be useless on a large one because it cannot get anywhere on time.
  • A Land Battleship (or Ogre).  These monsters are needed because you get more row power for the money than from any other unit.  However, they tend to be slow and can only be in one place at one time.  Like with the MBT, tweaking the design to get the best tank can pay big dividends.

Of course, once you field these tanks your opponents are likely to design tanks specifically to counter them.

On the Proving Grounds

How will your designs perform on the battlefield?  A real game against another player, human or AI, is apt to be too confused to give a real sense of what goes on in a fight.  Happily, it’s easy to play both sides with TTA&A.  Simply start a host session and two normal sessions (start the program three times, hit “Host Game” on one window and “Join Game” on two.)  Playing both games, you can select the tanks for each side, and then move them into range of each other.  A lot of tanks can be fed into a series of set-piece melees and watched carefully on both maps.  This makes it possible to quickly try a new tank against multiple combinations of opponents.  Just be sure to avoid control markers, so no one wins the game that way, and always keep a tank in reserve on both sides so neither side wins that way, either.

This can also give you an opportunity to try different formations in a controlled manner.  By using identical numbers of identical tanks on both sides, you can test the advantages of different tactics/formations.

The “Automate” button can be used to let the AI take charge of two carefully selected armies and show you how they compare in an almost-real game, though the AI might not be as good as a human player at taking advantage of a clever design.

Design Basics

The most basic concept when designing a tank is that bigger is better.  A big tank takes twice as much damage as it’s price-equivalent in two smaller tanks before it is killed.  The square-cube law gives it heavier armor at a relatively cheaper price.  And even with the formation commands, it’s easier to track and command one tank rather than two.  So the first basic idea is, build big tanks.

The big problem with big tanks is that they can only be in one place at one time.  Also, some jobs don’t require brute strength; it makes sense to build cheap tanks for scouting and reconnaissance.  Stronger tanks, but not (usually) the strongest, are needed to guard isolated control points.  And you might need to  attack in two or even three places at once; something one big tank can’t manage.

Take care to put properly sized guns on your tanks.  A big one is needed for destroying heavily armored tanks and will work as well as anything else against large-but-lightly-armored vehicles.  But one big gun can only kill one tank at a time, where several smaller ones have a chance of killing several at once.  If the tanks are small enough, the big gun may be unable to hit small fast tanks at all.  At a distance it can’t predict where they’ll be when the shell gets there, and close up it can’t swing the gun fast enough to keep it trained on them.

Fine Points of Design

Actually designing tanks involves putting numbers in the designs and work sheets until you get something you like and can test.  Start the program and click on the “Armory” button.  A list of existing designs will appear.  Click on the design that interests you most and then click on the “Design” button.  The design for this type appears.  It can be modified directly, or a new type can be created by changing the name.

Changes can be made in the edit boxes.  With each change, other values, including those in other edit boxes, may change.  If you do something to increase the size of the tank, either the armor thickness will drop or the armor weight will increase.  There are fixed rules for how the various statistics relate; if you enter the same numbers on two different design windows, all the unentered numbers will also be identical.  (Be careful, though, when trying to build something identical to an opponent’s tank; the map window does not provide all the relevant data about enemy tanks.)

You may open as many Design Windows and Ballistic Worksheet windows as you wish at the same time.

Use the Ballistic Worksheet to determine the effects of one tank firing at another.  When first open, it gives the values for the tank in the Design Window firing at itself with its primary battery.  Another tank’s numbers can be typed in to give the effects of firing at it.  Another battery’s number can be typed to give the effects of firing that gun.  (The green question mark can be dragged from another window onto this one to explain some of the more arcane statistics.)

Do note that one tank may be unable to damage another.  An 85mm gun will not penetrate 200mm of armor at 100 meters.  This can prove awkward.

I have tried to minimize the use of AI for players.  To be fair to players, it has to be perfect.  However, in some cases it is needed to avoid bogging the player down in details; the player should be running 10 tanks or more, not micromanaging just one.  (One tank per player might make a good game, but this game is not that game.)  One unavoidable use of AI is the actual firing of guns.  They fire automatically, and they cleverly pick out the best target for each shot.  It is not too smart about holding fire for a good shot.  (Smart, but maybe not smart enough).  A very big gun can be made cheap and light with a long reload time.  However, its tank is apt to fire at too long a range, miss, then be destroyed by an approaching enemy before it can reload.  Be careful with long reload times.

The other key use of AI is to handle single tank tasks you won’t have time for in a battle.  The Class Doctrine window handles this.  Doctrine can be set or changed for individual tanks at any time during a battle.  However, tanks of some types will need it right from the start, and it can best be set up here.

The most common doctrine is for scout tanks.  They can be set to explore, which is a necessary task that, if not done automatically, will take almost all a player’s time at the start of the game.  Scout tanks should also have their defense rule set to “Run”.  A tank that might operate on its own should be set to “Evade” or “Resist” lest it get overwhelmed while the player’s attention is elsewhere.  (Remember to change this when they finally get into a real melee.)  It might be useful set the offense rule to “Hunt”, but this can lead to the tank wandering a long way from the battle.