Go Back   EQEmulator Home > EQEmulator Forums > Development > Development::Server Code Submissions

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #4  
Old 09-28-2008, 08:31 PM
Congdar
Developer
 
Join Date: Jul 2007
Location: my own little world
Posts: 751
Default

KLS asked to make cut/paste easier, so here's this suggested way:

find client_process.cpp lines 276-277
Code:
				// Kaiyodo - support for double attack. Chance based on formula from Monkly business
				if( target && CanThisClassDoubleAttack() ) {
change to
Code:
				// Kaiyodo - support for double attack. Chance based on formula from Monkly business
				bool tripleAttackSuccess = false;
				if( target && CanThisClassDoubleAttack() ) {
find client_process.cpp lines 291-296
Code:
					   && CheckDoubleAttack(false,true))
					{
						Attack(target, 13, true);
					}
					
					//quad attack, does this belong here??
change to
Code:
					   && CheckDoubleAttack(false,true))
					{
						tripleAttackSuccess = true;
						Attack(target, 13, true);
					}
					
					//quad attack, does this belong here??
find client_process.cpp lines 315-325
Code:
					switch (GetAA(aaRagingFlurry)) {
						case 1:
							flurrychance += 10;
							break;
						case 2:
							flurrychance += 20;
							break;
						case 3:
							flurrychance += 30;
							break;
					}
change to
Code:
					if(tripleAttackSuccess) {
						tripleAttackSuccess = false;
						switch (GetAA(aaRagingFlurry)) {
							case 1:
								flurrychance += 10;
								break;
							case 2:
								flurrychance += 20;
								break;
							case 3:
								flurrychance += 30;
								break;
						}
					}
find client_process.cpp lines 393-396
Code:
				float random = MakeRandomFloat(0, 1);
				//if (random > 0.9)	//this dosent make sense...
					CheckIncreaseSkill(DUAL_WIELD);
				if (random < DualWieldProbability  || GetAA(aaAmbidexterity)) { // Max 78% of DW
change to
Code:
				float random = MakeRandomFloat(0, 1);
				CheckIncreaseSkill(DUAL_WIELD);
				if (random < DualWieldProbability) { // Max 78% of DW
find client_process.cpp line 401 and Delete it
Code:
					CheckIncreaseSkill(DUAL_WIELD);
find client_process.cpp lines 412-444 and Delete them.
Code:
				if (target && GetAA(aaFlurry) > 0) {
					int flurrychance = 0;
					switch (GetAA(aaFlurry)) {
						case 1:
							flurrychance += 15;
							break;
						case 2:
							flurrychance += 30;
							break;
						case 3:
							flurrychance += 50;
							break;
					}
					switch (GetAA(183)) {
						case 1:
							flurrychance += 10;
							break;
						case 2:
							flurrychance += 20;
							break;
						case 3:
							flurrychance += 30;
							break;
					}
					if (rand()%1000 < flurrychance) {
						Message_StringID(MT_CritMelee, 128);
						Attack(target, 13, true);
						
						//50% chance for yet another attack?
						if(MakeRandomFloat(0, 1) < 0.5)
							Attack(target, 13, true);
					}
				}
I'll get to work on the Double Attack change thread next.

Let me know if this works for you KLS or if there is still a better way? I don't know how to make a 'diff file' but would be willing to learn if that makes it easier on you.
Reply With Quote
 


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 06:53 PM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3