MAIN
home
modding home
ARITCLES
basic scenario creation
uniform modding overview
the order of things
variables reference
commands reference
map layout
INI FILES
cwbr.ini
level.ini
MAP CSV LAYOUT
map_name.csv
SCENARIO CSV LAYOUT
units.csv
events.csv
objectives.csv
MAIN CSV LAYOUT
artyammo.csv
effects.csv
formation.csv
gamescreens.csv
gamesounds.csv
levels.csv
mainscreens.csv
mainsounds.csv
names.csv
openobjs.csv
openplay.csv
sprites.csv
tables.csv
toolbar.csv
tooltext.csv
unitcommon.csv
units.csv
unitsprite.csv
weapons.csv
formation.csv

This has got to be one of the most confusing csv files that we have. It's got so many hidden rules, that I doubt my first draft of this will be able to cover everything without making some mistakes. We wrote this design about 2years ago and haven't really touched it since. I'm having to look into the code just to remember the details. I wish that I had time while I was designing it to document it, but I hate documentation and it's a chore just to write all of these mod guides. But to get the cool mods, we have to explain everything that you have at your disposal, so I'm getting them done.

The most important thing to remember when messing with formations is that they are real. I went to the Marine Military Academy for 1 year and the Naval Academy for 2 years and I learned how to march in formation, not that I was any good at it, but I got the basic concepts. When marching in formation, you are lining up on other people in that formation. You are lining up on the guy to your right or the guy in front of you and this continues all through the formation until you get to the guy carrying the colors. In the large formations he's lining up on someone too. If you've ever seen people in formations, you may have seen them do a "Dress Right". They stick their arms out and turn their heads to line up the formation keeping everyone at a common distance to each other.

The reason for the long explanation is that if you keep this in mind, creating formations can be fairly simple. Think of the formation that you want, then place the flag bearer, then the next guy and keep going until you've filled in all of the slots, with each guy lining up on another guy lower in number than he is. The first guy is 1, he's the flag bearer, every formation has 1 flag bearer. You then place the remaining 2-60 guys. Our formations can only hold a max of 60 sprites. If we were to increase this number, we would have to come into this file and increase the size of all of the regimental formations. You do not have to define all formations for 60 men if the formation that you are defining will never be completely filled. For example, our officer formations only have 2 guys, the flag bearer and the officer so there would be no reason to define all 60 slots.

The formation.csv file is broken into 2 parts for each formation definition. The first row basically defines the formation properties, the next rows define the formation locations. There can be no blank lines within a formation definition. The facing of a formation will always be up or towards the top of your monitor.

Column Explanation
A: Form # This is not a number, but the name of the formation. This name will be used in other csv files to reference this formation. It is suggested that you some sort of naming convention because as you create more and more formations, they can get very confusing.
B: Rows This is the number of rows or lines down that will make up the formation. You can fill this in after you have completely defined the formation by just counting the number of rows.
C: Cols This is the number of columns or lines across that make up the formation. You can fill this in aftery you have completely defined the formation by just counting the number of columns.
D: Row Distance This is the number of yards between each row of men. So as the men stand there will be this many yards in the front and back of each man.
E: Col Distance This is the number of yards between each column of men. So as the men stand there will be this many yards to the left and right of each man.
F: Subformation This is the name, from column A of this file, of the subformation to use. This is used for officer formations. For example our brigade commanders only have 2 people in their formation, the flag bearer and the officer. Once a formation has been filled in with all of the men for that unit, the game will then look to see if that unit has any subordinates. If it does, then it will place the subordinates in the remaining formation locations, and call the subformation for each of those subordinates.
G: Keep Formation This flag determines if this formation is used for marching or if the unit should switch to their marching formation for marching. We use this flag to maintain skirmish formation.
H: Can Wheel This is just a 0 or a 1 determining whether or not wheeling is allowed in this formation.
I: Can Fight This is just a 0 or a 1 determining whether or not fighting is allowed while in this formation.
J: Move Rate

This is one of the two parameters that effect the movement rate. This number is added to the movement rate modifier of the terrain, from the map_name.csv file, and then this result is multiplied by the current movement speed of the unit and then added to the movement speed of the unit.

