XCOM 2
[WotC] Create Your Own Class Templates [Old, Unsupported]
716 Comments
CyberNeo 4 May, 2024 @ 1:26am 
Does there a new Version exists of this Mod?
Loki 24 Jan, 2023 @ 2:23am 
is there a legacy version
Agent Coxack 7 Aug, 2022 @ 5:03pm 
This mod may be old and unsupported but I couldn't go any further without thanking the mod maker. I learned to make one class from this mod and have since moved on to butchering every single facet of this game to make my own perfect experience. Thanks muchly Richard; I have lost many hours and much hair from what I've learned from your mods.
initium 26 May, 2022 @ 9:01am 
@pardoxii
It's been years since I looked into modding XCOM 2, but your issue may be down to the game needing each vanilla class to be replaced (ie. you need 4 new classes). This is down to the game starting with each of these classes in the first mission and the way classes are spawned for the pool of soldiers in game. Comment out each of the vanilla classes and replace each with a copy of your Grunt class, so you'll have 4 of the same class, but the game will only care that there is a class for class replacement.
There's more details in guide a created.
@darkace77450
Also check the guide. It will explain what you're looking for.
All the best

Guide link
pardoxii 13 May, 2022 @ 9:24pm 
Hi its been a while since i used this mod, but I tried disabling vanilla classes and replace with a generic grunt class for a more challenging playthrough, but my grunt is not popping up in game also the vanilla classes are still active
darkace77450 10 Jan, 2022 @ 8:08pm 
I know this mod is unsupported, but I'll ask anyway. Where do I set my custom class' GTS skill? Specifically, I want to give my class the Skirmisher's Parkour ability. Any help you guys can offer is appreciated.
initium 17 Sep, 2021 @ 9:01am 
@Kokoa
Have you got this mod, or any of Richards other mods working?
What exactly are you trying to do; is it a replacement class or a new class?
What abilities do you want the class to have and have you researched them?
Brynhildr 16 Sep, 2021 @ 3:22pm 
can anyone help me make a class that's literally just specialist but hacking and sharpshooting...?
I can't even get the bloody mod making thing to work and I feel like I'm just better off giving up TT^TT
initium 14 Aug, 2021 @ 4:04pm 
@HissingSquid - Check this guide link and make certain that the mods you are taking the abilities from are active in your mod list. Use the Alternative Mod Launcher for the best results.
HissingSquid 12 Aug, 2021 @ 11:06am 
Can anyone help me with my squaddie abilities? I can't get all of them to show up. For one class i can get 2/3 abilities, and for the other only 1/4.

