Uncanny Dodge Fix

Ideas and suggestions for game mechanics and rules.
Locked
Zelknolf
Chosen of Forumamus, God of Forums
Posts: 6139
Joined: Tue Jul 05, 2005 7:04 pm

Uncanny Dodge Fix

Post by Zelknolf »

So, uncanny dodge is broken. Super broken. So there should be a fix. And I have an idea. And it goes like this:

What does uncanny dodge actually protect against? Stuff that makes attack rolls (when you're flat-footed, that is). In fact, it protects against all stuff that makes attack rolls, but it does so in a way that we can't reliably reproduce in another format (because of types of protection, stacking, and the bothersome fact that a dodge bonus would also not work while flat-footed). Causes all sorts of problems, except for with this guy:

Code: Select all

// Create a Concealment effect.
// - nPercentage: 1-100 inclusive
// - nMissChanceType: MISS_CHANCE_TYPE_*
// * Returns an effect of type EFFECT_TYPE_INVALIDEFFECT if nPercentage < 1 or
//   nPercentage > 100.
effect EffectConcealment(int nPercentage, int nMissType=MISS_CHANCE_TYPE_NORMAL);
He causes things that make attack rolls to miss. And he does so with a fairly high degree of precision. Does so outside of the context of an attack roll, so he gets along with all types of AC and doesn't care whether or not you're flat footed. He also gives half of his salary to orphans. All-around great guy.

But it's not as simple as the reflex would say: Take a rogue with 18 dex -- damn halflings -- and you'd be inclined to say "Well, 18 dex. That's +4 AC. That should be 20% concealment, right?" -- maybe! This dirty little hin has a chain shirt +1, a ring of protection +1, an amulet of natural armor +1, and he's a class-dipping ninny. Took a level in fighter so he could use a shield... +1. AC 21 while flat-footed with no uncanny dodge (10 + 1 size, 5 armor, 1 natural, 1 deflection, 3 shield). 25 with. If this ninny gets jumped by a goblin with a morning star (ab +1), what difference does uncanny dodge make? None! If this ninny gets jumped by an ogre with a greatclub (ab +8), what difference does uncanny dodge make? Difference between the ogre needing a 13 and a 17. (40% / 20% -- this poor ninny takes twice as much damage without uncanny dodge)-- that strikes me as some pretty serious business. We should probably do something about that.

But here's the trouble: we can't get the attack bonus of things that are just about to hit you. We can get the attack bonus of things that have already hit you (which would present problems -- what if it's a goblin and an ogre, tag-teaming a rogue to death?) and we can easily figure out what the attack bonus of a fighter who's the same level as your rogue would be.

So, my suggestion: we set up a pseudoheartbeat. We invade another line of the VFX table -- not to make a visual. I can use them to track effects. It's very nifty. We take the AC of the person with uncanny dodge (I know I keep pointing at rogues, but that's because they really get the fuzzy end of the lolipop out of this deal, but barbarians/ assassins/ dwarven defenders would profit too) and we calculate how much of a difference it would make if they were attacked by a fighter of the same level, equipped per the DMG's generic fighter specs -- by the routes above. What would this hypothetical fighter need to roll with and without uncanny dodge, compared and expressed as a percentage (as concealment is calculated outside the attack roll, in a very similar manner). And then this heartbeat tracks the person with uncanny dodge. If they're not flat footed, concealment goes away. If their AC chances, recalculate concealment. If concealment went away but now they're flat-footed again, concealment comes back.

But! There are flaws in this plan--
1. There would be a little bit more server load; only recalculating when a rogue's AC changes or such would make things better. But it would be most active around fights, which are already a source of server load.
2. The value of uncanny dodge is on a curve. Rogues would be better protected than normal against things that are vastly more powerful than they are (level 4 rogue jumped by a frost giant? He spends a round being way better off. And then dies. But maybe those six seconds make a difference) and they'd be better protected against things that they're way more powerful than (cave full of level 1 goblin warriors? somewhat more farmable now).
3. Because this would be on a timer, there would be gaps when things are a little off while the system tries to adjust. A rogue who gets jumped by five goblins will cease to be flat footed before the scripts identify that he's not flat footed and remove the concealment, granting him a few seconds of better protection, and would then have the opposite effect after he finishes the nearby goblins off -- time while he's flat-footed and before the script puts concealment back on (during which a second wave of goblins may catch him with his pants down).

And the win is that rogues become more playable. Still broken. Just not as broken.

I demand the opinions of others.
User avatar
mogonk
Dire Badger
Posts: 133
Joined: Sat Nov 13, 2010 8:48 am

Re: Uncanny Dodge Fix

Post by mogonk »

Zelknolf wrote: There would be a little bit more server load; only recalculating when a rogue's AC changes or such would make things better. But it would be most active around fights, which are already a source of server load.
That's not exactly a reassuring statement, Zelk. So it would increase server load, at times when server load is already problematic....and that's ok? You know vastly more than I do about technical and scripting issues, but my understanding was that pseudo-heartbeats were seriously problematic for that very reason.

I don't see any problems here from a balance perspective, (#2 and #3 seem pretty minor) so if you're sure that it won't cause technical issues then I think it's a great idea. If it will cause increased server side lag and other associated problems, I think we should look at other options.
Zelknolf
Chosen of Forumamus, God of Forums
Posts: 6139
Joined: Tue Jul 05, 2005 7:04 pm

Re: Uncanny Dodge Fix

Post by Zelknolf »

Issues of server load are all about cost and yield. Cost is relatively low -- I would draw special attention to the "little bit" part, as I actually do mean "little bit" -- it is a low cost that is added to a relatively-strained time, which means we might feel it. Emphasis on the "might" part. If the server is already on the cusp of failure because of being pushed too hard by everything else, then yeah. Small amounts of load are noticeable. But I'd rather recoup that with despawns or more efficient AI than shaft rogues, if that's the case. But it probably isn't.

I would also say that you are incorrect about the pseudoheartbeat. They do not inherently cause any more server load than any other scheme that would update an effect; indeed, the load presented by doing this to a server full of rogues could be reclaimed by accurately despawning couple NPCs when PCs aren't around. They are actually avoided because they are a self-referencing function which, with improper timing (read: no delays), can cripple a server and spam both players and server logs. Many servers insist that they never be used so they may be spared the foibles of inexperienced scripters. Not really a problem here.
User avatar
Keryn
Ogre
Posts: 678
Joined: Sat May 24, 2008 7:17 pm

Re: Uncanny Dodge Fix

Post by Keryn »

I'm with mogonk here, any, even if minor extra load on a server as we are makes me think, and doesn't leave me at ease, but AL is the probably the guy to chime in this one. I certainly think we should find a way to either fix or compensate rogues for uncanny dodge mighty failure. But on other hand i have seen pretty successful rogues IG, and they never seemed crippled to me, which doesn't mean we shouldn't aim to fix this, much the opposite, just saying I believe there are other things we could do to boost the rogues IG, with maybe skill checks, locked doors, locked chests, XP for opening these, and some others ideas that were shot around that would vastly improve the IG experience of those who have played rogues and keep complaining about these. (This of course on top of this fix not to come instead of it, if we are aiming to help rogues, OGR played one and his thoughts would be great to be had here)

A server like TSM would probably not suffer much from this, but other servers in not so potent hosts that already cringe with small loads, would on other hand most likely suffer a bit with these minor extra loads, and since we have to implement thing equally...

Anyway Tech experts please report :)
<Kest> "what am i running away from? i dont know but it sounds big and large!!"
---
<@Veilan> I like sausage.
User avatar
dergon darkhelm
Fionn In Disguise
Posts: 4258
Joined: Fri Jul 08, 2005 1:21 pm
Location: Cleveland, Ohio, United States

