UOGamers Community

This is a sample guest message. Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members through your own private inbox!

  • To obtain new Razor updates, please reinstall Razor from our new website.

[COMPLETE] Bushido's Evasion to evade something!

Status
Not open for further replies.
[COMPLETE] Bushido's Evasion to evade something!

Type: Broken Feature

Basic Description: Bushido's Evasion won't evade spells, nor breath damage (to verify something else)

Way to experience: Try to evade a direct damage spell. You can't.

Detailed Description: This used to work in RunUO/Demise in revision 197, but when the Parry check was implemented, it's impossible to evade. Looks like a matter of wrong formulas.
You can't evade spells nor breath damage.

The matter is linked to the delay implemented in Evasion: http://www.uodemise.com/forum/showpost.php?p=559708&postcount=37

Plus, the math formula to evade is not correct in the SVN.

Links:

Code:

Ok, let's fix this one for this Saturday! It used to work before and we will let it work again!! :)

If you are going to see files from older revisions, I can say the problem looks like not in Evasion.cs.
 

gilgamash

Knight
Re: Bushido's Evasion to evade something!

I have some hours of time I could spend on thursday with coding. Just need to check what has been done so far :) Perhaps I can (even though I have never done yet) join a chat channel (#code at runuo?) for that time, so we can discuss stuff meanwhile and do active testing during coding stages.

Greets,
G.
 
Re: Bushido's Evasion to evade something!

gilgamash;557803 said:
I have some hours of time I could spend on thursday with coding. Just need to check what has been done so far :) Perhaps I can (even though I have never done yet) join a chat channel (#code at runuo?) for that time, so we can discuss stuff meanwhile and do active testing during coding stages.

Greets,
G.

it's ok :) Keep in mind if something has been done, you will find it here.
 
Re: Bushido's Evasion to evade something!

Maybe you could ask Mark to post the original working code here. Then it could either go in "as is" (because it is guaranteed to work and can be added to later), or it could be tweaked to add Breath attacks, DoT etc first.

We could really use some OSI testing too - To find out if you have the chance to evade Area Effect spells, Auras, Fire/Poison Fields etc.

FE
 
Re: Bushido's Evasion to evade something!

Feersum Endjinn;557833 said:
Maybe you could ask Mark to post the original working code here. Then it could either go in "as is" (because it is guaranteed to work and can be added to later), or it could be tweaked to add Breath attacks, DoT etc first.

We could really use some OSI testing too - To find out if you have the chance to evade Area Effect spells, Auras, Fire/Poison Fields etc.

FE

it's not need to. If you use TortoiseSVN you can search for every version of files that include a keyword (i.e. Evasion) till revision 2 :D

The real problem is to understand *which* file is responsible of this.
 
Re: Bushido's Evasion to evade something!

It would be a good starting point to know which svn nerfed it though. Then we would just need the relevant code from the previous svn...


FE
 

gilgamash

Knight
Re: Bushido's Evasion to evade something!

Hi tam,

the first link looks quite appropriate and I'll check it this very evening.

G.
 

Demilien

Wanderer
Re: Bushido's Evasion to evade something!

Be sure the 20 second or so delay is in it so it's not overly abused like before.
 
Re: Bushido's Evasion to evade something!

So, for spells:

It worked when Evasion.cs was in revision 187. With revision 306, committed by Mark with description "Branch Sync #2", it was added the delay for Evasion, and THIS line (line 74, Scripts/Spells/Bushido/Evasion.cs):

Code:
public static bool CheckSpellEvasion( Mobile defender )
        {
             [COLOR=Red]if( IsEvading( defender ) && VerifyCast( defender, false ) && BaseWeapon.CheckParry( defender ) ) //As per OSI, uses the exact same parry code[/COLOR]
            {
                defender.Emote( "*evades*" );    //Yes.  Eew.  Blame OSI.
                defender.FixedEffect( 0x37B9, 10, 16 );
                return true;
            }

            return false;
        }

Just delete that line and you can evade spells again.

What means "as per OSI, uses the same parry code"?? You need also Parry skill togheter with Bushido to evade spells? Anyway, it's broken, and I think only Mark can answer why that line is there.

In the meanwhile, here's the patch :)
Code:
Index: Scripts/Spells/Bushido/Evasion.cs
===================================================================
--- Scripts/Spells/Bushido/Evasion.cs    (revision 319)
+++ Scripts/Spells/Bushido/Evasion.cs    (working copy)
@@ -71,7 +71,8 @@
 
         public static bool CheckSpellEvasion( Mobile defender )
         {
-            if( IsEvading( defender ) && VerifyCast( defender, false ) && BaseWeapon.CheckParry( defender ) ) //As per OSI, uses the exact same parry code
+            // the line below is commented out because it prevents spells to be evaded
+            // if( IsEvading( defender ) && VerifyCast( defender, false ) && BaseWeapon.CheckParry( defender ) ) //As per OSI, uses the exact same parry code
             {
                 defender.Emote( "*evades*" );    //Yes.  Eew.  Blame OSI.
                 defender.FixedEffect( 0x37B9, 10, 16 );
 

crackhead

Knight
Re: Bushido's Evasion to evade something!

You need also Parry skill togheter with Bushido to evade spells?

on osi you needed parry with bushido to evade anything.
 
Re: Bushido's Evasion to evade something!

crackhead;558013 said:
on osi you needed parry with bushido to evade anything.

ah, that's why.

For now, as it was before in RunUO, it's absolute for spells: if you are under evasion, you always success to evade.

We need better reference about it.
 

crackhead

Knight
Re: Bushido's Evasion to evade something!

this is what i could find on evasion

Evasion ~ 10 Mana ~ 60 Bushido ~ (Stance) ~ Duration 3s to 7s ~ Recharge 20 s
(Puts you in a evasive stance for a short duration, allowing you to parry magical attacks like dragon's breath and energy bolt.)
What it Does – Evasion dramatically increases your parry chance, also giving you the ability to parry direct damage attacks from other sources, such as spells, and dragons breath. This does not give the evader the chance to parry status effecting spells and abilities, however, if the effect does damage over time, which can be parried, such as poison or bleed ticks.

As of publish 43, Evasion formula underwent some changes and no longer multiplies your block chance by a flat 50%. Instead it is based on your Bushido, Anatomy, and Tactics skills. The duration of Evasion is also influenced by these skills. Examples of the multiplier to the evasion bonus to your parry skill are as follows.
  • Evasion Bonus : 16% - 40% without GM Anatomy or Tactics
    † 42% - 50% depending on level of Anatomy and Tactics skill starting at Grandmaster.
Example – If you have a 30% chance to parry, and your skill combinations net you a 40% parry bonus, your parry chance will increase to (30 * 1.4) = 42% for the duration of Evasion.

† It should be noted that as of the PvP Publish, Evasion has a 20 second recharge associated with it now, thus it can no longer be used back to back.

Usefulness:
This move has been on the receiving end of alot of nerfs lately. The first was to nerf down it's parry bonus and duration by making it reliant on bushido, anatomy and tactics skill, and the second slapped a recharge timer on it of 20 seconds. This move has gone from useable 5 cool points to a situational power that you only put up when you know the explosion falmestrike is coming.

and this is what i found on parrry with bushido

Bushido Based Parry
  • One-Handed Parry (shieldless) : Parry * Bushido / 48,000 = Chance to Block
  • Two-Handed Parry (shieldless) : Parry * Bushido / 41,140 = Chance to Block
  • Parry with a Shield Equipped : (Parry – Bushido) / 4
  • Legacy Parry Chance (without Bushido and shieldless) : Parry / 8
Note: For a skill of 100.0 or greater in either Bushido or Parry, a 5% bonus is added to parry chance. This is a one time bonus, thus you will not get 5% for Bushido at or over 100 skill and another 5% for parry at or over 100 skill. You only receive the bonus once for one or the other as long as they remain at or over the 100 skill mark.

Example: If you have a Bushido skill of 90 and a parry skill of 100, your base chance to block with a one handed weapon will be 18.75% chance to block, plus 5% for parry being 100, for a total of 23.75% chance to block. Your two handed parry at the same skill will be 21.88% chance to block, plus 5% more for a total of 26.88% chance to block with a two handed weapon. If you use a shield with the same figures, your chance to block will be 2.5% plus 5% for a total of 7.5% chance to block with a shield. In other words, as a samurai, your chance to block worsens with a shield.


hope that helps
 

crackhead

Knight
Re: Bushido's Evasion to evade something!

a few more things that might help

Does Archery Work with Bushido?
This is a trick question. Yes, Archery works with Bushido, however specific Bushido moves will not work without parry skill. In this case, Counter Attack and Evasion both will not work without parry, and the secondary aspects of Confidence will not either. Momentum Strike also will require the archer to be next to two opponents to get it to work effectively and the parry stipulation of a failed honorable execution will not work with archery either. The reason these do not work with archery is because you cannot ever parry with a bow, and the likelihood of this changing is pretty low

If I have X Bushido value, can I still parry if I don't have parry skill?
Anything multiplied by 0 is still going to be 0. That's a fundamental fact of mathematics. The only time this might not be true is in the situation when you have 100 or greater skill in Bushido. At that point you are given a base of 5% chance to block. Anything less than 100 skill and you have a 0% chance to block.

It should also be noted that human character's may also not have to contend with this issue as deeply, as they get an invisible +20 skill points. Therefor you would place all the formulas above with 20 skill parry.

Can I use a UBWS weapon I don't have skill in to use Evasion?
No, you can not. To combat PvP twinking, this change was put in a long time ago. If you are using a weapon that you have no skill in but has Use Best Weapon Skill as a modifier, and especially those mages who try to use Mage Weapons, Evasion will not work with it. Ths goes for all parry based skills using those weapons as well.
 
Re: Bushido's Evasion to evade something!

hmmm... would be only a matter of chances?

IMHO this is absurd. Evasion should mean you dodge an attack, and NOT parry it, that should be Confidence or Defense Mastery in theory... although it's not so.

I really wish to know the OSI programmer who ideated this...

Ok, let's do some tests more!
 
Re: Bushido's Evasion to evade something!

Then...

I reverted things as they were, and did tests.

120 bushido + 120 parrying + shield: won't evade.

At the end, I got pissed off and I did 700 bushido + 700 parrying + shield (yeah, a character with 2300 skill cap!)

what do you think it ended?

It evaded!!

So... it works but maybe something is not good with formulas.
 

Kiluad

Sorceror
Re: Bushido's Evasion to evade something!

you need to take the shield off osd. all evade does is raise the parry chance. shields lower parry to retarded levels.

I didn't misspeak at all.

stop using a shield.
 

Kiluad

Sorceror
Re: Bushido's Evasion to evade something!

osd_daedalus;558080 said:
Then...

I reverted things as they were, and did tests.

120 bushido + 120 parrying + shield: won't evade.

At the end, I got pissed off and I did 700 bushido + 700 parrying + shield (yeah, a character with 2300 skill cap!)

what do you think it ended?

It evaded!!

So... it works but maybe something is not good with formulas.

here's the math.

with a shield and 120 boshido your parry chance is 5%. assuming your evasion is 50% your ability to evade is only 5 * 1.5 = 7.5%

if you get rid of the shield and add a two handed weapon instead, your parry chance is 40%. assuming again your evasion is 50% your ability to evade is 40 * 1.5 = 60%



but yeah, looks like parry is bugged, you shouldn't be evading with a shield and 700 skill both in parry and boshido.



EDIT in: Im looking in baseweapon.cs, and it has a formula that turns up a negative number when dealing with parry and boshido in certain situations... i didn't really test what happens if that number ever serfaces, but i did fix it and am testing to see if the number will surface. if it's actually fixed. i'll post a patch in about an hour if all goes well.
 

tam

Bug Hunter
Re: Bushido's Evasion to evade something!

Im investigating cause I am bored.

ok there is a problem already with

Code:
			if( IsEvading( defender ) && VerifyCast( defender, false ) && BaseWeapon.CheckParry( defender ) ) //As per OSI, uses the exact same parry code
			{
defender.Say ( "i evades" );
				defender.Emote( "*evades*" );	//Yes.  Eew.  Blame OSI.
				defender.FixedEffect( 0x37B9, 10, 16 );
				return true;
			}

in public static bool CheckSpellEvasion( Mobile defender ).

If you are an archer, with the 3rd check, BaseWeapon.CheckParry( defender ), this means already any archer has a 0% chance to evade a spell, which is wrong. I think it is flat out 50% to evade any direct damage spell, but will investigate.

The 2nd check VerifyCast( defender, false ) is always coming back false regardless of archer or dexer, so there is currently a 0% chance to evade.

I gotta go out for a bit, but when Im back will track it down.
 
Status
Not open for further replies.
Top