Go Back   EQEmulator Home > EQEmulator Forums > Development > Development::Development

Development::Development Forum for development topics and for those interested in EQEMu development. (Not a support forum)

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #5  
Old 09-14-2006, 01:34 AM
Zuesrooster
Fire Beetle
 
Join Date: Mar 2006
Location: NYC
Posts: 20
Default

I am doing this at work so I haven't really had a chance to test it out but I am 90% sure that replacing GetInstrumentMod with:

Code:
	if(GetClass() != BARD)
		return(10);
	
	int16 effectmod = 100;
	
	//this should never use spell modifiers...
	//if a spell grants better modifers, they are copied into the item mods
	//because the spells are supposed to act just like having the intrument.
	
	//item mods are in 10ths of percent increases
	switch(spells[spell_id].skill) {
		case PERCUSSION_INSTRUMENTS:
			if(itembonuses.percussionMod > spellbonuses.percussionMod)
				effectmod += itembonuses.percussionMod;
			else
				effectmod += spellbonuses.percussionMod;
			break;
		case STRINGED_INSTRUMENTS:
			if(itembonuses.stringedMod > spellbonuses.stringedMod)
				effectmod += itembonuses.stringedMod;
			else
				effectmod += spellbonuses.stringedMod;
			break;
		case WIND_INSTRUMENTS:
			if(itembonuses.windMod > spellbonuses.windMod)
				effectmod += itembonuses.windMod;
			else
				effectmod += spellbonuses.windMod;
			break;
		case BRASS_INSTRUMENTS:
			if(itembonuses.brassMod > spellbonuses.brassMod)
				effectmod += itembonuses.brassMod;
			else
				effectmod += spellbonuses.brassMod;
			break;
		case SINGING:
			if(itembonuses.singingMod > spellbonuses.singingMod)
				effectmod += itembonuses.singingMod;
			else
				effectmod += spellbonuses.singingMod;
			break;
		default:
			break;
	}
	
	if(spells[spell_id].skill == SINGING)
		effectmod += 20*GetAA(aaSingingMastery);
	else
		effectmod += 20*GetAA(aaInstrumentMastery);
	
	#if EQDEBUG >= 5
//		LogFile->write(EQEMuLog::Debug, "%s::GetInstrumentMod() spell=%d mod=%d\n", GetName(), spell_id, effectmod);
	#endif
	return(effectmod/10);
this should get instrument modifiers working like live. The issue with the old one is if a weapon had a 21% modifier it actually increased it by 2.1 times instead of .21, this will only increase it 20% since it is an int and for some reason it is expecting 10 instead of a 100 as the mod. But it gets instruments working much closer to live then before. I will play around some more with it this week or next week, if anyone has any ideas they are always welcome.

Last edited by Zuesrooster; 09-14-2006 at 10:28 AM..
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 07:20 AM.


 

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