Here is what I have:
+SoldierRanks=( AbilitySlots=( (AbilityType=(AbilityName="SkirmisherStrike")),\\
(AbilityType=(AbilityName="LW2WotC_DenseSmoke")),\\
(AbilityType=(AbilityName="LaunchGrenade", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)), \\
),\\

+SoldierRanks=( AbilitySlots=( (AbilityType=(AbilityName="Shredder", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon)),\\
(AbilityType=(AbilityName="LW2WotC_AreaSuppression", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon)),\\
(AbilityType=(AbilityName="Suppression", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon)),\\
(AbilityType=(AbilityName="PistolStandardShot", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon))\\
),\\
initium 22 Jul, 2021 @ 11:11am 
They don't. Once the game sets the database for the soldiers in existence that's it. That's why Not Created Equal works on the soldiers you haven't yet seen and why you have to use the command line to strip out a soldier to reset any changes.
frederferd 21 Jul, 2021 @ 2:13am 
I done that, the issue turned out to be that i initially had an invisible caracter in one of the lines, and after fixing it, newly promoted ones could shoot it normally, but already promoted ones did not get it retrospectively...
-SoL-Justice 19 Jul, 2021 @ 10:14am 
It is in his perk list.
-SoL-Justice 19 Jul, 2021 @ 10:13am 
You have to actually give the class the shoot pistol perk at its first rank or you can't just normally shoot it.
frederferd 18 Jul, 2021 @ 1:19pm 
Does anyone know what causes a class to be able to shoot the pistol directly?
The class i created based on these templates can use it for overwatch and pistol skills like faceoff and fanfire, but not for fireing it directly.... I checked the sharpshooter class for clues but did not find any extra there that would make it work.
Jan 4 Jul, 2021 @ 3:30pm 
The furthest I could get with this mod was getting my name and description for the class to show in game and for my class to be able to use a sword as a primary and a gremlin as a secondary, although that was in part thanks to another mod, I couldn't get the right abilities to show up, I'm sure with enough time I could but by the time I do that I might as well be a game dev myself, is it normal for code to be written so confusingly? I fail to see why certain things are written the way they are like why there are so many parentheses or why the OG devs decided on =eInvSlot_Secondary/PrimaryWeapon for anything. What an odd and overly long name.
initium 8 Aug, 2020 @ 2:39am 
@-SoL-Justice
A little late but if you're still wondering how to fix, view my guide. It explains what you need to have in place and also answers a few other questions I'm sure you'll have.
This is a great mod but some players don't understand the advice written into the code needs removing for it to work.
Good luck
-SoL-Justice 1 Jul, 2020 @ 7:31pm 
I wonder if anyone can help. I followed the guide, but when I go to test my class in-game the stats from leveling up don't get applied. The extra hp and aim and such stay at rookie level. This is my squaddie rank and It doesn't apply the 10 aim or the 1 hp.

; squaddie
+SoldierRanks=( AbilitySlots=( (AbilityType=(AbilityName="FieldMedic", ApplyToWeaponSlot=eInvSlot_Unknown)), \\

(AbilityType=(AbilityName="PistolStandardShot", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)) \\ ;REQUIRED SQUADDIE PERK
),\\
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), (StatType=eStat_Will,StatAmount=5)) \\
)
initium 27 Mar, 2020 @ 3:39am 
; squaddie
+SoldierRanks=(AbilitySlots=((AbilityType=(Return Fire)), \\
(AbilityType=(Justice)), \\
(AbilityType=(Chain Shot)), \\
(AbilityType=(Deadeye)) \\
),\\

However this still will not work as you need to apply the ability to a class, mostly either a primary or secondary weapon. Sometimes you don't. It depends on how the ability is coded to work. For instance (AbilityName="ReturnFire", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon). This allows a sharpshooter to use their pistol for return fire, but it wouldn't make sense on a gremlin as there are no animations, or a sword as you would use Bladestorm for the range.

Check my guide on customising soldiers for more info here
4R73F4C7 27 Mar, 2020 @ 1:51am 
does somebody know why this doesn't work? In the game my class doesn't have any of this abilities

; squaddie
+SoldierRanks=( AbilitySlots=( (AbilityType=(Return Fire)), \\ ;REMOVE ";" before (AblityType=()), to add ability here
(AbilityType=(Justice)), \\ ;REMOVE ";" before (AblityType=()), to add ability here
(AbilityType=(Chain Shot)), \\ ;REMOVE ";" before (AblityType=()), to add ability here
(AbilityType=(Deadeye)) \\ ;REQUIRED SQUADDIE PERK
),\\
initium 23 Mar, 2020 @ 6:47pm 
@MONST3R - Apologies. My bad as they say. I didn't read your message properly. I gave you the info for how to add weapons to the soldier class but not how to use 2 secondary weapons at once. Alas I'm uncertain how you would do that.
It may require having one weapon modded to a primary weapon. An alternative may be to use one of the mods that allows psi abilities without a psiamp and have that soldier class also use a gremlin. They would also need a primary weapon.
Another possible option is to use iridar's WSR to swap the psi-amp to a primary weapon. I'm not sure if that's possible though.
MONST3R 22 Mar, 2020 @ 3:00am 
@initium i want to use both psi amps and gremlin at the same time
MONST3R 22 Mar, 2020 @ 2:37am 
@initium i tried changing the primary weapon to the psi amp but it didnt work
initium 21 Mar, 2020 @ 6:26pm 
@MONST3R
Yes. In the XComClassData.ini file each of the soldier templates have a primary and secondary weapon allowance. Like this AllowedWeapons=(SlotType=eInvSlot_SecondaryWeapon, WeaponType="sword")
Add another line with each weapon you want directly.
MONST3R 21 Mar, 2020 @ 5:19pm 
is there a way to have my class use 2 secondary weapons psi amps and gremlin?
Pan matematyk 8 Mar, 2020 @ 2:24pm 
How do I make certain skills require others? Like Templar's Reflect locked behind Deflect?
Pop 7 Mar, 2020 @ 9:39am 
Thank you very much Richard for making this mod guide to custom classes.
@Masafumi & @initium Thank you very much for providing good comments.
Thanks to you guys helping others, I managed to format it correctly as well.
Gottwahtari 7 Sep, 2019 @ 3:38am 
Hey Richard - thanks a lot for that Mod! Since my skill set only allows of modding Mods, this Template here is a very appreciated toolbox! :-)
Magatsu Keshin 4 Aug, 2019 @ 7:23pm 
If i make a character whos primary weapon is a pistol and I have a mod that changes the animation for soldiers whos primary weapon is a pistol will it kick in?
initium 22 Jun, 2019 @ 8:05am 
@-Necrobius- ©
Use this mod to choose which classes you want. It will not stop reward soldiers or black market soldiers being a Sharpshooter or ranger though.
Mod link
-Necrobius- © 22 Jun, 2019 @ 2:32am 
Hi, I need some help. Is there a way to limit the number of time a classe can be picked ?
For exemple i want only one ranger and two sharpshooters in my entire run.
Thanks.
initium 17 May, 2019 @ 5:45pm 
Thanks romeo_charlie

Just as a word of advice. When using another persons mod to add abilities to your custom class you need to check that the ability and weapon assignment is correctly named internally.

By that I mean "ShockProtocolRS" rather than "Shock Protocol", which you see in the game, is used in your custom class ini file.

Also that the weapon assignment is correct, which may mean no weapon such as
AbilityName="Shadow", ApplyToWeaponSlot=eInvSlot_Unknown

You can find this out by using the SDK to look at the mods uc files, even if the mod author has forgotten to make the correct naming and assignment available. Well hopefully they have =)
Captain Obvious 17 May, 2019 @ 5:02pm 
@romeo_charlie
Thanks! got it to work
romeo_charlie 17 May, 2019 @ 11:44am 
@Captain Obvious
Here is the ability list: https://docs.google.com/spreadsheets/d/1O1w1HQljLVaVBAipiN6i5Cj4k1qvRi6ANnoCeGkOeps/edit#gid=0