Re: Uncanny Dodge Fix

Post by dergon darkhelm »

Beyond my cognitive capacity to understand.....

but thanks for what the obviously hard work to come to a thoughtful and reasoned approach to the issue :)
PCs: NWN1: Trailyn "Wayfarer" Krast, Nashkel hayseed

NWN2: ??

gsid: merado_1
Zelknolf
Chosen of Forumamus, God of Forums
Posts: 6139
Joined: Tue Jul 05, 2005 7:04 pm

Re: Uncanny Dodge Fix

Post by Zelknolf »

And this is what I get for mentioning the standard cost of adding any content to anything in my discussion of adding content to something. It is standard. It's like saying that eating lunch costs money. And in this case, it represents the load of adding a couple NPCs or a player house to a mod-- except, of course, that the early return on an area's or an AI's heartbeat is not nearly as early as the one for this would be, so their load is as grumpy as this would be at its meanest pretty well all the time.

Unless you guys would like to crusade against player housing. Then by all means, do so. You'd get a better performance gain.

So, allow me to rephrase:
1. This would represent server load that, if it was necessary, I could reclaim from other scripts in the core rules with about an hour of work and no lost functionality.

Now, the valuable part of this discussion is the concept: do we find it valid to use concealment, if it were calculated to provide the same kind of protection that AC would against a CR-appropriate bad guy who makes a lot of attack rolls, to replace the AC of uncanny dodge?
User avatar
Keryn
Ogre
Posts: 678
Joined: Sat May 24, 2008 7:17 pm

Re: Uncanny Dodge Fix

Post by Keryn »

