dazoline II -> Random Battle and Campaign Generator Mod (6/6/2011 4:30:24 PM)
|
I've completed version 0.2 of my MoreRandomOptions mod. I've added several pieces of functionality, most notably the ability to store units in a single place for a random campaign and to be able to edit these units via the newly modded XML files. For a detailed list of changes and information take a look at the Readme.txt file in the attached zip. I welcome any feedback. Edit: I will put this description in the Readme.txt file for better clarity. I've uploaded vesion 0.2a here, the modifications are a new readme file and a small fix for the RCG. Modifying the Core Units: A new set of files have been created to allow easier modifying of core units for random campaigns. Out of the box functionality when building a Random Campaign means using a campaign file (Data/Random Campaigns) and a set of battles files (Data/Battles), the battle files contain the core units, which means without the mod you have to edit the core units in every battle file. The modded files are contained in (Data/Campaign Core Units) and are named exactly like their counterparts in (Data/Random Campaigns). There are a number of different bits of functionality to these new files. 1. You only have to edit one file to affect all key core units across all campaign battles. 2. The modded files support upgrades. If you look in one of the longer modded campaign files such as 1st Inf, 41 - 44 you will see multiple core tags inside the coreunit tag. Each tag has a date and scenario attribute which describes when that upgrade takes place. In the core tag are unit tags, corresponding to the core units in that scenario. Remember that the unitname attribute of a unit tag is what keeps track of that unit between battles and provides the upgrade path. 3. A file, in (Data/Campaign Core Units) will provide some of the units for each of that campaigns battles subject to: a. An out of the box random campaign will have no CCU (Campaign Core Unit) file, the code will recognize this and only use the core units present in the battles files. This allows the code to execute on non modded campaign files without crashing. b. A random campaign that has a CCU file will have its key core units in Battles files replaced by the units in the CCU file. Note a key core unit is different than a core unit, not sure why but it is. c. Any non key core units in Battles files will not be replaced, so there will be variability retained in the units used from battle to battle in a campaign. d. The Random Campaign description will display the key core units described in the CCU not the original key core units from the campaign file. Example. In the Battle file below the units numbered from 1 to 6 are the key core units, these are present in every campaign battle. The CCU file below the battle file replaces these 6 units with nine modified units. The scenario generated from the RCG will contain the units 7 - 10 from the battle file and the units from 1 - 9 from the CCU file. An upgrade for unit 1 in the CCU file will look like below with the first instance being a Mark III G tank and the upgrade being a Mark III H tank type. Note I've seen key core units that come as replacements in some battles so if you want all your key core units present for all turns in a battle you have to set the attributes reinforcementChance="1" reinforcementTurn="0" in the unit tags. Battle File German Summer 41 (First) - 1st Pzr Div.xml <coreunits> 1. <unit unitid="Pz Kpfw IIIG" unitname="HQ 2/1-1 Panzer" exp="Veteran" number="2" max="2"></unit> 2. <unit unitid="Pz Kpfw IIIG" unitname="2/2/1-1 Panzer" exp="Veteran" number="5" max="5"></unit> 3. <unit unitid="Pz Kpfw IVE" unitname="2/1/1-1 Panzer" exp="Elite" number="4" max="4"></unit> 4. <unit unitid="Pz Grenadier 41" unitname="1/2/1-1 PzGren" exp="Veteran" number="3" max="3"></unit> 5. <unit unitid="Sd Kfz 251" unitname="1/2/1-1 Transport" exp="Veteran" number="3" max="3"></unit> 6. <unit unitid="Sd Kfz 222" unitname="1/1-1 Aufkl" exp="Veteran" number="2" max="2"></unit> 7. <unit unitid="81mm Mortar" unitname="2/1-1 81mm Mortar" exp="Veteran" number="6" max="6" probability="A=.99;D=0.5"></unit> 8. <unit unitid="105mm Artillery" unitname="105mm Artillery" exp="Veteran" number="4" max="4" probability="A=0.75;D=0.5"></unit> 9. <unit unitid="150mm Artillery" unitname="150mm Artillery" exp="Veteran" number="4" max="4" probability="A=0.33;D=0.25"></unit> 10. <unit unitid="JU-87 Stuka" unitname="JU-87 Stuka" exp="Veteran" number="2" max="2" probability="A=0.75;D=0.75"></unit> </coreunits> 1st Panzer Div 1941 Short.mine.xml <coreunits desc="..."> <core date="6/22/1941" battle="German Summer 41 (First) - 1st Pzr Div"> 1. <unit unitid="Pz Kpfw IIIG" unitname="HQ 2/1-1 Panzer" exp="Elite" number="2" max="2" reinforcementChance="1" reinforcementTurn="0"></unit> 2. <unit unitid="Pz Kpfw IIIG" unitname="2/2/1-1 Panzer" exp="Veteran" number="5" max="5" reinforcementChance="1" reinforcementTurn="0"></unit> 3. <unit unitid="Pz Kpfw IIB" unitname="2/2/1-2 Panzer" exp="Veteran" number="5" max="5" reinforcementChance="1" reinforcementTurn="0"></unit> 4. <unit unitid="Pz Kpfw IVE" unitname="2/1/1-3 Panzer" exp="Veteran" number="4" max="4" reinforcementChance="1" reinforcementTurn="0"></unit> 5. <unit unitid="Pz Grenadier 41" unitname="1/2/1-1 PzGren" exp="Veteran" number="5" max="5" reinforcementChance="1" reinforcementTurn="0"></unit> 6. <unit unitid="Sd Kfz 251" unitname="1/2/1-1 Transport" exp="Veteran" number="5" max="5" reinforcementChance="1" reinforcementTurn="0"></unit> 7. <unit unitid="Pz Grenadier 41" unitname="1/2/1-2 PzGren" exp="Veteran" number="5" max="5" reinforcementChance="1" reinforcementTurn="0"></unit> 8. <unit unitid="Sd Kfz 251" unitname="1/2/1-2 Transport" exp="Veteran" number="5" max="5" reinforcementChance="1" reinforcementTurn="0"></unit> 9. <unit unitid="Sd Kfz 231" unitname="1/1-1 Aufkl" exp="Veteran" number="3" max="3" reinforcementChance="1" reinforcementTurn="0"></unit> </core> <core ... > 1. <unit unitid="Pz Kpfw IIIH" unitname="HQ 2/1-1 Panzer" exp="Elite" number="2" max="2" reinforcementChance="1" reinforcementTurn="0"></unit> 2. <unit unitid="Pz Kpfw IIIG" unitname="2/2/1-1 Panzer" exp="Veteran" number="5" max="5" reinforcementChance="1" reinforcementTurn="0"></unit> 3. <unit unitid="Pz Kpfw IIB" unitname="2/2/1-2 Panzer" exp="Veteran" number="5" max="5" reinforcementChance="1" reinforcementTurn="0"></unit> 4. <unit unitid="Pz Kpfw IVE" unitname="2/1/1-3 Panzer" exp="Veteran" number="4" max="4" reinforcementChance="1" reinforcementTurn="0"></unit> 5. <unit unitid="Pz Grenadier 41" unitname="1/2/1-1 PzGren" exp="Veteran" number="5" max="5" reinforcementChance="1" reinforcementTurn="0"></unit> 6. <unit unitid="Sd Kfz 251" unitname="1/2/1-1 Transport" exp="Veteran" number="5" max="5" reinforcementChance="1" reinforcementTurn="0"></unit> 7. <unit unitid="Pz Grenadier 41" unitname="1/2/1-2 PzGren" exp="Veteran" number="5" max="5" reinforcementChance="1" reinforcementTurn="0"></unit> 8. <unit unitid="Sd Kfz 251" unitname="1/2/1-2 Transport" exp="Veteran" number="5" max="5" reinforcementChance="1" reinforcementTurn="0"></unit> 9. <unit unitid="Sd Kfz 231" unitname="1/1-1 Aufkl" exp="Veteran" number="3" max="3" reinforcementChance="1" reinforcementTurn="0"></unit> </core> </coreunits>
|
|
|
|