Spellsword (formerly Addon reworking Arcane Blade Class)
Posted: Tue Jan 31, 2012 4:38 am
Edit: The addon has been renamed to Spellsword can now be found at:
http://te4.org/games/addons/tome/spellsword
Below you will find the historical first post:
It was suggested to me I should move my Arcane Blade rework from the Ideas section to the Addon forums, and put an up to date copy of the work so far in the first post.
First to note, I've made excessive use of overload instead of superload or hooks, so it is more likely than not to be incompatible with most addons.
Currently its in a testing phase. Numbers are in no way final - mostly I wanted to get everything working mechanically first and then begin the hard process of figuring out what numbers things need, or if they need a complete redesign.
Here's a summary of changes:
Birth trees:
talents_types = {
["spell/air"]={false, -0.3},
["spell/earth"]={false, -0.3},
["spell/fire"]={false,-0.3},
["spell/water"]={false,-0.3},
["spell/conveyance"]={false, 0.1},
["technique/combat-training"]={true, 0.2},
["cunning/survival"]={false, -0.1},
["technique/arcane-air"]={true, 0},
["technique/arcane-earth"]={true, 0},
["technique/arcane-fire"]={true, 0},
["technique/arcane-water"]={true, 0},
["technique/magical-combat"]={true, 0},
["spell/aegis"]={false,0.1},
},
talents = {
[ActorTalents.T_FIRE_STRIKE] = 1,
[ActorTalents.T_WATER_STRIKE] = 1,
[ActorTalents.T_ARCANE_COMBAT] = 1,
[ActorTalents.T_WEAPON_COMBAT] = 1,
},
Tree summaries:
Magical-combat tree, Magic requirement
Tier 1: Arcane Combat: Stamina sustain: % chance based on Dexterity to trigger damage proc, costing mana.
Tier 2: Arcane Stances: Passive: +100/200/300/400/500% effectiveness of Arcane Stances.
Tier 3: Arcane Prowess: Passive: Convert 10/15/20/25/30% of Strength and Dexterity to spell power.
Tier 4: Arcane Destruction: Mana Sustain: Convert weapon damage to element based on stance. 2/4/6/8/10% element damage increase. 10/20/30/40/50% element damage penetration.
Arcane-Air tree, Str requirement
Stance is +1 Accuracy per 10 spellpower/+1 Lightning damage on melee hit per 10 spellpower
Tier 1: Air Strike: 12 Stamina Activate,8 turn cooldown, Switches to Air Stance: Melee attack with both weapons, % bonus damage, Silence for 3/4/5/6/7/8 turns. At 4 points Silence effect is a ball of radius 0/0/0/1/2 with 20/25% chance to affect. Silence determined by Phys Power.
Tier 2: Tornado Strike: 15 Stamina Activate, 12 turn cooldown: Buffs Accuracy, APR, and Crit % for 2 turns. Make two full attacks (i.e. 2 attacks with main hand, 2 attacks with off hand if present).
Tier 3: Wind Storm: 50 Mana Sustain, 30 turn cooldown: 1/2/2/3/3 AoE 5/10/15/20/25% slow every turn, spell power vs spell save.
Tier 4: Whirlwind Teleport: 30 Mana Activate, 18 turn cooldown: Targeted teleport within LOS at range 4/5/6/7/8, followed by a full attack (both main and offhand) against all now adjacent enemies (if any).
Arcane-Earth tree, Str requirement
Stance is +1 Armor per 10 spellpower/+0.2 resist all per 10 spellpower
Tier 1: Earth Strike: Stamina Activate, 8 turn cooldown, Switches to Earth Stance: Melee attack with mainland and shield bash (if present). % bonus damage, Pinning for 3/4/5/6/7/8 turns. At 4 points Pinning effect is a ball of radius 0/0/0/1/2 with 20/25% chance to affect. Pinning determined by Phys Power.
Tier 2: Sandblast:12 Stamina Activate, 10 turn cooldown: Make a main hand and shield bash (if present) against melee target, dealing bonus % damage. Seperately a blinding effect of cone radius 3 is activated in the direction of the target, blinding for 1/2/3/4/5 turns. Blinding is determined by Phys power.
Tier 3: Earthen Barrier: 50 Mana Sustain, 30 turn cooldown: Provides a shield hp pool based on spellpower which absorbs 50% of incoming damage. The shield regenerates 2/4/6/8/10% of its hp based on spell power each turn. If shield drops to 0 hit points, it deactivates.
Tier 4: Rolling Earth:40 Mana Activate, 20 turn cooldown: Cone AoE damage of radius 2/3/4/5/6, pull towards caster and stuns for 4/5/6/7/8 turns. Effects based on Spell power.
Arcane-Water tree, Str requirement
Stance is +1% Healing Mod per 10 spellpower/+0.1 regen per 10 spellpower
Tier 1: Water Strike:12 Stamina Activate, 8 turn cooldown, Switches to Water Stance: Melee attack with the all weapon(s), with bonus % damage. Freezes the target for 2 turns. At 4 points freeze effect is a ball of radius 0/0/0/1/2 with 20/25% chance to apply. Freeze application determined by Phys Power.
Tier 2: Healing Water: Mana Activate, 16 turn cooldown: Heal self based on spellpower.
Tier 3: Tidal Rush: 25 Stamina Activate, 20 turn cooldown: Rush to target. Produce a knocback wave effect of radius 1 with low damage at each space in between. If non-target NPC is in the way, switch places with it. Attack at the final target with all weapons with bonus % damage. Knockback wave based on spell power.
Tier 4: Drain Water of Life: Mana Activate, 16 turn cooldown: Strike at target with all weapons with bonus % damage. Heal back 20/40/60/80/100% of damage dealt.
Arcane-Fire tree, Str requirement
Stance is +1 Phys power per 10 spellpower/ +0.25 Phys crit per 10 spellpower
Tier 1: Fire Strike: 12 Stamina Activate, 8 turn cooldown, Switches to Fire Stance: Attack with Main-hand weapon, dealing bonus % damage. Applies the PURIFY_FIRE effect which removes 1 beneficial effect or sustain per turn. Purifying fire lasts 1/2/2/3/3 turns, with physical power vs spell save. At 3 points purifying fire is a ball of radius 0/0/0/1/2 with 20/25% chance to apply.
Tier 2: Inferno Cleave: 25 Stamina Activate, 12 turn cooldown: Attack with Main-hand weapon against up to 3 adjacent enemies. It lights up their squares. It deals bonus fire damage based on the weapon's STR mod and spellpower. At level 3 it Blinds for 2 turns.
Tier 3: Aura of Fire: 30 Mana Sustain, 30 turn cooldown: Each turn, deal low fire damage to all enemies in a radius of 1. Each turn, if user is afflicted by detrimental effects, remove one, and deal 7/6/5/4/3% of max life directly to character as damage (no shields/resistances apply). If no detrimental effects are present, no cost in life to sustain. Turns off if current life drops below 20% of max life.
Tier 4: Mark of Fire: 30 Mana activate, 20 turn cooldown: In a radius 1/2/3/4/5 marked on the ground for 1/2/3/4/5 turns, all enemies take an additional 50% damage in the form of fire damage whenever they take damage.
The last tree would be a generic point tree.
Arcane-Veteran tree, Magic requirement
Tier 1: Veteran Blade: Some kind of stamina recovery mechanism.
Tier 2: Arcane Armor: Mana Sustain: -3/-6/-9/-12/-15% fatigue and +50/100/150/200/250% bonus armor of the main body piece of armor. (I.e. 100% bonus of the 16 armor of Voratun plate would be an extra 16 armor). (Currently set to +3 per talent point - will be fixed).
Tier 3: Arcane Feed: Some kind of mana recovery mechanism.
The following is under consideration:
Tier 4: Master Blade: Stamina and Mana Sustain: +15/30/45/60/75 disarm resistance. Also, when attacked by a ranged projectile (arrow/bolt), roll Accuracy vs attacker's Accuracy. If successful, negate the attack. At level 3 affects reflectable spells (roll Accuracy - 20/Accuracy - 10/Accuracy vs Spell power). At level 5, stops reflectable spells harmlessly.
Edit: updated to include fire tree and partially working arcane-veteran tree.
Edit 2: Master Blade now correctly blocks reflectable spells and bolt spells at level 3 and higher, assuming your roll accuracy (-10/-5/-0) vs Spell power of the caster. Still needs a serious balancing pass, and I probably want to change the resource recovery mechanisms, and Arcane Armor only provides a flat armor bonus, but otherwise, the class mostly functions as intended. Still leaving the Aegis tree in for the moment, although people may want to try characters with and without it.
Edit 3: Just found an error where I was passing weapon instead of weapon.combat to all the attackTargetWith functions - resulting in much poorer performance. Now fixed.
Edit 4: The Tornado Strike Precision bug came due to fixing it not on my usual computer and forgetting to update my local copy - the effect removal ids were wrong again. I have refixed it.
Edit 5: Modified Arcane Armor to be % based on the body armor slot's armor.
Edit 6: Modified Arcane armor to 30/60/90/120/150 % instead of 50/100/150/200/250%. Modified Arcane Stamina to provide 0.1/0.2/0.3/0.4/0.5 stamina regen per turn per active sustain.
Edit 7: Reduced number of starting talents to 3 class, 1 generic. Provided a longsword and dagger in inventory on start. Modified some info functions to hopefully be more clear.
Edit 8: Upped Arcane Combat trigger chance by 5%, increased its scaling damage to 25,300 from 25,250. Modified Elemental Strikes to deal damage in a ball at 4 and 5 points, roughly half the damage of an Arcane Combat trigger, but based on Physical power. The ball effects are 100% chance to occur, but only a duration of 1 or 2 turns, depending on the effect. Lastly, modified Earthen Shield's code, but not effects - mostly to make it cleaner code-wise I hope.
Edit 9: Fixed a bug I introduced in Earthen Shield when I added particle effects, preventing it from deactivating properly (you effectively couldn't turn it off, and it wouldn't shut off even after its hit point pool hit 0).
Edit 10: After some discussions with Darkgod, the following changes were made:
All buff durations unified to be 1/2/2/3/3. This prevents perma-silence. AoEs at 4/5 points lose debuffs - just damage now.
Moved arcane-elemental trees to spells from techniques.
Base spell/elemental trees changed to 1.1 modifier from 0.7. Arcane-elemental trees no longer improve elemental tree mastery by 0.03 per point.
Arcane-elemental trees renamed: Air -> Windcutter, Fire -> Blazebrand, Water -> Lifetide, Earth -> Stoneshield
Names are not necessarily permanent, I'm open to other suggestions. Suggestions for stance names also welcomed.
Edit 11: Fixed a bug introduced to Earth Shield when I did the rewrite to make it more modular. It would not shut off when reduced to 0 hit points, although you could turn it off manually. Now properly turns off and goes on cooldown when damage pool drops to 0.
Edit 12: Fixed a bug with Drain waters of life where it wasn't using the correct combat stats.
Edit 13: Added some particle effects to skills (high point strike effects, wind storm, aura of fire). Improved (hopefully) some of the info boxes. Increased damage modifier on Drain Water of Life from "1.0 to 1.5" to "1.2 to 2.1".
Edit 14: Replaced Water Stance's increased regen with a small heal on melee hit. (Spellpower / 20) * (1 + Arcane Stance Level). Should be around 12.5 life per hit in the level 20s (assuming 5/5 in the talent).
Edit 14b: Created an SVN revision 4886 compatible version of the New Arcane Blade, and added it as a file here.
Edit 14c: Fixed a bug with Inferno Cleave in the SVN 4886 version, due to new util functions for determining left and right.
Edit 16: Updated for version b38! Available on the addons page!
Also includes balance tweaks.
Tidal Rush pins the final target for 1/1/2/2/3 turns.
Mark of fire applies a 50% move speed penalty to enemies affected by it.
Elemental strikes AoE is now 0/1/1/2/2 balls, and apply the debuffs on that ball for 1/2/2/3/3 turns.
Get it at:
http://te4.org/games/addons/tome/spellsword
http://te4.org/games/addons/tome/spellsword
Below you will find the historical first post:
It was suggested to me I should move my Arcane Blade rework from the Ideas section to the Addon forums, and put an up to date copy of the work so far in the first post.
First to note, I've made excessive use of overload instead of superload or hooks, so it is more likely than not to be incompatible with most addons.
Currently its in a testing phase. Numbers are in no way final - mostly I wanted to get everything working mechanically first and then begin the hard process of figuring out what numbers things need, or if they need a complete redesign.
Here's a summary of changes:
Birth trees:
talents_types = {
["spell/air"]={false, -0.3},
["spell/earth"]={false, -0.3},
["spell/fire"]={false,-0.3},
["spell/water"]={false,-0.3},
["spell/conveyance"]={false, 0.1},
["technique/combat-training"]={true, 0.2},
["cunning/survival"]={false, -0.1},
["technique/arcane-air"]={true, 0},
["technique/arcane-earth"]={true, 0},
["technique/arcane-fire"]={true, 0},
["technique/arcane-water"]={true, 0},
["technique/magical-combat"]={true, 0},
["spell/aegis"]={false,0.1},
},
talents = {
[ActorTalents.T_FIRE_STRIKE] = 1,
[ActorTalents.T_WATER_STRIKE] = 1,
[ActorTalents.T_ARCANE_COMBAT] = 1,
[ActorTalents.T_WEAPON_COMBAT] = 1,
},
Tree summaries:
Magical-combat tree, Magic requirement
Tier 1: Arcane Combat: Stamina sustain: % chance based on Dexterity to trigger damage proc, costing mana.
Tier 2: Arcane Stances: Passive: +100/200/300/400/500% effectiveness of Arcane Stances.
Tier 3: Arcane Prowess: Passive: Convert 10/15/20/25/30% of Strength and Dexterity to spell power.
Tier 4: Arcane Destruction: Mana Sustain: Convert weapon damage to element based on stance. 2/4/6/8/10% element damage increase. 10/20/30/40/50% element damage penetration.
Arcane-Air tree, Str requirement
Stance is +1 Accuracy per 10 spellpower/+1 Lightning damage on melee hit per 10 spellpower
Tier 1: Air Strike: 12 Stamina Activate,8 turn cooldown, Switches to Air Stance: Melee attack with both weapons, % bonus damage, Silence for 3/4/5/6/7/8 turns. At 4 points Silence effect is a ball of radius 0/0/0/1/2 with 20/25% chance to affect. Silence determined by Phys Power.
Tier 2: Tornado Strike: 15 Stamina Activate, 12 turn cooldown: Buffs Accuracy, APR, and Crit % for 2 turns. Make two full attacks (i.e. 2 attacks with main hand, 2 attacks with off hand if present).
Tier 3: Wind Storm: 50 Mana Sustain, 30 turn cooldown: 1/2/2/3/3 AoE 5/10/15/20/25% slow every turn, spell power vs spell save.
Tier 4: Whirlwind Teleport: 30 Mana Activate, 18 turn cooldown: Targeted teleport within LOS at range 4/5/6/7/8, followed by a full attack (both main and offhand) against all now adjacent enemies (if any).
Arcane-Earth tree, Str requirement
Stance is +1 Armor per 10 spellpower/+0.2 resist all per 10 spellpower
Tier 1: Earth Strike: Stamina Activate, 8 turn cooldown, Switches to Earth Stance: Melee attack with mainland and shield bash (if present). % bonus damage, Pinning for 3/4/5/6/7/8 turns. At 4 points Pinning effect is a ball of radius 0/0/0/1/2 with 20/25% chance to affect. Pinning determined by Phys Power.
Tier 2: Sandblast:12 Stamina Activate, 10 turn cooldown: Make a main hand and shield bash (if present) against melee target, dealing bonus % damage. Seperately a blinding effect of cone radius 3 is activated in the direction of the target, blinding for 1/2/3/4/5 turns. Blinding is determined by Phys power.
Tier 3: Earthen Barrier: 50 Mana Sustain, 30 turn cooldown: Provides a shield hp pool based on spellpower which absorbs 50% of incoming damage. The shield regenerates 2/4/6/8/10% of its hp based on spell power each turn. If shield drops to 0 hit points, it deactivates.
Tier 4: Rolling Earth:40 Mana Activate, 20 turn cooldown: Cone AoE damage of radius 2/3/4/5/6, pull towards caster and stuns for 4/5/6/7/8 turns. Effects based on Spell power.
Arcane-Water tree, Str requirement
Stance is +1% Healing Mod per 10 spellpower/+0.1 regen per 10 spellpower
Tier 1: Water Strike:12 Stamina Activate, 8 turn cooldown, Switches to Water Stance: Melee attack with the all weapon(s), with bonus % damage. Freezes the target for 2 turns. At 4 points freeze effect is a ball of radius 0/0/0/1/2 with 20/25% chance to apply. Freeze application determined by Phys Power.
Tier 2: Healing Water: Mana Activate, 16 turn cooldown: Heal self based on spellpower.
Tier 3: Tidal Rush: 25 Stamina Activate, 20 turn cooldown: Rush to target. Produce a knocback wave effect of radius 1 with low damage at each space in between. If non-target NPC is in the way, switch places with it. Attack at the final target with all weapons with bonus % damage. Knockback wave based on spell power.
Tier 4: Drain Water of Life: Mana Activate, 16 turn cooldown: Strike at target with all weapons with bonus % damage. Heal back 20/40/60/80/100% of damage dealt.
Arcane-Fire tree, Str requirement
Stance is +1 Phys power per 10 spellpower/ +0.25 Phys crit per 10 spellpower
Tier 1: Fire Strike: 12 Stamina Activate, 8 turn cooldown, Switches to Fire Stance: Attack with Main-hand weapon, dealing bonus % damage. Applies the PURIFY_FIRE effect which removes 1 beneficial effect or sustain per turn. Purifying fire lasts 1/2/2/3/3 turns, with physical power vs spell save. At 3 points purifying fire is a ball of radius 0/0/0/1/2 with 20/25% chance to apply.
Tier 2: Inferno Cleave: 25 Stamina Activate, 12 turn cooldown: Attack with Main-hand weapon against up to 3 adjacent enemies. It lights up their squares. It deals bonus fire damage based on the weapon's STR mod and spellpower. At level 3 it Blinds for 2 turns.
Tier 3: Aura of Fire: 30 Mana Sustain, 30 turn cooldown: Each turn, deal low fire damage to all enemies in a radius of 1. Each turn, if user is afflicted by detrimental effects, remove one, and deal 7/6/5/4/3% of max life directly to character as damage (no shields/resistances apply). If no detrimental effects are present, no cost in life to sustain. Turns off if current life drops below 20% of max life.
Tier 4: Mark of Fire: 30 Mana activate, 20 turn cooldown: In a radius 1/2/3/4/5 marked on the ground for 1/2/3/4/5 turns, all enemies take an additional 50% damage in the form of fire damage whenever they take damage.
The last tree would be a generic point tree.
Arcane-Veteran tree, Magic requirement
Tier 1: Veteran Blade: Some kind of stamina recovery mechanism.
Tier 2: Arcane Armor: Mana Sustain: -3/-6/-9/-12/-15% fatigue and +50/100/150/200/250% bonus armor of the main body piece of armor. (I.e. 100% bonus of the 16 armor of Voratun plate would be an extra 16 armor). (Currently set to +3 per talent point - will be fixed).
Tier 3: Arcane Feed: Some kind of mana recovery mechanism.
The following is under consideration:
Tier 4: Master Blade: Stamina and Mana Sustain: +15/30/45/60/75 disarm resistance. Also, when attacked by a ranged projectile (arrow/bolt), roll Accuracy vs attacker's Accuracy. If successful, negate the attack. At level 3 affects reflectable spells (roll Accuracy - 20/Accuracy - 10/Accuracy vs Spell power). At level 5, stops reflectable spells harmlessly.
Edit: updated to include fire tree and partially working arcane-veteran tree.
Edit 2: Master Blade now correctly blocks reflectable spells and bolt spells at level 3 and higher, assuming your roll accuracy (-10/-5/-0) vs Spell power of the caster. Still needs a serious balancing pass, and I probably want to change the resource recovery mechanisms, and Arcane Armor only provides a flat armor bonus, but otherwise, the class mostly functions as intended. Still leaving the Aegis tree in for the moment, although people may want to try characters with and without it.
Edit 3: Just found an error where I was passing weapon instead of weapon.combat to all the attackTargetWith functions - resulting in much poorer performance. Now fixed.
Edit 4: The Tornado Strike Precision bug came due to fixing it not on my usual computer and forgetting to update my local copy - the effect removal ids were wrong again. I have refixed it.
Edit 5: Modified Arcane Armor to be % based on the body armor slot's armor.
Edit 6: Modified Arcane armor to 30/60/90/120/150 % instead of 50/100/150/200/250%. Modified Arcane Stamina to provide 0.1/0.2/0.3/0.4/0.5 stamina regen per turn per active sustain.
Edit 7: Reduced number of starting talents to 3 class, 1 generic. Provided a longsword and dagger in inventory on start. Modified some info functions to hopefully be more clear.
Edit 8: Upped Arcane Combat trigger chance by 5%, increased its scaling damage to 25,300 from 25,250. Modified Elemental Strikes to deal damage in a ball at 4 and 5 points, roughly half the damage of an Arcane Combat trigger, but based on Physical power. The ball effects are 100% chance to occur, but only a duration of 1 or 2 turns, depending on the effect. Lastly, modified Earthen Shield's code, but not effects - mostly to make it cleaner code-wise I hope.
Edit 9: Fixed a bug I introduced in Earthen Shield when I added particle effects, preventing it from deactivating properly (you effectively couldn't turn it off, and it wouldn't shut off even after its hit point pool hit 0).
Edit 10: After some discussions with Darkgod, the following changes were made:
All buff durations unified to be 1/2/2/3/3. This prevents perma-silence. AoEs at 4/5 points lose debuffs - just damage now.
Moved arcane-elemental trees to spells from techniques.
Base spell/elemental trees changed to 1.1 modifier from 0.7. Arcane-elemental trees no longer improve elemental tree mastery by 0.03 per point.
Arcane-elemental trees renamed: Air -> Windcutter, Fire -> Blazebrand, Water -> Lifetide, Earth -> Stoneshield
Names are not necessarily permanent, I'm open to other suggestions. Suggestions for stance names also welcomed.
Edit 11: Fixed a bug introduced to Earth Shield when I did the rewrite to make it more modular. It would not shut off when reduced to 0 hit points, although you could turn it off manually. Now properly turns off and goes on cooldown when damage pool drops to 0.
Edit 12: Fixed a bug with Drain waters of life where it wasn't using the correct combat stats.
Edit 13: Added some particle effects to skills (high point strike effects, wind storm, aura of fire). Improved (hopefully) some of the info boxes. Increased damage modifier on Drain Water of Life from "1.0 to 1.5" to "1.2 to 2.1".
Edit 14: Replaced Water Stance's increased regen with a small heal on melee hit. (Spellpower / 20) * (1 + Arcane Stance Level). Should be around 12.5 life per hit in the level 20s (assuming 5/5 in the talent).
Edit 14b: Created an SVN revision 4886 compatible version of the New Arcane Blade, and added it as a file here.
Edit 14c: Fixed a bug with Inferno Cleave in the SVN 4886 version, due to new util functions for determining left and right.
Edit 16: Updated for version b38! Available on the addons page!
Also includes balance tweaks.
Tidal Rush pins the final target for 1/1/2/2/3 turns.
Mark of fire applies a 50% move speed penalty to enemies affected by it.
Elemental strikes AoE is now 0/1/1/2/2 balls, and apply the debuffs on that ball for 1/2/2/3/3 turns.
Get it at:
http://te4.org/games/addons/tome/spellsword