Close combat specialist is - LW2WotC_CloseCombatSpecialist
Worked for me when I used it!
Captain Obvious 17 May, 2019 @ 7:55am 
@initium
I am using Favid's Long War 2 port.
I tried to check the files to see if the ability existed but couldn't find a list. Maybe I'm looking in the wrong place?
initium 17 May, 2019 @ 1:30am 
@Captain Obvious
If you want an ability from a mod then you need to subscribe and activate that mod.

Also remember it needs to be a WOTC mod. Are you using Favid's Long War 2 port ?
Captain Obvious 16 May, 2019 @ 11:24pm 
Hi everyone; I've been trying to get the "close combat specialist" perk from vanilla long war to work in WoTC for the past few hours. Any help would be great, I don't even know if it exists in LW2.
+SoldierRanks=(AbilitySlots=((AbilityType=(AbilityName="LightningReflexes")), \\
(AbilityType=(AbilityName="CloseCombatSpecialist", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon), \\
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)))
romeo_charlie 16 May, 2019 @ 8:24pm 
@initium
That worked perfect. Thank you!!
initium 16 May, 2019 @ 4:09pm 
@romeo_charlie
Copy and paste
Should be good to go. The problem is by adding all the "; Remove this... " at the end of your line you interrupt the code as it hasn't finished what's inside the ()

