Jump to content

INI file in mod not grabbing new soldier abilities


mairsil1

Recommended Posts

Hey, thanks a lot for the help.

Ok, let's go.

 

Using other mods? No.

Cleaned out documents? Yes.

Whitespace: The line is exactly how it is on DefaultNameList.ini but XcomNameList.ini is different.

 

On XCcomNameList.ini is

NewSoldier_HatChance=0.15

while on DefaultNameList.ini is

NewSoldier_HatChance = 0.15

Modbuddy? Yes. I'll try rebuilding more; as I usually just press F5 to see the changes.

 

So, doing all that, still doesn't work. The newly created XComNameList.ini retain the original Default values, plus, is being ignored anyway.

 

EDIT:

Oh bollocks on a stick of flaming fury, I think I solved it.

The problem was in retaining the original

[XComGame.UGCharacterGenerator]

Now that is

[RandomRookies.RandomRookies]

It is working.

Edited by Sblargh
Link to comment
Share on other sites

EDIT:

Oh *censored* on a stick of flaming fury, I think I solved it.

The problem was in retaining the original

[XComGame.UGCharacterGenerator]

Now that is

[RandomRookies.RandomRookies]

It is working.

 

Wait, I'm not following. I thought in order to make changes to existing classes or existing INI file entries, your mod INI file had to match the default file's naming convention. If it doesn't, how does the game know where to apply the changes? For example, I'm trying to make changes to the Ranger skill tree, if I don't apply those changes to XComClassData [Ranger X2SoldierClassTemplate], how would the game know I wasn't building a new class or doing something else completely random?

 

Edit: I have looked at another mod, RangerRebalance, which does exactly what I'm trying to do and ostensibly works. The INI file in that mod does keep the name XComClassData and the first line declares [Ranger X2SoldierClassTemplate] then performs the subtraction of the old/addition of the new skills, so I'm not sure why your changing the INI file and section names worked for you and why me keeping the originals fails for me.

Edited by mairsil1
Link to comment
Share on other sites

I hope this helps you out, I'm just dumping my currently working Classes Overhaul from my XComGame_ClassData.ini so you can see where you're going different.

 

 

[XComGame.X2SoldierClass_DefaultClasses]

