Go Back   EQEmulator Home > EQEmulator Forums > Support > Spell Support

Spell Support Broken Spells? Want them Fixed? Request it here.

Reply
 
Thread Tools Display Modes
  #1  
Old 04-14-2013, 10:33 PM
AudioGarden21
Sarnak
 
Join Date: Aug 2004
Posts: 80
Default Spellcrafter's Handbook

Greetings everyone. This is a project I've spent this past week working on and I hope you'll find it useful.

Here is a guide for everything you'll need to know for understanding spells and how to craft them.

At the bottom of the page is a link to a google doc with the following tabs:
  • Basic - covers the basics and explains the purpose of each value
  • Effect Type & IDs - covers effect types (stats, ac, mez, movement speed etc) and displays their IDs for easy reference
  • Effect Type - Detailed - gives a more detailed description of effects, what they do, and what the recommended value/usage is. some data taken directly from spdat.h as noted in the description
  • Effect Type By Category - categorizes effects by type for more easy reference
  • Skill/Body/Resist/Target/SpellType IDs - displays skill, body, resist, target, and spell type IDs for easy reference
  • Effect & Buff Duration Formulas - displays effect and buff duration formulas and their IDs for easy reference and gives example spells that use that formula
  • Animations - displays cast/target animations, as well as spell particle effects and their IDs for easy reference with descriptions and examples, respectively

Keep in mind I primarily use Null's Spell Editor, so I've included some conversions (at the bottom of the basic tab) to help with any confusion that might arise when looking over the doc. All effects names are derived from it as well.

If you see something that you're certain is incorrect, please post what is incorrect, and the correction so that I may fix it.

Since I consider this a project for the entirety of the Emulator community, anyone interested in helping keep the handbook up-to-date is welcome to send me a PM so that I can add them to the doc and they can edit it themselves.

I don't want to leave it open to just anyone because we all know someone out there would love to cause some havoc, so only PM me if you're in good standing throughout the community and others can vouche for you.

Seeing as I don't have a lot of experience programming (complete novice) I felt I should do something to help contribue and here it is. Enjoy!

P.S. - nothing is set in stone so if you have any other suggestions, feel free to post them.

Click Here -> Spellcrafter's Handbook
Reply With Quote
  #2  
Old 04-15-2013, 02:12 AM
AudioGarden21
Sarnak
 
Join Date: Aug 2004
Posts: 80
Default Update

I forgot to mention that anything that comes before a question mark is not verified and is merely a guess. Feel free to verify and report at your leisure.

Bolded values are broken in emu, so I made them more visible without cluttering up the cells, and those are few at the moment due to the fact that I was testing only specific ones during the week out of curiosity. Note that I do put "not implemented" in some cells.

Also note that on the "Effects Type - Detailed" tab, I specify whether an effect works off a base or if it's a percentage effect. I may have missed few seeing as it's a lot to keep track of. Just make a note of it where it says "by a percent", and you'll know, otherwise assume it means a base, flat value.
Reply With Quote
  #3  
Old 04-16-2013, 07:38 PM
Maceblade
Hill Giant
 
Join Date: Jun 2010
Posts: 231
Default

This actually was pretty awesome for me thank you! For some reason I cant get spell editors to work on my PC and I have no idea why.

I do have a question tho,

lets say I wanted to increase [ALL] PC based destrimental spells could I use;

Code:
UPDATE spells_new set effect_base_value1 = effect_base_value1 * 2 where effect_base_value1 < 0 and class1 < 254 ;
Obviously I would swap out the "class" column everytime being a newb, but then that way there I wouldnt change out NPC spells.
Reply With Quote
  #4  
Old 04-16-2013, 10:09 PM
AudioGarden21
Sarnak
 
Join Date: Aug 2004
Posts: 80
Default

I believe that would work, though I'm not 100% keen on sql code, but in theory that sounds like it might work. Perhaps you should export your spells_new table before attemping, in case it doesn't work, then you can simply source the old one back in.

Do keep in mind though that some spells might use a different effect line, such as effect_base_value2 instead of 1, for the damage portion of the spell.

I'm glad you found it useful. I figured there would be some people out there who didn't use the editors, or simply couldn't.
Reply With Quote
  #5  
Old 04-17-2013, 12:59 AM
lerxst2112
Demi-God
 
Join Date: Aug 2010
Posts: 1,743
Default

If I was going to do it like that I'd build a batch of queries based on specific effect ids for each of the possible slots. As an example, you might want direct damage spells to be stronger but not change slows.
Reply With Quote
  #6  
Old 04-17-2013, 02:53 AM
Burningsoul
Discordant
 
Join Date: Oct 2009
Posts: 312
Default

Regardless, thanks a ton Audiogarden. Concise and to the point, hats off sir.
Reply With Quote
  #7  
Old 04-17-2013, 03:45 AM
AudioGarden21
Sarnak
 
Join Date: Aug 2004
Posts: 80
Default

