From 129fae543d16edd81a0c23eb8715973fefd1fe4b Mon Sep 17 00:00:00 2001 From: Styrium Date: Fri, 22 May 2026 17:57:34 -0300 Subject: [PATCH 1/2] Add compounding Serial penalties to Slam Fire --- .../Classes/OPTC_CurbInfiniteActionEconomy.uc | 24 +++++++++++++++++++ .../Classes/X2EventListener_Psi.uc | 1 + 2 files changed, 25 insertions(+) create mode 100644 TedModJamForLWOTC/Src/TedModJamForLWOTC/Classes/OPTC_CurbInfiniteActionEconomy.uc diff --git a/TedModJamForLWOTC/Src/TedModJamForLWOTC/Classes/OPTC_CurbInfiniteActionEconomy.uc b/TedModJamForLWOTC/Src/TedModJamForLWOTC/Classes/OPTC_CurbInfiniteActionEconomy.uc new file mode 100644 index 0000000..db1024e --- /dev/null +++ b/TedModJamForLWOTC/Src/TedModJamForLWOTC/Classes/OPTC_CurbInfiniteActionEconomy.uc @@ -0,0 +1,24 @@ +class OPTC_CurbInfiniteActionEconomy extends X2DownloadableContentInfo; + + +static event OnPostTemplatesCreated() +{ + local X2AbilityTemplateManager TemplateMgr; + local X2AbilityTemplate Template; + local X2Effect_SerialCritReduction SerialCritReduction; + + TemplateMgr = class'X2AbilityTemplateManager'.static.GetAbilityTemplateManager(); + + Template = TemplateMgr.FindAbilityTemplate('ShadowOps_SlamFire'); + if (Template != none) + { + SerialCritReduction = new class 'X2Effect_SerialCritReduction'; + SerialCritReduction.BuildPersistentEffect(1, false, true, false, eGameRule_PlayerTurnEnd); + SerialCritReduction.CritReductionPerKill = class'LWTemplateMods'.default.SERIAL_CRIT_MALUS_PER_KILL; + SerialCritReduction.AimReductionPerKill = class'LWTemplateMods'.default.SERIAL_AIM_MALUS_PER_KILL; + SerialCritReduction.Damage_Falloff = class'LWTemplateMods'.default.SERIAL_DAMAGE_FALLOFF; + SerialCritReduction.SetDisplayInfo(ePerkBuff_Passive, Template.LocFriendlyName, Template.GetMyHelpText(), Template.IconImage, true,, Template.AbilitySourceName); + SerialCritReduction.EffectName = 'SerialCritReduction'; + Template.AbilityTargetEffects.AddItem(SerialCritReduction); + } +} \ No newline at end of file diff --git a/TedModJamForLWOTC/Src/TedModJamForLWOTC/Classes/X2EventListener_Psi.uc b/TedModJamForLWOTC/Src/TedModJamForLWOTC/Classes/X2EventListener_Psi.uc index 828f69d..c1cad8e 100644 --- a/TedModJamForLWOTC/Src/TedModJamForLWOTC/Classes/X2EventListener_Psi.uc +++ b/TedModJamForLWOTC/Src/TedModJamForLWOTC/Classes/X2EventListener_Psi.uc @@ -38,6 +38,7 @@ static function CHEventListenerTemplate CreateRNFListeners() `CREATE_X2TEMPLATE(class'CHEventListenerTemplate', Template, 'TedJamReinforcementListeners'); Template.AddCHEvent('GetReinforcementValue', GetInfilReinforcementValue, ELD_Immediate); Template.AddCHEvent('PlayerTurnEnded', RollForPerTurnWillLossUnderinfil, ELD_OnStateSubmitted, 90); + Template.AddCHEvent('SlamFire', class'X2EventListener_Soldiers'.static.OnSerialKill, ELD_OnStateSubmitted); Template.RegisterInStrategy = false; Template.RegisterInTactical = True; From d9258455d618514f0c8078675462a50d3947c0ba Mon Sep 17 00:00:00 2001 From: Styrium Date: Fri, 22 May 2026 17:57:50 -0300 Subject: [PATCH 2/2] new file --- TedModJamForLWOTC/TedModJamForLWOTC.x2proj | 1 + 1 file changed, 1 insertion(+) diff --git a/TedModJamForLWOTC/TedModJamForLWOTC.x2proj b/TedModJamForLWOTC/TedModJamForLWOTC.x2proj index ccd407b..e3765c4 100644 --- a/TedModJamForLWOTC/TedModJamForLWOTC.x2proj +++ b/TedModJamForLWOTC/TedModJamForLWOTC.x2proj @@ -1347,6 +1347,7 @@ Content + Content