DragonDrop Posted January 17, 2020 Posted January 17, 2020 (edited) When a character attacks with the Powder Burns modal, it places a debuff that Distracts them for 10 seconds. This is a hostile effect Resolve reduces duration. Intellect also increases its duration, which I am looking to prevent. My solution was to apply a StatusEffect (SE) that grants -10000 INT before the Distracted SE is applied. This guarantees 1 INT at the time of Distraction being cast, so you get -45% duration of positive buffs. I then increase base duration of Distraction to 18.181818 seconds so that when the -45% is applied, it goes back down to 10. The -INT SE is removed on attack, so it doesn't affect anything else. This gives larger numbers than expected using the calculation sheet provided and through in-game testing without the mod using a character that has 10 INT. When reversing the mod (adding 10000 INT and reducing duration of Distraction to 4.44444 seconds) we get smaller numbers than expected. Unexpected values only occur when there are multiple sources of Hostile Effect Reduction (RES + Solitary Ring of the Wanderer for example). Ideal solution SETS the character's INT to 10 but I don't know how I would achieve this since it requires a dynamic value and I don't know if attributes are compatible with dynamic values. Duration Formula.xlsx Edited January 18, 2020 by DragonDrop 1
Grape_You_In_The_Mouth Posted January 18, 2020 Posted January 18, 2020 What was the goal for this? I'm curious about it.
omgFIREBALLS Posted January 18, 2020 Posted January 18, 2020 I'm guessing that OP didn't like having a self-inflicted debuff last longer based on their int My Deadfire mods: Out With The Good | Waukeen's Berth | Carrying Voice | Nemnok's Congregation Other Deadfire work: Deadfire skill check catalogue Avowed skill calculator
DragonDrop Posted January 18, 2020 Author Posted January 18, 2020 4 hours ago, Grape_You_In_The_Mouth said: What was the goal for this? I'm curious about it. There's a really sweet build I theorycrafted a while ago that hinges on constantly expiring the powder burns debuff. It's aimed at making FF monk actually viable for reliable healing and wound generation.
Elric Galad Posted January 19, 2020 Posted January 19, 2020 Powder burn is a buff though. For streetfighters at least
DragonDrop Posted January 20, 2020 Author Posted January 20, 2020 21 hours ago, Elric Galad said: Powder burn is a buff though. For streetfighters at least The PB effect is an affliction. The Street Fighter effect is a buff.
Elric Galad Posted January 21, 2020 Posted January 21, 2020 20 hours ago, DragonDrop said: The PB effect is an affliction. The Street Fighter effect is a buff. Yeah, I know, it was a sort of (bad ?) joke. Your idea is legit though (same problem with MIG for self-inflicted damages)
Kyberus Posted February 12, 2020 Posted February 12, 2020 So far as I am aware, this would require dll editing to do gracefully (which I don't think is possible currently). The stat -> effect correlations seem to be hard coded. I think the scaling with/without resolve relates to whether the applying attack is flagged as hostile (attacks apply status effects, even beneficial ones). Duration and duration type are finally set in the actual status effect, but the only option that affects attribute scaling turns them both off (durationtype -> UseDurationTimeUnadjusted ). So far as I am aware, this turns off both int and res scaling. One potential (quite complicated) alternative would be to assign a specific affliction type to all of the desired status effects, and turn off ability score scaling. One could then use an ability to apply a hidden status effect based on current resolve to desired characters, with the OutgoingAfflictionTypeDurationMult flag for that afflictiontype and the desired multiplier (e.g. 0.97 for characters with 11 resolve, etc). It would have the issue that if it is actually an affliction or inspiration, it would no longer counter / interact with other affliction / inspirations. Also you would need to force stacking for each ability, otherwise only 1 penalty would apply. This would require something along the lines of: A) creating an AfflictionTypeGameData item with a unique GUID to contain the "self hostile" status effects . B) assigned that AfflictionType GUID to all desired "self hostile" status effects C) add afflictioncomponent entries to all "self hostile" status effects, each with a unique GUID. Add those GUIDs to the list attached to the AfflictionTypeGameData item. D) set override StackingRuleOverride for all origin attacks to "Always" (otherwise all of these abilities could be used at once at no downside) E) create a series of status effects applying permanent OutgoingAfflictionTypeDurationMults for that afflication type, one for each resolve value, except 10 (ie: 11-> 0.97, etc). F) create a series of abilities applying those status effects, F.1 with a Boolean IsAttributeScoreValue(Guid, AttributeType, Operator, Int32, Boolean) conditional verifying that resolve = (value) in the ApplicationPrerequisites field (to turn it on) F.2 and a Boolean IsAttributeScoreValue(Guid, AttributeType, Operator, Int32, Boolean) conditional verifying that resolve is not equal to (value) in the DeactivationPrerequisites field (to turn it off) F.3 Set HideFromUI for all these abilities so they don't clutter the UI G) Add an entry for all these ability at level 0/1 to? everyone's progressiontable. I do not guarantee this would work, and it would require a fair bit of effort.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now