PDA

View Full Version : Spellcrafter's Handbook


AudioGarden21
04-14-2013, 10:33 PM
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 (https://docs.google.com/spreadsheet/ccc?key=0Aob_ZGymgTSSdDF5ek1RajNHdGd1aW5CVFFCOVAtS Hc&usp=sharing)

AudioGarden21
04-15-2013, 02:12 AM
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.

Maceblade
04-16-2013, 07:38 PM
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;

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.

AudioGarden21
04-16-2013, 10:09 PM
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.

lerxst2112
04-17-2013, 12:59 AM
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.

Burningsoul
04-17-2013, 02:53 AM
Regardless, thanks a ton Audiogarden. Concise and to the point, hats off sir.

AudioGarden21
04-17-2013, 03:45 AM
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. =)

Regardless, thanks a ton Audiogarden. Concise and to the point, hats off sir.

You sir, are welcome. =)

Maceblade
04-18-2013, 06:39 PM
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;

UPDATE spells_new set effect_base_value1 = effect_base_value1 * 2 WHERE effect_base_value1 < 0 and classes1 < 254;
and
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.

jsr
04-20-2013, 10:22 AM
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);

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.

jsr
04-20-2013, 10:28 AM
This is a great reference Audio, thanks!

AudioGarden21
04-20-2013, 10:35 AM
This is a great reference Audio, thanks!

You're welcome JSR!

Hateborne
06-28-2013, 07:50 AM
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

Dunge0nMastr
06-28-2013, 09:12 AM
Thanks for the amazing reference! Custom spells have been a thorn in my side for quite some time now :P

AudioGarden21
08-24-2013, 08:59 PM
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!

AudioGarden21
04-10-2014, 06:09 AM
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.

Maceblade
04-27-2014, 12:06 PM
I use this thing all the time bro thanks for the updates and hard work.

AudioGarden21
05-09-2014, 01:52 AM
It's my pleasure, Mace.

AudioGarden21
01-13-2015, 12:53 AM
Just a quick bump so this doesn't get lost.