This guide might help you. It expands on Richard's great work.
Guide is here
initium 16 May, 2019 @ 4:02pm 
; squaddie
+SoldierRanks=(AbilitySlots=((AbilityType=(AbilityName="PistolStandardShot", ApplyToWeaponSlot=eInvSlot_SecondaryWeapon)), \\
(AbilityType=(AbilityName="LW2WotC_WalkFire", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon)), \\
(AbilityType=()), \\
(AbilityType=(AbilityName="LW2WotC_PrecisionShot", ApplyToWeaponSlot=eInvSlot_PrimaryWeapon))),\\
aStatProgression=((StatType=eStat_Offense,StatAmount=5), (StatType=eStat_HP,StatAmount=1), (StatType=eStat_Strength,StatAmount=0), (StatType=eStat_Hacking,StatAmount=5), (StatType=eStat_CombatSims,StatAmount=1), (StatType=eStat_Will,StatAmount=5)))
romeo_charlie 16 May, 2019 @ 3:28pm 
Hello. I created a class. On the first promotion, squaddie rank, only the first ability appears. Doesn't matter which ability it is. Only the first one appears.

Anyone know how to fix this?

Here is the class data file on ini:
https://github.com/rdcardon/Xcom-Class-Mod
initium 8 May, 2019 @ 5:10am 
Then yes, I think it would work as I said earlier. Give it a try.

However if you have the tutorial missions running that award you a Reaper and a Skirmisher I'm not sure what would happen. Probably a conflict of some kind. I believe if you deselect the tutorial missions at the start of your campaign you will be fine with your new Faction heroes replacing the old ones, as per instructions given by Richard.

A word of caution. If you use another persons mod make sure you play it first to check all the abilities work as you expect, and you deselect both the vanilla and the custom class from appearing in your game, otherwise you'll get your class and the class you're borrowing the abilities from appearing together.
lordabizi 8 May, 2019 @ 4:17am 
No, I didn't mean anything that changes Covert actions, I was basically emphasizing that I want this class to be a faction class (and as such - the only way to obtain it is by doing the Recruit Hero covert action).

Anyway, thanks for your time!
initium 8 May, 2019 @ 4:11am 
I wasn't attempting to answer your question, just point out some help =)

However now you have explained better what you're trying to do, I think it will require a mod of it's own because this mod only helps you build a soldier class which is available from the start of the game. What you're suggesting is a specific strategic layer, possibly in covert actions, to change a soldier class to your soldier class for completing the covert action. This mod does nothing to alter that game mechanic.

AFAIK RealityMachina and -bg- have made good mods that change covert actions, so that may be a good place to look how they modded the game.

Definitely ask in Discord or Reddit for help.
Good luck
lordabizi 8 May, 2019 @ 3:47am 
This did not answer my question, as what I want to do is to make it so this class will only be attainable with the Recruit Soldier mission in the Ring from the Templar functions.

I'll try to ask there, if/when I make sure the actual class works...
initium 8 May, 2019 @ 3:45am 
@lordabizi
Not sure how much help this is to you. I managed to replace Ranger, Sharpshooter, Grenadier and Specialist vanilla classes using this mod, but I couldn't use the bHasClassMovie=true as the game would freeze. So they never truly felt like a replacement.
I assume if all you're doing is replacing the ini entries with variations of other mods that exist then it would work.
Try asking this question on Discord XCom2 Modding forum.
lordabizi 7 May, 2019 @ 8:33am 
Is there a way using this mod, to designate some class to be a faction class (i.e. the class I am creating is a Templar variant)?
initium 7 Apr, 2019 @ 3:23am 
@Richard

I've noticed you have re-titled all your mods to being unsupported. Are you leaving the XCom2 scene for pastures new?
Would you allow others to take over your great mods?
(Not me - I'm nothing more than an ambitious ini tinkerer)
pardoxii 1 Apr, 2019 @ 8:37pm 
yay
pardoxii 1 Apr, 2019 @ 8:37pm 
finally got it, turns out the extra two lines for squadie and the extra hints in the code were just in the way. I snipped it out and now it seems to work fine