Zelk from an implementation point of view I think so far we are with you. If it could be worked out to perform close to what uncanny dodge should do, why not? I thought about it and cannot see how this would be game breaking or open to any abuses, but wait on hollyfant for that he is a master of testing :twisted:
Bring it up.

Sorry if the alarm sounded when you spoke of extra load... its just I still remember the times when lagg was horrifying and it was almost impossible to have a clean battle with two critters. If spells were involved it would be even worse.

Seems like you know your stuff, I'm no one to contest if you say it is pretty doable.
<Kest> "what am i running away from? i dont know but it sounds big and large!!"
---
<@Veilan> I like sausage.
User avatar
NESchampion
Staff Head - Documentation
Posts: 884
Joined: Thu Jul 13, 2006 12:46 am

Re: Uncanny Dodge Fix

Post by NESchampion »

A few questions:

How would this interact with other forms of concealment? Say a rogue with this is also buffed with a Blur spell, or a rogue inside the AOE of a Darkness spell.

How would this interact with feats like Blind-Fight, which gives the attacker a second chance at fighting concealed enemies?
Current PC: Olaf - The Silver Marches
User avatar
mogonk
Dire Badger
Posts: 133
Joined: Sat Nov 13, 2010 8:48 am

Re: Uncanny Dodge Fix

Post by mogonk »

Zelknolf wrote:do we find it valid to use concealment, if it were calculated to provide the same kind of protection that AC would against a CR-appropriate bad guy who makes a lot of attack rolls, to replace the AC of uncanny dodge?
Sure. Aside from miss chance, the only benefit provided would be protection from sneak attacks, which UD is supposed to provide. Seems like an elegant solution.

I believe that blind fight bonuses would work against it, and the concealment would not stack with other sources of concealment, but that's not a significant problem in my estimation.
User avatar
NESchampion
Staff Head - Documentation
Posts: 884
Joined: Thu Jul 13, 2006 12:46 am

Re: Uncanny Dodge Fix

Post by NESchampion »

mogonk wrote:I believe that blind fight bonuses would work against it, and the concealment would not stack with other sources of concealment, but that's not a significant problem in my estimation.
But stripping existing concealment at the end of the round when the rogue UD concealment is supposed to cease would be a significant problem if not addressed. I imagine it might be possible to code around so that the UD checks for existing concealment and then uses that when UD isn't active, but it should be considered.
Current PC: Olaf - The Silver Marches
User avatar
hollyfant
Staff Head on a Pike - Standards
Posts: 3481
Joined: Mon Oct 24, 2005 3:33 pm
Location: the Netherworl... lands! I meant the Netherlands.

Re: Uncanny Dodge Fix

Post by hollyfant »

I like it. I've been trying to "break" the idea in my mind, but it appears pretty sound. Yes, there would be a server load cost. But in return this not only fixes Uncanny Dodge, we also:
  • End Barbarian being a one-level class (turning it into a two-level class...) :roll:
  • Give Rogues some much, much needed love.
  • Fix the two Uncannies not merging into an Improved Uncanny bug.
User avatar
dirsa
Orc Champion
Posts: 417
Joined: Tue Oct 25, 2005 12:33 pm

Re: Uncanny Dodge Fix

Post by dirsa »

i was reading though the proposed fix, and quite frankly i was getting confused by mathematics of it. isn't problem really somewhat simple at it's core?

so let's see... uncanny dodge doesn't work. what does it do? it let's character retain dex ac bonus if caught flat footed...

so would not the obvious answer be to strip dex ac bonus from all characters with uncanny dodge, and instead give them equal dodge ac bonus?
fighting for peace is like screwing for virginity
User avatar
mogonk
Dire Badger
Posts: 133
Joined: Sat Nov 13, 2010 8:48 am

Re: Uncanny Dodge Fix

Post by mogonk »

dirsa wrote: so would not the obvious answer be to strip dex ac bonus from all characters with uncanny dodge, and instead give them equal dodge ac bonus?
Zelknolf wrote:a dodge bonus would also not work while flat-footed
User avatar
dirsa
Orc Champion
Posts: 417
Joined: Tue Oct 25, 2005 12:33 pm

Re: Uncanny Dodge Fix

Post by dirsa »

natural ac bonus then? if dodge ac difference from natural ac is that dodge can be bypassed for flatfooted target....
fighting for peace is like screwing for virginity
User avatar
hollyfant
Staff Head on a Pike - Standards
Posts: 3481
Joined: Mon Oct 24, 2005 3:33 pm
Location: the Netherworl... lands! I meant the Netherlands.

Re: Uncanny Dodge Fix

Post by hollyfant »

dirsa wrote:natural ac bonus then?
Wouldn't stack with other sources of Natural AC. Plus we'd still have to worry about changing Dex bonuses: Cat's Grace, Poison, Paralysis, Heavy Armour...
Locked