[Sharpshooter X2SoldierClassTemplate]
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="rifle")
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="shotgun")
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="cannon") 
-SoldierRanks=(  aAbilityTree=(	(AbilityName="PistolStandardShot",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon),             (AbilityName="Squadsight")             ),         aStatProgression=((StatType=eStat_Offense,StatAmount=10), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=0), (StatType=eStat_CombatSims,StatAmount=1)),       )
+SoldierRanks=(  aAbilityTree=(	(AbilityName="PistolStandardShot",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon),             (AbilityName="EagleEye")             ),         aStatProgression=((StatType=eStat_Offense,StatAmount=4), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=35), (StatType=eStat_CombatSims,StatAmount=1)),       )
-SoldierRanks=(  aAbilityTree=(	(AbilityName="LongWatch", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon),             (AbilityName="ReturnFire", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)             ),     aStatProgression=((StatType=eStat_Offense,StatAmount=4), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=0), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=(  aAbilityTree=(	(AbilityName="LongWatch", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon),             (AbilityName="ReturnFire", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)             ),     aStatProgression=((StatType=eStat_Offense,StatAmount=3), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
-SoldierRanks=(  aAbilityTree=(	(AbilityName="Deadeye", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon),             (AbilityName="LightningHands", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)             ),         aStatProgression=((StatType=eStat_Offense,StatAmount=3), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=(  aAbilityTree=(	(AbilityName="Deadeye", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon),             (AbilityName="LightningHands", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)             ),         aStatProgression=((StatType=eStat_Offense,StatAmount=3), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
-SoldierRanks=( aAbilityTree=(	(AbilityName="DeathFromAbove", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon),             (AbilityName="Quickdraw")            ),           aStatProgression=((StatType=eStat_Offense,StatAmount=3), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=0), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=(	(AbilityName="DeathFromAbove", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon),             (AbilityName="Quickdraw")            ),           aStatProgression=((StatType=eStat_Offense,StatAmount=2), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=1), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
-SoldierRanks=( aAbilityTree=(	(AbilityName="KillZone", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon),             (AbilityName="Faceoff", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)            ),         aStatProgression=((StatType=eStat_Offense,StatAmount=2), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=1), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=(	(AbilityName="KillZone", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon),             (AbilityName="Faceoff", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)            ),         aStatProgression=((StatType=eStat_Offense,StatAmount=2), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
-SoldierRanks=( aAbilityTree=(	(AbilityName="SteadyHands"),             (AbilityName="SharpshooterAim", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon)     ),           aStatProgression=((StatType=eStat_Offense,StatAmount=2), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=0), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=(	(AbilityName="SteadyHands"),             (AbilityName="SharpshooterAim", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon)     ),           aStatProgression=((StatType=eStat_Offense,StatAmount=1), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
-SoldierRanks=( aAbilityTree=(	(AbilityName="InTheZone", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon),             (AbilityName="FanFire", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)            ),           aStatProgression=((StatType=eStat_Offense,StatAmount=2), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=(	(AbilityName="InTheZone", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon),             (AbilityName="FanFire", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)            ),           aStatProgression=((StatType=eStat_Offense,StatAmount=1), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=1), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )


[Grenadier X2SoldierClassTemplate]
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="rifle")
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="shotgun")
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="sniper_rifle") 
-SoldierRanks=(  aAbilityTree=( (),	(AbilityName="LaunchGrenade",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)            ),           aStatProgression=((StatType=eStat_Offense,StatAmount=2), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=0), (StatType=eStat_CombatSims,StatAmount=1)),       )
+SoldierRanks=(  aAbilityTree=( (),	(AbilityName="LaunchGrenade",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)            ),           aStatProgression=((StatType=eStat_Offense,StatAmount=4), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=35), (StatType=eStat_CombatSims,StatAmount=1)),       )
-SoldierRanks=(  aAbilityTree=(	(AbilityName="BlastPadding",  ApplyToWeaponSlot=eInvSlot_Unknown),             (AbilityName="Shredder",  ApplyToWeaponSlot=eInvSlot_PrimaryWeapon)            ),     aStatProgression=((StatType=eStat_Offense,StatAmount=2), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=1), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=(  aAbilityTree=(	(AbilityName="BlastPadding",  ApplyToWeaponSlot=eInvSlot_Unknown),             (AbilityName="Shredder",  ApplyToWeaponSlot=eInvSlot_PrimaryWeapon)            ),     aStatProgression=((StatType=eStat_Offense,StatAmount=3), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
-SoldierRanks=(  aAbilityTree=(	(AbilityName="Demolition", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon),             (AbilityName="Suppression",  ApplyToWeaponSlot=eInvSlot_PrimaryWeapon)            ),         aStatProgression=((StatType=eStat_Offense,StatAmount=2), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=0), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=(  aAbilityTree=(	(AbilityName="Demolition", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon),             (AbilityName="Suppression",  ApplyToWeaponSlot=eInvSlot_PrimaryWeapon)            ),         aStatProgression=((StatType=eStat_Offense,StatAmount=3), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
-SoldierRanks=( aAbilityTree=(	(AbilityName="HeavyOrdnance",  ApplyToWeaponSlot=eInvSlot_Unknown),             (AbilityName="HoloTargeting",  ApplyToWeaponSlot=eInvSlot_PrimaryWeapon)            ),     aStatProgression=((StatType=eStat_Offense,StatAmount=1), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=(	(AbilityName="HeavyOrdnance",  ApplyToWeaponSlot=eInvSlot_Unknown),             (AbilityName="HoloTargeting",  ApplyToWeaponSlot=eInvSlot_PrimaryWeapon)            ),     aStatProgression=((StatType=eStat_Offense,StatAmount=2), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=1), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
-SoldierRanks=( aAbilityTree=(	(AbilityName="VolatileMix",  ApplyToWeaponSlot=eInvSlot_Unknown),             (AbilityName="ChainShot",  ApplyToWeaponSlot=eInvSlot_PrimaryWeapon)            ),     aStatProgression=((StatType=eStat_Offense,StatAmount=1), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=1), (StatType=eStat_Hacking,StatAmount=0), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=(	(AbilityName="VolatileMix",  ApplyToWeaponSlot=eInvSlot_Unknown),             (AbilityName="ChainShot",  ApplyToWeaponSlot=eInvSlot_PrimaryWeapon)            ),     aStatProgression=((StatType=eStat_Offense,StatAmount=2), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
-SoldierRanks=( aAbilityTree=(	(AbilityName="Salvo",  ApplyToWeaponSlot=eInvSlot_Unknown),             (AbilityName="HailOfBullets",  ApplyToWeaponSlot=eInvSlot_PrimaryWeapon)            ),     aStatProgression=((StatType=eStat_Offense,StatAmount=1), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=(	(AbilityName="Salvo",  ApplyToWeaponSlot=eInvSlot_Unknown),             (AbilityName="HailOfBullets",  ApplyToWeaponSlot=eInvSlot_PrimaryWeapon)            ),     aStatProgression=((StatType=eStat_Offense,StatAmount=1), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
-SoldierRanks=( aAbilityTree=(	(AbilityName="SaturationFire",  ApplyToWeaponSlot=eInvSlot_PrimaryWeapon),             (AbilityName="BulletShred", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon)            ),           aStatProgression=((StatType=eStat_Offense,StatAmount=1), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=1), (StatType=eStat_Hacking,StatAmount=0), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=(	(AbilityName="SaturationFire",  ApplyToWeaponSlot=eInvSlot_PrimaryWeapon),             (AbilityName="BulletShred", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon)            ),           aStatProgression=((StatType=eStat_Offense,StatAmount=1), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=1), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )

[Specialist X2SoldierClassTemplate]
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="shotgun")
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="sniper_rifle")
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="cannon") 
-SoldierRanks=(  aAbilityTree=( (AbilityName="IntrusionProtocol", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon),                                    (AbilityName="AidProtocol", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)              ),          aStatProgression=((StatType=eStat_Offense,StatAmount=3), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=45), (StatType=eStat_CombatSims,StatAmount=1)),        )
+SoldierRanks=(  aAbilityTree=( (AbilityName="IntrusionProtocol", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon),                                    (AbilityName="AidProtocol", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)              ),          aStatProgression=((StatType=eStat_Offense,StatAmount=4), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=35), (StatType=eStat_CombatSims,StatAmount=1)),       )
-SoldierRanks=(  aAbilityTree=( (AbilityName="MedicalProtocol",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon),             (AbilityName="CombatProtocol",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)             ),         aStatProgression=((StatType=eStat_Offense,StatAmount=3), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),         )
+SoldierRanks=(  aAbilityTree=( (AbilityName="MedicalProtocol",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon),             (AbilityName="CombatProtocol",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)             ),         aStatProgression=((StatType=eStat_Offense,StatAmount=3), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
-SoldierRanks=( aAbilityTree=( (AbilityName="RevivalProtocol",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon),              (AbilityName="HaywireProtocol",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)            ),           aStatProgression=((StatType=eStat_Offense,StatAmount=3), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=( (AbilityName="RevivalProtocol",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon),              (AbilityName="HaywireProtocol",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)            ),           aStatProgression=((StatType=eStat_Offense,StatAmount=3), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
-SoldierRanks=( aAbilityTree=( (AbilityName="FieldMedic",  ApplyToWeaponSlot=eInvSlot_Unknown),              (AbilityName="ScanningProtocol",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)            ),           aStatProgression=((StatType=eStat_Offense,StatAmount=2), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=( (AbilityName="FieldMedic",  ApplyToWeaponSlot=eInvSlot_Unknown),              (AbilityName="ScanningProtocol",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)            ),           aStatProgression=((StatType=eStat_Offense,StatAmount=2), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=1), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
-SoldierRanks=( aAbilityTree=( (AbilityName="CoveringFire",  ApplyToWeaponSlot=eInvSlot_PrimaryWeapon),              (AbilityName="ThreatAssessment",  ApplyToWeaponSlot=eInvSlot_Unknown)            ),           aStatProgression=((StatType=eStat_Offense,StatAmount=2), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=1), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=( (AbilityName="CoveringFire",  ApplyToWeaponSlot=eInvSlot_PrimaryWeapon),              (AbilityName="ThreatAssessment",  ApplyToWeaponSlot=eInvSlot_Unknown)            ),           aStatProgression=((StatType=eStat_Offense,StatAmount=2), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
-SoldierRanks=( aAbilityTree=( (AbilityName="EverVigilant",  ApplyToWeaponSlot=eInvSlot_Unknown),              (AbilityName="Sentinel",  ApplyToWeaponSlot=eInvSlot_Unknown)            ),           aStatProgression=((StatType=eStat_Offense,StatAmount=1), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=( (AbilityName="EverVigilant",  ApplyToWeaponSlot=eInvSlot_Unknown),              (AbilityName="Sentinel",  ApplyToWeaponSlot=eInvSlot_Unknown)            ),           aStatProgression=((StatType=eStat_Offense,StatAmount=1), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
-SoldierRanks=( aAbilityTree=( (AbilityName="RestorativeMist",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon),              (AbilityName="CapacitorDischarge",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)            ),           aStatProgression=((StatType=eStat_Offense,StatAmount=1), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=( (AbilityName="RestorativeMist",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon),              (AbilityName="CapacitorDischarge",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)            ),           aStatProgression=((StatType=eStat_Offense,StatAmount=1), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=1), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )

[Ranger X2SoldierClassTemplate] 
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="sniper_rifle")
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="cannon")
-SoldierRanks=(	aAbilityTree=(	(AbilityName="SwordSlice", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)             ),         aStatProgression=((StatType=eStat_Offense,StatAmount=3), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=0), (StatType=eStat_CombatSims,StatAmount=1)),       )
+SoldierRanks=(	aAbilityTree=(	(AbilityName="SwordSlice", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)             ),         aStatProgression=((StatType=eStat_Offense,StatAmount=4), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=35), (StatType=eStat_CombatSims,StatAmount=1)),       )
-SoldierRanks=(  aAbilityTree=(	(AbilityName="Phantom"),             (AbilityName="Blademaster", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)             ),     aStatProgression=((StatType=eStat_Offense,StatAmount=3), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=(  aAbilityTree=(	(AbilityName="Phantom"),             (AbilityName="Blademaster", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)             ),     aStatProgression=((StatType=eStat_Offense,StatAmount=3), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
-SoldierRanks=(  aAbilityTree=(	(AbilityName="Shadowstrike", ApplyToWeaponSlot=eInvSlot_Unknown),             (AbilityName="Shadowstep", ApplyToWeaponSlot=eInvSlot_Unknown)             ),         aStatProgression=((StatType=eStat_Offense,StatAmount=3), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=0), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=(  aAbilityTree=(	(AbilityName="Shadowstrike", ApplyToWeaponSlot=eInvSlot_Unknown),             (AbilityName="Shadowstep", ApplyToWeaponSlot=eInvSlot_Unknown)             ),         aStatProgression=((StatType=eStat_Offense,StatAmount=3), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
-SoldierRanks=(  aAbilityTree=(	(AbilityName="Stealth"),             (AbilityName="RunAndGun")             ),         aStatProgression=((StatType=eStat_Offense,StatAmount=2), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=1), (StatType=eStat_Hacking,StatAmount=0), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=(  aAbilityTree=(	(AbilityName="Stealth"),             (AbilityName="RunAndGun")             ),         aStatProgression=((StatType=eStat_Offense,StatAmount=2), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=1), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
-SoldierRanks=(  aAbilityTree=(	(AbilityName="Implacable"),		            (AbilityName="Bladestorm", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)             ),         aStatProgression=((StatType=eStat_Offense,StatAmount=2), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=(  aAbilityTree=(	(AbilityName="Implacable"),		            (AbilityName="Bladestorm", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)             ),         aStatProgression=((StatType=eStat_Offense,StatAmount=2), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
-SoldierRanks=(  aAbilityTree=(	(AbilityName="DeepCover"),             (AbilityName="Untouchable")             ),         aStatProgression=((StatType=eStat_Offense,StatAmount=1), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=0), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=(  aAbilityTree=(	(AbilityName="DeepCover"),             (AbilityName="Untouchable")             ),         aStatProgression=((StatType=eStat_Offense,StatAmount=1), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
-SoldierRanks=( aAbilityTree=(	(AbilityName="RapidFire", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon),                                     (AbilityName="Reaper", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)                                 ),         aStatProgression=((StatType=eStat_Offense,StatAmount=1), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=1), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=(	(AbilityName="RapidFire", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon),                                     (AbilityName="Reaper", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)                                 ),         aStatProgression=((StatType=eStat_Offense,StatAmount=1), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=1), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )

[PsiOperative X2SoldierClassTemplate]
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="shotgun")
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="sniper_rifle")
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="cannon")

[Rookie X2SoldierClassTemplate]
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="shotgun")
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="sniper_rifle")
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="cannon")

[XComGame.X2SoldierClass_DefaultClasses]
+SoldierClasses=SpectrumGuardian

[SpectrumGuardian X2SoldierClassTemplate]
+bMultiplayerOnly=0
+ClassPoints=7
+IconImage="img:///Spectrum_Icons.class_guardian"
+NumInForcedDeck=1
+NumInDeck=7
+KillAssistsPerKill=3
+SquaddieLoadout="SpectrumSquaddieGuardian"
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="shotgun")
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="sniper_rifle")
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="rifle")
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="cannon")
+AllowedWeapons=(SlotType=eInvSlot_SecondaryWeapon, WeaponType="gremlin")
+SoldierRanks=(  aAbilityTree=(  (AbilityName="MedicalProtocol",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)              ),          aStatProgression=((StatType=eStat_Offense,StatAmount=4), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=35), (StatType=eStat_CombatSims,StatAmount=1)),       )
+SoldierRanks=(  aAbilityTree=( (AbilityName="AidProtocol",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon),             (AbilityName="LongWatch", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon)          ),         aStatProgression=((StatType=eStat_Offense,StatAmount=3), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=( (AbilityName="FieldMedic",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon),             (AbilityName="SteadyHands",  ApplyToWeaponSlot=eInvSlot_PrimaryWeapon)            ),           aStatProgression=((StatType=eStat_Offense,StatAmount=3), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=( (AbilityName="RevivalProtocol",  ApplyToWeaponSlot=eInvSlot_Unknown),              (AbilityName="CoveringFire",  ApplyToWeaponSlot=eInvSlot_PrimaryWeapon)            ),           aStatProgression=((StatType=eStat_Offense,StatAmount=2), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=1), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=( (AbilityName="DeepCover",  ApplyToWeaponSlot=eInvSlot_Unknown) ,              (AbilityName="EverVigilant",  ApplyToWeaponSlot=eInvSlot_Unknown)            ),           aStatProgression=((StatType=eStat_Offense,StatAmount=2), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=( (AbilityName="ThreatAssessment"),              (AbilityName="Sentinel",  ApplyToWeaponSlot=eInvSlot_Unknown)            ),           aStatProgression=((StatType=eStat_Offense,StatAmount=1), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=( (AbilityName="RestorativeMist",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon),              (AbilityName="KillZone", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon)           ),           aStatProgression=((StatType=eStat_Offense,StatAmount=1), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=1), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )

[XComGame.X2SoldierClass_DefaultClasses]
+SoldierClasses=SpectrumCodebreaker

[SpectrumCodebreaker X2SoldierClassTemplate]
+bMultiplayerOnly=0
+ClassPoints=8
+IconImage="img:///Spectrum_Icons.class_codebreaker"
+NumInForcedDeck=1
+NumInDeck=8
+KillAssistsPerKill=3
+SquaddieLoadout="SpectrumSquaddieCodebreaker"
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="shotgun")
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="sniper_rifle")
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="rifle")
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="cannon")
+AllowedWeapons=(SlotType=eInvSlot_SecondaryWeapon, WeaponType="gremlin")
+SoldierRanks=(  aAbilityTree=(  (AbilityName="IntrusionProtocol",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)              ),          aStatProgression=((StatType=eStat_Offense,StatAmount=4), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=45), (StatType=eStat_CombatSims,StatAmount=1)),       )
+SoldierRanks=(  aAbilityTree=( (AbilityName="EWSuite"),             (AbilityName="AidProtocol", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)          ),         aStatProgression=((StatType=eStat_Offense,StatAmount=3), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=( (AbilityName="HaywireProtocol",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon),             (AbilityName="Phantom")            ),           aStatProgression=((StatType=eStat_Offense,StatAmount=3), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=( (AbilityName="HoloTargeting",  ApplyToWeaponSlot=eInvSlot_Unknown),              (AbilityName="ShadowStep", ApplyToWeaponSlot=eInvSlot_Unknown)            ),           aStatProgression=((StatType=eStat_Offense,StatAmount=2), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=1), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=( (AbilityName="ScanningProtocol",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon) ,              (AbilityName="Stealth")            ),           aStatProgression=((StatType=eStat_Offense,StatAmount=2), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=( (AbilityName="Deadeye", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon ),             (AbilityName="ThreatAssessment")            ),           aStatProgression=((StatType=eStat_Offense,StatAmount=1), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=( (AbilityName="CapacitorDischarge",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon),            (AbilityName="BulletShred", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon)          ),           aStatProgression=((StatType=eStat_Offense,StatAmount=1), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=1), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )


[XComGame.X2SoldierClass_DefaultClasses]
+SoldierClasses=SpectrumSupport

[SpectrumSupport X2SoldierClassTemplate]
+bMultiplayerOnly=0
+ClassPoints=9
+IconImage="img:///Spectrum_Icons.class_support"
+NumInForcedDeck=1
+NumInDeck=9
+KillAssistsPerKill=3
+SquaddieLoadout="SpectrumSquaddieSupport"
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="shotgun")
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="rifle")
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="cannon")
+AllowedWeapons=(SlotType=eInvSlot_SecondaryWeapon, WeaponType="grenade_launcher")
+SoldierRanks=(  aAbilityTree=( 	(AbilityName="LaunchGrenade",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)            ),           aStatProgression=((StatType=eStat_Offense,StatAmount=4), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=35), (StatType=eStat_CombatSims,StatAmount=1)),       )
+SoldierRanks=(  aAbilityTree=(	(AbilityName="CoveringFire",  ApplyToWeaponSlot=eInvSlot_PrimaryWeapon),             (AbilityName="Sprinter",  ApplyToWeaponSlot=eInvSlot_PrimaryWeapon)            ), aStatProgression=((StatType=eStat_Offense,StatAmount=3), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=(  aAbilityTree=(	(AbilityName="FieldMedic", ApplyToWeaponSlot=eInvSlot_Unknown),             (AbilityName="HeavyOrdnance",  ApplyToWeaponSlot=eInvSlot_Unknown)            ),         aStatProgression=((StatType=eStat_Offense,StatAmount=3), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=(	 (AbilityName="Suppression",  ApplyToWeaponSlot=eInvSlot_PrimaryWeapon),            (AbilityName="HoloTargeting",  ApplyToWeaponSlot=eInvSlot_PrimaryWeapon)            ), aStatProgression=((StatType=eStat_Offense,StatAmount=2), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=1), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=(	(AbilityName="DeepCover"),             (AbilityName="EverVigilant",  ApplyToWeaponSlot=eInvSlot_Unknown)            ), aStatProgression=((StatType=eStat_Offense,StatAmount=2), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=(	(AbilityName="Shredder",  ApplyToWeaponSlot=eInvSlot_PrimaryWeapon),            (AbilityName="EagleEye")            ), aStatProgression=((StatType=eStat_Offense,StatAmount=1), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=(	(AbilityName="Sentinel",  ApplyToWeaponSlot=eInvSlot_Unknown)  ,              (AbilityName="BulletShred", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon)        ),           aStatProgression=((StatType=eStat_Offense,StatAmount=1), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=1), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )

[XComGame.X2SoldierClass_DefaultClasses]
+SoldierClasses=SpectrumAssault

[SpectrumAssault X2SoldierClassTemplate]
+bMultiplayerOnly=0
+ClassPoints=9
+IconImage="img:///Spectrum_Icons.class_headhunter"
+NumInForcedDeck=1
+NumInDeck=9
+KillAssistsPerKill=3
+SquaddieLoadout="SpectrumSquaddieAssault"
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="shotgun")
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="rifle")
+AllowedWeapons=(SlotType=eInvSlot_PrimaryWeapon, WeaponType="cannon")
+AllowedWeapons=(SlotType=eInvSlot_SecondaryWeapon, WeaponType="pistol")
+SoldierRanks=(	aAbilityTree=(	(AbilityName="PistolStandardShot",  ApplyToWeaponSlot=eInvSlot_SecondaryWeapon),   (AbilityName="RunAndGun")          ),         aStatProgression=((StatType=eStat_Offense,StatAmount=4), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=35), (StatType=eStat_CombatSims,StatAmount=1)),       )
+SoldierRanks=(  aAbilityTree=(	(AbilityName="BlastPadding",  ApplyToWeaponSlot=eInvSlot_Unknown),             (AbilityName="Sprinter")             ),     aStatProgression=((StatType=eStat_Offense,StatAmount=3), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=(  aAbilityTree=(	(AbilityName="VolatileMix",  ApplyToWeaponSlot=eInvSlot_Unknown),             (AbilityName="Shadowstep", ApplyToWeaponSlot=eInvSlot_Unknown)             ),         aStatProgression=((StatType=eStat_Offense,StatAmount=3), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=(  aAbilityTree=(	(AbilityName="LightningHands", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon),           (AbilityName="KeenSenses")           ),         aStatProgression=((StatType=eStat_Offense,StatAmount=2), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=1), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=(  aAbilityTree=(	 (AbilityName="Faceoff", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon),		     (AbilityName="Untouchable")            ),         aStatProgression=((StatType=eStat_Offense,StatAmount=2), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=(  aAbilityTree=(	(AbilityName="RapidFire", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon) ,          (AbilityName="Implacable")             ),         aStatProgression=((StatType=eStat_Offense,StatAmount=1), (StatType=eStat_HP,StatAmount=0), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
+SoldierRanks=( aAbilityTree=(	(AbilityName="FanFire", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)  ,      (AbilityName="Predator")                                 ),         aStatProgression=((StatType=eStat_Offense,StatAmount=1), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=1), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=0)),       )
 

 

 

Link to comment
Share on other sites

Yzaxtol

 

Thanks, but didn't work. Copied what you did precisely and still see no change to any class when I launch the debugger. I may go to the uninstall the SDK and reinstall path as I'm just not seeing anything that could be causing this issue.

Link to comment
Share on other sites

  • 3 weeks later...

I think I have the solution to your problem. You need to copy the list of templates covering the skills your modded class will have into your custom ability's .uc file, then add the new ability at the end/in place of an existing ability, like so:

 

class X2Ability_ConeOfFire extends X2Ability_GrenadierAbilitySet config(GameData_SoldierSkills) dependson (XComGameStateContext_Ability);

static function array<X2DataTemplate> CreateTemplates()
{
local array<X2DataTemplate> Templates;

Templates.AddItem(HeavyOrdnance());
Templates.AddItem(BiggestBooms());
Templates.AddItem(Suppression());
Templates.AddItem(SuppressionShot());
Templates.AddItem(HoloTargeting());
Templates.AddItem(BlastPadding());
Templates.AddItem(BulletShred());
Templates.AddItem(PurePassive('Salvo', "img:///UILibrary_PerkIcons.UIPerk_salvo", true));
Templates.AddItem(VolatileMix());
Templates.AddItem(HailOfBullets());
Templates.AddItem(SaturationFire());
Templates.AddItem(PurePassive('Shredder', "img:///UILibrary_PerkIcons.UIPerk_shredder", true));
Templates.AddItem(ChainShot());
Templates.AddItem(ChainShot2());
Templates.AddItem(Demolition());
Templates.AddItem(ConeOfFire());
return Templates;
}

 

This overrides the class's default skill lookup and lets custom abilities appear on the skill tree if you're overriding XComClassData.ini.

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...