Oh my gosh, quest editing! we can't do that! It's too complicated :s... /wrong/ Once you learn the tags and variables and the possible choices for each tag it's pretty simple. and it can also give you a reason to make elemental resistant items (The Elemental Resistance you put on items isn't for ingame elementals it's for the resisttype="*" in the skill)
To start I recommend you grab the ijji or BR zskill.xml and make a copy of a generic spell and lay it out in a way you find it easy to read and modify, for example my layout is like so:
Now let's get to the fun part, learning the tags. I'll use the same code, but this time with comments on every single possiblityCode:<SKILL id="4"
name="Generic Ice Bolt"
delay="3000"
resisttype="2"
offdlight="true"
castinganimation="2"
traileffect="icemissile" traileffecttype="1" traileffectscale="2.7" draw.track="true"
effecttype="2" hitcheck="true" guidable="false" delay="1500" velocity="2000" throughNPC="true" colradius"35"
lifetime="0" effectstarttime="1300" effecttime="3000" effectarea="2" difficulty="15" mod.damage="30"
mod.dot="0" mod.criticalrate="0" mod.speed="100" mod.antimotion="false" mod.root="false"
mod.heal="0"
<REPEAT delay="0.0" angle="0.0 0.0 0.1" />
<REPEAT delay="0.0" angle="0.0 0.0 -0.1" />
Now that's for projectile spells, there are spells like Blizzard and Other creep Heals which use a whole different brand of strings to do their magic.Code:<SKILL id="4"
name="Generic Ice Bolt" // Self explanitary
delay="3000" // The delay before the spell can be cast again
resisttype="2" // The type of elemental it is. Slow/Unresistable == 0 Fire == 1 Ice == 2 3 == ??
4 == Swings and Earth and a mosh pod of others MAIET got lazy, it then skips a few. 6 == healing... there are a few more but you can tinker
offdlight="true" // GFX shaders shit just leave it as true
castinganimation="2" // The animation it uses when the skill is cast, again too many to name here check out the client and existing skills
traileffect="icemissile" traileffecttype="1" traileffectscale="2.7" draw.track="true" // The trail projectile and it's effecttype all can be found in examples of ijji zskill.xml
the scale is the size of it, if you wanted a very large trail you would make it a higher number, and visa versa for lower. draw.track="*" decides if the track should exist or not more shader shit, leave it as true
effecttype="2" hitcheck="true" guidable="false" delay="1500" velocity="2000" throughNPC="true" colradius"35"
// The effect it has. 1 being fire 2 being ice, ect. again use the existing zskill to find out what you need. hitcheck="*" should it hit or can it miss? ThroughNPC="*" can it travel through NPC's?
colradius="*" the radius of the effect going off and hit detection, leave it around 35 unless it's a speciality skill
lifetime="0" effectstarttime="1300" effecttime="3000" effectarea="2" difficulty="15" mod.damage="30"
// lifetime is a bit buggy it seems, I just leave it at 0 and adjust the effect start time and end time. start time is when the effect kicks in after you're hit, and effect time is how long the whole skill is on your character
effectarea is the AOE of the skill when it strikes a target, 2 is the default for fire balls and ice bolts, again. increase for a nova or whatnot. difficulty is the reliant on int="*" in the npc.xml. mod.dmg="30" is the damage delt from the effect
mod.dot="0" mod.criticalrate="0" mod.speed="100" mod.antimotion="false" mod.root="false"
// mod.dot=*" Damage over time. mod.criticalrate="*" chance to crit. mod.speed"*" still not sure. mod.antimoton/root are keeping your char from moving
mod.heal="0" // heal plawks?
<REPEAT delay="0.0" angle="0.0 0.0 0.1" />
<REPEAT delay="0.0" angle="0.0 0.0 -0.1" />
// loop the spell and shoot it off at a different angle or delay this is just a 3 round burst ice blast
Just noticed I forgot to tag Velocity it's the projectiles move speed.
I'm still learning how to prefect working with them, Ill edit this post when I can be of more use on AOE/Heal type spells