Quote:
Originally Posted by lerxst2112 View Post
If I was going to do it like that I'd build a batch of queries based on specific effect ids for each of the possible slots. As an example, you might want direct damage spells to be stronger but not change slows.
Yeah.. it's late, hehe. After I read over your post, it dawned on me that other effects would get doubled which you certainly would not want. You'd definitely want to limit your queries to the proper effect id, else you'll double things like slows, and such, as lerxst2112 mentioned. In any case, I don't have too much experience using that sort of code (though I do understand it) since I just search through things manually and adjust accordingly, so you'd probably want to take lerxst's advice over mine. =)

Quote:
Originally Posted by Burningsoul View Post
Regardless, thanks a ton Audiogarden. Concise and to the point, hats off sir.
You sir, are welcome. =)
Reply With Quote
  #8  
Old 04-18-2013, 06:39 PM
Maceblade
Hill Giant
 
Join Date: Jun 2010
Posts: 231
Default

I ended up doing the command shortly after just to test it out, and it appears slows use slot 2 which is also value2... also another key note for anyone attempting that, you also have to raise the "max1" column as well. That is actually a positive number already so in order to correctly apply that to damage only spells you just have to add "where value1 < 0" otherwise it will increase buffs heals and other shit.

Stuns however use value2 for damage and value1 for stun duration, I left that field alone bc i didnt want to mess with slows.

the exact command I used was;

Code:
 UPDATE spells_new set effect_base_value1 = effect_base_value1 * 2 WHERE effect_base_value1 < 0 and classes1 < 254;
and
Code:
 UPDATE spells_new set max1 = max1 * 2 WHERE effect_base_value1 <0 and classes1 < 254;
Everytime I just swapped out the number after classes until all 16 were done so then it didnt effect all damage type spells. So far it seems to have taken and I havent noticed anything stupid going on.

*edit* One thing more I forgot to mention, this only increases direct damage type spells. Lifetaps, nukes and stuff like that. DoT's are not effected with the exception of the initial damage, they DoT portion is also a slot/value2 and like I said i didnt want to mess with it.
Reply With Quote
  #9  
Old 04-20-2013, 10:22 AM
jsr
Hill Giant
 
Join Date: Aug 2008
Location: melbourne
Posts: 188
Default

The spell table isn't designed with effect__base_value_# being linked to a spell effect. There are hundreds of effects but only 12 slots.

Warriors using defensive discs will certainly appreciate your update

You want something more like this (not tested);
Code:
UPDATE spells_new 
set effect_base_value1 = effect_base_value1 * 2, 
max1 = max1 * 2 
WHERE 
effect_base_value1 < 0 and 
effectid1 = [Spell ID to modify] and
(classes1 < 254 or classes2 < 254 or classes3 < 254 or classes4..(etc)....or classes16 <254);
Repeat for each of the 12 slots. Note that putting [spell id to modify] in the query will prompt you to specify a value to match against effectid1. In your case you'd enter the value for DD spells.
Reply With Quote
  #10  
Old 04-20-2013, 10:28 AM
jsr
Hill Giant
 
Join Date: Aug 2008
Location: melbourne
Posts: 188
Default

This is a great reference Audio, thanks!
Reply With Quote
  #11  
Old 04-20-2013, 10:35 AM
AudioGarden21
Sarnak
 
Join Date: Aug 2004
Posts: 80
Default

Quote:
Originally Posted by jsr View Post
This is a great reference Audio, thanks!
You're welcome JSR!
Reply With Quote
  #12  
Old 06-28-2013, 07:50 AM
Hateborne
Hill Giant
 
Join Date: May 2010
Posts: 125
Default

I appreciate you work with this. I'll add this to my list of toys to utilize when adding crazy spells to Hunter's EZ Server.


Thanks again!

-Hate

Last edited by Hateborne; 06-28-2013 at 07:50 AM.. Reason: spelling
Reply With Quote
  #13  
Old 06-28-2013, 09:12 AM
Dunge0nMastr
Hill Giant
 
Join Date: Oct 2002
Location: Rockville, MD
Posts: 124
Default

Thanks for the amazing reference! Custom spells have been a thorn in my side for quite some time now :P
__________________
Bront -Server Admin/Owner and Lead Quest Dev for Kildrukaun's Prophecy
http://kpemu.com/
Reply With Quote
  #14  
Old 08-24-2013, 08:59 PM
AudioGarden21
Sarnak
 
Join Date: Aug 2004
Posts: 80
Default

Hey guys! I'm more than happy to help and I'm also happy to hear that people are getting some use out of it!
Reply With Quote
  #15  
Old 04-10-2014, 06:09 AM
AudioGarden21
Sarnak
 
Join Date: Aug 2004
Posts: 80
Default

I'm not sure if anyone is still using this thing, but I've updated a few things to help match the latest database.

Feel free to let me know if there's anything else anyone would like added/changed, etc.

I am still keeping an eye on this so it doesn't become obsolete.
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 12:58 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 - 2024, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3