XCOM 2
Knox's Proficiency Plugin: Shock Trooper
27 Comments
Epic Dovahkiin 12 Oct, 2024 @ 11:22pm 
a cool proficiency class idea is something akin to XCOM1's assault class a frontline soldier specializing in pistols and shotguns
Drakten 30 Apr, 2024 @ 12:41am 
Ah ok, did not know that. Thanks!
KnoxAHHHHHHHHHH  [author] 29 Apr, 2024 @ 8:40pm 
@Drakten This is normal behavior for Run and Gun as it is the one from Proficiency Pack. I do not know exactly where, but I know shiremct stated it IS intentional for his Run and Gun to break concealment.
Drakten 29 Apr, 2024 @ 8:31pm 
Hey Knoxx. Just had a shock trooper activate run and gun and it broke concealment. Is that normal behavior?
Zigg Price 18 Jun, 2023 @ 7:26pm 
Does this actually require proficiency pack?...PSYCH!...you know, since I was annoying you most of today checking that on other classes :p

Your proficiency classes come highly recommended, and I'm looking forward to giving them a try. I appreciate that you attempted to adapt them to this new standard of classes design, but didn't necessarily stay in the same lines of balance (I feel the Proficiency Classes are a little too tame). Everything I have read about your classes looks good and excited to try them out. Cheers!
KnoxAHHHHHHHHHH  [author] 6 May, 2023 @ 9:25pm 
At the current moment, I'm in a planning phase making ideas so once I'm done with the finishing polish on some of my classes. I plan on atleast releasing 1 unique (non-hero type) class at some time this or next month if everything goes as planned.
Henshin Wizard 6 May, 2023 @ 9:20pm 
Did you updated this class pack Knoxxx? Nooo I had edits to this class. Oh well the changes are interesting to give it ago.

Also are you planning making more Plugins? I understand if you don't since Modding I know takes alot of time. But you classes plugins are great, I love what did with Alpha Rocketeer class.
KnoxAHHHHHHHHHH  [author] 3 Apr, 2023 @ 3:13pm 
I don't use LWOTC personally so I don't know. You can try it out if you want but I'm not sure if it'll work. For base game "eInvSlot_Pistol" doesn't work, but if it works for LWOTC, go ahead.
bryan_03_93 3 Apr, 2023 @ 2:49pm 
Hey man i have a question, this is definitely my favorite class to use and now that i recently downloaded lwotc, i've been trying to add the pistol skill tree that a lot of those classes have to the shocktrooper class. I went on the class data and tried copy pasting the pistol skills from lwotc onto the shocktrooper class for each rank minus 1 since lwotc have an extra rank but i don't think that matters a lot. So my question is, am i missing something else to do apart from just adding:
"(AbilityType=(AbilityName="Quickdraw", ApplyToWeaponSlot=eInvSlot_Pistol)) \\"
to the next line under the last ability for each rank from corporal-colonel?
Knight143 9 Nov, 2022 @ 6:51pm 
@Knox Thank you!
KnoxAHHHHHHHHHH  [author] 9 Nov, 2022 @ 6:12pm 
The vest is from "Military Style Torso Decos"
https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=1784940385

The gasmask is from "WA'sCustomGearWOTC"
https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=1124627832

