X2CommunityCore / X2WOTCCommunityHighlander

https://steamcommunity.com/workshop/filedetails/?id=1134256495
MIT License
60 stars 68 forks source link

Sword Slice cannot be used while Disoriented #788

Closed Iridar closed 4 years ago

Iridar commented 4 years ago

This is intended vanilla behavior and determined by X2Ability_RangerAbilitySet::AddSwordSliceAbility(), which doesn't add Disoriented Effect into SkipExclusions array:

SkipExclusions.AddItem(class'X2StatusEffects'.default.BurningName);
Template.AddShooterEffectExclusions(SkipExclusions);

Even though they do add it for StandardShot. It's understandable why the Firaxis would make that design decision; unsheathing your sword, running up and effectively striking the target with it is probably less plausible than waving your gun in the general direction of the enemy and pulling the trigger.

I assume they would also want to limit the "special" attacks with the Disorientation effect.

However, this becomes a problem in modded environment, where you can have soldiers that carry only a primary melee weapon, and if Disoriented are left without a way to engage enemies at all.

Normally this would be something that should be addressed in Primary Secondaries itself via OPTC, but there's a bit of a hiccup with this solution. AddSwordSliceAbility() is used to create a lot of melee abilities, and patching all of them is not exactly convenient.

Therefore I suggest to add a new bool configuration variable into Highlander, that will determine whether abilities created by AddSwordSliceAbility() can be used while Disoriented or not. It will retain the vanilla behavior by default, of course.

And once that change goes live, we can make a separate mod that will toggle that bool, and then add an X2Condition to SwordSlice and perhaps other melee abilities that they can be used while Disoriented, but only when attached to a Primary Weapon.

Iridar commented 4 years ago

After some deliberations, I think a highlander change for this is excessive and unwarranted. I suggest that we patch up the SwordSlice specifically in OPTC of the Primary Secondaries, changing it so it can be used while Disoriented only when attached to a primary sword.