Parry!

Dark_Force9999

New Adventurer
Joined
Jul 3, 2007
Messages
267
Reaction score
0
Character - 2 Awareness, level 1 Parry, x2 Large Iron Shield. I'm guessing this other char has 11.4% of parrying?
 

Tentadrilus

New Adventurer
Blades of Urdual
Joined
Dec 31, 2004
Messages
1,022
Reaction score
0
The most powerful monster you can find. Parrying flayers on Daragoth with a rune shield at a high level is a great way of leveling parry.
 

Thothie

Administrator
Staff member
Administrator
Moderator
MSC Archivist
Joined
Apr 8, 2005
Messages
16,342
Reaction score
326
Location
lost
Skeletons tend to work well, simply because they swing so fast and come in such a wide range of flavors.
 

Dark_Force9999

New Adventurer
Joined
Jul 3, 2007
Messages
267
Reaction score
0
Will it work with only the above stats? I been letting them pound at my shield all night and no go. (I'm trying to become a parry master lol)

Keep in mind i'm trying to stay as a Adventurer. (I already capped all my skill at 3)
 

Dark_Force9999

New Adventurer
Joined
Jul 3, 2007
Messages
267
Reaction score
0
Code:
CBaseEntity *pAttacker = Damage.pAttacker; 
   if( IsAlive( ) && pAttacker && pAttacker->IsMSMonster() ) 
   { 
      CMSMonster *pMonster = (CMSMonster *)pAttacker; 
      int ParryValue = GetSkillStat( "parry", STATPROP_SKILL ); 

      int AccRoll = RANDOM_LONG(Damage.AccuracyRoll,100), ParryRoll = RANDOM_LONG(0,ParryValue); 

      //Using a weapon that can parry (shield, some swords) gives a parry bonus 
      int iAttackNum = 0, iHand = 0;; 
      CGenericItem *pHandItem = FindParryWeapon( this, iHand, iAttackNum ); 
      if( pHandItem ) 
      { 
         attackdata_t *pAttack = &pHandItem->m_Attacks[iAttackNum]; 
         ParryRoll *= 1 + (pAttack->flAccuracyDefault / 100.f);      //If 100% bonus, the roll gets multiplied by 2 
      } 

      //Awareness gives a small parry bonus 
      ParryRoll += GetNatStat( NATURAL_AWR ); 

      //Thothie - do not parry certain damage types 
      msstring thoth_dmgtype = Damage.sDamageType; 
      if ( thoth_dmgtype.starts_with("target") ) ParryRoll = 0; 
      if ( thoth_dmgtype.starts_with("fire") ) ParryRoll = 0; 
      if ( thoth_dmgtype.starts_with("poison") ) ParryRoll = 0; 
      if ( thoth_dmgtype.starts_with("lightning") ) ParryRoll = 0; 
      if ( thoth_dmgtype.starts_with("cold") ) ParryRoll = 0; 
      if ( thoth_dmgtype.starts_with("magic") ) ParryRoll = 0; 
      if ( Damage.flDamage == 0 ) ParryRoll = 0; //do not parry 0 damage atks 
      if ( ParryRoll > 90 ) ParryRoll = 90; //always allow at least 10% chance to be hit 

      if( ParryRoll > AccRoll ) 
      { 
         //thothie attemptig to pass parry vars 
         msstringlist ParametersB; 
         ParametersB.add( pAttacker ? EntToString( pAttacker ) : "none" ); 
         ParametersB.add( UTIL_VarArgs("%f",Damage.flDamage) ); 
         ParametersB.add( Damage.sDamageType ); 
         ParametersB.add( UTIL_VarArgs("%i",ParryRoll) ); 
         ParametersB.add( UTIL_VarArgs("%i",AccRoll) ); 
         CallScriptEvent( "game_parry", &ParametersB ); 
         if( pHandItem ) pHandItem->CallScriptEvent( "game_parry", &ParametersB ); 
         Damage.flDamage = -1; // -1 means the monster dodged the attack 
         ClearMultiDamage( ); 
         //Learn parry skill from  a successful parry 
         if( !pAttacker->IsPlayer() )  //Can't learn from being attacked by players 
            if (pMonster->m_SkillLevel * 2 > 0) 
               LearnSkill (SKILL_PARRY, STATPROP_SKILL, pMonster->m_SkillLevel * 2 ); 
            else 
               LearnSkill (SKILL_PARRY, STATPROP_SKILL, 0 ); 
            //LearnSkill( SKILL_PARRY, STATPROP_SKILL, max(pAttacker->m_SkillLevel * 2,0) ); 
      } 
   }

What's accuracy roll? the thing in our combat message?

You've been hit (51/30)?

Edit: Wow, I just got 2 parry level out of nowhere!
 

Shurik3n

New Adventurer
MSC Developer
RiP
Joined
Aug 15, 2006
Messages
1,357
Reaction score
0
Age
34
A "parry master" will be difficult because you wont get very much HP and even if you had 50 parry you wouldn't parry as much as a normal person with 50 parry because your awareness will still be incredibly low.
 

CrazyMonkeyDude

New Adventurer
MSC Developer
RiP
Joined
Jun 29, 2007
Messages
2,619
Reaction score
2
Age
35
Thothie said:
Skeletons tend to work well, simply because they swing so fast and come in such a wide range of flavors.

Enraged skeletons (or ice bones, and other varieties of enraged) seem to work best because they swing the fastest.
 

Thothie

Administrator
Staff member
Administrator
Moderator
MSC Archivist
Joined
Apr 8, 2005
Messages
16,342
Reaction score
326
Location
lost
Leeches won't work very well, as they have such a low XP value, however, if you are really low level, and happen to have a shield or two, it may not be a bad idea to go into Edana sewers and find a few leeches to parry. Tis true, they attack faster than anything.
 

Tentadrilus

New Adventurer
Blades of Urdual
Joined
Dec 31, 2004
Messages
1,022
Reaction score
0
Parrying the Giant Black Pudding is also fun.

Shame it does about 200 damage every second.
 

Thothie

Administrator
Staff member
Administrator
Moderator
MSC Archivist
Joined
Apr 8, 2005
Messages
16,342
Reaction score
326
Location
lost
Break it up into a dozen little ones.
 

Evaan

New Adventurer
Joined
Aug 24, 2004
Messages
302
Reaction score
1
Age
39
Location
Norway
ITS'aME'aMARIO!!!! said:
so having a shield equipped gives a better parry roll?

Think of it as entering a defensive stance.
If it was intentional or not, I do not know.
 

Thothie

Administrator
Staff member
Administrator
Moderator
MSC Archivist
Joined
Apr 8, 2005
Messages
16,342
Reaction score
326
Location
lost
Evaan said:
ITS'aME'aMARIO!!!! said:
so having a shield equipped gives a better parry roll?

Think of it as entering a defensive stance.
If it was intentional or not, I do not know.
Er - it's a shield, you parry with it, tis what it is for, it is very intentional - it's the only real function the shields ever had before I added damage reduct - although there was an attempt to make them bash on a secondary charge that never worked right.
 

Evaan

New Adventurer
Joined
Aug 24, 2004
Messages
302
Reaction score
1
Age
39
Location
Norway
I've always thought of parry as something you do with your weapon, to divert the attack, whereas the shield is there just to absorb the attack and prevent injury, sort of like a kevlar vest.
 

The Man In Black

Administrator
Staff member
Administrator
Moderator
RiP
Joined
Jul 9, 2006
Messages
6,904
Reaction score
71
I consider a shield deflecting to be parrying, though in the game it has them as 2 different things >_>
 

Thothie

Administrator
Staff member
Administrator
Moderator
MSC Archivist
Joined
Apr 8, 2005
Messages
16,342
Reaction score
326
Location
lost
Deflect is just Parry with less pizazz, so sayeth the extinct lizard with the very large vocabulary. ;)
(Deflect was also something I could control from the script end in some sanely predictable matter - unlike Parry.)