The last two parts are from "Modular Legacy Armor" and "Modular ADVENT Armor." The rest of it is vanilla (or Grimstyle armor don't remember)
Knight143 9 Nov, 2022 @ 5:40pm 
Thanks for this mod! What mods are the gear and gasmask from?
KnoxAHHHHHHHHHH  [author] 8 Aug, 2022 @ 12:54pm 
This was always something that isn't in any of the other class mods (that use arcthrower) and it probably might be simpler just to make a mod that fixes it for all classes, might attempt to work on it after I get my last psuedo-hero done.
Secondly, the auto-reload is something I've known of due to previously playing with it, will probably do the same as above.
(If I can't get a mod that can work for all classes that use them, I'll just add it to this mod)
Malek Deneith 8 Aug, 2022 @ 12:01pm 
2. The other one is that Quick Zap change isn't picked up by Cost-Based Ability Colors. For that compability can be achieved with 'XComWOTC_CostBasedAbilityColors.ini' containing:

[WOTC_CostBasedAbilityColors.UITacticalHUD_Ability_WOTC_CostBasedAbilityColors]

+AbilityCostColorOverrides=(AbilityName="ArcThrowerStun", ModifyingEffectName="BS_RapidStun", OverrideColor="006600")
+AbilityCostColorOverrides=(AbilityName="EMPulser", ModifyingEffectName="BS_RapidStun", OverrideColor="006600")
+AbilityCostColorOverrides=(AbilityName="ChainLightning", ModifyingEffectName="BS_RapidStun", OverrideColor="006600")
Malek Deneith 8 Aug, 2022 @ 12:01pm 
Found two small additions that can be made for compatibility with other mods.

1. Right now if one has Iridar's Automated Reload installed that mod will waste Quick Zap by forcing the trooper to reload. For compatibility 'XComAutoReload.ini' could be added with the following:

[WOTCIridarAutoReload.X2EventListener_Base]

+ExcludeAbilitiesFromAutomaticReload = (AbilityName = "ArcThrowerStun")
+ExcludeAbilitiesFromAutomaticReload = (AbilityName = "EMPulser")
+ExcludeAbilitiesFromAutomaticReload = (AbilityName = "ChainLightning")
Malek Deneith 2 Aug, 2022 @ 6:42am 
As a sidenote as Dies Irae mentioned in Pharmacist discussion the 'IsBrawlingEnabled()' functions should be renamed or else you run risk of compatibility issues with brawler and between your own classes. Just swap Brawling for name of each respective class and it should be good.
KnoxAHHHHHHHHHH  [author] 2 Aug, 2022 @ 12:25am 
I don't have it built against Highlander, I can try seeing if it does work whenever I'm able to
Malek Deneith 2 Aug, 2022 @ 12:17am 
A random thought I just had - is the class built against Community Highlander? I'm not sure if it's necessary for the base proficiency bits, and if the class is built without it then perhaps it's as simple as the functionality needing a CHL hook and building against it will fix the "issue"
KnoxAHHHHHHHHHH  [author] 2 Aug, 2022 @ 12:07am 
Atleast the core aspect works, so it literally is just getting the text to work, it shouldn't be a big problem, but what do I know, it probably will take me 3 hours of pain
Malek Deneith 2 Aug, 2022 @ 12:00am 
Hmm. Well it's probably best to revert the localization thing for now, and ask Shiremct how that localization thing works... because it's clearly supposed to, all the base proficiency classes do this. Clearly there is some other component necessary that I overlooked (can't even try checking since I'm away from PC right now)
KnoxAHHHHHHHHHH  [author] 1 Aug, 2022 @ 11:48pm 
The changes that you recommended work but the only problem is that in the localization it doesn't show the stat changes but it does apply them to the Shock Trooper. (The text buff also does not show up)
KnoxAHHHHHHHHHH  [author] 1 Aug, 2022 @ 9:29pm 
I'll give it a test after I'm done with the project I'm currently working on, should be done soon
Malek Deneith 1 Aug, 2022 @ 9:09pm 
(3/3)

Do mind that this is based on a quick look, please do test it (might want to test using a freshly promoted trooper because I think changing the values in the ini won't change the stat boosts that were already acquired by the trooper before the change)
Malek Deneith 1 Aug, 2022 @ 9:09pm 
(2/3)

StatEffect1.AddPersistentStatChange(eStat_Defense , default.FRONTLINE_DEFENSE); //Tier 1 Stat change

StatEffect2.AddPersistentStatChange(eStat_Mobility , default.FRONTLINE_MOBILITY); //Tier 2 Stat change

StatEffect3.AddPersistentStatChange(eStat_CritChance , default.FRONTLINE_CRIT_CHANCE); //Tier 3 Stat change


Then in Config folder create 'XComKPPShockTrooperSkills.ini' with the following

;----------------------------------------------------
[KPPShockTrooper.X2Ability_KPPShockTrooper ]
;----------------------------------------------------

;Class Proficiency Skills
FRONTLINE_DEFENSE = 10
FRONTLINE_MOBILITY = 3
FRONTLINE_CRIT_CHANCE = 25

and in the localisation file for descriptions you should be able to use

<Ability:FRONTLINE_DEFENSE/>
<Ability:FRONTLINE_MOBILITY/>
<Ability:FRONTLINE_CRIT_CHANCE/>

instead of numbers to make the descriptions self-adjust.
Malek Deneith 1 Aug, 2022 @ 9:09pm 
(1/3)

If I understand correctly the code goes something like this. In 'X2Ability_KPPShockTrooper.uc' change

class X2Ability_KPPShockTrooper extends X2Ability; //Name after filename .uc

to

class X2Ability_KPPShockTrooper extends X2Ability config(KPPShockTrooperSkills); //Name after filename .uc

and declare variables right at the start

var config int FRONTLINE_DEFENSE;
var config int FRONTLINE_MOBILITY;
var config int FRONTLINE_CRIT_CHANCE;

Then change relevant lines in ability code to use variables instead of static values, so this

StatEffect1.AddPersistentStatChange(eStat_Defense , 10); //Tier 1 Stat change

StatEffect2.AddPersistentStatChange(eStat_Mobility , 3); //Tier 2 Stat change

StatEffect3.AddPersistentStatChange(eStat_CritChance , 25); //Tier 3 Stat change

becomes this
KnoxAHHHHHHHHHH  [author] 1 Aug, 2022 @ 7:12pm 
I'll see what I can do with the stat bonuses, but currently I'm unsure how to move the stat changes to a config from the src file.
Malek Deneith 1 Aug, 2022 @ 11:32am 
Won't comment on class balance since I didn't yet put it in my campaign but two other notes:
1) You shouldn't need 'Chimera Squad Ability Icons' as a dependancy since 'Mitzruti's Perk Pack' as required, and per description of CSAI the same upk file is bundled in MPP
2) Something worth doing in an update would be exposing stat bonuses from Frontline Training to a config file so that people can finetune their balance if they so desire.