So make this a percentage decimal. For a 20% increase in speed while in this formation, use 0.2, to decrease the speed by half while in this formaiton, use -0.5.

K: AboutFace

This one is a little confusing. The formations can about face and the AI does use this functionality to turn around quickly. Also if you click directly behind a unit, they will usually about face to the location. If this value is 0, then the unit will not be able to about face from this formation.

If you want to support about face from this formation, the this number should be the position in your formation where you want the flag bearer to end up after the about face is completed. So after you have your formation designed, take a look at where all of the numbered slots are, then think of the formation as turned around, where would the flag bearer be? Now we don't have our columns allow about face, but if we did, then this value would have to be 60. Meaning for a good about face to occur, then the unit must occupy the same exact space that they did before the about face was called. So you would want to move the flag bearer all the way down to the last slot and have everyone else line up behind him.

L: Artillery Formation This is the sub formation for artillery. This works exactly like the other sub formation, but applies to artillery. This is really only used for the division formations. Divisions are the meeting place for each type of unit (cavalry, artillery, infantry). The cav and inf share most formations, but the arty does not. So if a div commander calls an entire division formation, the artillery will use this formation instead of the other sub formation defined eariler.

After you have defined the formation above, or at least filled in as many parameters as you can, it's time to design the actual formation. This is a list of numbers from 1 to 60 placed on the grid exactly how you would want them to look in the formation. This is a good reason to use a spreadsheet program to edit these csv files.

1. Place your flag bearer. It's easier to work on a blank spreadsheet and place your flag bearer somewhere where there is a lot of room all around. So type a 1 in a box and you have your first formation consisting of 1 flag bearer.

2. Place your number 2 guy. Remember that he must be able to line up to the left, right, front, or back of the 1. He cannot be diagonal from the 1. You may leave blanks to the left, right, and front, but not in the back. So if 2 is behind 1, he must be directly behind 1. But if he is to the left, right, or front, he may skip some blocks and does not have to be directly next to 1.

3. Continuing placing men until you have placed all you want, remember no more than 60.

4. Also remember that the numbers you place are as if there were that many sprites in the formation. So you start with just one side of the formation and then move to the other, when there are less than max men in the formation, it will look unbalanced. Always balance the formation as you add new numbers.

5. We have designed many formations in this file, they all work. So use our examples to help you on your way. Also if something that I have written is too cryptic, our example should hopefully clear it up.

6. When the game loads in the formation, it looks in a specific order to determine who to line up on for each slot. First it looks to see if it's behind a lower number, then it looks to see if it's to the right of a lower number, then to the left, and finally ahead. It does not look to find the lowest number that it's around, it looks in the above order. If it cannot find a lower number, then the formation fails.

Special Situation Explanation
(row dist - col dist - sprite)

Before every number in your formation design, except number 1 (flag bearer) since it would not make sense, you can specify specific properties that affect that formation slot alone. These additional properties will override anything else and only affect the formation slot number that they precede. For example, the following is the entry for slot 2 in the formation. It overrides the row distance and the column distance for this slot. We use this a lot in the larger formations. In the division formations we want the officer close to the flag bearer, but we want large gaps between the bigger brigade formations. So we set the default distance for the formation to a large number, then we override the officer slot with a smaller distance, so he's closer to the flag bearer.

(10-0-0)2

It does not make sense to fill in both the row and col distance, since each slot only lines up on one other slot, so you must read your design and determine which slot this slot is lining up on (using step 6 above) and then determine if it's the row or col distance that you must modify.

row dist The row distance, ahead or behind, in yards. A value of 0 uses the default.
col dist The column distance, to the left or right, in yards. A value of 0 uses the default.
sprite You should really just set this number to 0. Although it is functional, it doesn't make sense and I suspect that we will have more use for this in the next game if we modify it's behaviour. Currently it uses this index into the list of sprites in unitcommon.csv. In that file you can define up to 6 different sprites to be randomly used in a formation. This number, if set to 1-6 will use that specific sprite for this formation slot. But since those sprites are used randomly throughout the formation, other slots may also use this sprite. That's why it doesn't make sense, because you can't make it exclusive.