In the combat rulevar tab you'll find rulevar 955 and 956 which you should point to empty stringlist IDs without any rows or columns in them. Just empty please. If you specify one or both of these combat logs will be kept in these specified stringlist.
Will write 1 row in the specified stringlist for each battle occuring. The following data will be written:
Column 0 = Battle ID#
Column 1 = Attacker Regime Slot
Column 2 = X
Column 3 = Y
Column 4 = Defender Regime Slot
Column 5 = Regime Slot That Won (-1= a rare possibility but one that can occur if both regimes retreat at the same time)
Column 6 = Last Battle Round (keep in mind this can be higher than 10 since there are 1-2 rounds to finish retreats after for example all 100AP have been spent.)
Column 7 = Initial Recon Points on hex
Column 8 = Combat Type
Column 9 = Game Round
Column 10 = Concentric Bonus
1 = Land Attack
11 = Land Surprise (attacking used move to move in to hex but was surprised)
13 = Air Recon
2 = Sea Attack
3 = Art Attack
5 = Airstrike
4 = Sea Art Attack
6 = Bombing by Air
9 = Paradrop (lots of combat round possible)
10 = Amphibious Attack (lots of combat round possible)
12 = Rebel Combat (unit was dropped in hex by event - lots of combat round possible)
14 = Air Supply
15 = Air Lift
Will write 1 row for each unit participating in a specific battle logged in the Battles Combat Log stringlist. The following data will be written:
0 = Battle ID#
1 = Historical Unit ID#
2 = Historical subpart number
3 = Regime slot
4 = Start power points
5 = Start readiness
6 = End power points
7 = End readiness
8 = Unit state at end of battle
9 = Start entrenchment points
10 = Facing direction (-1=defender, 0= north, 1=NE, 2 = SE, 3 = South, 4= SW, 5=NW) (you can use CheckRiverType(x,y,f) to find extra info easily using CheckRoadType, CheckRiverType, CheckBridge.
0 = OK, no retreat (either succesfull in defense or in attack)
1 = Retreat due to running out of AP (attacker only)
2 = Retreat due to losses (orderly retreat)
3 = Panicked retreat
4 = Broken (keep in mind that a broken unit is a dead unit and has been removed from the map; also keep in mind that the unit might be removed, but the historical unit should still be accessible)
5 = Dead (for other reasons than being broken, like losing all troop; also keep in mind that the unit might be removed, but the historical unit should still be accessible)
Everytime a new turn is started the logs from these regime from the previous turn will be destroyed. This removal operation is done immediately after 'early turn events' scripts execution.
Example for 2 players (germany and ussr)
round 1, turn 1, germany
round 1, turn 2, ussr
round 2, turn 1, germany : all battles initiated by germany before round 2 are removed
round 2, turn 2, ussr : all battles initated by ussr before round 2 are removed
etc..
Probably best to iterate through all the battle rows and if you find one you want to check the units on do a CheckFindInStringlist on historical rows searching for Battle ID#.
Then read that row and continue to the next untill no more rows or the next row has a different Battle ID#. The historical rows will always have the Battle ID# in nice little bunches and any new rows are added on the end of the list after new battles.