Riposté would be something exclusive to weapons and not done by shields, is mayhaps what you are thinking.
 

CrazyMonkeyDude

New Adventurer
MSC Developer
RiP
Joined
Jun 29, 2007
Messages
2,619
Reaction score
2
Age
35
Thothie said:
Riposté would be something exclusive to weapons and not done by shields, is mayhaps what you are thinking.

That'd be something pretty cool to implement into the game. For use with swords and small arms only. Though getting xp for it might not be possible, and it'd probobly be easy to exploit. AKA sitting in a mound of flayers with a GiB out and killing them all with ripostes.
 

Thothie

Administrator
Staff member
Administrator
Moderator
MSC Archivist
Joined
Apr 8, 2005
Messages
16,342
Reaction score
326
Location
lost
Could make Parry simply have a chance to riposté instead, above a certain level.

Tricky bit with that is it's difficult to get the server to get the client to play a weapon animation at a particular moment from the script side.
 

Evaan

New Adventurer
Joined
Aug 24, 2004
Messages
302
Reaction score
1
Age
39
Location
Norway
Isn't riposte a counterattack?

In any way, I was thinking of parrying as say, when attacking a swordsman with an axe, you catch the sword blade with the axehead and divert it towards the ground, and perhaps attack with a secondary weapon, or kick him off.

I don't know... Might be because DAoC has parry for weapons, and block for shields.
 

The Man In Black

Administrator
Staff member
Administrator
Moderator
RiP
Joined
Jul 9, 2006
Messages
6,904
Reaction score
71
Riposté, yes, is a counter attack, which is what they were talking about ;-)

I always thought of parry as deflecting an attack with a weapon, hands, shield, whatever.
 

Thothie

Administrator
Staff member
Administrator
Moderator
MSC Archivist
Joined
Apr 8, 2005
Messages
16,342
Reaction score
326
Location
lost
Riposté is counter-attack yeah. Some table top games require a successful parry before you can riposté, tis what makes me think of it. Granted, in RL, while a shield may help you parry, it makes an actual riposté harder, as it restricts you range of movement, but I don't see going into that level of detail with anything of this sort in MSC.
 

elfstone222

New Adventurer
RiP
Joined
Nov 12, 2006
Messages
260
Reaction score
0
Eh, in my expirence as a fencer/kendo-ist it it depends just as much on what weapon you have as to if you even have the ability to riposte. So I'd say the ability to riposte should be connected to weapon skill, THEN it should be a parry check. Something like level 20 in a weapon to riposte, then again hammers/axes/blunts are really hard to parry with but I'll not get into that since adding percents on top of those would be hard.
 
Top