Help support TMP

Building a Simple Data Set for Army Builder 3

Army Builder 3
Product #
Suggested Retail Price
$39.99 USD

Back to Workbench

Privateer4hire writes:

I think it's amazing that a company can get a bunch of fans to work for free developing files for their product.

I'm also surprised that there hasn't been more dither about this sort of thing from the copyright crew.

Revision Log
20 February 2006page first published

Areas of Interest


Featured Link

Featured Ruleset

Featured Showcase Article

Assassin's Dwarf Berserker

Assassin's Dwarf Berserker, as painted for TMP by Adam of Pro Painted Miniatures.

Featured Workbench Article

Current Poll

Featured Book Review

Featured Movie Review

16,543 hits since 20 Feb 2006
©1994-2021 Bill Armintrout
Comments or corrections?

Here at TMP, we often have contests that involve designing armies or forces for various game sets. Of course, this means there is a need to make sure that the submissions are valid (legal) under the game system. In the past, I've handled this by checking the list manually, or by coding special routines to check legality.

However, listing-checking becomes more difficult for the more complex game systems, so I've been wondering about using army list software for that purpose. When I mentioned this to Rob Bowes of Lone Wolf Development, he was kind enough to provide me with an evaluation copy of their Army Builder 3 product.

As it turned out, the game I was immediately interested in - Hundred Kingdoms - doesn't have any AB3 data files available yet. Now, I could have tried to convert the files for the previous version of Army Builder (there's a conversion utility available), but I figured that creating a set of data files from scratch would be a good learning experience...

Going by the Tutorial

First, I read the Army Builder manual (available online at their website) - which helped quite a bit. At first glance, the software looks a bit daunting, but it's the sort of thing that is intuitive once you've read the manual. In a real nutshell, you select the game system and army/force/faction you are interested in, then you click on units (displayed at the top) to put together your army roster (shown at the bottom of the screen). You can even drag-and-drop units to compose groups/squads/elements.

Army Builder 3 - showing a FOW roster

However, I wanted to go beyond just being a regular user of Army Builder and learn how to make the data files that define a game system. So next, I started reading the supplementary manual and documents.

(As I learned along the way, the current data file tutorial hadn't been updated for the latest version of the program. However, I've given Lone Wolf a list of needed updates, and I imagine they'll have a revised version available soon.)

Defining Things

The first thing you do when putting a new game system into Army Builder is to create what is called a definition file. As the name suggests, this file is simply a list defining various types of game information. You can do this by manually editing a text file...

Part of a definition file

...or you can use Lone Wolf's ABCreator program, which edits the definition file for you:

Starting a new definition file in ABCreator

After filling in some basic information about yourself (so that users can give you feedback on your data files, assuming you share them with others) and the game system, you start defining the game system.

  • In the Unit Stat panel, you begin to list the stats used by the game system. For example, Hundred Kingdoms units have stats for Movement, Number of Attacks, Combat Attack Value, Missile Attack Value, Missile Range, Defensive Rating, Spell Points, Leadership, Hit Points, Unit Formation, and Unit Cost. They also have a type (i.e., basic, veteran, etc.) and various special abilities. So I enter these into ABCreator (except for name and unit cost, which are pre-defined for you).
  • Then, in the Group panel, you list the stats again, but this time explain what the possible values can be. Actually, in most cases you can just mark them "dynamic," which means the stat gets a number. In a few cases, however, you need to specify the possible values. For example, a unit's mandatory Formation can be 1 by 1, 2 by 1, 2 by 2, and so forth. And Special Abilities include things like Berserker Rage, Double Vision, Inspire, Stomp, and on and on.
  • Under Race, you define the various races or factions or nationalities that have different armies. (There are 9 races in 100K.)
  • Under Profile, you can define categories of units. In 100K an army list isn't valid unless it includes a warlord, so I create a profile for "Warlord" (defined as any unit which has the "Warlord" special ability).
Defining all of the Special Abilities

For a game with low-complexity army design rules (such as Hundred Kingdoms), that's about all the real definition work. However, I have to get some other requirements out of the way:

  • In some games, you might have some stats which are used by infantry, and another set of stats which are used by vehicles. So I have to define a "stat set" for units (which includes all the stats I've already defined).
  • In some games, you might be able to choose among various options for each unit (i.e., which weapon to assign). Hundred Kingdoms doesn't have unit options, but I have to define a Category for options (which I leave blank).
  • I have to define a Sort Set (which defines the order in which to display units)
  • And a View (which defines what information to show users)
  • And two things called a Ruleset and a Context, which for more complicated games provide the option of having standard rules vs. tournament rules, or special subsets of factions. I don't need anything fancy, so I just create a "General" context and a "Standard" ruleset.

You can gather from all of this that it is possible to set Army Builder to handle very complex games, and you can even write scripts to verify complex rules about valid armies.

Lastly, I use the Terms section to customize Army Builder a little bit. For instance, the program lets users break their rosters down into forces. The default name for these forces is "squad" - I change that to "group."

Data Files

With the definitions file done, I can use ABCreator to create one or more data files. To keep things organized, I've decided to create one data file for each of the nine races in Hundred Kingdoms.

Defining a new OutKast unit

Within each data file, I now define the various units in each army. (For a more complex game design, I might also need to define items, options, rules... but not in this case.)

This process is pretty mechanical, just filling in the information. Usually this means typing in the information, but in a few cases a few mouse clicks brings up a list of options - for instance, "Race" brings up the list we defined earlier.

I can even cut-and-paste unit descriptions from the game's online documentation, and put in a URL to reference a photo of each unit.

The End Result

Switching back to the main Army Builder program, I now "compile" the army information, then use the Switch Army option to try out my new Hundred Kingdoms data set:

Using my new 100K data set in Army Builder 3

Here, I'm designing an OutKast army for 100K. The top panel lists the available units; the bottom panel shows what I've selected so far. The red icon means my army isn't valid yet - I haven't chosen a warlord!

I can right-click on a unit to bring up its detailed information, and can even download a photo:

Checking out the Ammo Clown

It takes a while to set up for a new game system, but Army Builder makes army design easy - and the data files can now be shared (via the Army Builder website) with other gamers so that they can design their own 100K armies.