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)

Reply
 
Thread Tools Display Modes
  #1  
Old 10-15-2008, 05:46 PM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default Possible Flurry Discipline Fix

Maybe it is just my spell file, I don't know for sure without checking the default spell file from Titanium, but currently the level 22 Warrior Discipline, Flurry, is able to be "cast" on anyone even if it can't hit them. Anything that can be targeted will let you attempt to use Flurry on it, including yourself, other players, corpses and maybe more. It won't actually hit other players or corpses, but it can hit yourself.

I think the addition of case SE_Flurry as shown below should resolve this, but I haven't tested it yet. I am only posting it here to see if anyone has any further thoughts on this before I give it a try.

In spell_effects.cpp add this (I don't know if it needs to be in a particular order):

Code:
			case SE_Flurry:
			{
#ifdef SPELL_EFFECT_SPAM
				snprintf(effect_desc, _EDLEN, "Flurry");
#endif

				if (IsClient() && caster->IsClient())
				{
					caster->Message(0, "You cannot flurry a player.");
					break;
				} else if(IsCorpse()) {
					caster->Message(0, "You cannot flurry a corpse.");
					break;
				} else if(IsPet() && GetOwner()->IsClient()) {
					caster->Message(0, "You cannot flurry a player's pet.");
					break;
				}
			}
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!
Reply With Quote
  #2  
Old 10-15-2008, 07:45 PM
Congdar
Developer
 
Join Date: Jul 2007
Location: my own little world
Posts: 751
Default

You might want to flurry pets and clients in pvp.
Reply With Quote
  #3  
Old 10-15-2008, 07:52 PM
KLS
Administrator
 
Join Date: Sep 2006
Posts: 1,348
Default

Wrong approach. If it's a problem with the target type fix that don't hardcode spells unless you absolutely have to.
Reply With Quote
  #4  
Old 10-15-2008, 08:26 PM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

Ya, Congdar, I agree with you there. I will see if I can find a PVP check to put in those 2 lines.

Ya, I kinda agree with you KLS. I think certain spells like some mid level druid/cleric/shaman heals were added to the Titanium spell file before the spells were complete. They were probably planned to be added in game some time in the future, which would explain why they weren't completely done correctly. Those heals and this flurry spell are probably some of the handful that came broke with the default Titanium spell file. I don't think there is much we can do about the heal spells, because they are set to 0 range which we can't fix on the client without a custom spell file. But, we can fix this flurry issue.

I think it is probably not a bad idea to correct spell issues like this when possible to reduce the amount of custom spell file work that everyone would need to do. Not to mention that I haven't seen any good list of problem spells, so everyone has to figure them out on their own and fix them. If we can reduce that, I don't see why not to even if it means doing a fix in the code for a broken spell file issue.
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!
Reply With Quote
  #5  
Old 10-15-2008, 09:20 PM
KLS
Administrator
 
Join Date: Sep 2006
Posts: 1,348
Default

Well, flurry never actually made it past test on live. It was part of their opener combat system. A lot of people didn't like it so it never made it past test and most the skills associated with it were just left deactivated. Mmm, I believe they actually took it out of current spell live file too.
Reply With Quote
  #6  
Old 10-15-2008, 09:35 PM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

LOL, ahh! I see...

So, maybe instead, we should adjust the scribespells() and traindiscs() commands to unscribe "broken" spells (and disciplines) after it scribes all spells. I think there are only a small handful in this situation. It is ok for the healing ones to stay in there, because they are completely unusable if the spell file isn't adjusted. But, this Flurry disc is sloppy at best and could probably just be removed. Either that, or maybe we could just block it completely in the case SE_Flurry code.

Thanks for the info BTW, KLS

Oh, and I noticed something interesting the other day. I downloaded the spells_us.txt file from live and it now only goes up to 12999 spells. The last time before that, it was up to about 20k. So, I am assuming they did something similar to what I did with my custom spell files. I have 1 file with 9999 spells in it that I let clients download since 9999 is the max spell ID for Titanium clients and it includes every spell the client should need to know about. Then, I have another for the server which includes all 20K spells up to the last live spell file. This way, the server should know about every possible spell and never get an "unknown spell" for focus effects that can cause zone crashes. They probably did it that way to reduce bandwidth usage from patches and maybe also to keep us emu people from having the full spell file .
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!

Last edited by trevius; 10-16-2008 at 05:40 AM..
Reply With Quote
Reply


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 05:54 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