There is a custom 3d UI object for displaying a battle board which . It can be added to a UI by adding a "CUSTOM" type object to a UI with the additional tag "BATTLEBOARD" and a number of optional parameters to control formatting and behaviour. For example:
[BattleSummary3D] TYPE Custom BattleBoard WIDTH 868 HEIGHT 618 DX 0 DY 0 MINLINES 3 MINLINELENGTH 4 UNITSPACING 8 CENTERGAP 12 ASSETSCALE 7 GRIDEMPTY BattleGrid.tga GRIDUNIT BattleGrid.tga GRIDTARGET BattleGridTarget.tga GRIDATTACKER BattleGridAttack.tga FILE UI_BATTLE/Battlefield_Default.dds
- MINLINES is the minimum number of battle lines per side to show on the battle board regardless of the number of units present (the view will zoom out to show additional lines if required)
- MINLINELENGTH is the minimum number of slots per wing to show on the battle board regardless of the number of units present (the view will zoom out to show additional lines if required)
- UNITSPACING is the distance between units
- CENTERGAP is an additional space between the front lines of opposing armies
- ASSETSCALE is a scale factor for the units (the scale used the AssetScale from UNITS.CSV in thousandths, divided by this value)
- GRIDEMPTY, GRIDUNIT, GRIDTARGET, and GRIDATTACKER are textures displayed over the ground to highlight empty grids, inactive units, targetted units, and attacking units respectively
- FILE is the default terrain texture to use (if not specified by script)
See BATTLESCRIPT.TXT for descriptions of commands to set up a BattleBoard UI, add units, play animations, move units, and display text with the units. Relevant commands start with "Battle3D".
Battle3DAddUnit takes a squadType, which is the name of a row in SQUADS.CSV which indicates the asset name, squad size, scale, and other display parameters for the 3D model. This table is also used for displaying groups on the map, although they are always shown as a single unit on the map.
Placement of squad members is controlled by FORMATIONS.TXT, there is a chunk for each squad size indicating the placement of the member (x and y coordinates, -1 to 1) in the battle grid.