From ebcce93a3792693cda7ab3254c9bf84c69842132 Mon Sep 17 00:00:00 2001 From: reschan Date: Wed, 20 Jul 2022 20:26:04 +0700 Subject: [PATCH] assassin tree implementation --- js/atree_constants.js | 9828 ++++++++++++++++++++++++++----------- js/atree_constants_min.js | 2 +- 2 files changed, 6912 insertions(+), 2918 deletions(-) diff --git a/js/atree_constants.js b/js/atree_constants.js index 518b26d..d554930 100644 --- a/js/atree_constants.js +++ b/js/atree_constants.js @@ -3,7 +3,10 @@ const atrees = { { "display_name": "Arrow Shield", "desc": "Create a shield around you that deal damage and knockback mobs when triggered. (2 Charges)", - "parents": ["Power Shots", "Cheaper Escape"], + "parents": [ + "Power Shots", + "Cheaper Escape" + ], "dependencies": [], "blockers": [], "cost": 1, @@ -28,7 +31,14 @@ const atrees = { { "name": "Shield Damage", "type": "damage", - "multipliers": [90, 0, 0, 0, 0, 10] + "multipliers": [ + 90, + 0, + 0, + 0, + 0, + 10 + ] }, { "name": "Total Damage", @@ -44,35 +54,39 @@ const atrees = { { "display_name": "Escape", "desc": "Throw yourself backward to avoid danger. (Hold shift while escaping to cancel)", - "parents": ["Heart Shatter"], + "parents": [ + "Heart Shatter" + ], "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, "display": { - "row": 7, - "col": 4, - "icon": "node_archer" + "row": 7, + "col": 4, + "icon": "node_archer" }, "properties": { "aoe": 0, "range": 0 }, - "effects": [{ - "type": "replace_spell", - "name": "Escape", - "cost": 25, - "base_spell": 2, - "display": "", - "parts": [] - }] + "effects": [ + { + "type": "replace_spell", + "name": "Escape", + "cost": 25, + "base_spell": 2, + "display": "", + "parts": [] + } + ] }, { "display_name": "Arrow Bomb", "desc": "Throw a long-range arrow that explodes and deal high damage in a large area. (Self-damage for 25% of your DPS)", - "parents": [], + "parents": [], "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 0, "col": 4, @@ -82,35 +96,48 @@ const atrees = { "aoe": 4.5, "range": 26 }, - "effects": [{ - "type": "replace_spell", - "name": "Arrow Bomb", - "cost": 50, - "base_spell": 3, - "spell_type": "damage", - "display": "Total Damage", - "parts": [ - { - "name": "Arrow Bomb", - "type": "damage", - "multipliers": [160, 0, 0, 0, 20, 0] - }, - { - "name": "Total Damage", - "type": "total", - "hits": { "Arrow Bomb": 1 } - } - ] - }] + "effects": [ + { + "type": "replace_spell", + "name": "Arrow Bomb", + "cost": 50, + "base_spell": 3, + "spell_type": "damage", + "display": "Total Damage", + "parts": [ + { + "name": "Arrow Bomb", + "type": "damage", + "multipliers": [ + 160, + 0, + 0, + 0, + 20, + 0 + ] + }, + { + "name": "Total Damage", + "type": "total", + "hits": { + "Arrow Bomb": 1 + } + } + ] + } + ] }, { "display_name": "Heart Shatter", "desc": "If you hit a mob directly with Arrow Bomb, shatter its heart and deal bonus damage.", "base_abil": "Arrow Bomb", - "parents": ["Bow Proficiency I"], - "dependencies": [], + "parents": [ + "Bow Proficiency I" + ], + "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 4, "col": 4, @@ -118,17 +145,26 @@ const atrees = { }, "properties": {}, "effects": [ - { + { "type": "add_spell_prop", - "base_spell": 3, - "target_part": "Heart Shatter", - "multipliers": [100, 0, 0, 0, 0, 0] + "base_spell": 3, + "target_part": "Heart Shatter", + "multipliers": [ + 100, + 0, + 0, + 0, + 0, + 0 + ] }, - { + { "type": "add_spell_prop", - "base_spell": 3, - "target_part": "Total Damage", - "hits": { "Heart Shatter": 1 } + "base_spell": 3, + "target_part": "Total Damage", + "hits": { + "Heart Shatter": 1 + } } ] }, @@ -136,31 +172,44 @@ const atrees = { "display_name": "Fire Creep", "desc": "Arrow Bomb will leak a trail of fire for 6s, Damaging enemies that walk into it every 0.4s.", "base_abil": "Arrow Bomb", - "parents": ["Phantom Ray", "Fire Mastery", "Bryophyte Roots"], - "dependencies": [], + "parents": [ + "Phantom Ray", + "Fire Mastery", + "Bryophyte Roots" + ], + "dependencies": [], "blockers": [], - "cost": 2, + "cost": 2, "display": { - "row": 16, - "col": 6, - "icon": "node_1" + "row": 16, + "col": 6, + "icon": "node_1" }, - "properties": { + "properties": { "aoe": 0.8, "duration": 6 }, "effects": [ - { + { "type": "add_spell_prop", - "base_spell": 3, - "target_part": "Fire Creep", - "multipliers": [30, 0, 0, 0, 20, 0] + "base_spell": 3, + "target_part": "Fire Creep", + "multipliers": [ + 30, + 0, + 0, + 0, + 20, + 0 + ] }, - { + { "type": "add_spell_prop", - "base_spell": 3, - "target_part": "Total Burn Damage", - "hits": { "Fire Creep": 15 } + "base_spell": 3, + "target_part": "Total Burn Damage", + "hits": { + "Fire Creep": 15 + } } ] }, @@ -168,30 +217,48 @@ const atrees = { "display_name": "Bryophyte Roots", "desc": "When you hit an enemy with Arrow Storm, create an area that slows them down and deals damage every 0.4s.", "base_abil": "Arrow Storm", - "archetype": "Trapper", - "archetype_req": 1, - "parents": ["Fire Creep", "Earth Mastery"], - "dependencies": ["Arrow Storm"], + "archetype": "Trapper", + "archetype_req": 1, + "parents": [ + "Fire Creep", + "Earth Mastery" + ], + "dependencies": [ + "Arrow Storm" + ], "blockers": [], - "cost": 2, - "display": { "row": 16, "col": 8, "icon": "node_1"}, + "cost": 2, + "display": { + "row": 16, + "col": 8, + "icon": "node_1" + }, "properties": { "aoe": 2, "duration": 5 }, "effects": [ - { + { "type": "add_spell_prop", - "base_spell": 1, - "target_part": "Bryophyte Roots", + "base_spell": 1, + "target_part": "Bryophyte Roots", "cost": 0, - "multipliers": [40, 20, 0, 0, 0, 0] + "multipliers": [ + 40, + 20, + 0, + 0, + 0, + 0 + ] }, - { + { "type": "add_spell_prop", - "base_spell": 1, - "target_part": "Total Roots Damage", - "hits": { "Bryophyte Roots": 12 } + "base_spell": 1, + "target_part": "Total Roots Damage", + "hits": { + "Bryophyte Roots": 12 + } } ] }, @@ -199,56 +266,96 @@ const atrees = { "display_name": "Nimble String", "desc": "Arrow Storm throw out +6 arrows per stream and shoot twice as fast.", "base_abil": "Arrow Storm", - "parents": ["Thunder Mastery", "Arrow Rain"], - "dependencies": ["Arrow Storm"], - "blockers": ["Phantom Ray"], - "cost": 2, - "display": { "row": 15, "col": 2, "icon": "node_1"}, + "parents": [ + "Thunder Mastery", + "Arrow Rain" + ], + "dependencies": [ + "Arrow Storm" + ], + "blockers": [ + "Phantom Ray" + ], + "cost": 2, + "display": { + "row": 15, + "col": 2, + "icon": "node_1" + }, "properties": {}, "effects": [ { "type": "add_spell_prop", - "base_spell": 1, - "target_part": "Single Arrow", - "multipliers": [-15, 0, 0, 0, 0, 0] + "base_spell": 1, + "target_part": "Single Arrow", + "multipliers": [ + -15, + 0, + 0, + 0, + 0, + 0 + ] }, { "type": "add_spell_prop", - "base_spell": 1, - "target_part": "Single Stream", - "hits": { "Single Arrow": 6 } + "base_spell": 1, + "target_part": "Single Stream", + "hits": { + "Single Arrow": 6 + } } ] }, { "display_name": "Arrow Storm", "desc": "Shoot a stream of 8 arrows, dealing significant damage to close mobs and pushing them back.", - "parents": ["Double Shots", "Cheaper Escape"], + "parents": [ + "Double Shots", + "Cheaper Escape" + ], "dependencies": [], "blockers": [], - "cost": 1, - "display": { "row": 9, "col": 2, "icon": "node_archer"}, - "properties": { "range": 16 }, + "cost": 1, + "display": { + "row": 9, + "col": 2, + "icon": "node_archer" + }, + "properties": { + "range": 16 + }, "effects": [ - { + { "type": "replace_spell", "name": "Arrow Storm", "cost": 40, - "base_spell": 1, - "spell_type": "damage", - "display": "Total Damage", + "base_spell": 1, + "spell_type": "damage", + "display": "Total Damage", "parts": [ - { + { "name": "Single Arrow", - "multipliers": [30, 0, 10, 0, 0, 0] + "multipliers": [ + 30, + 0, + 10, + 0, + 0, + 0 + ] }, - { + { "name": "Single Stream", - "hits": { "Single Arrow": 8 } + "hits": { + "Single Arrow": 8 + } }, - { + { "name": "Total Damage", - "hits": { "Single Stream": 1 } + "hits": { + "Single Stream": 1 + } } ] } @@ -258,12 +365,17 @@ const atrees = { "display_name": "Guardian Angels", "desc": "Your protective arrows from Arrow Shield will become sentient bows, dealing damage up to 8 times each to nearby enemies. (Arrow Shield will no longer push nearby enemies)", "archetype": "Boltslinger", - "archetype_req": 3, + "archetype_req": 3, "base_abil": "Arrow Shield", - "parents": ["Triple Shots", "Frenzy"], - "dependencies": ["Arrow Shield"], + "parents": [ + "Triple Shots", + "Frenzy" + ], + "dependencies": [ + "Arrow Shield" + ], "blockers": [], - "cost": 2, + "cost": 2, "display": { "row": 19, "col": 1, @@ -285,7 +397,14 @@ const atrees = { { "name": "Single Arrow", "type": "damage", - "multipliers": [30, 0, 0, 0, 0, 10] + "multipliers": [ + 30, + 0, + 0, + 0, + 0, + 10 + ] }, { "name": "Single Bow", @@ -309,14 +428,16 @@ const atrees = { "display_name": "Windy Feet", "desc": "When casting Escape, give speed to yourself and nearby allies.", "base_abil": "Escape", - "parents": ["Arrow Storm"], - "dependencies": [], + "parents": [ + "Arrow Storm" + ], + "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, "display": { - "row": 10, - "col": 1, - "icon": "node_1" + "row": 10, + "col": 1, + "icon": "node_1" }, "properties": { "aoe": 8, @@ -328,22 +449,24 @@ const atrees = { "display_name": "Basaltic Trap", "desc": "When you hit the ground with Arrow Bomb, leave a Trap that damages enemies. (Max 2 Traps)", "archetype": "Trapper", - "archetype_req": 2, - "parents": ["Bryophyte Roots"], - "dependencies": [], + "archetype_req": 2, + "parents": [ + "Bryophyte Roots" + ], + "dependencies": [], "blockers": [], - "cost": 2, + "cost": 2, "display": { - "row": 19, - "col": 8, - "icon": "node_3" + "row": 19, + "col": 8, + "icon": "node_3" }, "properties": { "aoe": 7, "traps": 2 }, "effects": [ - { + { "type": "replace_spell", "name": "Basaltic Trap", "base_spell": 7, @@ -352,7 +475,14 @@ const atrees = { { "name": "Trap Damage", "type": "damage", - "multipliers": [140, 30, 0, 0, 30, 0] + "multipliers": [ + 140, + 30, + 0, + 0, + 30, + 0 + ] } ] } @@ -362,10 +492,15 @@ const atrees = { "display_name": "Windstorm", "desc": "Arrow Storm shoot +1 stream of arrows, and each stream shoots +2 arrows, effectively doubling its damage.", "base_abil": "Arrow Storm", - "parents": ["Guardian Angels", "Cheaper Arrow Storm"], - "dependencies": [], - "blockers": ["Phantom Ray"], - "cost": 2, + "parents": [ + "Guardian Angels", + "Cheaper Arrow Storm" + ], + "dependencies": [], + "blockers": [ + "Phantom Ray" + ], + "cost": 2, "display": { "row": 21, "col": 1, @@ -375,22 +510,33 @@ const atrees = { "effects": [ { "type": "add_spell_prop", - "base_spell": 1, - "target_part": "Single Arrow", - "multipliers": [-10, 0, -2, 0, 0, 2] + "base_spell": 1, + "target_part": "Single Arrow", + "multipliers": [ + -10, + 0, + -2, + 0, + 0, + 2 + ] }, { "type": "add_spell_prop", - "base_spell": 1, - "target_part": "Total Damage", - "hits": { "Single Stream": 1 } + "base_spell": 1, + "target_part": "Total Damage", + "hits": { + "Single Stream": 1 + } }, { "type": "add_spell_prop", - "base_spell": 1, - "target_part": "Single Stream", + "base_spell": 1, + "target_part": "Single Stream", "cost": 0, - "hits": { "Single Arrow": 2 } + "hits": { + "Single Arrow": 2 + } } ] }, @@ -398,18 +544,23 @@ const atrees = { "display_name": "Grappling Hook", "base_abil": "Escape", "desc": "When casting Escape, throw a hook that pulls you when hitting a block. If you hit an enemy, pull them towards you instead. (Escape will not throw you backward anymore)", - "archetype": "Trapper", - "archetype_req": 0, - "base_abil": "Escape", - "parents": ["Focus", "More Shields", "Cheaper Arrow Storm"], - "dependencies": [], - "blockers": ["Escape Artist"], - "cost": 2, + "archetype": "Trapper", + "archetype_req": 0, + "parents": [ + "Focus", + "More Shields", + "Cheaper Arrow Storm" + ], + "dependencies": [], + "blockers": [ + "Escape Artist" + ], + "cost": 2, "display": { "row": 21, "col": 5, "icon": "node_2" - }, + }, "properties": { "range": 26 }, @@ -418,13 +569,16 @@ const atrees = { { "display_name": "Implosion", "desc": "Arrow bomb will pull enemies towards you. If a trap is nearby, it will pull them towards it instead. Increase Heart Shatter's damage.", - "archetype": "Trapper", - "archetype_req": 0, + "archetype": "Trapper", + "archetype_req": 0, "base_abil": "Arrow Bomb", - "parents": ["Grappling Hook", "More Shields"], - "dependencies": [], + "parents": [ + "Grappling Hook", + "More Shields" + ], + "dependencies": [], "blockers": [], - "cost": 2, + "cost": 2, "display": { "row": 22, "col": 6, @@ -432,23 +586,35 @@ const atrees = { }, "properties": {}, "effects": [ - { + { "type": "add_spell_prop", - "base_spell": 3, - "target_part": "Heart Shatter", - "multipliers": [40, 0, 0, 0, 0, 0] + "base_spell": 3, + "target_part": "Heart Shatter", + "multipliers": [ + 40, + 0, + 0, + 0, + 0, + 0 + ] } ] }, { "display_name": "Twain's Arc", "desc": "When you have 2+ Focus, holding shift will summon the Twain's Arc. Charge it up to shoot a destructive long-range beam. (Damage is dealt as Main Attack Damage)", - "archetype": "Sharpshooter", - "archetype_req": 4, - "parents": ["More Focus", "Traveler"], - "dependencies": ["Focus"], + "archetype": "Sharpshooter", + "archetype_req": 4, + "parents": [ + "More Focus", + "Traveler" + ], + "dependencies": [ + "Focus" + ], "blockers": [], - "cost": 2, + "cost": 2, "display": { "row": 25, "col": 4, @@ -470,33 +636,54 @@ const atrees = { { "name": "Single Shot", "type": "damage", - "multipliers": [200, 0, 0, 0, 0, 0] + "multipliers": [ + 200, + 0, + 0, + 0, + 0, + 0 + ] } ] } - ] + ] }, { "display_name": "Fierce Stomp", "desc": "When using Escape, hold shift to quickly drop down and deal damage.", - "archetype": "Boltslinger", - "archetype_req": 0, + "archetype": "Boltslinger", + "archetype_req": 0, "base_abil": "Escape", - "parents": ["Refined Gunpowder", "Traveler"], - "dependencies": [], + "parents": [ + "Refined Gunpowder", + "Traveler" + ], + "dependencies": [], "blockers": [], - "cost": 2, - "display": { "row": 26, "col": 1, "icon": "node_1"}, + "cost": 2, + "display": { + "row": 26, + "col": 1, + "icon": "node_1" + }, "properties": { "aoe": 4 }, "effects": [ - { + { "type": "add_spell_prop", - "base_spell": 2, - "target_part": "Fierce Stomp", + "base_spell": 2, + "target_part": "Fierce Stomp", "cost": 0, - "multipliers": [100, 0, 0, 0, 0, 0] + "multipliers": [ + 100, + 0, + 0, + 0, + 0, + 0 + ] }, { "type": "add_spell_prop", @@ -513,36 +700,58 @@ const atrees = { { "display_name": "Scorched Earth", "desc": "Fire Creep become much stronger.", - "archetype": "Sharpshooter", - "archetype_req": 0, - "parents": ["Twain's Arc"], - "dependencies": ["Fire Creep"], + "archetype": "Sharpshooter", + "archetype_req": 0, + "parents": [ + "Twain's Arc" + ], + "dependencies": [ + "Fire Creep" + ], "blockers": [], - "cost": 1, - "display": { "row": 26, "col": 5, "icon": "node_1"}, + "cost": 1, + "display": { + "row": 26, + "col": 5, + "icon": "node_1" + }, "properties": { "duration": 2, "aoe": 0.4 }, "effects": [ - { + { "type": "add_spell_prop", - "base_spell": 3, + "base_spell": 3, "target_part": "Fire Creep", - "multipliers": [10, 0, 0, 0, 5, 0] + "multipliers": [ + 10, + 0, + 0, + 0, + 5, + 0 + ] } ] }, { "display_name": "Leap", "desc": "When you double tap jump, leap foward. (2s Cooldown)", - "archetype": "Boltslinger", - "archetype_req": 5, - "parents": ["Refined Gunpowder", "Homing Shots"], - "dependencies": [], + "archetype": "Boltslinger", + "archetype_req": 5, + "parents": [ + "Refined Gunpowder", + "Homing Shots" + ], + "dependencies": [], "blockers": [], - "cost": 2, - "display": { "row": 28, "col": 0, "icon": "node_1"}, + "cost": 2, + "display": { + "row": 28, + "col": 0, + "icon": "node_1" + }, "properties": { "cooldown": 2 }, @@ -551,14 +760,24 @@ const atrees = { { "display_name": "Shocking Bomb", "desc": "Arrow Bomb will not be affected by gravity, and all damage conversions become Thunder.", - "archetype": "Sharpshooter", - "archetype_req": 5, + "archetype": "Sharpshooter", + "archetype_req": 5, "base_abil": "Arrow Bomb", - "parents": ["Twain's Arc", "Better Arrow Shield", "Homing Shots"], - "dependencies": ["Arrow Bomb"], + "parents": [ + "Twain's Arc", + "Better Arrow Shield", + "Homing Shots" + ], + "dependencies": [ + "Arrow Bomb" + ], "blockers": [], - "cost": 2, - "display": { "row": 28, "col": 4, "icon": "node_1"}, + "cost": 2, + "display": { + "row": 28, + "col": 4, + "icon": "node_1" + }, "properties": { "gravity": 0 }, @@ -574,26 +793,29 @@ const atrees = { { "display_name": "Mana Trap", "desc": "Your Traps will give you 2.85 Mana per second when you stay close to them.", - "archetype": "Trapper", - "archetype_req": 5, + "archetype": "Trapper", + "archetype_req": 5, "base_abil": "Basaltic Trap", - "parents": ["More Traps", "Better Arrow Shield"], - "dependencies": [], + "parents": [ + "More Traps", + "Better Arrow Shield" + ], + "dependencies": [], "blockers": [], - "cost": 2, + "cost": 2, "display": { - "row": 28, - "col": 8, - "icon": "node_3" + "row": 28, + "col": 8, + "icon": "node_3" }, "properties": { "range": 16, "manaRegen": 2.85 }, "effects": [ - { + { "type": "add_spell_prop", - "base_spell": 3, + "base_spell": 3, "cost": 10 } ] @@ -601,31 +823,45 @@ const atrees = { { "display_name": "Escape Artist", "desc": "When casting Escape, release 120 arrows towards the ground.", - "archetype": "Boltslinger", - "archetype_req": 0, + "archetype": "Boltslinger", + "archetype_req": 0, "base_abil": "Escape", - "parents": ["Better Guardian Angels", "Leap"], - "dependencies": [], - "blockers": ["Grappling Hook"], - "cost": 2, + "parents": [ + "Better Guardian Angels", + "Leap" + ], + "dependencies": [], + "blockers": [ + "Grappling Hook" + ], + "cost": 2, "display": { - "row": 31, - "col": 0, - "icon": "node_1" + "row": 31, + "col": 0, + "icon": "node_1" }, "properties": {}, "effects": [ - { + { "type": "add_spell_prop", - "base_spell": 2, - "target_part": "Per Arrow", - "multipliers": [20, 0, 10, 0, 0, 0] + "base_spell": 2, + "target_part": "Per Arrow", + "multipliers": [ + 20, + 0, + 10, + 0, + 0, + 0 + ] }, - { + { "type": "add_spell_prop", - "base_spell": 2, - "target_part": "Max Damage (Escape Artist)", - "hits": { "Per Arrow": 120 }, + "base_spell": 2, + "target_part": "Max Damage (Escape Artist)", + "hits": { + "Per Arrow": 120 + }, "display": "Max Damage (Escape Artist)" } ] @@ -634,12 +870,22 @@ const atrees = { "display_name": "Initiator", "desc": "If you do not damage an enemy for 5s or more, your next sucessful hit will deal +50% damage and add +1 Focus.", "archetype": "Sharpshooter", - "archetype_req": 5, - "parents": ["Shocking Bomb", "Better Arrow Shield", "Cheaper Arrow Storm (2)"], - "dependencies": ["Focus"], + "archetype_req": 5, + "parents": [ + "Shocking Bomb", + "Better Arrow Shield", + "Cheaper Arrow Storm (2)" + ], + "dependencies": [ + "Focus" + ], "blockers": [], - "cost": 2, - "display": { "row": 31, "col": 5, "icon": "node_2"}, + "cost": 2, + "display": { + "row": 31, + "col": 5, + "icon": "node_2" + }, "properties": {}, "effects": [] }, @@ -647,41 +893,68 @@ const atrees = { "display_name": "Call of the Hound", "desc": "Arrow Shield summon a Hound that will attack and drag aggressive enemies towards your traps.", "archetype": "Trapper", - "archetype_req": 0, + "archetype_req": 0, "base_abil": "Arrow Shield", - "parents": ["Initiator", "Cheaper Arrow Storm (2)"], - "dependencies": ["Arrow Shield"], + "parents": [ + "Initiator", + "Cheaper Arrow Storm (2)" + ], + "dependencies": [ + "Arrow Shield" + ], "blockers": [], - "cost": 2, - "display": { "row": 32, "col": 7, "icon": "node_2"}, + "cost": 2, + "display": { + "row": 32, + "col": 7, + "icon": "node_2" + }, "properties": {}, "effects": [ - { + { "type": "add_spell_prop", - "base_spell": 4, - "target_part": "Hound Damage", - "multipliers": [40, 0, 0, 0, 0, 0] + "base_spell": 4, + "target_part": "Hound Damage", + "multipliers": [ + 40, + 0, + 0, + 0, + 0, + 0 + ] } ] }, { "display_name": "Arrow Hurricane", "desc": "Arrow Storm will shoot +2 stream of arrows.", - "archetype": "Boltslinger", - "archetype_req": 8, + "archetype": "Boltslinger", + "archetype_req": 8, "base_abil": "Arrow Storm", - "parents": ["Precise Shot", "Escape Artist"], - "dependencies": [], - "blockers": ["Phantom Ray"], - "cost": 2, - "display": { "row": 33, "col": 0, "icon": "node_3"}, + "parents": [ + "Precise Shot", + "Escape Artist" + ], + "dependencies": [], + "blockers": [ + "Phantom Ray" + ], + "cost": 2, + "display": { + "row": 33, + "col": 0, + "icon": "node_3" + }, "properties": {}, "effects": [ { "type": "add_spell_prop", - "base_spell": 1, - "target_part": "Total Damage", - "hits": { "Single Stream": 2 } + "base_spell": 1, + "target_part": "Total Damage", + "hits": { + "Single Stream": 2 + } } ] }, @@ -689,69 +962,103 @@ const atrees = { "display_name": "Geyser Stomp", "desc": "Fierce Stomp will create geysers, dealing more damage and vertical knockback.", "base_abil": "Escape", - "parents": ["Shrapnel Bomb"], - "dependencies": ["Fierce Stomp"], + "parents": [ + "Shrapnel Bomb" + ], + "dependencies": [ + "Fierce Stomp" + ], "blockers": [], - "cost": 2, - "display": { "row": 37, "col": 1, "icon": "node_1"}, + "cost": 2, + "display": { + "row": 37, + "col": 1, + "icon": "node_1" + }, "properties": {}, "effects": [ - { + { "type": "add_spell_prop", - "base_spell": 2, + "base_spell": 2, "target_part": "Geyser Stomp", - "multipliers": [0, 0, 0, 50, 0, 0] + "multipliers": [ + 0, + 0, + 0, + 50, + 0, + 0 + ] }, - { + { "type": "add_spell_prop", - "base_spell": 2, + "base_spell": 2, "target_part": "Stomp Damage", - "hits": { "Geyser Stomp": 1 } + "hits": { + "Geyser Stomp": 1 + } }, { "type": "raw_stat", - "bonuses": [{ - "type": "prop", - "abil": "Fierce Stomp", - "name": "aoe", - "value": 1 - }] + "bonuses": [ + { + "type": "prop", + "abil": "Fierce Stomp", + "name": "aoe", + "value": 1 + } + ] } ] }, { "display_name": "Crepuscular Ray", "desc": "If you have 5 Focus, casting Arrow Storm will make you levitate and shoot 20 homing arrows per second until you run out of Focus. While in that state, you will lose 1 Focus per second.", - "archetype": "Sharpshooter", - "archetype_req": 10, - "parents": ["Cheaper Arrow Shield"], - "dependencies": ["Arrow Storm"], + "archetype": "Sharpshooter", + "archetype_req": 10, + "parents": [ + "Cheaper Arrow Shield" + ], + "dependencies": [ + "Arrow Storm" + ], "blockers": [], - "cost": 2, + "cost": 2, "display": { - "row": 37, - "col": 4, - "icon": "node_3" + "row": 37, + "col": 4, + "icon": "node_3" }, "properties": {}, "effects": [ - { + { "type": "replace_spell", "name": "Crepuscular Ray", "base_spell": 6, "display": "DPS", "parts": [ - { + { "name": "Single Arrow", - "multipliers": [20, 0, 0, 5, 0, 0] + "multipliers": [ + 20, + 0, + 0, + 5, + 0, + 0 + ] }, { "name": "DPS", - "hits": { "Single Arrow": 20 } + "hits": { + "Single Arrow": 20 + } }, - { + { "name": "Total Damage", - "hits": { "DPS": 7 } + "hits": { + "DPS": 7 + } } ] } @@ -761,65 +1068,100 @@ const atrees = { "display_name": "Grape Bomb", "desc": "Arrow bomb will throw 3 additional smaller bombs when exploding.", "base_abil": "Arrow Bomb", - "parents": ["Cheaper Escape (2)"], - "dependencies": [], + "parents": [ + "Cheaper Escape (2)" + ], + "dependencies": [], "blockers": [], - "cost": 2, - "display": { "row": 37, "col": 7, "icon": "node_2"}, + "cost": 2, + "display": { + "row": 37, + "col": 7, + "icon": "node_2" + }, "properties": { "aoe": 2 }, "effects": [ - { + { "type": "add_spell_prop", - "base_spell": 3, - "target_part": "Grape Bomb", - "multipliers": [30, 0, 0, 0, 10, 0] + "base_spell": 3, + "target_part": "Grape Bomb", + "multipliers": [ + 30, + 0, + 0, + 0, + 10, + 0 + ] }, - { + { "type": "add_spell_prop", - "base_spell": 3, - "target_part": "Total Damage", - "hits": { "Grape Bomb": 3 } + "base_spell": 3, + "target_part": "Total Damage", + "hits": { + "Grape Bomb": 3 + } } ] }, { "display_name": "Tangled Traps", "desc": "Your Traps will be connected by a rope that deals damage to enemies every 0.2s.", - "archetype": "Trapper", - "archetype_req": 0, + "archetype": "Trapper", + "archetype_req": 0, "base_abil": "Basaltic Trap", - "parents": ["Grape Bomb"], - "dependencies": ["Basaltic Trap"], + "parents": [ + "Grape Bomb" + ], + "dependencies": [ + "Basaltic Trap" + ], "blockers": [], - "cost": 2, - "display": {"row": 38, "col": 6, "icon": "node_1"}, + "cost": 2, + "display": { + "row": 38, + "col": 6, + "icon": "node_1" + }, "properties": { "attackSpeed": 0.2 }, "effects": [ - { + { "type": "add_spell_prop", - "base_spell": 7, - "target_part": "Line Damage Tick", - "multipliers": [20, 0, 0, 0, 0, 20] + "base_spell": 7, + "target_part": "Line Damage Tick", + "multipliers": [ + 20, + 0, + 0, + 0, + 0, + 20 + ] }, - { + { "type": "add_spell_prop", - "base_spell": 7, - "target_part": "DPS", - "hits": { "Line Damage Tick": 5 } + "base_spell": 7, + "target_part": "DPS", + "hits": { + "Line Damage Tick": 5 + } } ] }, { "display_name": "Snow Storm", "desc": "Enemies near you will be slowed down.", - "parents": ["Geyser Stomp", "More Focus (2)"], - "dependencies": [], + "parents": [ + "Geyser Stomp", + "More Focus (2)" + ], + "dependencies": [], "blockers": [], - "cost": 2, + "cost": 2, "display": { "row": 39, "col": 2, @@ -835,29 +1177,46 @@ const atrees = { "display_name": "All-Seeing Panoptes", "desc": "Your bows from Guardian Angels become all-seeing, increasing their range, damage and letting them shoot up to +5 times each.", "archetype": "Boltslinger", - "archetype_req": 11, + "archetype_req": 11, "base_abil": "Arrow Shield", - "parents": ["Snow Storm"], - "dependencies": ["Guardian Angels"], + "parents": [ + "Snow Storm" + ], + "dependencies": [ + "Guardian Angels" + ], "blockers": [], - "cost": 2, - "display": { "row": 40, "col": 1, "icon": "node_3"}, + "cost": 2, + "display": { + "row": 40, + "col": 1, + "icon": "node_3" + }, "properties": { "range": 8, "shots": 5 }, "effects": [ - { + { "type": "add_spell_prop", - "base_spell": 4, - "target_part": "Single Arrow", - "multipliers": [0, 0, 0, 0, 10, 0] + "base_spell": 4, + "target_part": "Single Arrow", + "multipliers": [ + 0, + 0, + 0, + 0, + 10, + 0 + ] }, - { + { "type": "add_spell_prop", - "base_spell": 4, - "target_part": "Single Bow", - "hits": { "Single Arrow": 5 } + "base_spell": 4, + "target_part": "Single Bow", + "hits": { + "Single Arrow": 5 + } } ] }, @@ -865,21 +1224,37 @@ const atrees = { "display_name": "Minefield", "desc": "Allow you to place +6 Traps, but with reduced damage and range.", "archetype": "Trapper", - "archetype_req": 10, + "archetype_req": 10, "base_abil": "Basaltic Trap", - "parents": ["Grape Bomb", "Cheaper Arrow Bomb (2)"], - "dependencies": ["Basaltic Trap"], + "parents": [ + "Grape Bomb", + "Cheaper Arrow Bomb (2)" + ], + "dependencies": [ + "Basaltic Trap" + ], "blockers": [], - "cost": 2, - "display": {"row": 40, "col": 7, "icon": "node_3"}, + "cost": 2, + "display": { + "row": 40, + "col": 7, + "icon": "node_3" + }, "properties": {}, "effects": [ - { + { "type": "add_spell_prop", "base_spell": 7, - "target_part": "Trap Damage", + "target_part": "Trap Damage", "cost": 0, - "multipliers": [-80, 0, 0, 0, 0, 0] + "multipliers": [ + -80, + 0, + 0, + 0, + 0, + 0 + ] }, { "type": "raw_stat", @@ -904,28 +1279,49 @@ const atrees = { "display_name": "Bow Proficiency I", "desc": "Improve your Main Attack's damage and range when using a bow.", "base_abil": 999, - "parents": ["Arrow Bomb"], - "dependencies": [], + "parents": [ + "Arrow Bomb" + ], + "dependencies": [], "blockers": [], - "cost": 1, - "display": { "row": 2, "col": 4, "icon": "node_0"}, + "cost": 1, + "display": { + "row": 2, + "col": 4, + "icon": "node_0" + }, "properties": {}, - "effects": [{ - "type": "add_spell_prop", - "base_spell": 0, - "target_part": "Single Shot", - "multipliers": [5, 0, 0, 0, 0, 0] - }] + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 0, + "target_part": "Single Shot", + "multipliers": [ + 5, + 0, + 0, + 0, + 0, + 0 + ] + } + ] }, { "display_name": "Cheaper Arrow Bomb", "desc": "Reduce the Mana cost of Arrow Bomb.", "base_abil": "Arrow Bomb", - "parents": ["Bow Proficiency I"], - "dependencies": [], + "parents": [ + "Bow Proficiency I" + ], + "dependencies": [], "blockers": [], - "cost": 1, - "display": {"row": 2, "col": 6, "icon": "node_0"}, + "cost": 1, + "display": { + "row": 2, + "col": 6, + "icon": "node_0" + }, "properties": {}, "effects": [ { @@ -933,17 +1329,25 @@ const atrees = { "base_spell": 3, "cost": -10 } - ] + ] }, { "display_name": "Cheaper Arrow Storm", "desc": "Reduce the Mana cost of Arrow Storm.", "base_abil": "Arrow Storm", - "parents": ["Grappling Hook", "Windstorm", "Focus"], - "dependencies": [], + "parents": [ + "Grappling Hook", + "Windstorm", + "Focus" + ], + "dependencies": [], "blockers": [], - "cost": 1, - "display": {"row": 21, "col": 3, "icon": "node_0"}, + "cost": 1, + "display": { + "row": 21, + "col": 3, + "icon": "node_0" + }, "properties": {}, "effects": [ { @@ -951,34 +1355,45 @@ const atrees = { "base_spell": 1, "cost": -5 } - ] + ] }, { "display_name": "Cheaper Escape", "desc": "Reduce the Mana cost of Escape.", "base_abil": "Escape", - "parents": ["Arrow Storm", "Arrow Shield"], - "dependencies": [], + "parents": [ + "Arrow Storm", + "Arrow Shield" + ], + "dependencies": [], "blockers": [], - "cost": 1, - "display": { "row": 9, "col": 4, "icon": "node_0"}, + "cost": 1, + "display": { + "row": 9, + "col": 4, + "icon": "node_0" + }, "properties": {}, - "effects": [{ - "type": "add_spell_prop", - "base_spell": 2, - "cost": -5 - }] + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 2, + "cost": -5 + } + ] }, { "display_name": "Earth Mastery", "base_abil": 998, "desc": "Increases your base damage from all Earth attacks", - "archetype": "Trapper", - "archetype_req": 0, - "parents": ["Arrow Shield"], - "dependencies": [], + "archetype": "Trapper", + "archetype_req": 0, + "parents": [ + "Arrow Shield" + ], + "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 13, "col": 8, @@ -1006,18 +1421,22 @@ const atrees = { } ] } - ] + ] }, { "display_name": "Thunder Mastery", "base_abil": 998, "desc": "Increases your base damage from all Thunder attacks", - "archetype": "Boltslinger", - "archetype_req": 0, - "parents": ["Arrow Storm", "Fire Mastery", "Cheaper Escape"], - "dependencies": [], + "archetype": "Boltslinger", + "archetype_req": 0, + "parents": [ + "Arrow Storm", + "Fire Mastery", + "Cheaper Escape" + ], + "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 13, "col": 2, @@ -1045,18 +1464,22 @@ const atrees = { } ] } - ] + ] }, { "display_name": "Water Mastery", "base_abil": 998, "desc": "Increases your base damage from all Water attacks", - "archetype": "Sharpshooter", - "archetype_req": 0, - "parents": ["Cheaper Escape", "Thunder Mastery", "Fire Mastery"], - "dependencies": [], + "archetype": "Sharpshooter", + "archetype_req": 0, + "parents": [ + "Cheaper Escape", + "Thunder Mastery", + "Fire Mastery" + ], + "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 14, "col": 4, @@ -1084,18 +1507,20 @@ const atrees = { } ] } - ] + ] }, { "display_name": "Air Mastery", "base_abil": 998, "desc": "Increases base damage from all Air attacks", - "archetype": "Boltslinger", - "archetype_req": 0, - "parents": ["Arrow Storm"], - "dependencies": [], + "archetype": "Boltslinger", + "archetype_req": 0, + "parents": [ + "Arrow Storm" + ], + "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 13, "col": 0, @@ -1123,18 +1548,22 @@ const atrees = { } ] } - ] + ] }, { "display_name": "Fire Mastery", "base_abil": 998, "desc": "Increases base damage from all Fire attacks", - "archetype": "Sharpshooter", - "archetype_req": 0, - "parents": ["Thunder Mastery", "Arrow Shield", "Cheaper Escape"], - "dependencies": [], + "archetype": "Sharpshooter", + "archetype_req": 0, + "parents": [ + "Thunder Mastery", + "Arrow Shield", + "Cheaper Escape" + ], + "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 13, "col": 6, @@ -1162,16 +1591,21 @@ const atrees = { } ] } - ] + ] }, { "display_name": "More Shields", "desc": "Give +2 charges to Arrow Shield.", "base_abil": "Arrow Shield", - "parents": ["Grappling Hook", "Basaltic Trap"], - "dependencies": ["Arrow Shield"], + "parents": [ + "Grappling Hook", + "Basaltic Trap" + ], + "dependencies": [ + "Arrow Shield" + ], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 21, "col": 7, @@ -1183,7 +1617,10 @@ const atrees = { "type": "add_spell_prop", "base_spell": 4, "target_part": "Total Damage", - "hits": { "Shield Damage": 2, "Single Bow": 2 } + "hits": { + "Shield Damage": 2, + "Single Bow": 2 + } }, { "type": "raw_stat", @@ -1201,12 +1638,16 @@ const atrees = { { "display_name": "Stormy Feet", "desc": "Windy Feet will last longer and add more speed.", - "archetype": "Boltslinger", + "archetype": "Boltslinger", "base_abil": "Escape", - "parents": ["Windstorm"], - "dependencies": ["Windy Feet"], + "parents": [ + "Windstorm" + ], + "dependencies": [ + "Windy Feet" + ], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 23, "col": 1, @@ -1221,59 +1662,85 @@ const atrees = { "display_name": "Refined Gunpowder", "desc": "Increase the damage of Arrow Bomb.", "base_abil": "Arrow Bomb", - "parents": ["Windstorm", "Traveler"], - "dependencies": [], + "parents": [ + "Windstorm", + "Traveler" + ], + "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 25, "col": 0, "icon": "node_0" }, "properties": {}, - "effects": [{ - "type": "add_spell_prop", - "base_spell": 3, - "target_part": "Arrow Bomb", - "multipliers": [50, 0, 0, 0, 0, 0] - }] + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 3, + "target_part": "Arrow Bomb", + "multipliers": [ + 50, + 0, + 0, + 0, + 0, + 0 + ] + } + ] }, { "display_name": "More Traps", "desc": "Increase the maximum amount of active Traps you can have by +2.", "archetype": "Trapper", - "archetype_req": 0, + "archetype_req": 0, "base_abil": "Basaltic Trap", - "parents": ["Bouncing Bomb"], - "dependencies": ["Basaltic Trap"], + "parents": [ + "Bouncing Bomb" + ], + "dependencies": [ + "Basaltic Trap" + ], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 26, "col": 8, "icon": "node_0" }, "properties": {}, - "effects": [{ - "type": "raw_stat", - "bonuses": [{ - "type": "prop", - "abil": "Basaltic Trap", - "name": "traps", - "value": 2 - }] - }] + "effects": [ + { + "type": "raw_stat", + "bonuses": [ + { + "type": "prop", + "abil": "Basaltic Trap", + "name": "traps", + "value": 2 + } + ] + } + ] }, { "display_name": "Better Arrow Shield", "desc": "Arrow Shield will gain additional area of effect, knockback and damage.", - "archetype": "Sharpshooter", - "archetype_req": 0, + "archetype": "Sharpshooter", + "archetype_req": 0, "base_abil": "Arrow Shield", - "parents": ["Mana Trap", "Shocking Bomb", "Twain's Arc"], - "dependencies": ["Arrow Shield"], + "parents": [ + "Mana Trap", + "Shocking Bomb", + "Twain's Arc" + ], + "dependencies": [ + "Arrow Shield" + ], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 28, "col": 6, @@ -1283,20 +1750,29 @@ const atrees = { "effects": [ { "type": "add_spell_prop", - "base_spell": 3, + "base_spell": 3, "target_part": "Arrow Shield", "behavior": "modify", - "multipliers": [40, 0, 0, 0, 0, 0] + "multipliers": [ + 40, + 0, + 0, + 0, + 0, + 0 + ] }, { "type": "raw_stat", - "bonuses": [{ - "type": "prop", - "abil": "Arrow Shield", - "behavior": "modify", - "name": "aoe", - "value": 1 - }] + "bonuses": [ + { + "type": "prop", + "abil": "Arrow Shield", + "behavior": "modify", + "name": "aoe", + "value": 1 + } + ] } ] }, @@ -1304,121 +1780,162 @@ const atrees = { "display_name": "Better Leap", "desc": "Reduce leap's cooldown by 1s.", "archetype": "Boltslinger", - "archetype_req": 0, + "archetype_req": 0, "base_abil": "Leap", - "parents": ["Leap", "Homing Shots"], - "dependencies": ["Leap"], + "parents": [ + "Leap", + "Homing Shots" + ], + "dependencies": [ + "Leap" + ], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 29, "col": 1, "icon": "node_0" }, "properties": {}, - "effects": [{ - "type": "raw_stat", - "bonuses": [{ - "type": "prop", - "abil": "Leap", - "name": "cooldown", - "value": -1 - }] - }] + "effects": [ + { + "type": "raw_stat", + "bonuses": [ + { + "type": "prop", + "abil": "Leap", + "name": "cooldown", + "value": -1 + } + ] + } + ] }, { "display_name": "Better Guardian Angels", "desc": "Your Guardian Angels can shoot +4 arrows before disappearing.", "archetype": "Boltslinger", - "archetype_req": 0, + "archetype_req": 0, "base_abil": "Arrow Shield", - "parents": ["Escape Artist", "Homing Shots"], - "dependencies": ["Guardian Angels"], + "parents": [ + "Escape Artist", + "Homing Shots" + ], + "dependencies": [ + "Guardian Angels" + ], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 31, "col": 2, "icon": "node_0" }, "properties": {}, - "effects": [{ - "type": "add_spell_prop", - "base_spell": 4, - "target_part": "Single Bow", - "hits": { "Single Arrow": 4 } - }] + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 4, + "target_part": "Single Bow", + "hits": { + "Single Arrow": 4 + } + } + ] }, { "display_name": "Cheaper Arrow Storm (2)", "desc": "Reduce the Mana cost of Arrow Storm.", "base_abil": "Arrow Storm", - "parents": ["Initiator", "Mana Trap"], - "dependencies": [], + "parents": [ + "Initiator", + "Mana Trap" + ], + "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 31, "col": 8, "icon": "node_0" }, "properties": {}, - "effects": [{ - "type": "add_spell_prop", - "base_spell": 1, - "cost": -5 - }] + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 1, + "cost": -5 + } + ] }, { "display_name": "Precise Shot", "desc": "+30% Critical Hit Damage", - "parents": ["Better Guardian Angels", "Cheaper Arrow Shield", "Arrow Hurricane"], - "dependencies": [], + "parents": [ + "Better Guardian Angels", + "Cheaper Arrow Shield", + "Arrow Hurricane" + ], + "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 33, "col": 2, "icon": "node_0" }, "properties": {}, - "effects": [{ - "type": "raw_stat", - "bonuses": [{ - "type": "stat", - "name": "critDamPct", - "value": 30 - }] - }] + "effects": [ + { + "type": "raw_stat", + "bonuses": [ + { + "type": "stat", + "name": "critDamPct", + "value": 30 + } + ] + } + ] }, { "display_name": "Cheaper Arrow Shield", "desc": "Reduce the Mana cost of Arrow Shield.", "base_abil": "Arrow Shield", - "parents": ["Precise Shot", "Initiator"], - "dependencies": [], + "parents": [ + "Precise Shot", + "Initiator" + ], + "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 33, "col": 4, "icon": "node_0" }, "properties": {}, - "effects": [{ - "type": "add_spell_prop", - "base_spell": 4, - "cost": -5 - }] + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 4, + "cost": -5 + } + ] }, { "display_name": "Rocket Jump", "desc": "Arrow Bomb's self-damage will knockback you farther away.", "base_abil": "Arrow Bomb", - "parents": ["Cheaper Arrow Storm (2)", "Initiator"], - "dependencies": ["Arrow Bomb"], + "parents": [ + "Cheaper Arrow Storm (2)", + "Initiator" + ], + "dependencies": [ + "Arrow Bomb" + ], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 33, "col": 6, @@ -1431,73 +1948,93 @@ const atrees = { "display_name": "Cheaper Escape (2)", "desc": "Reduce the Mana cost of Escape.", "base_abil": "Escape", - "parents": ["Call of the Hound", "Decimator"], - "dependencies": [], + "parents": [ + "Call of the Hound", + "Decimator" + ], + "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 34, "col": 7, "icon": "node_0" }, "properties": {}, - "effects": [{ - "type": "add_spell_prop", - "base_spell": 2, - "cost": -5 - }] + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 2, + "cost": -5 + } + ] }, { "display_name": "Stronger Hook", "desc": "Increase your Grappling Hook's range, speed and strength.", - "archetype": "Trapper", - "archetype_req": 5, + "archetype": "Trapper", + "archetype_req": 5, "base_abil": "Escape", - "parents": ["Cheaper Escape (2)"], - "dependencies": ["Grappling Hook"], + "parents": [ + "Cheaper Escape (2)" + ], + "dependencies": [ + "Grappling Hook" + ], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 35, "col": 8, "icon": "node_0" }, "properties": {}, - "effects": [{ - "type": "raw_stat", - "bonuses": [{ - "type": "prop", - "abil": "Grappling Hook", - "name": "range", - "value": 8 - }] - }] + "effects": [ + { + "type": "raw_stat", + "bonuses": [ + { + "type": "prop", + "abil": "Grappling Hook", + "name": "range", + "value": 8 + } + ] + } + ] }, { "display_name": "Cheaper Arrow Bomb (2)", "desc": "Reduce the Mana cost of Arrow Bomb.", "base_abil": "Arrow Bomb", - "parents": ["More Focus (2)", "Minefield"], - "dependencies": [], + "parents": [ + "More Focus (2)", + "Minefield" + ], + "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 40, "col": 5, "icon": "node_0" }, "properties": {}, - "effects": [{ - "type": "add_spell_prop", - "base_spell": 3, - "cost": -5 - }] + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 3, + "cost": -5 + } + ] }, { "display_name": "Bouncing Bomb", "desc": "Arrow Bomb will bounce once when hitting a block or enemy", "base_abil": "Arrow Bomb", - "parents": ["More Shields"], + "parents": [ + "More Shields" + ], "dependencies": [], "blockers": [], "cost": 2, @@ -1512,9 +2049,12 @@ const atrees = { { "display_name": "Homing Shots", "desc": "Your Main Attack arrows will follow nearby enemies and not be affected by gravity", - "archetype": "Sharpshooter", + "archetype": "Sharpshooter", "base_abil": 999, - "parents": ["Leap", "Shocking Bomb"], + "parents": [ + "Leap", + "Shocking Bomb" + ], "dependencies": [], "blockers": [], "cost": 2, @@ -1532,7 +2072,10 @@ const atrees = { "archetype": "Boltslinger", "archetype_req": 8, "base_abil": "Arrow Bomb", - "parents": ["Arrow Hurricane", "Precise Shot"], + "parents": [ + "Arrow Hurricane", + "Precise Shot" + ], "dependencies": [], "blockers": [], "cost": 2, @@ -1542,19 +2085,30 @@ const atrees = { "icon": "node_1" }, "properties": {}, - "effects": [{ - "type": "add_spell_prop", - "base_spell": 3, - "target_part": "Shrapnel Bomblet", - "multipliers": [40, 0, 0, 0, 20, 0] - }] + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 3, + "target_part": "Shrapnel Bomblet", + "multipliers": [ + 40, + 0, + 0, + 0, + 20, + 0 + ] + } + ] }, { "display_name": "Elusive", "desc": "If you do not get hit for 8+ seconds, become immune to self-damage and remove Arrow Storm's recoil. (Dodging counts as not getting hit)", "archetype": "Boltslinger", "archetype_req": 0, - "parents": ["Geyser Stomp"], + "parents": [ + "Geyser Stomp" + ], "dependencies": [], "blockers": [], "cost": 2, @@ -1572,9 +2126,13 @@ const atrees = { "archetype": "Boltslinger", "archetype_req": 0, "base_abil": 999, - "parents": ["Escape"], + "parents": [ + "Escape" + ], "dependencies": [], - "blockers": ["Power Shots"], + "blockers": [ + "Power Shots" + ], "cost": 1, "display": { "row": 7, @@ -1587,13 +2145,22 @@ const atrees = { "type": "add_spell_prop", "base_spell": 0, "target_part": "Single Shot", - "multipliers": [-30, 0, 0, 0, 0, 0] + "multipliers": [ + -30, + 0, + 0, + 0, + 0, + 0 + ] }, { "type": "add_spell_prop", "base_spell": 0, "target_part": "Total Damage", - "hits": { "Single Shot": 2 }, + "hits": { + "Single Shot": 2 + }, "display": "Total Damage" } ] @@ -1604,8 +2171,13 @@ const atrees = { "archetype": "Boltslinger", "archetype_req": 0, "base_abil": 999, - "parents": ["Arrow Rain", "Frenzy"], - "dependencies": ["Double Shots"], + "parents": [ + "Arrow Rain", + "Frenzy" + ], + "dependencies": [ + "Double Shots" + ], "blockers": [], "cost": 1, "display": { @@ -1619,13 +2191,22 @@ const atrees = { "type": "add_spell_prop", "base_spell": 0, "target_part": "Single Shot", - "multipliers": [-20, 0, 0, 0, 0, 0] + "multipliers": [ + -20, + 0, + 0, + 0, + 0, + 0 + ] }, { "type": "add_spell_prop", "base_spell": 0, "target_part": "Total Damage", - "hits": { "Single Shot": 1 }, + "hits": { + "Single Shot": 1 + }, "display": "Total Damage" } ] @@ -1636,9 +2217,13 @@ const atrees = { "archetype": "Sharpshooter", "archetype_req": 0, "base_abil": 999, - "parents": ["Escape"], + "parents": [ + "Escape" + ], "dependencies": [], - "blockers": ["Double Shots"], + "blockers": [ + "Double Shots" + ], "cost": 1, "display": { "row": 7, @@ -1653,7 +2238,9 @@ const atrees = { "desc": "When hitting an aggressive mob 5+ blocks away, gain +1 Focus (Max 3). Resets if you miss once", "archetype": "Sharpshooter", "archetype_req": 2, - "parents": ["Phantom Ray"], + "parents": [ + "Phantom Ray" + ], "dependencies": [], "blockers": [], "cost": 2, @@ -1663,17 +2250,21 @@ const atrees = { "icon": "node_3" }, "properties": {}, - "effects": [{ - "type": "stat_scaling", - "slider": true, - "slider_name": "Focus", - "output": { - "type": "stat", - "name": "damMult.Focus" - }, - "scaling": [40], - "slider_max": 3 - }] + "effects": [ + { + "type": "stat_scaling", + "slider": true, + "slider_name": "Focus", + "output": { + "type": "stat", + "name": "damMult.Focus" + }, + "scaling": [ + 40 + ], + "slider_max": 3 + } + ] }, { "display_name": "More Focus", @@ -1681,8 +2272,13 @@ const atrees = { "archetype": "Sharpshooter", "archetype_req": 0, "base_abil": "Focus", - "parents": ["Cheaper Arrow Storm", "Grappling Hook"], - "dependencies": ["Focus"], + "parents": [ + "Cheaper Arrow Storm", + "Grappling Hook" + ], + "dependencies": [ + "Focus" + ], "blockers": [], "cost": 1, "display": { @@ -1691,17 +2287,21 @@ const atrees = { "icon": "node_0" }, "properties": {}, - "effects": [{ - "type": "stat_scaling", - "slider": true, - "slider_name": "Focus", - "slider_max": 2, - "output": { - "type": "stat", - "name": "damMult.Focus" - }, - "scaling": [-5] - }] + "effects": [ + { + "type": "stat_scaling", + "slider": true, + "slider_name": "Focus", + "slider_max": 2, + "output": { + "type": "stat", + "name": "damMult.Focus" + }, + "scaling": [ + -5 + ] + } + ] }, { "display_name": "More Focus (2)", @@ -1709,8 +2309,13 @@ const atrees = { "archetype": "Sharpshooter", "archetype_req": 0, "base_abil": "Focus", - "parents": ["Crepuscular Ray", "Snow Storm"], - "dependencies": ["Focus"], + "parents": [ + "Crepuscular Ray", + "Snow Storm" + ], + "dependencies": [ + "Focus" + ], "blockers": [], "cost": 1, "display": { @@ -1719,22 +2324,29 @@ const atrees = { "icon": "node_0" }, "properties": {}, - "effects": [{ - "type": "stat_scaling", - "slider": true, - "slider_name": "Focus", - "slider_max": 2, - "output": { - "type": "stat", - "name": "damMult.Focus" - }, - "scaling": [-5] - }] + "effects": [ + { + "type": "stat_scaling", + "slider": true, + "slider_name": "Focus", + "slider_max": 2, + "output": { + "type": "stat", + "name": "damMult.Focus" + }, + "scaling": [ + -5 + ] + } + ] }, { "display_name": "Traveler", "desc": "For every 1% Walk Speed you have from items, gain +1 Raw Spell Damage (Max 100)", - "parents": ["Refined Gunpowder", "Twain's Arc"], + "parents": [ + "Refined Gunpowder", + "Twain's Arc" + ], "dependencies": [], "blockers": [], "cost": 1, @@ -1744,20 +2356,26 @@ const atrees = { "icon": "node_0" }, "properties": {}, - "effects": [{ - "type": "stat_scaling", - "slider": false, - "inputs": [{ - "type": "stat", - "name": "spd" - }], - "output": { - "type": "stat", - "name": "sdRaw" - }, - "scaling": [1], - "max": 100 - }] + "effects": [ + { + "type": "stat_scaling", + "slider": false, + "inputs": [ + { + "type": "stat", + "name": "spd" + } + ], + "output": { + "type": "stat", + "name": "sdRaw" + }, + "scaling": [ + 1 + ], + "max": 100 + } + ] }, { "display_name": "Patient Hunter", @@ -1765,8 +2383,12 @@ const atrees = { "archetype": "Trapper", "archetype_req": 0, "base_abil": "Basaltic Trap", - "parents": ["More Shields"], - "dependencies": ["Basaltic Trap"], + "parents": [ + "More Shields" + ], + "dependencies": [ + "Basaltic Trap" + ], "blockers": [], "cost": 2, "display": { @@ -1777,18 +2399,22 @@ const atrees = { "properties": { "max": 80 }, - "effects": [{ - "type": "stat_scaling", - "slider": true, - "slider_name": "Trap Wait Time", - "slider_max": 4, - "output": { - "type": "stat", - "name": "damMult.Basaltic:7.Trap Damage" - }, - "slider_step": 1, - "scaling": [20] - }] + "effects": [ + { + "type": "stat_scaling", + "slider": true, + "slider_name": "Trap Wait Time", + "slider_max": 4, + "output": { + "type": "stat", + "name": "damMult.Basaltic:7.Trap Damage" + }, + "slider_step": 1, + "scaling": [ + 20 + ] + } + ] }, { "display_name": "Stronger Patient Hunter", @@ -1796,8 +2422,12 @@ const atrees = { "archetype": "Trapper", "archetype_req": 0, "base_abil": "Basaltic Trap", - "parents": ["Grape Bomb"], - "dependencies": ["Patient Hunter"], + "parents": [ + "Grape Bomb" + ], + "dependencies": [ + "Patient Hunter" + ], "blockers": [], "cost": 1, "display": { @@ -1815,12 +2445,14 @@ const atrees = { }, { "type": "raw_stat", - "bonuses": [{ - "type": "prop", - "abil": "Patient Hunter", - "name": "max", - "value": 80 - }] + "bonuses": [ + { + "type": "prop", + "abil": "Patient Hunter", + "name": "max", + "value": 80 + } + ] } ] }, @@ -1829,7 +2461,10 @@ const atrees = { "desc": "Every time you hit an enemy, briefly gain +6% Walk Speed (Max 200%). Decay -40% of the bonus every second", "archetype": "Boltslinger", "archetype_req": 0, - "parents": ["Triple Shots", "Nimble String"], + "parents": [ + "Triple Shots", + "Nimble String" + ], "dependencies": [], "blockers": [], "cost": 2, @@ -1839,25 +2474,38 @@ const atrees = { "icon": "node_1" }, "properties": {}, - "effects": [{ - "type": "stat_scaling", - "slider": true, - "slider_name": "Hits dealt", - "output": { - "type": "stat", - "name": "spd" - }, - "scaling": [6], - "max": 160 - }] + "effects": [ + { + "type": "stat_scaling", + "slider": true, + "slider_name": "Hits dealt", + "output": { + "type": "stat", + "name": "spd" + }, + "scaling": [ + 6 + ], + "max": 160 + } + ] }, { "display_name": "Phantom Ray", "desc": "Condense Arrow Storm into a single ray that damages enemies 10 times per second", "base_abil": "Arrow Storm", - "parents": ["Water Mastery", "Fire Creep"], - "dependencies": ["Arrow Storm"], - "blockers": ["Windstorm", "Nimble String", "Arrow Hurricane"], + "parents": [ + "Water Mastery", + "Fire Creep" + ], + "dependencies": [ + "Arrow Storm" + ], + "blockers": [ + "Windstorm", + "Nimble String", + "Arrow Hurricane" + ], "cost": 2, "display": { "row": 16, @@ -1866,24 +2514,31 @@ const atrees = { }, "properties": {}, "effects": [ - { + { "type": "replace_spell", "name": "Phantom Ray", - "base_spell": 1, - "spell_type": "damage", + "base_spell": 1, + "spell_type": "damage", "scaling": "spell", - "display": "Total Damage", + "display": "Total Damage", "parts": [ - { + { "name": "Single Arrow", "type": "damage", - "multipliers": [25, 0, 5, 0, 0, 0] + "multipliers": [ + 25, + 0, + 5, + 0, + 0, + 0 + ] }, - { + { "name": "Total Damage", "type": "total", "hits": { - "Single Arrow": 16 + "Single Arrow": 16 } } ] @@ -1899,8 +2554,13 @@ const atrees = { "display_name": "Arrow Rain", "desc": "When Arrow Shield loses its last charge, unleash 150 arrows raining down on enemies", "base_abil": "Arrow Shield", - "parents": ["Nimble String", "Air Mastery"], - "dependencies": ["Arrow Shield"], + "parents": [ + "Nimble String", + "Air Mastery" + ], + "dependencies": [ + "Arrow Shield" + ], "blockers": [], "cost": 2, "display": { @@ -1914,13 +2574,22 @@ const atrees = { "type": "add_spell_prop", "base_spell": 4, "target_part": "Arrow Rain (Per Arrow)", - "multipliers": [80, 0, 0, 0, 0, 60] + "multipliers": [ + 80, + 0, + 0, + 0, + 0, + 60 + ] }, { "type": "add_spell_prop", "base_spell": 4, "target_part": "Arrow Rain (Total)", - "hits": { "Arrow Rain (Per Arrow)": 150 } + "hits": { + "Arrow Rain (Per Arrow)": 150 + } } ] }, @@ -1930,8 +2599,13 @@ const atrees = { "archetype": "Sharpshooter", "archetype_req": 0, "base_abil": "Arrow Storm", - "parents": ["Cheaper Arrow Shield", "Cheaper Escape (2)"], - "dependencies": ["Phantom Ray"], + "parents": [ + "Cheaper Arrow Shield", + "Cheaper Escape (2)" + ], + "dependencies": [ + "Phantom Ray" + ], "blockers": [], "cost": 2, "display": { @@ -1940,27 +2614,31 @@ const atrees = { "icon": "node_1" }, "properties": {}, - "effects": [{ - "type": "stat_scaling", - "slider": true, - "slider_name": "Phantom Ray hits", - "slider_max": 7, - "output": { - "type": "stat", - "name": "damMult.Decimator:1.Single Arrow" - }, - "scaling": [10] - }] + "effects": [ + { + "type": "stat_scaling", + "slider": true, + "slider_name": "Phantom Ray hits", + "slider_max": 7, + "output": { + "type": "stat", + "name": "damMult.Decimator:1.Single Arrow" + }, + "scaling": [ + 10 + ] + } + ] } ], "Warrior": [ { "display_name": "Bash", "desc": "Violently bash the ground, dealing high damage in a large area", - "parents": [], - "dependencies": [], + "parents": [], + "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 0, "col": 4, @@ -1983,7 +2661,14 @@ const atrees = { { "name": "Single Hit", "type": "damage", - "multipliers": [130, 20, 0, 0, 0, 0] + "multipliers": [ + 130, + 20, + 0, + 0, + 0, + 0 + ] }, { "name": "Total Damage", @@ -1994,16 +2679,18 @@ const atrees = { } ] } - ] + ] }, { "display_name": "Spear Proficiency 1", "desc": "Improve your Main Attack's damage and range w/ spear", "base_abil": 999, - "parents": ["Bash"], - "dependencies": [], + "parents": [ + "Bash" + ], + "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 2, "col": 4, @@ -2012,46 +2699,56 @@ const atrees = { "properties": { "melee_range": 1 }, - "effects": [{ - "type": "add_spell_prop", - "base_spell": 0, - "target_part": "melee", - "multipliers": [5, 0, 0, 0, 0, 0] - }] + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 0, + "target_part": "melee", + "multipliers": [ + 5, + 0, + 0, + 0, + 0, + 0 + ] + } + ] }, - { "display_name": "Cheaper Bash", "desc": "Reduce the Mana cost of Bash", "base_abil": "Bash", - "parents": ["Spear Proficiency 1"], - "dependencies": [], + "parents": [ + "Spear Proficiency 1" + ], + "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 2, "col": 2, "icon": "node_0" }, - "properties": { - - }, + "properties": {}, "effects": [ { "type": "add_spell_prop", "base_spell": 1, "cost": -10 } - ] + ] }, { "display_name": "Double Bash", "desc": "Bash will hit a second time at a farther range", - "parents": ["Spear Proficiency 1"], + "parents": [ + "Spear Proficiency 1" + ], "base_abil": "Bash", - "dependencies": [], + "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 4, "col": 4, @@ -2075,44 +2772,55 @@ const atrees = { "base_spell": 1, "target_part": "Single Hit", "cost": 0, - "multipliers": [-50, 0, 0, 0, 0, 0] + "multipliers": [ + -50, + 0, + 0, + 0, + 0, + 0 + ] } - ] + ] }, - { "display_name": "Charge", "desc": "Charge forward at high speed (hold shift to cancel)", - "parents": ["Double Bash"], - "dependencies": [], + "parents": [ + "Double Bash" + ], + "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 6, "col": 4, "icon": "node_warrior" }, "properties": {}, - "effects": [{ - "type": "replace_spell", - "name": "Charge", - "cost": 25, - "base_spell": 2, - "spell_type": "damage", - "scaling": "spell", - "display": "", - "parts": [] - }] + "effects": [ + { + "type": "replace_spell", + "name": "Charge", + "cost": 25, + "base_spell": 2, + "spell_type": "damage", + "scaling": "spell", + "display": "", + "parts": [] + } + ] }, - { "display_name": "Heavy Impact", "desc": "After using Charge, violently crash down into the ground and deal damage", "base_abil": "Charge", - "parents": ["Uppercut"], - "dependencies": [], + "parents": [ + "Uppercut" + ], + "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 9, "col": 1, @@ -2127,34 +2835,45 @@ const atrees = { "base_spell": 2, "target_part": "Heavy Impact", "cost": 0, - "multipliers": [100, 0, 0, 0, 0, 0] + "multipliers": [ + 100, + 0, + 0, + 0, + 0, + 0 + ] }, { "type": "add_spell_prop", "base_spell": 2, "target_part": "Contact Damage", "display": "Contact Damage", - "hits": { "Heavy Impact": 1 } + "hits": { + "Heavy Impact": 1 + } } - ] + ] }, - { "display_name": "Vehement", "desc": "For every 1% or 1 Raw Main Attack Damage you have from items, gain +2% Walk Speed (Max 20%)", - "archetype": "Fallen", - "archetype_req": 0, - "parents": ["Charge"], - "dependencies": [], - "blockers": ["Tougher Skin"], - "cost": 1, + "archetype": "Fallen", + "archetype_req": 0, + "parents": [ + "Charge" + ], + "dependencies": [], + "blockers": [ + "Tougher Skin" + ], + "cost": 1, "display": { "row": 6, "col": 2, "icon": "node_0" }, - "properties": { - }, + "properties": {}, "effects": [ { "type": "stat_scaling", @@ -2173,28 +2892,33 @@ const atrees = { "type": "stat", "name": "spd" }, - "scaling": [2, 2], + "scaling": [ + 2, + 2 + ], "max": 20 } - ] + ] }, - { "display_name": "Tougher Skin", "desc": "Harden your skin and become permanently +5% more resistant. For every 1% or 1 Raw Heath Regen you have from items, gain +10 Health (Max 100)", - "archetype": "Paladin", - "archetype_req": 0, - "parents": ["Charge"], - "dependencies": [], - "blockers": ["Vehement"], - "cost": 1, + "archetype": "Paladin", + "archetype_req": 0, + "parents": [ + "Charge" + ], + "dependencies": [], + "blockers": [ + "Vehement" + ], + "cost": 1, "display": { "row": 6, "col": 6, "icon": "node_0" }, - "properties": { - }, + "properties": {}, "effects": [ { "type": "raw_stat", @@ -2223,19 +2947,24 @@ const atrees = { "type": "stat", "name": "hpBonus" }, - "scaling": [10, 10], + "scaling": [ + 10, + 10 + ], "max": 100 } - ] + ] }, - { "display_name": "Uppercut", "desc": "Rocket enemies in the air and deal massive damage", - "parents": ["Vehement", "Cheaper Charge"], - "dependencies": [], + "parents": [ + "Vehement", + "Cheaper Charge" + ], + "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 8, "col": 2, @@ -2257,48 +2986,60 @@ const atrees = { "parts": [ { "name": "Uppercut", - "multipliers": [200, 40, 40, 0, 0, 0] + "multipliers": [ + 200, + 40, + 40, + 0, + 0, + 0 + ] }, { "name": "Total Damage", - "hits": { "Uppercut": 1 } + "hits": { + "Uppercut": 1 + } } ] } - ] + ] }, - { "display_name": "Cheaper Charge", "desc": "Reduce the Mana cost of Charge", "base_abil": "Charge", - "parents": ["Uppercut", "War Scream"], - "dependencies": [], + "parents": [ + "Uppercut", + "War Scream" + ], + "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 8, "col": 4, "icon": "node_0" }, - "properties": { - }, + "properties": {}, "effects": [ { "type": "add_spell_prop", "base_spell": 2, "cost": -5 } - ] + ] }, - { "display_name": "War Scream", "desc": "Emit a terrorizing roar that deals damage, pull nearby enemies, and add damage resistance to yourself and allies", - "parents": ["Tougher Skin", "Cheaper Charge"], - "dependencies": [], + "parents": [ + "Tougher Skin", + "Cheaper Charge" + ], + "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 8, "col": 6, @@ -2321,1814 +3062,40 @@ const atrees = { "parts": [ { "name": "War Scream", - "multipliers": [50, 0, 0, 0, 50, 0] + "multipliers": [ + 50, + 0, + 0, + 0, + 50, + 0 + ] }, { "name": "Total Damage", - "hits": { "War Scream": 1 } + "hits": { + "War Scream": 1 + } } ] } - ] + ] }, - { "display_name": "Earth Mastery", "base_abil": 998, "desc": "Increases base damage from all Earth attacks", - "archetype": "Fallen", - "archetype_req": 0, - "parents": ["Uppercut"], - "dependencies": [], - "blockers": [], - "cost": 1, - "display": { - "row": 10, - "col": 0, - "icon": "node_0" - }, - "properties": { - }, - "effects": [ - { - "type": "raw_stat", - "bonuses": [ - { "type": "stat", "name": "eDamPct", "value": 20 }, - { "type": "stat", "name": "eDamAddMin", "value": 2 }, - { "type": "stat", "name": "eDamAddMax", "value": 4 } - ] - } - ] - }, - - { - "display_name": "Thunder Mastery", - "base_abil": 998, - "desc": "Increases base damage from all Thunder attacks", - "archetype": "Fallen", - "archetype_req": 0, - "parents": ["Uppercut", "Air Mastery", "Cheaper Charge"], - "dependencies": [], - "blockers": [], - "cost": 1, - "display": { - "row": 10, - "col": 2, - "icon": "node_0" - }, - "properties": { - }, - "effects": [ - { - "type": "raw_stat", - "bonuses": [ - { "type": "stat", "name": "tDamPct", "value": 10 }, - { "type": "stat", "name": "tDamAddMin", "value": 1 }, - { "type": "stat", "name": "tDamAddMax", "value": 8 } - ] - } - ] - }, - - { - "display_name": "Water Mastery", - "base_abil": 998, - "desc": "Increases base damage from all Water attacks", - "archetype": "Battle Monk", - "archetype_req": 0, - "parents": ["Cheaper Charge", "Thunder Mastery", "Air Mastery"], - "dependencies": [], - "blockers": [], - "cost": 1, - "display": { - "row": 11, - "col": 4, - "icon": "node_0" - }, - "properties": { - }, - "effects": [ - { - "type": "raw_stat", - "bonuses": [ - { "type": "stat", "name": "wDamPct", "value": 15 }, - { "type": "stat", "name": "wDamAddMin", "value": 2 }, - { "type": "stat", "name": "wDamAddMax", "value": 4 } - ] - } - ] - }, - - { - "display_name": "Air Mastery", - "base_abil": 998, - "desc": "Increases base damage from all Air attacks", - "archetype": "Battle Monk", - "archetype_req": 0, - "parents": ["War Scream", "Thunder Mastery", "Cheaper Charge"], - "dependencies": [], - "blockers": [], - "cost": 1, - "display": { - "row": 10, - "col": 6, - "icon": "node_0" - }, - "properties": { - }, - "effects": [ - { - "type": "raw_stat", - "bonuses": [ - { "type": "stat", "name": "aDamPct", "value": 15 }, - { "type": "stat", "name": "aDamAddMin", "value": 3 }, - { "type": "stat", "name": "aDamAddMax", "value": 4 } - ] - } - ] - }, - - { - "display_name": "Fire Mastery", - "base_abil": 998, - "desc": "Increases base damage from all Fire attacks", - "archetype": "Paladin", - "archetype_req": 0, - "parents": ["War Scream"], - "dependencies": [], - "blockers": [], - "cost": 1, - "display": { - "row": 10, - "col": 8, - "icon": "node_0" - }, - "properties": { - }, - "effects": [ - { - "type": "raw_stat", - "bonuses": [ - { "type": "stat", "name": "fDamPct", "value": 15 }, - { "type": "stat", "name": "fDamAddMin", "value": 3 }, - { "type": "stat", "name": "fDamAddMax", "value": 5 } - ] - } - ] - }, - - { - "display_name": "Quadruple Bash", - "desc": "Bash will hit 4 times at an even larger range", - "archetype": "Fallen", - "archetype_req": 0, - "base_abil": "Bash", - "parents": ["Earth Mastery", "Fireworks"], - "dependencies": [], - "blockers": [], - "cost": 2, - "display": { - "row": 12, - "col": 0, - "icon": "node_1" - }, - "properties": { - "range": 6 - }, - "effects": [ - { - "type": "add_spell_prop", - "base_spell": 1, - "target_part": "Total Damage", - "hits": { - "Single Hit": 2 - } - }, - { - "type": "add_spell_prop", - "base_spell": 1, - "target_part": "Single Hit", - "multipliers": [-20, 0, 0, 0, 0, 0] - } - ] - }, - - { - "display_name": "Fireworks", - "desc": "Mobs hit by Uppercut will explode mid-air and receive additional damage", - "archetype": "Fallen", - "archetype_req": 0, - "base_abil": "Uppercut", - "parents": ["Thunder Mastery", "Quadruple Bash"], - "dependencies": [], - "blockers": [], - "cost": 2, - "display": { - "row": 12, - "col": 2, - "icon": "node_1" - }, - "properties": { - }, - "effects": [ - { - "type": "add_spell_prop", - "base_spell": 3, - "target_part": "Fireworks", - "multipliers": [80, 0, 20, 0, 0, 0] - }, - { - "type": "add_spell_prop", - "base_spell": 3, - "target_part": "Total Damage", - "hits": { - "Fireworks": 1 - } - } - ] - }, - - { - "display_name": "Half-Moon Swipe", - "desc": "Uppercut will deal a footsweep attack at a longer and wider angle. All elemental conversions become Water", - "archetype": "Battle Monk", - "archetype_req": 1, - "base_abil": "Uppercut", - "parents": ["Water Mastery"], - "dependencies": ["Uppercut"], - "blockers": [], - "cost": 2, - "display": { - "row": 13, - "col": 4, - "icon": "node_1" - }, - "properties": { - "range": 4 - }, - "effects": [ - { - "type": "add_spell_prop", - "base_spell": 3, - "target_part": "Uppercut", - "cost": -10, - "multipliers": [-70, 0, 0, 30, 0, 0] - } - ] - }, - - { - "display_name": "Flyby Jab", - "desc": "Damage enemies in your way when using Charge", - "base_abil": "Charge", - "parents": ["Air Mastery", "Flaming Uppercut"], - "dependencies": [], - "blockers": [], - "cost": 2, - "display": { - "row": 12, - "col": 6, - "icon": "node_1" - }, - "properties": { - "aoe": 2 - }, - "effects": [ - { - "type": "add_spell_prop", - "base_spell": 2, - "target_part": "Flyby Jab", - "multipliers": [20, 0, 0, 0, 0, 40] - }, - { - "type": "add_spell_prop", - "base_spell": 2, - "target_part": "Contact Damage", - "display": "Contact Damage", - "hits": { "Flyby Jab": 1 } - } - ] - }, - - { - "display_name": "Flaming Uppercut", - "desc": "Uppercut will light mobs on fire, dealing damage every 0.6 seconds", - "archetype": "Paladin", - "archetype_req": 0, - "base_abil": "Uppercut", - "parents": ["Fire Mastery", "Flyby Jab"], - "dependencies": ["Uppercut"], - "blockers": [], - "cost": 2, - "display": { - "row": 12, - "col": 8, - "icon": "node_1" - }, - "properties": { - "duration": 3, - "tick": 0.6 - }, - "effects": [ - { - "type": "replace_spell", - "name": "Flaming Uppercut", - "base_spell": 8, - "display": "DPS", - "parts": [ - { - "name": "Damage Tick", - "multipliers": [0, 0, 0, 0, 50, 0] - }, - { - "name": "DPS", - "hits": { - "Damage Tick": 1.66666666666666666666666666666 - } - }, - { - "name": "Total Damage", - "hits": { - "Damage Tick": 5 - } - } - ] - } - ] - }, - - { - "display_name": "Iron Lungs", - "desc": "War Scream deals more damage", - "archetype": "Paladin", - "archetype_req": 0, - "base_abil": "War Scream", - "parents": ["Flyby Jab", "Flaming Uppercut"], - "dependencies": [], - "blockers": [], - "cost": 1, - "display": { - "row": 13, - "col": 7, - "icon": "node_0" - }, - "properties": {}, - "effects": [ - { - "type": "add_spell_prop", - "base_spell": 4, - "target_part": "War Scream", - "cost": 0, - "multipliers": [30, 0, 0, 0, 0, 30] - } - ] - }, - - { - "display_name": "Generalist", - "desc": "After casting 3 different spells in a row, your next spell will cost 5 mana", - "archetype": "Battle Monk", - "archetype_req": 3, - "parents": ["Counter"], - "dependencies": [], - "blockers": [], - "cost": 2, - "display": { - "row": 15, - "col": 2, - "icon": "node_3" - }, - "properties": {}, - "effects": [] - }, - - { - "display_name": "Counter", - "desc": "When dodging a nearby enemy attack, get 30% chance to instantly attack back", - "archetype": "Battle Monk", - "archetype_req": 0, - "parents": ["Half-Moon Swipe"], - "dependencies": [], - "blockers": [], - "cost": 2, - "display": { - "row": 15, - "col": 4, - "icon": "node_1" - }, - "properties": { - "chance": 30 - }, - "effects": [ - { - "type": "replace_spell", - "name": "Counter", - "base_spell": 5, - "display": "Counter Damage", - "parts": [ - { - "name": "Counter Damage", - "multipliers": [60, 0, 20, 0, 0, 20] - } - ] - } - ] - }, - - { - "display_name": "Mantle of the Bovemists", - "desc": "When casting War Scream, create a holy shield around you that reduces all incoming damage by 70% for 3 hits (20s cooldown)", - "archetype": "Paladin", - "archetype_req": 3, - "parents": ["Iron Lungs"], - "dependencies": ["War Scream"], - "blockers": [], - "cost": 2, - "display": { - "row": 15, - "col": 7, - "icon": "node_3" - }, - "properties": { - "mantle_charge": 3 - }, - "effects": [ - { - "type": "raw_stat", - "toggle": "Activate Mantle", - "bonuses": [{ "type": "stat", "name": "defMult.Mantle", "value": 70}] - } - ] - }, - - { - "display_name": "Bak'al's Grasp", - "desc": "After casting War Scream, become Corrupted (15s Cooldown). You cannot heal while in that state. While Corrupted, every 2% of Health you lose will add +4 Raw Damage to your attacks (Max 120)", - "archetype": "Fallen", - "archetype_req": 2, - "parents": ["Quadruple Bash", "Fireworks"], - "dependencies": ["War Scream"], - "blockers": [], - "cost": 2, - "display": { - "row": 16, - "col": 1, - "icon": "node_3" - }, - "properties": { - "cooldown": 15 - }, - "effects": [ - { - "type": "stat_scaling", - "slider": true, - "slider_name": "Corrupted", - "slider_max": 100, - "slider_step": 1, - "output": { - "type": "stat", - "name": "damRaw" - }, - "max": 120, - "scaling": [2] - } - ] - }, - - { - "display_name": "Spear Proficiency 2", - "desc": "Improve your Main Attack's damage and range w/ spear", - "base_abil": 999, - "parents": ["Bak'al's Grasp", "Cheaper Uppercut"], - "dependencies": [], - "blockers": [], - "cost": 1, - "display": { - "row": 17, - "col": 0, - "icon": "node_0" - }, - "properties": { - "melee_range": 1 - }, - "effects": [{ - "type": "add_spell_prop", - "base_spell": 0, - "target_part": "melee", - "multipliers": [5, 0, 0, 0, 0, 0] - }] - }, - - { - "display_name": "Cheaper Uppercut", - "desc": "Reduce the Mana Cost of Uppercut", - "base_abil": "Uppercut", - "parents": ["Spear Proficiency 2", "Aerodynamics", "Counter"], - "dependencies": [], - "blockers": [], - "cost": 1, - "display": { - "row": 17, - "col": 3, - "icon": "node_0" - }, - "properties": { - }, - "effects": [ - { - "type": "add_spell_prop", - "base_spell": 3, - "cost": -5 - } - ] - }, - - { - "display_name": "Aerodynamics", - "desc": "During Charge, you can steer and change direction", - "archetype": "Battle Monk", - "archetype_req": 0, - "base_abil": "Charge", - "parents": ["Cheaper Uppercut", "Provoke"], - "dependencies": [], - "blockers": [], - "cost": 2, - "display": { - "row": 17, - "col": 5, - "icon": "node_1" - }, - "properties": {}, - "effects": [] - }, - - { - "display_name": "Provoke", - "desc": "Mobs damaged by War Scream will target only you for at least 5s. Reduce the Mana cost of War Scream", - "base_abil": "War Scream", - "parents": ["Aerodynamics", "Mantle of the Bovemists"], - "dependencies": [], - "blockers": [], - "cost": 2, - "display": { - "row": 17, - "col": 7, - "icon": "node_1" - }, - "properties": {}, - "effects": [ - { - "type": "add_spell_prop", - "base_spell": 4, - "cost": -5 - } - ] - }, - - { - "display_name": "Precise Strikes", - "desc": "+30% Critical Hit Damage", - "parents": ["Cheaper Uppercut", "Spear Proficiency 2"], - "dependencies": [], - "blockers": [], - "cost": 1, - "display": { - "row": 18, - "col": 2, - "icon": "node_0" - }, - "properties": { - }, - "effects": [ - { - "type": "raw_stat", - "bonuses": [ - { - "type": "stat", - "name": "critDamPct", - "value": 30 - } - ] - } - ] - }, - - { - "display_name": "Air Shout", - "desc": "War Scream will fire a projectile that can go through walls and deal damage multiple times", - "base_abil": "War Scream", - "parents": ["Aerodynamics", "Provoke"], - "dependencies": ["War Scream"], - "blockers": [], - "cost": 2, - "display": { - "row": 18, - "col": 6, - "icon": "node_1" - }, - "properties": {"attackRate": 2}, - "effects": [ - { - "type": "add_spell_prop", - "base_spell": 4, - "target_part": "Air Shout", - "multipliers": [40, 0, 0, 0, 0, 10] - } - ] - }, - - { - "display_name": "Enraged Blow", - "desc": "While Corriupted, every 1% of Health you lose will increase your damage by +3% (Max 300%)", - "archetype": "Fallen", - "archetype_req": 0, - "base_abil": "Bak'al's Grasp", - "parents": ["Spear Proficiency 2"], - "dependencies": ["Bak'al's Grasp"], - "blockers": [], - "cost": 2, - "display": { - "row": 20, - "col": 0, - "icon": "node_2" - }, - "properties": { - }, - "effects": [ - { - "type": "stat_scaling", - "slider_name": "Corrupted", - "slider": true, - "output": { - "type": "stat", - "name": "damMult.Enraged" - }, - "scaling": [3] - } - ] - }, - - { - "display_name": "Flying Kick", - "desc": "When using Charge, mobs hit will halt your momentum and get knocked back", - "archetype": "Battle Monk", - "archetype_req": 1, - "base_abil": "Charge", - "parents": ["Cheaper Uppercut", "Stronger Mantle"], - "dependencies": [], - "blockers": [], - "cost": 2, - "display": { - "row": 20, - "col": 3, - "icon": "node_1" - }, - "properties": { - }, - "effects": [ - { - "type": "add_spell_prop", - "base_spell": 2, - "target_part": "Flying Kick", - "multipliers": [150, 0, 0, 20, 0, 30] - }, - { - "type": "add_spell_prop", - "base_spell": 2, - "target_part": "Flying Kick Max Damage", - "hits": { "Flying Kick": 1 }, - "display": "Flying Kick Max Damage" - } - ] - }, - - { - "display_name": "Stronger Mantle", - "desc": "Add +2 additional charges to Mantle of the Bovemists", - "archetype": "Paladin", - "archetype_req": 0, - "base_abil": "Mantle of the Bovemists", - "parents": ["Manachism", "Flying Kick"], - "dependencies": ["Mantle of the Bovemists"], - "blockers": [], - "cost": 1, - "display": { - "row": 20, - "col": 6, - "icon": "node_0" - }, - "properties": {}, - "effects": [ - { - "type": "raw_stat", - "bonuses": [ - { - "type": "prop", - "abil": "Mantle of the Bovemists", - "name": "mantle_charge", - "value": 2 - } - ] - } - ] - }, - - { - "display_name": "Manachism", - "desc": "If you receive a hit that's less than 5% of your max HP, gain 10 Mana (1s Cooldown)", - "archetype": "Paladin", - "archetype_req": 3, - "parents": ["Stronger Mantle", "Provoke"], - "dependencies": [], - "blockers": [], - "cost": 2, - "display": { - "row": 20, - "col": 8, - "icon": "node_2" - }, - "properties": { - "cooldown": 1 - }, - "effects": [] - }, - - { - "display_name": "Boiling Blood", - "desc": "Bash leaves a trail of boiling blood behind its first explosion, slowing down and damaging enemies above it every 0.4 seconds", - "base_abil": "Bash", - "parents": ["Enraged Blow", "Ragnarokkr"], - "dependencies": [], - "blockers": [], - "cost": 2, - "display": { - "row": 22, - "col": 0, - "icon": "node_1" - }, - "properties": {}, - "effects": [ - { - "type": "add_spell_prop", - "base_spell": 1, - "target_part": "Boiling Blood", - "cost": 0, - "multipliers": [25, 0, 0, 0, 5, 0] - } - ] - }, - - { - "display_name": "Ragnarokkr", - "desc": "War Scream become deafening, increasing its range and giving damage bonus to players", - "archetype": "Fallen", - "archetype_req": 0, - "base_abil": "War Scream", - "parents": ["Boiling Blood", "Flying Kick"], - "dependencies": ["War Scream"], - "blockers": [], - "cost": 2, - "display": { - "row": 22, - "col": 2, - "icon": "node_2" - }, - "properties": { - "aoe": 2 - }, - "effects": [ - { - "type": "add_spell_prop", - "base_spell": 4, - "cost": 10 - } - ] - }, - { - "display_name": "Ambidextrous", - "desc": "Increase your chance to attack with Counter by +30%", - "base_abil": "Counter", - "parents": ["Flying Kick", "Stronger Mantle", "Burning Heart"], - "dependencies": ["Counter"], - "blockers": [], - "cost": 1, - "display": { - "row": 22, - "col": 4, - "icon": "node_0" - }, - "properties": {}, - "effects": [ - { - "type": "raw_stat", - "bonuses": [ {"type": "prop", "abil": "Counter", "name": "chance", "value": 30} ] - } - ] - }, - - { - "display_name": "Burning Heart", - "desc": "For every 100 Health Bonus you have from item IDs, gain +2% Fire Damage (Max 100%)", - "archetype": "Paladin", - "archetype_req": 0, - "parents": ["Ambidextrous", "Stronger Bash"], - "dependencies": [], - "blockers": [], - "cost": 1, - "display": { - "row": 22, - "col": 6, - "icon": "node_0" - }, - "properties": { - }, - "effects": [ - { - "type": "stat_scaling", - "slider": false, - "inputs": [ - { - "type": "stat", - "name": "hpBonus" - } - ], - "output": { - "type": "stat", - "name": "fDamPct" - }, - "scaling": [0.02], - "max": 100 - } - ] - }, - - { - "display_name": "Stronger Bash", - "desc": "Increase the damage of Bash", - "base_abil": "Bash", - "parents": ["Burning Heart", "Manachism"], - "dependencies": [], - "blockers": [], - "cost": 1, - "display": { - "row": 22, - "col": 8, - "icon": "node_0" - }, - "properties": {}, - "effects": [ - { - "type": "add_spell_prop", - "base_spell": 1, - "target_part": "Single Hit", - "multipliers": [30, 0, 0, 0, 0, 0] - } - ] - }, - - { - "display_name": "Intoxicating Blood", - "desc": "After leaving Corrupted, gain 2% of the health lost back for each enemy killed while Corrupted", - "archetype": "Fallen", - "archetype_req": 5, - "base_abil": "Bak'al's Grasp", - "parents": ["Ragnarokkr", "Boiling Blood"], - "dependencies": ["Bak'al's Grasp"], - "blockers": [], - "cost": 2, - "display": { - "row": 23, - "col": 1, - "icon": "node_1" - }, - "properties": {}, - "effects": [] - }, - - { - "display_name": "Comet", - "desc": "After being hit by Fireworks, enemies will crash into the ground and receive more damage", - "archetype": "Fallen", - "archetype_req": 0, - "base_abil": "Uppercut", - "parents": ["Ragnarokkr"], - "dependencies": ["Fireworks"], - "blockers": [], - "cost": 2, - "display": { - "row": 24, - "col": 2, - "icon": "node_1" - }, - "properties": {}, - "effects": [ - { - "type": "add_spell_prop", - "base_spell": 3, - "target_part": "Comet", - "cost": 0, - "multipliers": [80, 20, 0, 0, 0, 0] - }, - { - "type":"add_spell_prop", - "base_spell": 3, - "target_part": "Total Damage", - "cost": 0, - "hits": { - "Comet": 1 - } - } - ] - }, - - { - "display_name": "Collide", - "desc": "Mobs thrown into walls from Flying Kick will explode and receive additonal damage", - "archetype": "Battle Monk", - "archetype_req": 4, - "base_abil": "Charge", - "parents": ["Ambidextrous", "Burning Heart"], - "dependencies": ["Flying Kick"], - "blockers": [], - "cost": 2, - "display": { - "row": 23, - "col": 5, - "icon": "node_1" - }, - "properties": { - "aoe": 4 - }, - "effects": [ - { - "type": "add_spell_prop", - "base_spell": 2, - "target_part": "Collide", - "cost": 0, - "multipliers": [150, 0, 0, 0, 50, 0] - }, - { - "type": "add_spell_prop", - "base_spell": 2, - "target_part": "Flying Kick Max Damage", - "hits": { "Collide": 1 } - } - ] - }, - - { - "display_name": "Rejuvenating Skin", - "desc": "Regain back 30% of the damage you take as healing over 30s", - "archetype": "Paladin", - "archetype_req": 5, - "parents": ["Burning Heart", "Stronger Bash"], - "dependencies": [], - "blockers": [], - "cost": 2, - "display": { - "row": 23, - "col": 7, - "icon": "node_3" - }, - "properties": {}, - "effects": [] - }, - { - "display_name": "Uncontainable Corruption", - "desc": "Reduce the cooldown of Bak'al's Grasp by -5s, and increase the raw damage gained for every 2% of health lost by +1", - "base_abil": "Bak'al's Grasp", - "parents": ["Boiling Blood", "Radiant Devotee"], - "dependencies": ["Bak'al's Grasp"], - "blockers": [], - "cost": 1, - "display": { - "row": 26, - "col": 0, - "icon": "node_0" - }, - "properties": {}, - "effects": [ - { - "type": "stat_scaling", - "slider": true, - "slider_name": "Corrupted", - "output": { - "type": "stat", - "name": "damRaw" - }, - "scaling": [0.5] - }, - { - "type": "raw_stat", - "bonuses": [ {"type": "prop", "abil": "Bak'al's Grasp", "name": "cooldown", "value": -5} ] - } - ] - }, - - { - "display_name": "Radiant Devotee", - "desc": "For every 4% Reflection you have from items, gain +1/5s Mana Regen (Max 10/5s)", - "archetype": "Battle Monk", - "archetype_req": 1, - "parents": ["Whirlwind Strike", "Uncontainable Corruption"], - "dependencies": [], - "blockers": [], - "cost": 1, - "display": { - "row": 26, - "col": 2, - "icon": "node_0" - }, - "properties": {}, - "effects": [ - { - "type": "stat_scaling", - "inputs": [ - { - "type": "stat", - "name": "ref" - } - ], - "output": { - "type": "stat", - "name": "mr" - }, - "scaling": [0.25], - "max": 10 - } - ] - }, - - { - "display_name": "Whirlwind Strike", - "desc": "Uppercut will create a strong gust of air, launching you upward with enemies (Hold shift to stay grounded)", - "archetype": "Battle Monk", - "archetype_req": 5, - "base_abil": "Uppercut", - "parents": ["Ambidextrous", "Radiant Devotee"], - "dependencies": ["Uppercut"], - "blockers": [], - "cost": 2, - "display": { - "row": 26, - "col": 4, - "icon": "node_1" - }, - "properties": { - "range": 2 - }, - "effects": [ - { - "type": "add_spell_prop", - "base_spell": 3, - "target_part": "Uppercut", - "multipliers": [0, 0, 0, 0, 0, 50] - } - ] - }, - - { - "display_name": "Mythril Skin", - "desc": "Gain +5% Base Resistance and become immune to knockback", - "archetype": "Paladin", - "archetype_req": 6, - "parents": ["Rejuvenating Skin"], - "dependencies": [], - "blockers": [], - "cost": 2, - "display": { - "row": 26, - "col": 7, - "icon": "node_1" - }, - "properties": {}, - "effects": [ - { - "type": "raw_stat", - "bonuses": [ - { - "type": "stat", - "name": "defMult.Base", - "value": 5 - } - ] - } - ] - }, - - { - "display_name": "Armour Breaker", - "desc": "While Corrupted, losing 30% Health will make your next Uppercut destroy enemies' defense, rendering them weaker to damage", - "archetype": "Fallen", - "archetype_req": 0, - "base_abil": "Uppercut", - "parents": ["Uncontainable Corruption", "Radiant Devotee"], - "dependencies": ["Bak'al's Grasp"], - "blockers": [], - "cost": 2, - "display": { - "row": 27, - "col": 1, - "icon": "node_2" - }, - "properties": { - "duration": 5 - }, - "effects": [ - { - "type": "raw_stat", - "toggle": "Activate Armor Breaker", - "bonuses": [ {"type": "stat", "name": "damMult.ArmorBreaker", "value": 30} ] - } - ] - }, - { - "display_name": "Shield Strike", - "desc": "When your Mantle of the Bovemist loses all charges, deal damage around you for each Mantle individually lost", - "archetype": "Paladin", - "archetype_req": 0, - "base_abil": "Mantle of the Bovemists", - "parents": ["Mythril Skin", "Sparkling Hope"], - "dependencies": [], - "blockers": [], - "cost": 2, - "display": { - "row": 27, - "col": 6, - "icon": "node_1" - }, - "properties": {}, - "effects": [ - { - "type": "replace_spell", - "name": "Shield Strike", - "base_spell": 6, - "display": "Damage per Shield", - "parts": [ - { - "name": "Damage per Shield", - "multipliers": [60, 0, 20, 0, 0, 0] - } - ] - } - ] - }, - { - "display_name": "Sparkling Hope", - "desc": "Everytime you heal 5% of your max health, deal damage to all nearby enemies", - "archetype": "Paladin", - "archetype_req": 0, - "parents": ["Mythril Skin"], - "dependencies": [], - "blockers": [], - "cost": 2, - "display": { - "row": 27, - "col": 8, - "icon": "node_2" - }, - "properties": { - "aoe": 6 - }, - "effects": [ - { - "type": "replace_spell", - "name": "Sparkling Hope", - "base_spell": 7, - "display": "Damage Tick", - "parts": [ - { - "name": "Damage Tick", - "multipliers": [10, 0, 5, 0, 0, 0] - } - ] - } - ] - }, - { - "display_name": "Massive Bash", - "desc": "While Corrupted, every 3% Health you lose will add +1 AoE to Bash (Max 10)", - "archetype": "Fallen", - "archetype_req": 8, - "base_abil": "Bak'al's Grasp", - "parents": ["Tempest", "Uncontainable Corruption"], - "dependencies": [], - "blockers": [], - "cost": 2, - "display": { - "row": 28, - "col": 0, - "icon": "node_2" - }, - "properties": {}, - "effects": [ - { - "type": "stat_scaling", - "slider": true, - "slider_name": "Corrupted", - "output": { - "type": "prop", - "abil": "Bash", - "name": "aoe" - }, - "scaling": [0.3333333333333333], - "max": 10 - } - ] - },{ - "display_name": "Tempest", - "desc": "War Scream will ripple the ground and deal damage 3 times in a large area", - "archetype": "Battle Monk", - "archetype_req": 0, - "base_abil": "War Scream", - "parents": ["Massive Bash", "Spirit of the Rabbit"], - "dependencies": [], - "blockers": [], - "cost": 2, - "display": { - "row": 28, - "col": 2, - "icon": "node_1" - }, - "properties": { - "aoe": 16 - }, - "effects": [ - { - "type": "add_spell_prop", - "base_spell": 4, - "target_part": "Tempest", - "multipliers": [30, 10, 0, 0, 0, 10] - }, - { - "type": "add_spell_prop", - "base_spell": 4, - "target_part": "Tempest Total Damage", - "hits": { - "Tempest": 3 - } - }, - { - "type": "add_spell_prop", - "base_spell": 4, - "target_part": "Total Damage", - "hits": { "Tempest": 3 } - } - ] - }, - { - "display_name": "Spirit of the Rabbit", - "desc": "Reduce the Mana cost of Charge and increase your Walk Speed by +20%", - "archetype": "Battle Monk", - "archetype_req": 5, - "base_abil": "Charge", - "parents": ["Tempest", "Whirlwind Strike"], - "dependencies": [], - "blockers": [], - "cost": 1, - "display": { - "row": 28, - "col": 4, - "icon": "node_0" - }, - "properties": {}, - "effects": [ - { - "type": "add_spell_prop", - "base_spell": 2, - "cost": -5 - }, - { - "type": "raw_stat", - "bonuses": [{ "type": "stat", "name": "spd", "value": 20 }] - } - ] - },{ - "display_name": "Massacre", - "desc": "While Corrupted, if your effective attack speed is Slow or lower, hitting an enemy with your Main Attack will add +1% to your Corrupted bar", - "archetype": "Fallen", - "archetype_req": 5, - "base_abil": 999, - "parents": ["Tempest", "Massive Bash"], - "dependencies": [], - "blockers": [], - "cost": 2, - "display": { - "row": 29, - "col": 1, - "icon": "node_1" - }, - "properties": {}, - "effects": [] - }, - { - "display_name": "Axe Kick", - "desc": "Increase the damage of Uppercut, but also increase its mana cost", - "base_abil": "Uppercut", - "parents": ["Tempest", "Spirit of the Rabbit"], - "dependencies": [], - "blockers": [], - "cost": 1, - "display": { - "row": 29, - "col": 3, - "icon": "node_0" - }, - "properties": {}, - "effects": [ - { - "type": "add_spell_prop", - "base_spell": 3, - "target_part": "Uppercut", - "cost": 10, - "multipliers": [100, 0, 0, 0, 0, 0] - } - ] - }, - { - "display_name": "Radiance", - "desc": "Bash will buff your allies' positive IDs. (15s Cooldown)", - "archetype": "Paladin", - "archetype_req": 2, - "base_abil": "Bash", - "parents": ["Spirit of the Rabbit", "Cheaper Bash 2"], - "dependencies": [], - "blockers": [], - "cost": 2, - "display": { - "row": 29, - "col": 5, - "icon": "node_2" - }, - "properties": { - "cooldown": 15 - }, - "effects": [] - }, - - { - "display_name": "Cheaper Bash 2", - "desc": "Reduce the Mana cost of Bash", - "base_abil": "Bash", - "parents": ["Radiance", "Shield Strike", "Sparkling Hope"], - "dependencies": [], - "blockers": [], - "cost": 1, - "display": { - "row": 29, - "col": 7, - "icon": "node_0" - }, - "properties": {}, - "effects": [ - { - "type": "add_spell_prop", - "base_spell": 1, - "cost": -5 - } - ] - }, - - { - "display_name": "Cheaper War Scream", - "desc": "Reduce the Mana cost of War Scream", - "base_abil": "War Scream", - "parents": ["Massive Bash"], - "dependencies": [], - "blockers": [], - "cost": 1, - "display": { - "row": 31, - "col": 0, - "icon": "node_0" - }, - "properties": {}, - "effects": [ - { - "type": "add_spell_prop", - "base_spell": 4, - "cost": -5 - } - ] - }, - - { - "display_name": "Discombobulate", - "desc": "Every time you hit an enemy, briefly increase your elemental damage dealt to them by +3 (Additive, Max +80). This bonus decays -5 every second", - "archetype": "Battle Monk", - "archetype_req": 11, - "parents": ["Cyclone"], - "dependencies": [], - "blockers": [], - "cost": 2, - "display": { - "row": 31, - "col": 2, - "icon": "node_3" - }, - "properties": { - }, - "effects": [ - { - "type": "stat_scaling", - "slider": true, - "slider_name": "Hits dealt", - "slider_max": 27, - "output": [ - { "type": "stat", "name": "eDamAddMin" }, { "type": "stat", "name": "eDamAddMax" }, - { "type": "stat", "name": "tDamAddMin" }, { "type": "stat", "name": "tDamAddMax" }, - { "type": "stat", "name": "wDamAddMin" }, { "type": "stat", "name": "wDamAddMax" }, - { "type": "stat", "name": "fDamAddMin" }, { "type": "stat", "name": "fDamAddMax" }, - { "type": "stat", "name": "aDamAddMin" }, { "type": "stat", "name": "aDamAddMax" } - ], - "scaling": [3], - "max": 80 - } - ] - }, - - { - "display_name": "Thunderclap", - "desc": "Bash will cast at the player's position and gain additional AoE.\n\n All elemental conversions become Thunder", - "archetype": "Battle Monk", - "archetype_req": 8, - "parents": ["Cyclone"], - "dependencies": [], - "blockers": [], - "cost": 2, - "display": { - "row": 32, - "col": 5, - "icon": "node_1" - }, - "properties": {}, - "effects": [ - { - "type": "convert_spell_conv", - "target_part": "all", - "base_spell": 1, - "conversion": "Thunder" - }, - { - "type": "raw_stat", - "bonuses": [{ - "type": "prop", - "abil": "Bash", - "name": "aoe", - "value": 3 - }] - } - ] - }, - - { - "display_name": "Cyclone", - "desc": "After casting War Scream, envelop yourself with a vortex that damages nearby enemies every 0.5s", - "archetype": "Battle Monk", - "archetype_req": 0, - "parents": ["Spirit of the Rabbit"], - "dependencies": [], - "blockers": [], - "cost": 2, - "display": { - "row": 31, - "col": 4, - "icon": "node_1" - }, - "properties": { - "aoe": 4, - "duration": 20 - }, - "effects": [ - { - "type": "add_spell_prop", - "base_spell": 4, - "target_part": "Cyclone", - "multipliers": [10, 0, 0, 0, 5, 10] - }, - { - "type": "add_spell_prop", - "base_spell": 4, - "target_part": "Cyclone Total Damage", - "hits": { - "Cyclone": 40 - } - - } - ] - }, - - { - "display_name": "Second Chance", - "desc": "When you receive a fatal blow, survive and regain 30% of your Health (10m Cooldown)", - "archetype": "Paladin", - "archetype_req": 12, - "parents": ["Cheaper Bash 2"], - "dependencies": [], - "blockers": [], - "cost": 2, - "display": { - "row": 32, - "col": 7, - "icon": "node_3" - }, - "properties": {}, - "effects": [] - }, - - { - "display_name": "Blood Pact", - "desc": "If you do not have enough mana to cast a spell, spend health instead (0.6% health per mana)", - "archetype": "Fallen", - "archetype_req": 10, - "parents": ["Cheaper War Scream"], - "dependencies": [], - "blockers": [], - "cost": 2, - "display": { - "row": 34, - "col": 1, - "icon": "node_3" - }, - "properties": { - "health_cost": 0.6 - }, - "effects": [] - }, - - { - "display_name": "Haemorrhage", - "desc": "Reduce Blood Pact's health cost. (0.3% health per mana)", - "archetype": "Fallen", - "archetype_req": 0, - "base_abil": "Blood Pact", - "parents": ["Blood Pact"], - "dependencies": ["Blood Pact"], - "blockers": [], - "cost": 1, - "display": { - "row": 35, - "col": 2, - "icon": "node_1" - }, - "properties": {}, - "effects": [{ - "type": "raw_stat", - "bonuses": [{ "type": "prop", "abil": "Blood Pact", "name": "health_cost", "value": -0.3}] - }] - }, - - { - "display_name": "Brink of Madness", - "desc": "If your health is 25% full or less, gain +40% Resistance", - "parents": ["Blood Pact", "Cheaper Uppercut 2"], - "dependencies": [], - "blockers": [], - "cost": 2, - "display": { - "row": 35, - "col": 4, - "icon": "node_2" - }, - "properties": {}, - "effects": [ - { - "type": "raw_stat", - "toggle": "Activate Brink", - "bonuses": [{ "type": "stat", "name": "defMult.Brink", "value": 40}] - } - ] - }, - - { - "display_name": "Cheaper Uppercut 2", - "desc": "Reduce the Mana cost of Uppercut", - "base_abil": "Uppercut", - "parents": ["Second Chance", "Brink of Madness"], - "dependencies": [], - "blockers": [], - "cost": 1, - "display": { - "row": 35, - "col": 6, - "icon": "node_0" - }, - "properties": {}, - "effects": [ - { - "type": "add_spell_prop", - "base_spell": 3, - "cost": -5 - } - ] - }, - - { - "display_name": "Martyr", - "desc": "When you receive a fatal blow, all nearby allies become invincible", - "archetype": "Paladin", - "archetype_req": 0, - "parents": ["Second Chance"], - "dependencies": [], - "blockers": [], - "cost": 2, - "display": { - "row": 35, - "col": 8, - "icon": "node_1" - }, - "properties": { - "duration": 3, - "aoe": 12 - }, - "effects": [] - } - ], - "Mage": [ - { - "display_name": "Meteor", - "desc": "Summon a slow but powerful meteor from the sky, dealing massive damage in a large area", - "parents": [], - "dependencies": [], - "blockers": [], - "cost": 1, - "display": { - "row": 0, - "col": 4, - "icon": "node_mage" - }, - "properties": { - "aoe": 5, - "range": 18 - }, - "effects": [{ - "type": "replace_spell", - "name": "Meteor", - "cost": 55, - "base_spell": 3, - "display": "Total Damage", - "parts": [ - { - "name": "Meteor Damage", - "multipliers": [300, 100, 0, 0, 0, 0] - }, - { - "name": "Total Damage", - "hits": { "Meteor Damage": 1 } - } - ] - }] - }, - { - "display_name": "Teleport", - "desc": "Instantly teleport in the direction you're facing", - "parents": ["Shooting Star"], - "dependencies": [], - "blockers": [], - "cost": 1, - "display": { - "row": 6, - "col": 4, - "icon": "node_mage" - }, - "properties": { - "range": 12 - }, - "effects": [{ - "type": "replace_spell", - "name": "Teleport", - "cost": 25, - "base_spell": 2, - "display": "", - "parts": [] - }] - }, - { - "display_name": "Heal", - "desc": "Heal yourself and nearby allies in a large area around you. (When healing an ally, you cannot heal more than 30% of their max health)", - "parents": ["Wand Proficiency II", "Cheaper Teleport"], - "dependencies": [], - "blockers": [], - "cost": 1, - "display": { "row": 8, "col": 2, "icon": "node_mage"}, - "properties": { "aoe": 5 }, - "effects": [ - { - "type": "replace_spell", - "name": "Heal", - "cost": 35, - "base_spell": 1, - "display": "Heal", - "parts": [ - { - "name": "Heal", - "power": 0.1 - } - ] - } - ] - }, - { - "display_name": "Ice Snake", - "desc": "Summon a fast-moving ice snake that reduces your enemies' speed and damage them.", - "parents": ["Wisdom", "Cheaper Teleport"], + "archetype": "Fallen", + "archetype_req": 0, + "parents": [ + "Uppercut" + ], "dependencies": [], "blockers": [], "cost": 1, - "display": { - "row": 8, - "col": 6, - "icon": "node_mage" - }, - "properties": { - "range": 18, - "effects": 40, - "duration": 3 - }, - "effects": [ - { - "type": "replace_spell", - "name": "Ice Snake", - "cost": 35, - "base_spell": 4, - "display": "Ice Snake Damage", - "parts": [ - { - "name": "Ice Snake Damage", - "multipliers": [70, 0, 0, 30, 0, 0] - } - ] - } - ] - }, - { - "display_name": "Shooting Star", - "desc": "Drastically increase the speed of your Meteor ability.", - "base_abil": 3, - "parents": ["Wand Proficiency I"], - "dependencies": [], - "blockers": [], - "cost": 1, - "display": { - "row": 4, - "col": 4, - "icon": "node_1" - }, - "properties": {}, - "effects": [] - }, - { - "display_name": "Wand Proficiency I", - "desc": "Improve your Main Attack's damage and range when using a wand.", - "base_abil": 999, - "parents": ["Meteor"], - "dependencies": [], - "blockers": [], - "cost": 1, - "display": { "row": 2, "col": 4, "icon": "node_0"}, - "properties": {}, - "effects": [ - { - "type": "raw_stat", - "bonuses": [ - { - "type": "stat", - "name": "mdPct", - "value": 5 - } - ] - } - ] - }, - { - "display_name": "Cheaper Meteor", - "desc": "Reduce the Mana cost of Meteor.", - "base_abil": "Meteor", - "parents": ["Wand Proficiency I"], - "dependencies": [], - "blockers": [], - "cost": 1, - "display": {"row": 2, "col": 6, "icon": "node_0"}, - "properties": {}, - "effects": [{ - "type": "add_spell_prop", - "base_spell": 3, - "cost": -10 - }] - }, - { - "display_name": "Earth Mastery", - "base_abil": 998, - "desc": "Increases your base damage from all Earth attacks", - "archetype": "Arcanist", - "archetype_req": 0, - "parents": ["Ice Snake"], - "dependencies": [], - "blockers": [], - "cost": 1, "display": { "row": 10, - "col": 8, + "col": 0, "icon": "node_0" }, "properties": {}, @@ -4153,18 +3120,22 @@ const atrees = { } ] } - ] + ] }, { "display_name": "Thunder Mastery", "base_abil": 998, - "desc": "Increases your base damage from all Thunder attacks", - "archetype": "Riftwalker", - "archetype_req": 0, - "parents": ["Heal", "Cheaper Teleport"], - "dependencies": [], + "desc": "Increases base damage from all Thunder attacks", + "archetype": "Fallen", + "archetype_req": 0, + "parents": [ + "Uppercut", + "Air Mastery", + "Cheaper Charge" + ], + "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 10, "col": 2, @@ -4192,18 +3163,22 @@ const atrees = { } ] } - ] + ] }, { "display_name": "Water Mastery", "base_abil": 998, - "desc": "Increases your base damage from all Water attacks", - "archetype": "Light Bender", - "archetype_req": 0, - "parents": ["Cheaper Teleport", "Thunder Mastery"], - "dependencies": [], + "desc": "Increases base damage from all Water attacks", + "archetype": "Battle Monk", + "archetype_req": 0, + "parents": [ + "Cheaper Charge", + "Thunder Mastery", + "Air Mastery" + ], + "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 11, "col": 4, @@ -4231,18 +3206,2298 @@ const atrees = { } ] } - ] + ] }, { "display_name": "Air Mastery", "base_abil": 998, "desc": "Increases base damage from all Air attacks", - "archetype": "Riftwalker", - "archetype_req": 0, - "parents": ["Heal"], - "dependencies": [], + "archetype": "Battle Monk", + "archetype_req": 0, + "parents": [ + "War Scream", + "Thunder Mastery", + "Cheaper Charge" + ], + "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, + "display": { + "row": 10, + "col": 6, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "raw_stat", + "bonuses": [ + { + "type": "stat", + "name": "aDamPct", + "value": 15 + }, + { + "type": "stat", + "name": "aDamAddMin", + "value": 3 + }, + { + "type": "stat", + "name": "aDamAddMax", + "value": 4 + } + ] + } + ] + }, + { + "display_name": "Fire Mastery", + "base_abil": 998, + "desc": "Increases base damage from all Fire attacks", + "archetype": "Paladin", + "archetype_req": 0, + "parents": [ + "War Scream" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 10, + "col": 8, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "raw_stat", + "bonuses": [ + { + "type": "stat", + "name": "fDamPct", + "value": 15 + }, + { + "type": "stat", + "name": "fDamAddMin", + "value": 3 + }, + { + "type": "stat", + "name": "fDamAddMax", + "value": 5 + } + ] + } + ] + }, + { + "display_name": "Quadruple Bash", + "desc": "Bash will hit 4 times at an even larger range", + "archetype": "Fallen", + "archetype_req": 0, + "base_abil": "Bash", + "parents": [ + "Earth Mastery", + "Fireworks" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 12, + "col": 0, + "icon": "node_1" + }, + "properties": { + "range": 6 + }, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 1, + "target_part": "Total Damage", + "hits": { + "Single Hit": 2 + } + }, + { + "type": "add_spell_prop", + "base_spell": 1, + "target_part": "Single Hit", + "multipliers": [ + -20, + 0, + 0, + 0, + 0, + 0 + ] + } + ] + }, + { + "display_name": "Fireworks", + "desc": "Mobs hit by Uppercut will explode mid-air and receive additional damage", + "archetype": "Fallen", + "archetype_req": 0, + "base_abil": "Uppercut", + "parents": [ + "Thunder Mastery", + "Quadruple Bash" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 12, + "col": 2, + "icon": "node_1" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 3, + "target_part": "Fireworks", + "multipliers": [ + 80, + 0, + 20, + 0, + 0, + 0 + ] + }, + { + "type": "add_spell_prop", + "base_spell": 3, + "target_part": "Total Damage", + "hits": { + "Fireworks": 1 + } + } + ] + }, + { + "display_name": "Half-Moon Swipe", + "desc": "Uppercut will deal a footsweep attack at a longer and wider angle. All elemental conversions become Water", + "archetype": "Battle Monk", + "archetype_req": 1, + "base_abil": "Uppercut", + "parents": [ + "Water Mastery" + ], + "dependencies": [ + "Uppercut" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 13, + "col": 4, + "icon": "node_1" + }, + "properties": { + "range": 4 + }, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 3, + "target_part": "Uppercut", + "cost": -10, + "multipliers": [ + -70, + 0, + 0, + 30, + 0, + 0 + ] + } + ] + }, + { + "display_name": "Flyby Jab", + "desc": "Damage enemies in your way when using Charge", + "base_abil": "Charge", + "parents": [ + "Air Mastery", + "Flaming Uppercut" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 12, + "col": 6, + "icon": "node_1" + }, + "properties": { + "aoe": 2 + }, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 2, + "target_part": "Flyby Jab", + "multipliers": [ + 20, + 0, + 0, + 0, + 0, + 40 + ] + }, + { + "type": "add_spell_prop", + "base_spell": 2, + "target_part": "Contact Damage", + "display": "Contact Damage", + "hits": { + "Flyby Jab": 1 + } + } + ] + }, + { + "display_name": "Flaming Uppercut", + "desc": "Uppercut will light mobs on fire, dealing damage every 0.6 seconds", + "archetype": "Paladin", + "archetype_req": 0, + "base_abil": "Uppercut", + "parents": [ + "Fire Mastery", + "Flyby Jab" + ], + "dependencies": [ + "Uppercut" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 12, + "col": 8, + "icon": "node_1" + }, + "properties": { + "duration": 3, + "tick": 0.6 + }, + "effects": [ + { + "type": "replace_spell", + "name": "Flaming Uppercut", + "base_spell": 8, + "display": "DPS", + "parts": [ + { + "name": "Damage Tick", + "multipliers": [ + 0, + 0, + 0, + 0, + 50, + 0 + ] + }, + { + "name": "DPS", + "hits": { + "Damage Tick": 1.6666666666666667 + } + }, + { + "name": "Total Damage", + "hits": { + "Damage Tick": 5 + } + } + ] + } + ] + }, + { + "display_name": "Iron Lungs", + "desc": "War Scream deals more damage", + "archetype": "Paladin", + "archetype_req": 0, + "base_abil": "War Scream", + "parents": [ + "Flyby Jab", + "Flaming Uppercut" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 13, + "col": 7, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 4, + "target_part": "War Scream", + "cost": 0, + "multipliers": [ + 30, + 0, + 0, + 0, + 0, + 30 + ] + } + ] + }, + { + "display_name": "Generalist", + "desc": "After casting 3 different spells in a row, your next spell will cost 5 mana", + "archetype": "Battle Monk", + "archetype_req": 3, + "parents": [ + "Counter" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 15, + "col": 2, + "icon": "node_3" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Counter", + "desc": "When dodging a nearby enemy attack, get 30% chance to instantly attack back", + "archetype": "Battle Monk", + "archetype_req": 0, + "parents": [ + "Half-Moon Swipe" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 15, + "col": 4, + "icon": "node_1" + }, + "properties": { + "chance": 30 + }, + "effects": [ + { + "type": "replace_spell", + "name": "Counter", + "base_spell": 5, + "display": "Counter Damage", + "parts": [ + { + "name": "Counter Damage", + "multipliers": [ + 60, + 0, + 20, + 0, + 0, + 20 + ] + } + ] + } + ] + }, + { + "display_name": "Mantle of the Bovemists", + "desc": "When casting War Scream, create a holy shield around you that reduces all incoming damage by 70% for 3 hits (20s cooldown)", + "archetype": "Paladin", + "archetype_req": 3, + "parents": [ + "Iron Lungs" + ], + "dependencies": [ + "War Scream" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 15, + "col": 7, + "icon": "node_3" + }, + "properties": { + "mantle_charge": 3 + }, + "effects": [ + { + "type": "raw_stat", + "toggle": "Activate Mantle", + "bonuses": [ + { + "type": "stat", + "name": "defMult.Mantle", + "value": 70 + } + ] + } + ] + }, + { + "display_name": "Bak'al's Grasp", + "desc": "After casting War Scream, become Corrupted (15s Cooldown). You cannot heal while in that state. While Corrupted, every 2% of Health you lose will add +4 Raw Damage to your attacks (Max 120)", + "archetype": "Fallen", + "archetype_req": 2, + "parents": [ + "Quadruple Bash", + "Fireworks" + ], + "dependencies": [ + "War Scream" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 16, + "col": 1, + "icon": "node_3" + }, + "properties": { + "cooldown": 15 + }, + "effects": [ + { + "type": "stat_scaling", + "slider": true, + "slider_name": "Corrupted", + "slider_max": 100, + "slider_step": 1, + "output": { + "type": "stat", + "name": "damRaw" + }, + "max": 120, + "scaling": [ + 2 + ] + } + ] + }, + { + "display_name": "Spear Proficiency 2", + "desc": "Improve your Main Attack's damage and range w/ spear", + "base_abil": 999, + "parents": [ + "Bak'al's Grasp", + "Cheaper Uppercut" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 17, + "col": 0, + "icon": "node_0" + }, + "properties": { + "melee_range": 1 + }, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 0, + "target_part": "melee", + "multipliers": [ + 5, + 0, + 0, + 0, + 0, + 0 + ] + } + ] + }, + { + "display_name": "Cheaper Uppercut", + "desc": "Reduce the Mana Cost of Uppercut", + "base_abil": "Uppercut", + "parents": [ + "Spear Proficiency 2", + "Aerodynamics", + "Counter" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 17, + "col": 3, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 3, + "cost": -5 + } + ] + }, + { + "display_name": "Aerodynamics", + "desc": "During Charge, you can steer and change direction", + "archetype": "Battle Monk", + "archetype_req": 0, + "base_abil": "Charge", + "parents": [ + "Cheaper Uppercut", + "Provoke" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 17, + "col": 5, + "icon": "node_1" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Provoke", + "desc": "Mobs damaged by War Scream will target only you for at least 5s. Reduce the Mana cost of War Scream", + "base_abil": "War Scream", + "parents": [ + "Aerodynamics", + "Mantle of the Bovemists" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 17, + "col": 7, + "icon": "node_1" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 4, + "cost": -5 + } + ] + }, + { + "display_name": "Precise Strikes", + "desc": "+30% Critical Hit Damage", + "parents": [ + "Cheaper Uppercut", + "Spear Proficiency 2" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 18, + "col": 2, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "raw_stat", + "bonuses": [ + { + "type": "stat", + "name": "critDamPct", + "value": 30 + } + ] + } + ] + }, + { + "display_name": "Air Shout", + "desc": "War Scream will fire a projectile that can go through walls and deal damage multiple times", + "base_abil": "War Scream", + "parents": [ + "Aerodynamics", + "Provoke" + ], + "dependencies": [ + "War Scream" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 18, + "col": 6, + "icon": "node_1" + }, + "properties": { + "attackRate": 2 + }, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 4, + "target_part": "Air Shout", + "multipliers": [ + 40, + 0, + 0, + 0, + 0, + 10 + ] + } + ] + }, + { + "display_name": "Enraged Blow", + "desc": "While Corriupted, every 1% of Health you lose will increase your damage by +3% (Max 300%)", + "archetype": "Fallen", + "archetype_req": 0, + "base_abil": "Bak'al's Grasp", + "parents": [ + "Spear Proficiency 2" + ], + "dependencies": [ + "Bak'al's Grasp" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 20, + "col": 0, + "icon": "node_2" + }, + "properties": {}, + "effects": [ + { + "type": "stat_scaling", + "slider_name": "Corrupted", + "slider": true, + "output": { + "type": "stat", + "name": "damMult.Enraged" + }, + "scaling": [ + 3 + ] + } + ] + }, + { + "display_name": "Flying Kick", + "desc": "When using Charge, mobs hit will halt your momentum and get knocked back", + "archetype": "Battle Monk", + "archetype_req": 1, + "base_abil": "Charge", + "parents": [ + "Cheaper Uppercut", + "Stronger Mantle" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 20, + "col": 3, + "icon": "node_1" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 2, + "target_part": "Flying Kick", + "multipliers": [ + 150, + 0, + 0, + 20, + 0, + 30 + ] + }, + { + "type": "add_spell_prop", + "base_spell": 2, + "target_part": "Flying Kick Max Damage", + "hits": { + "Flying Kick": 1 + }, + "display": "Flying Kick Max Damage" + } + ] + }, + { + "display_name": "Stronger Mantle", + "desc": "Add +2 additional charges to Mantle of the Bovemists", + "archetype": "Paladin", + "archetype_req": 0, + "base_abil": "Mantle of the Bovemists", + "parents": [ + "Manachism", + "Flying Kick" + ], + "dependencies": [ + "Mantle of the Bovemists" + ], + "blockers": [], + "cost": 1, + "display": { + "row": 20, + "col": 6, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "raw_stat", + "bonuses": [ + { + "type": "prop", + "abil": "Mantle of the Bovemists", + "name": "mantle_charge", + "value": 2 + } + ] + } + ] + }, + { + "display_name": "Manachism", + "desc": "If you receive a hit that's less than 5% of your max HP, gain 10 Mana (1s Cooldown)", + "archetype": "Paladin", + "archetype_req": 3, + "parents": [ + "Stronger Mantle", + "Provoke" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 20, + "col": 8, + "icon": "node_2" + }, + "properties": { + "cooldown": 1 + }, + "effects": [] + }, + { + "display_name": "Boiling Blood", + "desc": "Bash leaves a trail of boiling blood behind its first explosion, slowing down and damaging enemies above it every 0.4 seconds", + "base_abil": "Bash", + "parents": [ + "Enraged Blow", + "Ragnarokkr" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 22, + "col": 0, + "icon": "node_1" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 1, + "target_part": "Boiling Blood", + "cost": 0, + "multipliers": [ + 25, + 0, + 0, + 0, + 5, + 0 + ] + } + ] + }, + { + "display_name": "Ragnarokkr", + "desc": "War Scream become deafening, increasing its range and giving damage bonus to players", + "archetype": "Fallen", + "archetype_req": 0, + "base_abil": "War Scream", + "parents": [ + "Boiling Blood", + "Flying Kick" + ], + "dependencies": [ + "War Scream" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 22, + "col": 2, + "icon": "node_2" + }, + "properties": { + "aoe": 2 + }, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 4, + "cost": 10 + } + ] + }, + { + "display_name": "Ambidextrous", + "desc": "Increase your chance to attack with Counter by +30%", + "base_abil": "Counter", + "parents": [ + "Flying Kick", + "Stronger Mantle", + "Burning Heart" + ], + "dependencies": [ + "Counter" + ], + "blockers": [], + "cost": 1, + "display": { + "row": 22, + "col": 4, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "raw_stat", + "bonuses": [ + { + "type": "prop", + "abil": "Counter", + "name": "chance", + "value": 30 + } + ] + } + ] + }, + { + "display_name": "Burning Heart", + "desc": "For every 100 Health Bonus you have from item IDs, gain +2% Fire Damage (Max 100%)", + "archetype": "Paladin", + "archetype_req": 0, + "parents": [ + "Ambidextrous", + "Stronger Bash" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 22, + "col": 6, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "stat_scaling", + "slider": false, + "inputs": [ + { + "type": "stat", + "name": "hpBonus" + } + ], + "output": { + "type": "stat", + "name": "fDamPct" + }, + "scaling": [ + 0.02 + ], + "max": 100 + } + ] + }, + { + "display_name": "Stronger Bash", + "desc": "Increase the damage of Bash", + "base_abil": "Bash", + "parents": [ + "Burning Heart", + "Manachism" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 22, + "col": 8, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 1, + "target_part": "Single Hit", + "multipliers": [ + 30, + 0, + 0, + 0, + 0, + 0 + ] + } + ] + }, + { + "display_name": "Intoxicating Blood", + "desc": "After leaving Corrupted, gain 2% of the health lost back for each enemy killed while Corrupted", + "archetype": "Fallen", + "archetype_req": 5, + "base_abil": "Bak'al's Grasp", + "parents": [ + "Ragnarokkr", + "Boiling Blood" + ], + "dependencies": [ + "Bak'al's Grasp" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 23, + "col": 1, + "icon": "node_1" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Comet", + "desc": "After being hit by Fireworks, enemies will crash into the ground and receive more damage", + "archetype": "Fallen", + "archetype_req": 0, + "base_abil": "Uppercut", + "parents": [ + "Ragnarokkr" + ], + "dependencies": [ + "Fireworks" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 24, + "col": 2, + "icon": "node_1" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 3, + "target_part": "Comet", + "cost": 0, + "multipliers": [ + 80, + 20, + 0, + 0, + 0, + 0 + ] + }, + { + "type": "add_spell_prop", + "base_spell": 3, + "target_part": "Total Damage", + "cost": 0, + "hits": { + "Comet": 1 + } + } + ] + }, + { + "display_name": "Collide", + "desc": "Mobs thrown into walls from Flying Kick will explode and receive additonal damage", + "archetype": "Battle Monk", + "archetype_req": 4, + "base_abil": "Charge", + "parents": [ + "Ambidextrous", + "Burning Heart" + ], + "dependencies": [ + "Flying Kick" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 23, + "col": 5, + "icon": "node_1" + }, + "properties": { + "aoe": 4 + }, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 2, + "target_part": "Collide", + "cost": 0, + "multipliers": [ + 150, + 0, + 0, + 0, + 50, + 0 + ] + }, + { + "type": "add_spell_prop", + "base_spell": 2, + "target_part": "Flying Kick Max Damage", + "hits": { + "Collide": 1 + } + } + ] + }, + { + "display_name": "Rejuvenating Skin", + "desc": "Regain back 30% of the damage you take as healing over 30s", + "archetype": "Paladin", + "archetype_req": 5, + "parents": [ + "Burning Heart", + "Stronger Bash" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 23, + "col": 7, + "icon": "node_3" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Uncontainable Corruption", + "desc": "Reduce the cooldown of Bak'al's Grasp by -5s, and increase the raw damage gained for every 2% of health lost by +1", + "base_abil": "Bak'al's Grasp", + "parents": [ + "Boiling Blood", + "Radiant Devotee" + ], + "dependencies": [ + "Bak'al's Grasp" + ], + "blockers": [], + "cost": 1, + "display": { + "row": 26, + "col": 0, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "stat_scaling", + "slider": true, + "slider_name": "Corrupted", + "output": { + "type": "stat", + "name": "damRaw" + }, + "scaling": [ + 0.5 + ] + }, + { + "type": "raw_stat", + "bonuses": [ + { + "type": "prop", + "abil": "Bak'al's Grasp", + "name": "cooldown", + "value": -5 + } + ] + } + ] + }, + { + "display_name": "Radiant Devotee", + "desc": "For every 4% Reflection you have from items, gain +1/5s Mana Regen (Max 10/5s)", + "archetype": "Battle Monk", + "archetype_req": 1, + "parents": [ + "Whirlwind Strike", + "Uncontainable Corruption" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 26, + "col": 2, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "stat_scaling", + "inputs": [ + { + "type": "stat", + "name": "ref" + } + ], + "output": { + "type": "stat", + "name": "mr" + }, + "scaling": [ + 0.25 + ], + "max": 10 + } + ] + }, + { + "display_name": "Whirlwind Strike", + "desc": "Uppercut will create a strong gust of air, launching you upward with enemies (Hold shift to stay grounded)", + "archetype": "Battle Monk", + "archetype_req": 5, + "base_abil": "Uppercut", + "parents": [ + "Ambidextrous", + "Radiant Devotee" + ], + "dependencies": [ + "Uppercut" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 26, + "col": 4, + "icon": "node_1" + }, + "properties": { + "range": 2 + }, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 3, + "target_part": "Uppercut", + "multipliers": [ + 0, + 0, + 0, + 0, + 0, + 50 + ] + } + ] + }, + { + "display_name": "Mythril Skin", + "desc": "Gain +5% Base Resistance and become immune to knockback", + "archetype": "Paladin", + "archetype_req": 6, + "parents": [ + "Rejuvenating Skin" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 26, + "col": 7, + "icon": "node_1" + }, + "properties": {}, + "effects": [ + { + "type": "raw_stat", + "bonuses": [ + { + "type": "stat", + "name": "defMult.Base", + "value": 5 + } + ] + } + ] + }, + { + "display_name": "Armour Breaker", + "desc": "While Corrupted, losing 30% Health will make your next Uppercut destroy enemies' defense, rendering them weaker to damage", + "archetype": "Fallen", + "archetype_req": 0, + "base_abil": "Uppercut", + "parents": [ + "Uncontainable Corruption", + "Radiant Devotee" + ], + "dependencies": [ + "Bak'al's Grasp" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 27, + "col": 1, + "icon": "node_2" + }, + "properties": { + "duration": 5 + }, + "effects": [ + { + "type": "raw_stat", + "toggle": "Activate Armor Breaker", + "bonuses": [ + { + "type": "stat", + "name": "damMult.ArmorBreaker", + "value": 30 + } + ] + } + ] + }, + { + "display_name": "Shield Strike", + "desc": "When your Mantle of the Bovemist loses all charges, deal damage around you for each Mantle individually lost", + "archetype": "Paladin", + "archetype_req": 0, + "base_abil": "Mantle of the Bovemists", + "parents": [ + "Mythril Skin", + "Sparkling Hope" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 27, + "col": 6, + "icon": "node_1" + }, + "properties": {}, + "effects": [ + { + "type": "replace_spell", + "name": "Shield Strike", + "base_spell": 6, + "display": "Damage per Shield", + "parts": [ + { + "name": "Damage per Shield", + "multipliers": [ + 60, + 0, + 20, + 0, + 0, + 0 + ] + } + ] + } + ] + }, + { + "display_name": "Sparkling Hope", + "desc": "Everytime you heal 5% of your max health, deal damage to all nearby enemies", + "archetype": "Paladin", + "archetype_req": 0, + "parents": [ + "Mythril Skin" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 27, + "col": 8, + "icon": "node_2" + }, + "properties": { + "aoe": 6 + }, + "effects": [ + { + "type": "replace_spell", + "name": "Sparkling Hope", + "base_spell": 7, + "display": "Damage Tick", + "parts": [ + { + "name": "Damage Tick", + "multipliers": [ + 10, + 0, + 5, + 0, + 0, + 0 + ] + } + ] + } + ] + }, + { + "display_name": "Massive Bash", + "desc": "While Corrupted, every 3% Health you lose will add +1 AoE to Bash (Max 10)", + "archetype": "Fallen", + "archetype_req": 8, + "base_abil": "Bak'al's Grasp", + "parents": [ + "Tempest", + "Uncontainable Corruption" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 28, + "col": 0, + "icon": "node_2" + }, + "properties": {}, + "effects": [ + { + "type": "stat_scaling", + "slider": true, + "slider_name": "Corrupted", + "output": { + "type": "prop", + "abil": "Bash", + "name": "aoe" + }, + "scaling": [ + 0.3333333333333333 + ], + "max": 10 + } + ] + }, + { + "display_name": "Tempest", + "desc": "War Scream will ripple the ground and deal damage 3 times in a large area", + "archetype": "Battle Monk", + "archetype_req": 0, + "base_abil": "War Scream", + "parents": [ + "Massive Bash", + "Spirit of the Rabbit" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 28, + "col": 2, + "icon": "node_1" + }, + "properties": { + "aoe": 16 + }, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 4, + "target_part": "Tempest", + "multipliers": [ + 30, + 10, + 0, + 0, + 0, + 10 + ] + }, + { + "type": "add_spell_prop", + "base_spell": 4, + "target_part": "Tempest Total Damage", + "hits": { + "Tempest": 3 + } + }, + { + "type": "add_spell_prop", + "base_spell": 4, + "target_part": "Total Damage", + "hits": { + "Tempest": 3 + } + } + ] + }, + { + "display_name": "Spirit of the Rabbit", + "desc": "Reduce the Mana cost of Charge and increase your Walk Speed by +20%", + "archetype": "Battle Monk", + "archetype_req": 5, + "base_abil": "Charge", + "parents": [ + "Tempest", + "Whirlwind Strike" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 28, + "col": 4, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 2, + "cost": -5 + }, + { + "type": "raw_stat", + "bonuses": [ + { + "type": "stat", + "name": "spd", + "value": 20 + } + ] + } + ] + }, + { + "display_name": "Massacre", + "desc": "While Corrupted, if your effective attack speed is Slow or lower, hitting an enemy with your Main Attack will add +1% to your Corrupted bar", + "archetype": "Fallen", + "archetype_req": 5, + "base_abil": 999, + "parents": [ + "Tempest", + "Massive Bash" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 29, + "col": 1, + "icon": "node_1" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Axe Kick", + "desc": "Increase the damage of Uppercut, but also increase its mana cost", + "base_abil": "Uppercut", + "parents": [ + "Tempest", + "Spirit of the Rabbit" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 29, + "col": 3, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 3, + "target_part": "Uppercut", + "cost": 10, + "multipliers": [ + 100, + 0, + 0, + 0, + 0, + 0 + ] + } + ] + }, + { + "display_name": "Radiance", + "desc": "Bash will buff your allies' positive IDs. (15s Cooldown)", + "archetype": "Paladin", + "archetype_req": 2, + "base_abil": "Bash", + "parents": [ + "Spirit of the Rabbit", + "Cheaper Bash 2" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 29, + "col": 5, + "icon": "node_2" + }, + "properties": { + "cooldown": 15 + }, + "effects": [] + }, + { + "display_name": "Cheaper Bash 2", + "desc": "Reduce the Mana cost of Bash", + "base_abil": "Bash", + "parents": [ + "Radiance", + "Shield Strike", + "Sparkling Hope" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 29, + "col": 7, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 1, + "cost": -5 + } + ] + }, + { + "display_name": "Cheaper War Scream", + "desc": "Reduce the Mana cost of War Scream", + "base_abil": "War Scream", + "parents": [ + "Massive Bash" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 31, + "col": 0, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 4, + "cost": -5 + } + ] + }, + { + "display_name": "Discombobulate", + "desc": "Every time you hit an enemy, briefly increase your elemental damage dealt to them by +3 (Additive, Max +80). This bonus decays -5 every second", + "archetype": "Battle Monk", + "archetype_req": 11, + "parents": [ + "Cyclone" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 31, + "col": 2, + "icon": "node_3" + }, + "properties": {}, + "effects": [ + { + "type": "stat_scaling", + "slider": true, + "slider_name": "Hits dealt", + "slider_max": 27, + "output": [ + { + "type": "stat", + "name": "eDamAddMin" + }, + { + "type": "stat", + "name": "eDamAddMax" + }, + { + "type": "stat", + "name": "tDamAddMin" + }, + { + "type": "stat", + "name": "tDamAddMax" + }, + { + "type": "stat", + "name": "wDamAddMin" + }, + { + "type": "stat", + "name": "wDamAddMax" + }, + { + "type": "stat", + "name": "fDamAddMin" + }, + { + "type": "stat", + "name": "fDamAddMax" + }, + { + "type": "stat", + "name": "aDamAddMin" + }, + { + "type": "stat", + "name": "aDamAddMax" + } + ], + "scaling": [ + 3 + ], + "max": 80 + } + ] + }, + { + "display_name": "Thunderclap", + "desc": "Bash will cast at the player's position and gain additional AoE.\n\n All elemental conversions become Thunder", + "archetype": "Battle Monk", + "archetype_req": 8, + "parents": [ + "Cyclone" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 32, + "col": 5, + "icon": "node_1" + }, + "properties": {}, + "effects": [ + { + "type": "convert_spell_conv", + "target_part": "all", + "base_spell": 1, + "conversion": "Thunder" + }, + { + "type": "raw_stat", + "bonuses": [ + { + "type": "prop", + "abil": "Bash", + "name": "aoe", + "value": 3 + } + ] + } + ] + }, + { + "display_name": "Cyclone", + "desc": "After casting War Scream, envelop yourself with a vortex that damages nearby enemies every 0.5s", + "archetype": "Battle Monk", + "archetype_req": 0, + "parents": [ + "Spirit of the Rabbit" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 31, + "col": 4, + "icon": "node_1" + }, + "properties": { + "aoe": 4, + "duration": 20 + }, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 4, + "target_part": "Cyclone", + "multipliers": [ + 10, + 0, + 0, + 0, + 5, + 10 + ] + }, + { + "type": "add_spell_prop", + "base_spell": 4, + "target_part": "Cyclone Total Damage", + "hits": { + "Cyclone": 40 + } + } + ] + }, + { + "display_name": "Second Chance", + "desc": "When you receive a fatal blow, survive and regain 30% of your Health (10m Cooldown)", + "archetype": "Paladin", + "archetype_req": 12, + "parents": [ + "Cheaper Bash 2" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 32, + "col": 7, + "icon": "node_3" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Blood Pact", + "desc": "If you do not have enough mana to cast a spell, spend health instead (0.6% health per mana)", + "archetype": "Fallen", + "archetype_req": 10, + "parents": [ + "Cheaper War Scream" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 34, + "col": 1, + "icon": "node_3" + }, + "properties": { + "health_cost": 0.6 + }, + "effects": [] + }, + { + "display_name": "Haemorrhage", + "desc": "Reduce Blood Pact's health cost. (0.3% health per mana)", + "archetype": "Fallen", + "archetype_req": 0, + "base_abil": "Blood Pact", + "parents": [ + "Blood Pact" + ], + "dependencies": [ + "Blood Pact" + ], + "blockers": [], + "cost": 1, + "display": { + "row": 35, + "col": 2, + "icon": "node_1" + }, + "properties": {}, + "effects": [ + { + "type": "raw_stat", + "bonuses": [ + { + "type": "prop", + "abil": "Blood Pact", + "name": "health_cost", + "value": -0.3 + } + ] + } + ] + }, + { + "display_name": "Brink of Madness", + "desc": "If your health is 25% full or less, gain +40% Resistance", + "parents": [ + "Blood Pact", + "Cheaper Uppercut 2" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 35, + "col": 4, + "icon": "node_2" + }, + "properties": {}, + "effects": [ + { + "type": "raw_stat", + "toggle": "Activate Brink", + "bonuses": [ + { + "type": "stat", + "name": "defMult.Brink", + "value": 40 + } + ] + } + ] + }, + { + "display_name": "Cheaper Uppercut 2", + "desc": "Reduce the Mana cost of Uppercut", + "base_abil": "Uppercut", + "parents": [ + "Second Chance", + "Brink of Madness" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 35, + "col": 6, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 3, + "cost": -5 + } + ] + }, + { + "display_name": "Martyr", + "desc": "When you receive a fatal blow, all nearby allies become invincible", + "archetype": "Paladin", + "archetype_req": 0, + "parents": [ + "Second Chance" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 35, + "col": 8, + "icon": "node_1" + }, + "properties": { + "duration": 3, + "aoe": 12 + }, + "effects": [] + } + ], + "Mage": [ + { + "display_name": "Meteor", + "desc": "Summon a slow but powerful meteor from the sky, dealing massive damage in a large area", + "parents": [], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 0, + "col": 4, + "icon": "node_mage" + }, + "properties": { + "aoe": 5, + "range": 18 + }, + "effects": [ + { + "type": "replace_spell", + "name": "Meteor", + "cost": 55, + "base_spell": 3, + "display": "Total Damage", + "parts": [ + { + "name": "Meteor Damage", + "multipliers": [ + 300, + 100, + 0, + 0, + 0, + 0 + ] + }, + { + "name": "Total Damage", + "hits": { + "Meteor Damage": 1 + } + } + ] + } + ] + }, + { + "display_name": "Teleport", + "desc": "Instantly teleport in the direction you're facing", + "parents": [ + "Shooting Star" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 6, + "col": 4, + "icon": "node_mage" + }, + "properties": { + "range": 12 + }, + "effects": [ + { + "type": "replace_spell", + "name": "Teleport", + "cost": 25, + "base_spell": 2, + "display": "", + "parts": [] + } + ] + }, + { + "display_name": "Heal", + "desc": "Heal yourself and nearby allies in a large area around you. (When healing an ally, you cannot heal more than 30% of their max health)", + "parents": [ + "Wand Proficiency II", + "Cheaper Teleport" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 8, + "col": 2, + "icon": "node_mage" + }, + "properties": { + "aoe": 5 + }, + "effects": [ + { + "type": "replace_spell", + "name": "Heal", + "cost": 35, + "base_spell": 1, + "display": "Heal", + "parts": [ + { + "name": "Heal", + "power": 0.1 + } + ] + } + ] + }, + { + "display_name": "Ice Snake", + "desc": "Summon a fast-moving ice snake that reduces your enemies' speed and damage them.", + "parents": [ + "Wisdom", + "Cheaper Teleport" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 8, + "col": 6, + "icon": "node_mage" + }, + "properties": { + "range": 18, + "effects": 40, + "duration": 3 + }, + "effects": [ + { + "type": "replace_spell", + "name": "Ice Snake", + "cost": 35, + "base_spell": 4, + "display": "Ice Snake Damage", + "parts": [ + { + "name": "Ice Snake Damage", + "multipliers": [ + 70, + 0, + 0, + 30, + 0, + 0 + ] + } + ] + } + ] + }, + { + "display_name": "Shooting Star", + "desc": "Drastically increase the speed of your Meteor ability.", + "base_abil": 3, + "parents": [ + "Wand Proficiency I" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 4, + "col": 4, + "icon": "node_1" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Wand Proficiency I", + "desc": "Improve your Main Attack's damage and range when using a wand.", + "base_abil": 999, + "parents": [ + "Meteor" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 2, + "col": 4, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "raw_stat", + "bonuses": [ + { + "type": "stat", + "name": "mdPct", + "value": 5 + } + ] + } + ] + }, + { + "display_name": "Cheaper Meteor", + "desc": "Reduce the Mana cost of Meteor.", + "base_abil": "Meteor", + "parents": [ + "Wand Proficiency I" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 2, + "col": 6, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 3, + "cost": -10 + } + ] + }, + { + "display_name": "Earth Mastery", + "base_abil": 998, + "desc": "Increases your base damage from all Earth attacks", + "archetype": "Arcanist", + "archetype_req": 0, + "parents": [ + "Ice Snake" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 10, + "col": 8, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "raw_stat", + "bonuses": [ + { + "type": "stat", + "name": "eDamPct", + "value": 20 + }, + { + "type": "stat", + "name": "eDamAddMin", + "value": 2 + }, + { + "type": "stat", + "name": "eDamAddMax", + "value": 4 + } + ] + } + ] + }, + { + "display_name": "Thunder Mastery", + "base_abil": 998, + "desc": "Increases your base damage from all Thunder attacks", + "archetype": "Riftwalker", + "archetype_req": 0, + "parents": [ + "Heal", + "Cheaper Teleport" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 10, + "col": 2, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "raw_stat", + "bonuses": [ + { + "type": "stat", + "name": "tDamPct", + "value": 10 + }, + { + "type": "stat", + "name": "tDamAddMin", + "value": 1 + }, + { + "type": "stat", + "name": "tDamAddMax", + "value": 8 + } + ] + } + ] + }, + { + "display_name": "Water Mastery", + "base_abil": 998, + "desc": "Increases your base damage from all Water attacks", + "archetype": "Light Bender", + "archetype_req": 0, + "parents": [ + "Cheaper Teleport", + "Thunder Mastery" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 11, + "col": 4, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "raw_stat", + "bonuses": [ + { + "type": "stat", + "name": "wDamPct", + "value": 15 + }, + { + "type": "stat", + "name": "wDamAddMin", + "value": 2 + }, + { + "type": "stat", + "name": "wDamAddMax", + "value": 4 + } + ] + } + ] + }, + { + "display_name": "Air Mastery", + "base_abil": 998, + "desc": "Increases base damage from all Air attacks", + "archetype": "Riftwalker", + "archetype_req": 0, + "parents": [ + "Heal" + ], + "dependencies": [], + "blockers": [], + "cost": 1, "display": { "row": 10, "col": 0, @@ -4270,18 +5525,20 @@ const atrees = { } ] } - ] + ] }, { "display_name": "Fire Mastery", "base_abil": 998, "desc": "Increases base damage from all Fire attacks", - "archetype": "Arcanist", - "archetype_req": 0, - "parents": ["Ice Snake"], - "dependencies": [], + "archetype": "Arcanist", + "archetype_req": 0, + "parents": [ + "Ice Snake" + ], + "dependencies": [], "blockers": [], - "cost": 1, + "cost": 1, "display": { "row": 10, "col": 6, @@ -4309,32 +5566,45 @@ const atrees = { } ] } - ] + ] }, { "display_name": "Cheaper Teleport", "desc": "Reduce the Mana cost of Teleport.", "base_abil": "Teleport", - "parents": ["Heal", "Ice Snake"], - "dependencies": [], + "parents": [ + "Heal", + "Ice Snake" + ], + "dependencies": [], "blockers": [], - "cost": 1, - "display": { "row": 8, "col": 4, "icon": "node_0"}, + "cost": 1, + "display": { + "row": 8, + "col": 4, + "icon": "node_0" + }, "properties": {}, - "effects": [{ - "type": "add_spell_prop", - "base_spell": 2, - "cost": -5 - }] + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 2, + "cost": -5 + } + ] }, { "display_name": "Wisdom", "desc": "For every 2% or 2 Raw Spell Damage you have from items, gain +1/5s mana regen (Max 5/5s)", "archetype": "Arcanist", "archetype_req": 0, - "parents": ["Teleport"], + "parents": [ + "Teleport" + ], "dependencies": [], - "blockers": ["Wand Proficiency II"], + "blockers": [ + "Wand Proficiency II" + ], "cost": 1, "display": { "row": 6, @@ -4342,10 +5612,11 @@ const atrees = { "icon": "node_0" }, "properties": {}, - "effects": [{ - "type": "stat_scaling", - "slider": false, - "inputs": [ + "effects": [ + { + "type": "stat_scaling", + "slider": false, + "inputs": [ { "type": "stat", "name": "sdPct" @@ -4355,13 +5626,17 @@ const atrees = { "name": "sdRaw" } ], - "output": { - "type": "stat", - "name": "mr" - }, - "scaling": [0.5, 0.5], - "max": 5 - }] + "output": { + "type": "stat", + "name": "mr" + }, + "scaling": [ + 0.5, + 0.5 + ], + "max": 5 + } + ] }, { "display_name": "Wand Proficiency II", @@ -4369,7 +5644,9 @@ const atrees = { "archetype": "Riftwalker", "archetype_req": 0, "base_abil": 999, - "parents": ["Teleport"], + "parents": [ + "Teleport" + ], "dependencies": [], "blockers": [], "cost": 1, @@ -4390,32 +5667,50 @@ const atrees = { } ] } - ] + ] }, { "display_name": "Wind Slash", "desc": "When using Teleport, slash through the air and deal damage to enemies you pierce.", "archetype": "Riftwalker", "base_abil": "Teleport", - "parents": ["Air Mastery", "Thunderstorm"], - "dependencies": ["Teleport"], + "parents": [ + "Air Mastery", + "Thunderstorm" + ], + "dependencies": [ + "Teleport" + ], "blockers": [], - "cost": 2, - "display": { "row": 12, "col": 0, "icon": "node_1"}, + "cost": 2, + "display": { + "row": 12, + "col": 0, + "icon": "node_1" + }, "properties": {}, "effects": [ { "type": "add_spell_prop", "target_part": "Wind Slash", - "base_spell": 2, - "multipliers": [50, 0, 0, 0, 0, 50] + "base_spell": 2, + "multipliers": [ + 50, + 0, + 0, + 0, + 0, + 50 + ] }, { "type": "add_spell_prop", "target_part": "Total Damage", - "base_spell": 2, + "base_spell": 2, "display": "Total Damage", - "hits": {"Wind Slash": 1} + "hits": { + "Wind Slash": 1 + } } ] }, @@ -4423,8 +5718,13 @@ const atrees = { "display_name": "Thunderstorm", "desc": "After casting Meteor, summon 3 lightning strikes and deal additional damage", "base_abil": "Meteor", - "parents": ["Wind Slash", "Thunder Mastery"], - "dependencies": ["Meteor"], + "parents": [ + "Wind Slash", + "Thunder Mastery" + ], + "dependencies": [ + "Meteor" + ], "blockers": [], "cost": 2, "display": { @@ -4439,14 +5739,23 @@ const atrees = { { "type": "add_spell_prop", "target_part": "Lightning Damage", - "base_spell": 3, - "multipliers": [30, 0, 15, 0, 0, 0] + "base_spell": 3, + "multipliers": [ + 30, + 0, + 15, + 0, + 0, + 0 + ] }, { "type": "add_spell_prop", "target_part": "Total Damage", "base_spell": 3, - "hits": { "Lightning Damage": 3 } + "hits": { + "Lightning Damage": 3 + } } ] }, @@ -4454,28 +5763,50 @@ const atrees = { "display_name": "Stronger Meteor", "desc": "Increase the damage of Meteor.", "base_abil": "Meteor", - "archetype": "Arcanist", - "archetype_req": 2, - "parents": ["Burning Sigil"], - "dependencies": ["Meteor"], + "archetype": "Arcanist", + "archetype_req": 2, + "parents": [ + "Burning Sigil" + ], + "dependencies": [ + "Meteor" + ], "blockers": [], - "cost": 1, - "display": { "row": 13, "col": 8, "icon": "node_0"}, + "cost": 1, + "display": { + "row": 13, + "col": 8, + "icon": "node_0" + }, "properties": {}, "effects": [ - { + { "type": "add_spell_prop", - "base_spell": 3, - "target_part": "Meteor Damage", + "base_spell": 3, + "target_part": "Meteor Damage", "behavior": "modify", - "multipliers": [30, 90, 0, 0, 0, 0] + "multipliers": [ + 30, + 90, + 0, + 0, + 0, + 0 + ] }, { "type": "add_spell_prop", - "base_spell": 3, + "base_spell": 3, "target_part": "Lightning Damage", "behavior": "modify", - "multipliers": [30, 90, 0, 0, 0, 0] + "multipliers": [ + 30, + 90, + 0, + 0, + 0, + 0 + ] } ] }, @@ -4483,39 +5814,55 @@ const atrees = { "display_name": "Burning Sigil", "desc": "Meteor will leave a sigil that damages enemies every 0.4s.", "base_abil": "Meteor", - "parents": ["Fire Mastery", "Earth Mastery"], - "dependencies": [], + "parents": [ + "Fire Mastery", + "Earth Mastery" + ], + "dependencies": [], "blockers": [], - "cost": 2, + "cost": 2, "display": { - "row": 12, - "col": 7, - "icon": "node_1" + "row": 12, + "col": 7, + "icon": "node_1" }, - "properties": { + "properties": { "aoe": 7, "duration": 8 }, - "effects": [{ - "type": "replace_spell", - "name": "Burning Sigil", - "base_spell": 6, - "display": "DPS", - "parts": [ - { - "name": "Tick Damage", - "multipliers": [15, 0, 0, 0, 25, 0] - }, - { - "name": "DPS", - "hits": { "Tick Damage": 2.5 } - }, - { - "name": "Total Burn Damage", - "hits": { "Tick Damage": 20 } - } - ] - }] + "effects": [ + { + "type": "replace_spell", + "name": "Burning Sigil", + "base_spell": 6, + "display": "DPS", + "parts": [ + { + "name": "Tick Damage", + "multipliers": [ + 15, + 0, + 0, + 0, + 25, + 0 + ] + }, + { + "name": "DPS", + "hits": { + "Tick Damage": 2.5 + } + }, + { + "name": "Total Burn Damage", + "hits": { + "Tick Damage": 20 + } + } + ] + } + ] }, { "display_name": "Sunshower", @@ -4523,10 +5870,16 @@ const atrees = { "archetype": "Light Bender", "archetype_req": 0, "base_abil": "Heal", - "parents": ["Water Mastery"], - "dependencies": ["Heal"], - "blockers": ["Arcane Transfer"], - "cost": 2, + "parents": [ + "Water Mastery" + ], + "dependencies": [ + "Heal" + ], + "blockers": [ + "Arcane Transfer" + ], + "cost": 2, "display": { "row": 13, "col": 4, @@ -4534,11 +5887,18 @@ const atrees = { }, "properties": {}, "effects": [ - { + { "type": "add_spell_prop", - "base_spell": 1, - "target_part": "Sunshower Damage", - "multipliers": [70, 0, 0, 30, 0, 0] + "base_spell": 1, + "target_part": "Sunshower Damage", + "multipliers": [ + 70, + 0, + 0, + 30, + 0, + 0 + ] } ] }, @@ -4546,17 +5906,24 @@ const atrees = { "display_name": "Windsweeper", "desc": "Your Main Attack will add +1 Winded to enemies you hit. (Max 5, 0.5s cooldown) Ice Snake will deal additional damage to enemies for every Winded they have", "archetype": "Riftwalker", - "archetype_req": 3, - "parents": ["Wind Slash", "Thunderstorm"], - "dependencies": ["Ice Snake"], + "archetype_req": 3, + "parents": [ + "Wind Slash", + "Thunderstorm" + ], + "dependencies": [ + "Ice Snake" + ], "blockers": [], - "cost": 2, + "cost": 2, "display": { "row": 15, "col": 1, "icon": "node_3" }, - "properties": { "max": 5 }, + "properties": { + "max": 5 + }, "effects": [ { "type": "stat_scaling", @@ -4566,7 +5933,9 @@ const atrees = { "type": "stat", "name": "nConvBase:4.Ice Snake Damage" }, - "scaling": [20], + "scaling": [ + 20 + ], "slider_step": 1, "slider_max": 5 }, @@ -4578,7 +5947,9 @@ const atrees = { "type": "stat", "name": "wConvBase:4.Ice Snake Damage" }, - "scaling": [10] + "scaling": [ + 10 + ] } ] }, @@ -4587,7 +5958,9 @@ const atrees = { "desc": "When casting Meteor, instead summon 2 orbs of light with 200 Health that will attack when you use your Main Attack. When they damage an enemy, they lose 20% of their Health. They can be healed back.", "archetype": "Light Bender", "archetype_req": 2, - "parents": ["Sunshower"], + "parents": [ + "Sunshower" + ], "dependencies": [], "blockers": [], "cost": 2, @@ -4596,7 +5969,9 @@ const atrees = { "col": 4, "icon": "node_3" }, - "properties": { "health": 200 }, + "properties": { + "health": 200 + }, "effects": [ { "type": "replace_spell", @@ -4606,11 +5981,20 @@ const atrees = { "parts": [ { "name": "Per Orb", - "multipliers": [50, 0, 30, 20, 0, 0] + "multipliers": [ + 50, + 0, + 30, + 20, + 0, + 0 + ] }, { "name": "Per Melee (max)", - "hits": { "Per Orb": 2 } + "hits": { + "Per Orb": 2 + } } ] }, @@ -4625,23 +6009,27 @@ const atrees = { "display_name": "Arcane Transfer", "desc": "Meteor and Ice Snake will add +5 Mana to a Mana Bank for every aggressive enemy you hit. Heal will now transfer the content of your Mana Bank into usable Mana instead of healing.", "archetype": "Arcanist", - "archetype_req": 2, - "parents": ["Burning Sigil"], - "dependencies": [], + "archetype_req": 2, + "parents": [ + "Burning Sigil" + ], + "dependencies": [], "blockers": [], - "cost": 2, + "cost": 2, "display": { - "row": 15, - "col": 7, - "icon": "node_3" + "row": 15, + "col": 7, + "icon": "node_3" + }, + "properties": { + "bank": 90 }, - "properties": { "bank": 90 }, "effects": [ - { + { "type": "replace_spell", "name": "Arcane Transfer", - "base_spell": 1, - "parts": [], + "base_spell": 1, + "parts": [], "display": "" } ] @@ -4650,11 +6038,18 @@ const atrees = { "display_name": "Cheaper Heal", "desc": "Reduce the Mana cost of Heal.", "base_abil": "Heal", - "parents": ["Windsweeper", "Purification"], - "dependencies": [], + "parents": [ + "Windsweeper", + "Purification" + ], + "dependencies": [], "blockers": [], - "cost": 1, - "display": {"row": 17, "col": 1, "icon": "node_0"}, + "cost": 1, + "display": { + "row": 17, + "col": 1, + "icon": "node_0" + }, "properties": {}, "effects": [ { @@ -4662,13 +6057,17 @@ const atrees = { "base_spell": 1, "cost": -5 } - ] + ] }, { "display_name": "Purification", "desc": "Heal and Arcane Transfer will purify you of all negative effects and fire. (3s Cooldown)", "base_abil": 1, - "parents": ["Ophanim", "Cheaper Heal", "Sentient Snake"], + "parents": [ + "Ophanim", + "Cheaper Heal", + "Sentient Snake" + ], "dependencies": [], "blockers": [], "cost": 2, @@ -4684,8 +6083,13 @@ const atrees = { "display_name": "Sentient Snake", "desc": "Ice Snake will follow the direction you're facing, allowing you to control it.", "base_abil": "Ice Snake", - "parents": ["Arcane Transfer", "Purification"], - "dependencies": ["Ice Snake"], + "parents": [ + "Arcane Transfer", + "Purification" + ], + "dependencies": [ + "Ice Snake" + ], "blockers": [], "cost": 2, "display": { @@ -4700,8 +6104,12 @@ const atrees = { "display_name": "Eye Piercer", "desc": "Teleport will blind enemies, confusing them for a short amount of time.", "base_abil": "Teleport", - "parents": ["Cheaper Heal"], - "dependencies": ["Teleport"], + "parents": [ + "Cheaper Heal" + ], + "dependencies": [ + "Teleport" + ], "blockers": [], "cost": 2, "display": { @@ -4716,10 +6124,15 @@ const atrees = { "display_name": "Breathless", "desc": "Meteor will deal additional damage to enemies for every Winded they have.", "base_abil": "Windsweeper", - "archetype": "Riftwalker", - "archetype_req": 0, - "parents": ["Cheaper Heal", "Purification"], - "dependencies": ["Windsweeper"], + "archetype": "Riftwalker", + "archetype_req": 0, + "parents": [ + "Cheaper Heal", + "Purification" + ], + "dependencies": [ + "Windsweeper" + ], "blockers": [], "cost": 2, "display": { @@ -4759,7 +6172,9 @@ const atrees = { "name": "eConvBase:3.Lightning Damage" } ], - "scaling": [15] + "scaling": [ + 15 + ] } ] }, @@ -4767,32 +6182,51 @@ const atrees = { "display_name": "Larger Heal", "desc": "Increase your Heal's range.", "base_abil": 1, - "archetype": "Light Bender", - "archetype_req": 0, - "parents": ["Purification", "Sentient Snake"], - "dependencies": ["Heal"], - "blockers": ["Arcane Transfer"], - "cost": 1, - "display": { "row": 18, "col": 5, "icon": "node_0"}, + "archetype": "Light Bender", + "archetype_req": 0, + "parents": [ + "Purification", + "Sentient Snake" + ], + "dependencies": [ + "Heal" + ], + "blockers": [ + "Arcane Transfer" + ], + "cost": 1, + "display": { + "row": 18, + "col": 5, + "icon": "node_0" + }, "properties": {}, - "effects": [{ - "type": "raw_stat", - "bonuses": [{ - "type": "prop", - "abil": "Heal", - "name": "aoe", - "value": 2 - }] - }] + "effects": [ + { + "type": "raw_stat", + "bonuses": [ + { + "type": "prop", + "abil": "Heal", + "name": "aoe", + "value": 2 + } + ] + } + ] }, { "display_name": "Larger Mana Bank", "desc": "Increase your maximum Mana Bank by +30.", "base_abil": 1, - "archetype": "Arcanist", - "archetype_req": 0, - "parents": ["Sentient Snake"], - "dependencies": ["Arcane Transfer"], + "archetype": "Arcanist", + "archetype_req": 0, + "parents": [ + "Sentient Snake" + ], + "dependencies": [ + "Arcane Transfer" + ], "blockers": [], "cost": 1, "display": { @@ -4801,42 +6235,64 @@ const atrees = { "icon": "node_0" }, "properties": {}, - "effects": [{ - "type": "raw_stat", - "bonuses": [{ - "type": "prop", - "abil": "Arcane Transfer", - "name": "bank", - "value": 30 - }] - }] + "effects": [ + { + "type": "raw_stat", + "bonuses": [ + { + "type": "prop", + "abil": "Arcane Transfer", + "name": "bank", + "value": 30 + } + ] + } + ] }, { "display_name": "Cheaper Ice Snake", "desc": "Reduce the Mana cost of Ice Snake.", "base_abil": "Ice Snake", - "parents": ["Eye Piercer", "Fortitude"], - "dependencies": [], + "parents": [ + "Eye Piercer", + "Fortitude" + ], + "dependencies": [], "blockers": [], - "cost": 1, - "display": {"row": 20, "col": 0, "icon": "node_0"}, + "cost": 1, + "display": { + "row": 20, + "col": 0, + "icon": "node_0" + }, "properties": {}, - "effects": [{ - "type": "add_spell_prop", - "base_spell": 4, - "cost": -5 - }] + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 4, + "cost": -5 + } + ] }, { "display_name": "Cheaper Teleport II", "desc": "Reduce the Mana cost of Teleport.", "base_abil": "Teleport", - "parents": ["Purification"], - "_parents": ["Purification", "Fortitude"], - "dependencies": [], + "parents": [ + "Purification" + ], + "_parents": [ + "Purification", + "Fortitude" + ], + "dependencies": [], "blockers": [], - "cost": 1, - "display": {"row": 20, "col": 4, "icon": "node_0"}, + "cost": 1, + "display": { + "row": 20, + "col": 4, + "icon": "node_0" + }, "properties": {}, "effects": [ { @@ -4844,15 +6300,18 @@ const atrees = { "base_spell": 2, "cost": -5 } - ] + ] }, { "display_name": "Fortitude", "desc": "After healing 120% of your max health within 10s, apply a damage bonus to each player you've healed. (15s Cooldown)", "base_abil": "Heal", - "archetype": "Light Bender", - "archetype_req": 0, - "parents": ["Cheaper Ice Snake", "Cheaper Teleport II"], + "archetype": "Light Bender", + "archetype_req": 0, + "parents": [ + "Cheaper Ice Snake", + "Cheaper Teleport II" + ], "dependencies": [], "blockers": [], "cost": 2, @@ -4870,9 +6329,11 @@ const atrees = { "display_name": "Pyrokinesis", "desc": "When your Mana Bank reaches 30, your Main Attack will stop and explode when it hits an enemy. (Damage is dealt as Main Attack Damage)", "base_abil": 4, - "archetype": "Arcanist", - "archetype_req": 4, - "parents": ["Sentient Snake"], + "archetype": "Arcanist", + "archetype_req": 4, + "parents": [ + "Sentient Snake" + ], "dependencies": [], "blockers": [], "cost": 2, @@ -4890,7 +6351,10 @@ const atrees = { "desc": "For every 5/3s Lifesteal you have from items, gain 1% Spell Damage (Max 50%)", "archetype": "", "archetype_req": 0, - "parents": ["Pyrokinesis", "Snake Nest"], + "parents": [ + "Pyrokinesis", + "Snake Nest" + ], "dependencies": [], "blockers": [], "cost": 1, @@ -4900,31 +6364,40 @@ const atrees = { "icon": "node_0" }, "properties": {}, - "effects": [{ - "type": "stat_scaling", - "slider": false, - "inputs": [ + "effects": [ + { + "type": "stat_scaling", + "slider": false, + "inputs": [ { "type": "stat", "name": "ls" } ], - "output": { - "type": "stat", - "name": "sdPct" - }, - "scaling": [0.2], - "max": 50 - }] + "output": { + "type": "stat", + "name": "sdPct" + }, + "scaling": [ + 0.2 + ], + "max": 50 + } + ] }, { "display_name": "Blink", "desc": "Teleport will trigger 2 times in quick successions", "base_abil": "Teleport", - "archetype": "Riftwalker", - "archetype_req": 0, - "parents": ["Fortitude", "Cheaper Ice Snake"], - "dependencies": ["Teleport"], + "archetype": "Riftwalker", + "archetype_req": 0, + "parents": [ + "Fortitude", + "Cheaper Ice Snake" + ], + "dependencies": [ + "Teleport" + ], "blockers": [], "cost": 2, "display": { @@ -4936,19 +6409,24 @@ const atrees = { "effects": [ { "type": "raw_stat", - "bonuses": [{ - "type": "prop", - "abil": "Teleport", - "name": "range", - "value": -4 - }] + "bonuses": [ + { + "type": "prop", + "abil": "Teleport", + "name": "range", + "value": -4 + } + ] }, { "type": "add_spell_prop", "behavior": "modify", "target_part": "Total Damage", - "base_spell": 2, - "hits": {"Wind Slash": 1, "Explosion Damage": 1} + "base_spell": 2, + "hits": { + "Wind Slash": 1, + "Explosion Damage": 1 + } } ] }, @@ -4956,8 +6434,14 @@ const atrees = { "display_name": "Snake Nest", "desc": "Ice Snake will summon 3 snakes.", "base_abil": "Ice Snake", - "parents": ["Seance", "Cheaper Teleport II", "Healthier Ophanim I"], - "dependencies": ["Ice Snake"], + "parents": [ + "Seance", + "Cheaper Teleport II", + "Healthier Ophanim I" + ], + "dependencies": [ + "Ice Snake" + ], "blockers": [], "cost": 2, "display": { @@ -4972,10 +6456,15 @@ const atrees = { "display_name": "Arcane Restoration", "desc": "Pyrokinesis will add +1 Mana every 1s to your Mana Bank when hitting an aggressive enemy.", "base_abil": 999, - "archetype": "Arcanist", - "archetype_req": 0, - "parents": ["Seance", "Snake Nest"], - "dependencies": ["Pyrokinesis"], + "archetype": "Arcanist", + "archetype_req": 0, + "parents": [ + "Seance", + "Snake Nest" + ], + "dependencies": [ + "Pyrokinesis" + ], "blockers": [], "cost": 2, "display": { @@ -4994,7 +6483,10 @@ const atrees = { "archetype": "Light Bender", "archetype_req": 0, "base_abil": "Heal", - "parents": ["Healthier Ophanim I", "Transonic Warp"], + "parents": [ + "Healthier Ophanim I", + "Transonic Warp" + ], "dependencies": [], "blockers": [], "cost": 2, @@ -5004,31 +6496,40 @@ const atrees = { "icon": "node_1" }, "properties": {}, - "effects": [{ - "type": "stat_scaling", - "slider": false, - "round": false, - "inputs": [ + "effects": [ + { + "type": "stat_scaling", + "slider": false, + "round": false, + "inputs": [ { "type": "stat", "name": "wDamPct" } ], - "output": { - "type": "stat", - "name": "healPct" - }, - "scaling": [0.3] - }] + "output": { + "type": "stat", + "name": "healPct" + }, + "scaling": [ + 0.3 + ] + } + ] }, { "display_name": "Transonic Warp", "desc": "Teleport will deal additional damage to enemies for every Winded they have.", "base_abil": "Windsweeper", - "archetype": "Riftwalker", - "archetype_req": 5, - "parents": ["Cheaper Ice Snake"], - "dependencies": ["Ice Snake", "Windsweeper"], + "archetype": "Riftwalker", + "archetype_req": 5, + "parents": [ + "Cheaper Ice Snake" + ], + "dependencies": [ + "Ice Snake", + "Windsweeper" + ], "blockers": [], "cost": 2, "display": { @@ -5052,7 +6553,9 @@ const atrees = { "name": "nConvBase:2.Explosion Damage" } ], - "scaling": [30] + "scaling": [ + 30 + ] }, { "type": "stat_scaling", @@ -5068,7 +6571,9 @@ const atrees = { "name": "tConvBase:2.Explosion Damage" } ], - "scaling": [10] + "scaling": [ + 10 + ] }, { "type": "stat_scaling", @@ -5084,18 +6589,25 @@ const atrees = { "name": "aConvBase:2.Explosion Damage" } ], - "scaling": [5] + "scaling": [ + 5 + ] } ] }, { "display_name": "Healthier Ophanim I", "desc": "Increase the health of your orbs from Ophanim by +800 and reduce the damage they take when hitting an enemy by -5%.", - "archetype": "Light Bender", - "archetype_req": 0, + "archetype": "Light Bender", + "archetype_req": 0, "base_abil": "Ophanim", - "parents": ["Fortitude", "Cheaper Teleport II"], - "dependencies": ["Ophanim"], + "parents": [ + "Fortitude", + "Cheaper Teleport II" + ], + "dependencies": [ + "Ophanim" + ], "blockers": [], "cost": 1, "display": { @@ -5111,16 +6623,25 @@ const atrees = { "desc": "Heal will trigger 2 more times, increasing the overall healing.", "archetype": "Light Bender", "base_abil": "Heal", - "parents": ["Healthier Ophanim I", "Snake Nest"], - "dependencies": ["Heal"], - "blockers": ["Arcane Transfer"], - "cost": 2, + "parents": [ + "Healthier Ophanim I", + "Snake Nest" + ], + "dependencies": [ + "Heal" + ], + "blockers": [ + "Arcane Transfer" + ], + "cost": 2, "display": { - "row": 23, - "col": 4, - "icon": "node_1" + "row": 23, + "col": 4, + "icon": "node_1" + }, + "properties": { + "aoe": 5 }, - "properties": { "aoe": 5 }, "effects": [ { "type": "add_spell_prop", @@ -5143,11 +6664,16 @@ const atrees = { { "display_name": "Diffusion", "desc": "If you kill an enemy with Winded on them, the leftover Winded will spread to nearby enemies.", - "archetype": "Riftwalker", - "archetype_req": 6, + "archetype": "Riftwalker", + "archetype_req": 6, "base_abil": "Windsweeper", - "parents": ["Transonic Warp", "Fluid Healing"], - "dependencies": ["Windsweeper"], + "parents": [ + "Transonic Warp", + "Fluid Healing" + ], + "dependencies": [ + "Windsweeper" + ], "blockers": [], "cost": 2, "display": { @@ -5155,22 +6681,26 @@ const atrees = { "col": 1, "icon": "node_3" }, - "properties": {"aoe": 5 }, + "properties": { + "aoe": 5 + }, "effects": [] }, { "display_name": "Lightweaver", "desc": "After healing 60% of your max health within 10s, summon a rotating orb that damages all enemies it touches for 20s. (Max 3 Orbs)", "archetype": "Light Bender", - "archetype_req": 7, - "parents": ["Orphion's Pulse"], + "archetype_req": 7, + "parents": [ + "Orphion's Pulse" + ], "dependencies": [], "blockers": [], - "cost": 2, + "cost": 2, "display": { - "row": 25, - "col": 4, - "icon": "node_3" + "row": 25, + "col": 4, + "icon": "node_3" }, "properties": {}, "effects": [ @@ -5180,15 +6710,24 @@ const atrees = { "base_spell": 5, "display": "Orb Damage", "parts": [ - { + { "name": "Single Orb", "type": "damage", - "multipliers": [30, 0, 0, 0, 20, 0] + "multipliers": [ + 30, + 0, + 0, + 0, + 20, + 0 + ] }, { "name": "Orb Damage", "type": "total", - "hits": { "Single Orb": 3 } + "hits": { + "Single Orb": 3 + } } ] } @@ -5198,8 +6737,13 @@ const atrees = { "display_name": "Arcane Speed", "desc": "After casting Heal or Arcane Transfer, gain +80% speed for 3s. (8s Cooldown)", "base_abil": "Heal", - "parents": ["Lightweaver", "Larger Mana Bank II"], - "dependencies": ["Heal"], + "parents": [ + "Lightweaver", + "Larger Mana Bank II" + ], + "dependencies": [ + "Heal" + ], "blockers": [], "cost": 2, "display": { @@ -5214,10 +6758,15 @@ const atrees = { "display_name": "Larger Mana Bank II", "desc": "Increase your maximum Mana Bank by +30.", "base_abil": 1, - "archetype": "Arcanist", - "archetype_req": 0, - "parents": ["Seance", "Arcane Speed"], - "dependencies": ["Arcane Transfer"], + "archetype": "Arcanist", + "archetype_req": 0, + "parents": [ + "Seance", + "Arcane Speed" + ], + "dependencies": [ + "Arcane Transfer" + ], "blockers": [], "cost": 1, "display": { @@ -5232,10 +6781,15 @@ const atrees = { "display_name": "Psychokinesis", "desc": "Meteor will launch directly from you as a slow projectile.", "base_abil": 3, - "archetype": "Arcanist", - "archetype_req": 5, - "parents": ["Larger Mana Bank II", "Arcane Speed"], - "dependencies": ["Meteor"], + "archetype": "Arcanist", + "archetype_req": 5, + "parents": [ + "Larger Mana Bank II", + "Arcane Speed" + ], + "dependencies": [ + "Meteor" + ], "blockers": [], "cost": 1, "display": { @@ -5250,10 +6804,14 @@ const atrees = { "display_name": "More Winded", "desc": "Incrase your maximum Winded by +5.", "base_abil": "Windsweeper", - "archetype": "Riftwalker", - "archetype_req": 0, - "parents": ["Diffusion"], - "dependencies": ["Windsweeper"], + "archetype": "Riftwalker", + "archetype_req": 0, + "parents": [ + "Diffusion" + ], + "dependencies": [ + "Windsweeper" + ], "blockers": [], "cost": 1, "display": { @@ -5286,11 +6844,18 @@ const atrees = { "display_name": "Cheaper Ice Snake II", "desc": "Reduce the Mana cost of Ice Snake.", "base_abil": "Ice Snake", - "parents": ["Diffusion", "Explosive Entrance"], - "dependencies": [], + "parents": [ + "Diffusion", + "Explosive Entrance" + ], + "dependencies": [], "blockers": [], - "cost": 1, - "display": {"row": 27, "col": 1, "icon": "node_0"}, + "cost": 1, + "display": { + "row": 27, + "col": 1, + "icon": "node_0" + }, "properties": {}, "effects": [ { @@ -5298,17 +6863,25 @@ const atrees = { "base_spell": 4, "cost": -5 } - ] + ] }, { "display_name": "Cheaper Meteor II", "desc": "Reduce the Mana cost of Meteor.", "base_abil": "Meteor", - "parents": ["Explosive Entrance", "Lightweaver", "Arcane Speed"], - "dependencies": [], + "parents": [ + "Explosive Entrance", + "Lightweaver", + "Arcane Speed" + ], + "dependencies": [], "blockers": [], - "cost": 1, - "display": {"row": 27, "col": 5, "icon": "node_0"}, + "cost": 1, + "display": { + "row": 27, + "col": 5, + "icon": "node_0" + }, "properties": {}, "effects": [ { @@ -5316,16 +6889,20 @@ const atrees = { "base_spell": 3, "cost": -5 } - ] + ] }, { "display_name": "Chaos Explosion", "desc": "When your Mana Bank reaches 120, casting Arcane Transfer will rapidly unleash the last 3 spells you've cast in order.", "base_abil": "Arcane Transfer", - "archetype": "Arcanist", - "archetype_req": 8, - "parents": ["Larger Mana Bank II"], - "dependencies": ["Arcane Transfer"], + "archetype": "Arcanist", + "archetype_req": 8, + "parents": [ + "Larger Mana Bank II" + ], + "dependencies": [ + "Arcane Transfer" + ], "blockers": [], "cost": 2, "display": { @@ -5340,10 +6917,14 @@ const atrees = { "display_name": "Arcane Power", "desc": "Meteor and Ice Snake will add +2 Mana to your Mana Bank for each aggressive mob you hit.", "base_abil": "Arcane Transfer", - "archetype": "Arcanist", - "archetype_req": 0, - "parents": ["Arctic Snake"], - "dependencies": ["Arcane Transfer"], + "archetype": "Arcanist", + "archetype_req": 0, + "parents": [ + "Arctic Snake" + ], + "dependencies": [ + "Arcane Transfer" + ], "blockers": [], "cost": 1, "display": { @@ -5358,8 +6939,13 @@ const atrees = { "display_name": "Explosive Entrance", "desc": "Deal Damage in an area on the location you Teleport to.", "base_abil": "Teleport", - "parents": ["Cheaper Ice Snake II", "Cheaper Meteor II"], - "dependencies": ["Teleport"], + "parents": [ + "Cheaper Ice Snake II", + "Cheaper Meteor II" + ], + "dependencies": [ + "Teleport" + ], "blockers": [], "cost": 2, "display": { @@ -5374,15 +6960,24 @@ const atrees = { { "type": "add_spell_prop", "target_part": "Explosion Damage", - "base_spell": 2, - "multipliers": [50, 0, 0, 0, 30, 0] + "base_spell": 2, + "multipliers": [ + 50, + 0, + 0, + 0, + 30, + 0 + ] }, { "type": "add_spell_prop", "behavior": "modify", "target_part": "Total Damage", - "base_spell": 2, - "hits": {"Explosion Damage": 1} + "base_spell": 2, + "hits": { + "Explosion Damage": 1 + } } ] }, @@ -5390,10 +6985,15 @@ const atrees = { "display_name": "Gust", "desc": "Ice Snake will add +1 Winded to enemies and deal more damage.", "base_abil": "Ice Snake", - "archetype": "Riftwalker", - "archetype_req": 7, - "parents": ["Cheaper Ice Snake II", "Explosive Entrance"], - "dependencies": ["Ice Snake"], + "archetype": "Riftwalker", + "archetype_req": 7, + "parents": [ + "Cheaper Ice Snake II", + "Explosive Entrance" + ], + "dependencies": [ + "Ice Snake" + ], "blockers": [], "cost": 2, "display": { @@ -5406,17 +7006,26 @@ const atrees = { { "type": "add_spell_prop", "target_part": "Ice Snake Damage", - "base_spell": 4, - "multipliers": [0, 0, 0, 0, 0, 20] + "base_spell": 4, + "multipliers": [ + 0, + 0, + 0, + 0, + 0, + 20 + ] } ] }, { "display_name": "Time Dilation", "desc": "When sprinting, create an area that increases the speed of all allies the longer they run in it. (Step out or stop running to cancel)", - "archetype": "Riftwalker", - "archetype_req": 7, - "parents": ["Cheaper Ice Snake II"], + "archetype": "Riftwalker", + "archetype_req": 7, + "parents": [ + "Cheaper Ice Snake II" + ], "dependencies": [], "blockers": [], "cost": 2, @@ -5434,26 +7043,45 @@ const atrees = { "archetype": "Light Bender", "archetype_req": 0, "base_abil": "Ophanim", - "parents": ["Cheaper Meteor II"], - "_parents": ["Explosive Entrance", "Cheaper Meteor II"], - "dependencies": ["Ophanim"], + "parents": [ + "Cheaper Meteor II" + ], + "_parents": [ + "Explosive Entrance", + "Cheaper Meteor II" + ], + "dependencies": [ + "Ophanim" + ], "blockers": [], - "cost": 1, - "display": { "row": 28, "col": 4, "icon": "node_0"}, + "cost": 1, + "display": { + "row": 28, + "col": 4, + "icon": "node_0" + }, "properties": {}, - "effects": [{ - "type": "add_spell_prop", - "base_spell": 3, - "target_part": "Per Melee (max)", - "hits": { "Per Orb": 1 } - }] + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 3, + "target_part": "Per Melee (max)", + "hits": { + "Per Orb": 1 + } + } + ] }, { "display_name": "Arctic Snake", "desc": "Ice Snake will freeze enemies completely for 2s.", "base_abil": "Ice Snake", - "parents": ["Chaos Explosion"], - "dependencies": ["Ice Snake"], + "parents": [ + "Chaos Explosion" + ], + "dependencies": [ + "Ice Snake" + ], "blockers": [], "cost": 2, "display": { @@ -5468,9 +7096,12 @@ const atrees = { "display_name": "Devitalize", "desc": "Enemies will deal -2% damage for every Winded they have.", "base_abil": "Windsweeper", - "archetype": "Riftwalker", - "archetype_req": 5, - "parents": ["More Winded II", "Dynamic Faith"], + "archetype": "Riftwalker", + "archetype_req": 5, + "parents": [ + "More Winded II", + "Dynamic Faith" + ], "dependencies": [], "blockers": [], "cost": 2, @@ -5488,9 +7119,16 @@ const atrees = { "base_abil": "Windsweeper", "archetype": "Riftwalker", "archetype_req": 0, - "parents": ["Time Dilation"], - "_parents": ["Time Dilation", "Dynamic Faith"], - "dependencies": ["Windsweeper"], + "parents": [ + "Time Dilation" + ], + "_parents": [ + "Time Dilation", + "Dynamic Faith" + ], + "dependencies": [ + "Windsweeper" + ], "blockers": [], "cost": 1, "display": { @@ -5522,7 +7160,10 @@ const atrees = { { "display_name": "Dynamic Faith", "desc": "For every 2% Sprint you have from items, gain +1% Thunder Damage (Max 100%)", - "parents": ["More Winded II", "Healthier Ophanim II"], + "parents": [ + "More Winded II", + "Healthier Ophanim II" + ], "dependencies": [], "blockers": [], "cost": 1, @@ -5532,31 +7173,40 @@ const atrees = { "icon": "node_0" }, "properties": {}, - "effects": [{ - "type": "stat_scaling", - "slider": false, - "inputs": [ + "effects": [ + { + "type": "stat_scaling", + "slider": false, + "inputs": [ { "type": "stat", "name": "sprint" } ], - "output": { - "type": "stat", - "name": "tDamPct" - }, - "scaling": [0.5], - "max": 100 - }] + "output": { + "type": "stat", + "name": "tDamPct" + }, + "scaling": [ + 0.5 + ], + "max": 100 + } + ] }, { "display_name": "Divination", "desc": "Increase your maximum orbs from Ophanim by +3 and reduce their damage.", "base_abil": "Ophanim", - "archetype": "Light Bender", - "archetype_req": 0, - "parents": ["Dynamic Faith", "Healthier Ophanim II"], - "dependencies": ["Ophanim"], + "archetype": "Light Bender", + "archetype_req": 0, + "parents": [ + "Dynamic Faith", + "Healthier Ophanim II" + ], + "dependencies": [ + "Ophanim" + ], "blockers": [], "cost": 2, "display": { @@ -5566,17 +7216,26 @@ const atrees = { }, "properties": {}, "effects": [ - { - "type": "add_spell_prop", + { + "type": "add_spell_prop", "base_spell": 3, - "target_part": "Per Orb", - "multipliers": [-50, 0, -10, 0, 0, 0] + "target_part": "Per Orb", + "multipliers": [ + -50, + 0, + -10, + 0, + 0, + 0 + ] }, - { + { "type": "add_spell_prop", "base_spell": 3, "target_part": "Per Melee (max)", - "hits": { "Per Orb": 3 } + "hits": { + "Per Orb": 3 + } } ] }, @@ -5584,10 +7243,14 @@ const atrees = { "display_name": "Healthier Ophanim II", "desc": "Increase the health of your orbs from Ophanim by +3000.", "base_abil": "Ophanim", - "archetype": "Light Bender", - "archetype_req": 0, - "parents": ["Better Ophanim"], - "dependencies": ["Healthier Ophanim I"], + "archetype": "Light Bender", + "archetype_req": 0, + "parents": [ + "Better Ophanim" + ], + "dependencies": [ + "Healthier Ophanim I" + ], "blockers": [], "cost": 1, "display": { @@ -5601,10 +7264,12 @@ const atrees = { { "display_name": "Sunflare", "desc": "After healing 400% of your max health within 10s, your next Heal will make every nearby ally temporarily immune.", - "archetype": "Light Bender", - "archetype_req": 12, + "archetype": "Light Bender", + "archetype_req": 12, "base_abil": "Heal", - "parents": ["Healthier Ophanim II"], + "parents": [ + "Healthier Ophanim II" + ], "dependencies": [], "blockers": [], "cost": 2, @@ -5622,11 +7287,15 @@ const atrees = { { "display_name": "Larger Mana Bank III", "desc": "Increase your maximum Mana Bank by +30.", - "archetype": "Arcanist", - "archetype_req": 0, + "archetype": "Arcanist", + "archetype_req": 0, "base_abil": "Arcane Transfer", - "parents": ["Arctic Snake"], - "dependencies": ["Arcane Transfer"], + "parents": [ + "Arctic Snake" + ], + "dependencies": [ + "Arcane Transfer" + ], "blockers": [], "cost": 1, "display": { @@ -5640,11 +7309,15 @@ const atrees = { { "display_name": "Arcane Overflow", "desc": "Arcane Transfer will allow you to overflow your mana over its maximum limits.", - "archetype": "Arcanist", - "archetype_req": 11, + "archetype": "Arcanist", + "archetype_req": 11, "base_abil": "Arcane Transfer", - "parents": ["Larger Mana Bank III"], - "dependencies": ["Arcane Transfer"], + "parents": [ + "Larger Mana Bank III" + ], + "dependencies": [ + "Arcane Transfer" + ], "blockers": [], "cost": 2, "display": { @@ -5661,8 +7334,12 @@ const atrees = { "archetype": "Arcanist", "archetype_req": 0, "base_abil": "Arcane Transfer", - "parents": ["Arcane Overflow"], - "dependencies": ["Chaos Explosion"], + "parents": [ + "Arcane Overflow" + ], + "dependencies": [ + "Chaos Explosion" + ], "blockers": [], "cost": 1, "display": { @@ -5676,9 +7353,13 @@ const atrees = { { "display_name": "Manastorm", "desc": "If you have more than 100 Mana, casting a spell will give you +10 mana over 5s.", - "archetype": "Arcanist", - "archetype_req": 1, - "parents": ["Cheaper Heal II", "Arcane Overflow", "Sunflare"], + "archetype": "Arcanist", + "archetype_req": 1, + "parents": [ + "Cheaper Heal II", + "Arcane Overflow", + "Sunflare" + ], "dependencies": [], "blockers": [], "cost": 2, @@ -5693,11 +7374,16 @@ const atrees = { { "display_name": "Better Lightweaver", "desc": "Increase your Max Orbs by +2.", - "archetype": "Light Bender", + "archetype": "Light Bender", "archetype_req": 0, "base_abil": "Lightweaver", - "parents": ["Cheaper Heal II", "Manastorm"], - "dependencies": ["Lightweaver"], + "parents": [ + "Cheaper Heal II", + "Manastorm" + ], + "dependencies": [ + "Lightweaver" + ], "blockers": [], "cost": 1, "display": { @@ -5707,20 +7393,24 @@ const atrees = { }, "properties": {}, "effects": [ - { + { "type": "add_spell_prop", "target_part": "Orb Damage", "base_spell": 5, - "hits": { "Single Orb": 2 } + "hits": { + "Single Orb": 2 + } } ] }, { "display_name": "Timelock", "desc": "Holding shift and casting Heal will absorb all Winded on nearby enemies and make you Timelocked. While Timelocked, your mana will not be depleted and you become immovable from outside forces. Enemies will recieve Winded damage from all absorbed stacks. (Max 30)", - "archetype": "Riftwalker", + "archetype": "Riftwalker", "archetype_req": 12, - "parents": ["More Winded II"], + "parents": [ + "More Winded II" + ], "dependencies": [], "blockers": [], "cost": 2, @@ -5736,11 +7426,18 @@ const atrees = { "display_name": "Cheaper Heal II", "desc": "Reduce the Mana cost of Heal.", "base_abil": "Heal", - "parents": ["Timelock", "Manastorm"], - "dependencies": [], + "parents": [ + "Timelock", + "Manastorm" + ], + "dependencies": [], "blockers": [], - "cost": 1, - "display": {"row": 34, "col": 2, "icon": "node_0"}, + "cost": 1, + "display": { + "row": 34, + "col": 2, + "icon": "node_0" + }, "properties": {}, "effects": [ { @@ -5748,7 +7445,2304 @@ const atrees = { "base_spell": 1, "cost": -5 } - ] + ] + } + ], + "Assassin": [ + { + "display_name": "Spin Attack", + "desc": "Slash rapidly around you, damaging enemies in a large area.", + "archetype": "", + "archetype_req": 0, + "parents": [], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 0, + "col": 4, + "icon": "node_assassin" + }, + "properties": {}, + "effects": [ + { + "type": "replace_spell", + "name": "Spin Attack", + "cost": 45, + "base_spell": 1, + "spell_type": "damage", + "scaling": "spell", + "use_atkspd": true, + "display": "Spin Attack", + "parts": [ + { + "name": "Spin Attack", + "type": "damage", + "multipliers": [ + 120, + 0, + 30, + 0, + 0, + 0 + ] + } + ] + } + ] + }, + { + "display_name": "Dagger Proficiency I", + "desc": "Increase your speed by +5% and improve your Main Attack’s damage when using a dagger.", + "archetype": "", + "archetype_req": 0, + "parents": [ + "Spin Attack" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 2, + "col": 4, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "raw_stat", + "bonuses": [ + { + "type": "stat", + "name": "spd", + "value": 5 + }, + { + "type": "stat", + "name": "mdPct", + "value": 5 + } + ] + } + ] + }, + { + "display_name": "Cheaper Spin Attack", + "desc": "Reduce the Mana cost of Spin Attack.", + "archetype": "", + "archetype_req": 0, + "base_abil": "Spin Attack", + "parents": [ + "Dagger Proficiency I" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 2, + "col": 2, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 1, + "cost": -10 + } + ] + }, + { + "display_name": "Double Spin", + "desc": "Spin Attack will activate twice.", + "archetype": "", + "archetype_req": 0, + "base_abil": "Spin Attack", + "parents": [ + "Dagger Proficiency I" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 4, + "col": 4, + "icon": "node_1" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 1, + "target_part": "Total Damage", + "hits": { + "Spin Attack": 2 + }, + "display": "Total Damage" + } + ] + }, + { + "display_name": "Poisoned Blade", + "desc": "For every 24 or 2 Raw Main Attack Damage you have from items, gain +5/3s Poison Damage (Max 50/3s)", + "archetype": "Shadestepper", + "archetype_req": 0, + "parents": [ + "Dash" + ], + "dependencies": [], + "blockers": [ + "Double Slice" + ], + "cost": 0, + "display": { + "row": 7, + "col": 2, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "stat_scaling", + "slider": false, + "inputs": [ + { + "type": "stat", + "name": "mdPct" + }, + { + "type": "stat", + "name": "mdRaw" + } + ], + "output": [ + { + "type": "stat", + "name": "poison" + } + ], + "scaling": [ + 2.5, + 2.5 + ], + "max": 50 + } + ] + }, + { + "display_name": "Dash", + "desc": "Dash in the direction you're facing.", + "archetype": "", + "archetype_req": 0, + "parents": [ + "Double Spin" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 7, + "col": 4, + "icon": "node_assassin" + }, + "properties": {}, + "effects": [ + { + "type": "replace_spell", + "name": "Dash", + "cost": 20, + "base_spell": 2, + "spell_type": "damage", + "scaling": "spell", + "use_atkspd": true, + "display": "Total Damage", + "parts": [ + { + "name": "None", + "type": "damage", + "multipliers": [ + 0, + 0, + 0, + 0, + 0, + 0 + ] + } + ] + } + ] + }, + { + "display_name": "Double Slice", + "desc": "Your Main Attack will attack twice, but deal -4% damage per hit.", + "archetype": "Acrobat", + "archetype_req": 0, + "base_abil": 999, + "parents": [ + "Dash" + ], + "dependencies": [], + "blockers": [ + "Poisoned Blade" + ], + "cost": 1, + "display": { + "row": 7, + "col": 6, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 0, + "multipliers": [ + -40, + 0, + 0, + 0, + 0, + 0 + ] + } + ] + }, + { + "display_name": "Smoke Bomb", + "desc": "Throw a bomb that slouly emits smoke, damaging all enemies in it every 0.5s.", + "archetype": "", + "archetype_req": 0, + "parents": [ + "Poisoned Blade", + "Cheaper Dash" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 9, + "col": 2, + "icon": "node_assassin" + }, + "properties": {}, + "effects": [ + { + "type": "replace_spell", + "name": "Smoke Bomb", + "cost": 40, + "base_spell": 4, + "spell_type": "damage", + "scaling": "spell", + "use_atkspd": true, + "display": "Total Damage", + "parts": [ + { + "name": "Per Tick", + "type": "damage", + "multipliers": [ + 25, + 5, + 0, + 0, + 0, + 5 + ] + }, + { + "name": "Per Bomb", + "type": "total", + "hits": { + "Per Tick": 10 + } + }, + { + "name": "Total Damage", + "type": "total", + "hits": { + "Per Bomb": 1 + } + } + ] + } + ] + }, + { + "display_name": "Cheaper Dash", + "desc": "Reduce the Mana cost of Dash", + "archetype": "", + "archetype_req": 0, + "base_abil": "Dash", + "parents": [ + "Smoke Bomb", + "Multihit" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 9, + "col": 4, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 2, + "cost": -5 + } + ] + }, + { + "display_name": "Multihit", + "desc": "Unleash a rapid flurry of 8 hits to enemies facing you, dealing overwhelming damage", + "archetype": "", + "archetype_req": 0, + "parents": [ + "Double Slice", + "Cheaper Dash" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 9, + "col": 6, + "icon": "node_assassin" + }, + "properties": {}, + "effects": [ + { + "type": "replace_spell", + "name": "Multihit", + "cost": 45, + "base_spell": 3, + "spell_type": "damage", + "scaling": "spell", + "use_atkspd": true, + "display": "Total Damage", + "parts": [ + { + "name": "Per Hit", + "type": "damage", + "multipliers": [ + 25, + 0, + 0, + 10, + 0, + 0 + ] + }, + { + "name": "Total Damage", + "type": "total", + "hits": { + "Per Hit": 8 + } + } + ] + } + ] + }, + { + "display_name": "Earth Mastery", + "desc": "Increases base damage from all Earth attacks", + "archetype": "Shadestepper", + "archetype_req": 0, + "base_abil": 998, + "parents": [ + "Smoke Bomb", + "Thunder Mastery" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 13, + "col": 0, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "raw_stat", + "bonuses": [ + { + "type": "stat", + "name": "eDamPct", + "value": 20 + }, + { + "type": "stat", + "name": "eDamAddMin", + "value": 2 + }, + { + "type": "stat", + "name": "eDamAddMax", + "value": 4 + } + ] + } + ] + }, + { + "display_name": "Thunder Mastery", + "desc": "Increases base damage from all Thunder attacks", + "archetype": "Shadestepper", + "archetype_req": 0, + "base_abil": 998, + "parents": [ + "Earth Mastery", + "Smoke Bomb" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 13, + "col": 2, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "raw_stat", + "bonuses": [ + { + "type": "stat", + "name": "tDamPct", + "value": 10 + }, + { + "type": "stat", + "name": "tDamAddMin", + "value": 1 + }, + { + "type": "stat", + "name": "tDamAddMax", + "value": 8 + } + ] + } + ] + }, + { + "display_name": "Fire Mastery", + "desc": "Increases base damage from all Fire attacks", + "archetype": "Trickster", + "archetype_req": 0, + "base_abil": 998, + "parents": [ + "Cheaper Dash", + "Water Mastery" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 14, + "col": 4, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "raw_stat", + "bonuses": [ + { + "type": "stat", + "name": "fDamPct", + "value": 15 + }, + { + "type": "stat", + "name": "fDamAddMin", + "value": 3 + }, + { + "type": "stat", + "name": "fDamAddMax", + "value": 5 + } + ] + } + ] + }, + { + "display_name": "Water Mastery", + "desc": "Increases base damage from all Water attacks", + "archetype": "Acrobat", + "archetype_req": 0, + "base_abil": 998, + "parents": [ + "Multihit", + "Air Mastery" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 13, + "col": 6, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "raw_stat", + "bonuses": [ + { + "type": "stat", + "name": "wDamPct", + "value": 15 + }, + { + "type": "stat", + "name": "wDamAddMin", + "value": 2 + }, + { + "type": "stat", + "name": "wDamAddMax", + "value": 4 + } + ] + } + ] + }, + { + "display_name": "Air Mastery", + "desc": "Increases base damage from all Air attacks", + "archetype": "Acrobat", + "archetype_req": 0, + "base_abil": 998, + "parents": [ + "Water Mastery", + "Multihit" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 13, + "col": 8, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "raw_stat", + "bonuses": [ + { + "type": "stat", + "name": "aDamPct", + "value": 15 + }, + { + "type": "stat", + "name": "aDamAddMin", + "value": 3 + }, + { + "type": "stat", + "name": "aDamAddMax", + "value": 4 + } + ] + } + ] + }, + { + "display_name": "Backstab", + "desc": "Multihit will deal a single devastating hit. If you strike the enemy from behind, deal double damage", + "archetype": "Shadestepper", + "archetype_req": 2, + "parents": [ + "Earth Mastery", + "Thunder Mastery" + ], + "dependencies": [ + "Multihit" + ], + "blockers": [ + "Stronger Multihit" + ], + "cost": 2, + "display": { + "row": 15, + "col": 1, + "icon": "node_1" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 3, + "target_part": "Per Hit", + "behavior": "modify", + "cost": 0, + "multipliers": [ + 200, + 50, + 0, + 0, + 0, + 0 + ] + }, + { + "type": "add_spell_prop", + "base_spell": 3, + "target_part": "Total Damage", + "behavior": "modify", + "hits": { + "Per Hit": 1 + } + }, + { + "type": "add_spell_prop", + "base_spell": 3, + "cost": -5 + } + ] + }, + { + "display_name": "Fatality", + "desc": "Multihit will deal an additional final slash", + "archetype": "", + "archetype_req": 0, + "base_abil": "Multihit", + "parents": [ + "Water Mastery", + "Air Mastery" + ], + "dependencies": [ + "Multihit" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 15, + "col": 7, + "icon": "node_1" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 3, + "target_part": "Fatality", + "multipliers": [ + 100, + 0, + 0, + 0, + 0, + 50 + ] + }, + { + "type": "add_spell_prop", + "base_spell": 3, + "target_part": "Total Damage", + "hits": { + "Fatality": 1 + } + } + ] + }, + { + "display_name": "Vanish", + "desc": "Dash will vanish you into the shadows and make you invisible to enemies (10s Cooldown). You cannot heal or gain mana while in that state (Attack or get hit to cancel)", + "archetype": "", + "archetype_req": 0, + "base_abil": "Dash", + "parents": [ + "Backstab", + "Sticky Bomb" + ], + "dependencies": [ + "Dash" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 16, + "col": 2, + "icon": "node_2" + }, + "properties": { + "duration": 5 + }, + "effects": [] + }, + { + "display_name": "Sticky Bomb", + "desc": "Smoke Bomb will stick to enemies and deal additional damage", + "archetype": "Trickster", + "archetype_req": 0, + "base_abil": "Smoke Bomb", + "parents": [ + "Vanish", + "Fire Mastery" + ], + "dependencies": [ + "Smoke Bomb" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 16, + "col": 4, + "icon": "node_1" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 4, + "target_part": "Per Tick", + "multipliers": [ + 0, + 0, + 0, + 0, + 10, + 0 + ] + } + ] + }, + { + "display_name": "Righting Reflex", + "desc": "When you hold shift while airborne, slowly glide and become immune to fall damage (Max 5s)", + "archetype": "Acrobat", + "archetype_req": 0, + "parents": [ + "Fatality" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 16, + "col": 6, + "icon": "node_2" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Surprise Strike", + "desc": "While using Vanish, your next attack will deal +60% more damage for a single hit only", + "archetype": "Shadestepper", + "archetype_req": 3, + "base_abil": "Dash", + "parents": [ + "Vanish" + ], + "dependencies": [ + "Vanish" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 19, + "col": 2, + "icon": "node_3" + }, + "properties": {}, + "effects": [ + { + "type": "raw_stat", + "toggle": "Activate Surprise Strike", + "bonuses": [ + { + "type": "stat", + "name": "damMult.SurpriseStrike", + "value": 60 + } + ] + } + ] + }, + { + "display_name": "Mirror Image", + "desc": "After leaving Vanish, summon 3 Clones that will follow you and protect you. (20s Cooldown)", + "archetype": "Trickster", + "archetype_req": 2, + "base_abil": "Dash", + "parents": [ + "Sticky Bomb" + ], + "dependencies": [ + "Vanish" + ], + "blockers": [ + "Lacerate" + ], + "cost": 2, + "display": { + "row": 19, + "col": 4, + "icon": "node_3" + }, + "properties": { + "clone": 3 + }, + "effects": [] + }, + { + "display_name": "Lacerate", + "desc": "Spin Attack will lunge you forward, deal 3 strikes, and lunge you backward", + "archetype": "Acrobat", + "archetype_req": 2, + "base_abil": "Spin Attack", + "parents": [ + "Fatality" + ], + "dependencies": [], + "blockers": [ + "Mirror Image" + ], + "cost": 2, + "display": { + "row": 19, + "col": 7, + "icon": "node_3" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 1, + "target_part": "Spin Attack", + "behavior": "modify", + "multipliers": [ + 40, + 0, + 0, + 10, + 0, + 20 + ] + }, + { + "type": "add_spell_prop", + "base_spell": 1, + "target_part": "Total Damage", + "behavior": "modify", + "hits": { + "Spin Attack": 3 + } + } + ] + }, + { + "display_name": "Silent Killer", + "desc": "After killing an enemy, reset Vanish's cooldown", + "archetype": "", + "archetype_req": 0, + "base_abil": "Dash", + "parents": [ + "Surprise Strike" + ], + "dependencies": [ + "Vanish" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 20, + "col": 1, + "icon": "node_2" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Shenanigans", + "desc": "For every 2% Stealing you have from items, gain +1/3s Mana Steal (Max 8/3s)", + "archetype": "Trickster", + "archetype_req": 0, + "parents": [ + "Mirror Image" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 20, + "col": 5, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "stat_scaling", + "slider": false, + "inputs": [ + { + "type": "stat", + "name": "stealing" + } + ], + "output": [ + { + "type": "stat", + "name": "ms" + } + ], + "scaling": [ + 0.5 + ], + "max": 8 + } + ] + }, + { + "display_name": "Wall of Smoke", + "desc": "Smoke Bomb will throw +2 bombs, damaging more often in a larger area", + "archetype": "", + "archetype_req": 0, + "base_abil": "Smoke Bomb", + "parents": [ + "Lacerate" + ], + "dependencies": [ + "Smoke Bomb" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 20, + "col": 8, + "icon": "node_1" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 4, + "target_part": "Total Damage", + "hits": { + "Per Bomb": 2 + } + }, + { + "type": "add_spell_prop", + "base_spell": 4, + "target_part": "Per Bomb", + "multipliers": [ + -20, + 0, + 0, + 0, + 0, + 0 + ] + } + ] + }, + { + "display_name": "Better Smoke Bomb", + "desc": "Increase the range and area of effect of Smoke Bomb", + "archetype": "", + "archetype_req": 0, + "base_abil": "Smoke Bomb", + "parents": [ + "Silent Killer", + "Shadow Travel" + ], + "dependencies": [ + "Smoke Bomb" + ], + "blockers": [], + "cost": 1, + "display": { + "row": 22, + "col": 0, + "icon": "node_0" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Shadow Travel", + "desc": "Vanish will increase your speed by +100%", + "archetype": "Shadestepper", + "archetype_req": 0, + "base_abil": "Dash", + "parents": [ + "Better Smoke Bomb", + "Silent Killer", + "Cheaper Multihit" + ], + "dependencies": [ + "Vanish" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 22, + "col": 2, + "icon": "node_1" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Cheaper Multihit", + "desc": "Reduce the Mana cost of Multihit", + "archetype": "", + "archetype_req": 0, + "base_abil": "Multihit", + "parents": [ + "Shenanigans", + "Shadow Travel", + "Dagger Proficiency II" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 22, + "col": 5, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 3, + "cost": -5 + } + ] + }, + { + "display_name": "Dagger Proficiency II", + "desc": "Increase your Main Attack's range and add +5 raw damage to all attacks", + "archetype": "", + "archetype_req": 0, + "base_abil": 999, + "parents": [ + "Cheaper Multihit", + "Wall of Smoke" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 22, + "col": 8, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "raw_stat", + "bonuses": [ + { + "type": "stat", + "name": "damRaw", + "value": 5 + } + ] + } + ] + }, + { + "display_name": "Last Laugh", + "desc": "When losing a Clone, it will cast Spin Attack before dying", + "archetype": "Trickster", + "archetype_req": 3, + "base_abil": "Dash", + "parents": [ + "Shadow Travel", + "Cheaper Multihit" + ], + "dependencies": [ + "Mirror Image" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 23, + "col": 4, + "icon": "node_1" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Cheaper Smoke Bomb", + "desc": "Reduce the Mana cost of Smoke Bomb", + "archetype": "", + "archetype_req": 0, + "base_abil": "Smoke Bomb", + "parents": [ + "Better Smoke Bomb", + "Blazing Powder" + ], + "dependencies": [ + "Smoke Bomb" + ], + "blockers": [], + "cost": 1, + "display": { + "row": 25, + "col": 0, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 4, + "cost": -5 + } + ] + }, + { + "display_name": "Blazing Powder", + "desc": "Spin Attack will blind enemies and deal additional damage", + "archetype": "", + "archetype_req": 0, + "base_abil": "Spin Attack", + "parents": [ + "Cheaper Smoke Bomb", + "Shadow Travel", + "Cheaper Multihit" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 25, + "col": 3, + "icon": "node_1" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 1, + "target_part": "Spin Attack", + "multipliers": [ + 0, + 0, + 0, + 0, + 20, + 0 + ] + } + ] + }, + { + "display_name": "Weightless", + "desc": "When you hit an enemy while airborne, gain +0.5 Mana (1.25+ blocks off the ground to be airborne)", + "archetype": "Acrobat", + "archetype_req": 4, + "parents": [ + "Cheaper Multihit", + "Dagger Proficiency II" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 25, + "col": 7, + "icon": "node_2" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Black Hole", + "desc": "Smoke Bomb will pull nearby enemies", + "archetype": "", + "archetype_req": 0, + "base_abil": "Smoke Bomb", + "parents": [ + "Cheaper Smoke Bomb", + "Blazing Powder" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 26, + "col": 1, + "icon": "node_1" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Sandbagging", + "desc": "Anytime you get hit for less than 5% of your max hp, reduce your abilities cooldown by -2s. (1s Cooldown)", + "archetype": "Trickster", + "archetype_req": 0, + "parents": [ + "Blazing Powder", + "Hop" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 26, + "col": 4, + "icon": "node_1" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Hop", + "desc": "When you double tap jump, leap forward. (2s Cooldown)", + "archetype": "Acrobat", + "archetype_req": 0, + "parents": [ + "Sandbagging", + "Weightless" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 26, + "col": 6, + "icon": "node_1" + }, + "properties": { + "cooldown": 2 + }, + "effects": [] + }, + { + "display_name": "Dancing Blade", + "desc": "Deal damage to mobs you Dash through", + "archetype": "", + "archetype_req": 0, + "base_abil": "Dash", + "parents": [ + "Weightless" + ], + "dependencies": [ + "Dash" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 26, + "col": 8, + "icon": "node_1" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 2, + "target_part": "Dancing Blade", + "multipliers": [ + 80, + 0, + 0, + 0, + 0, + 20 + ], + "display": "Dancing Blade" + } + ] + }, + { + "display_name": "Violent Vortex", + "desc": "If you deal more damage than 2x of your max health in a single hit, deal 20% of the damage to other nearby enemies", + "archetype": "Shadestepper", + "archetype_req": 0, + "parents": [ + "Cheaper Smoke Bomb" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 27, + "col": 0, + "icon": "node_1" + }, + "properties": {}, + "effects": [ + { + "type": "replace_spell", + "name": "Violent Vortex", + "cost": 0, + "base_spell": 5, + "spell_type": "damage", + "scaling": "spell", + "use_atkspd": true, + "display": "Total Damage", + "parts": [ + { + "name": "Total Damage", + "type": "damage", + "multipliers": [ + 0, + 0, + 0, + 0, + 0, + 0 + ] + } + ] + } + ] + }, + { + "display_name": "Delirious Gas", + "desc": "While inside Smoke Bomb, increase your damage by +40% and gain Lure for 20s", + "archetype": "Trickster", + "archetype_req": 4, + "base_abil": "Smoke Bomb", + "parents": [ + "Sandbagging" + ], + "dependencies": [ + "Smoke Bomb" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 27, + "col": 3, + "icon": "node_2" + }, + "properties": {}, + "effects": [ + { + "type": "raw_stat", + "toggle": "Activate Delirious Gas", + "bonuses": [ + { + "type": "stat", + "name": "damMult.DeliriousGas", + "value": 40 + } + ] + } + ] + }, + { + "display_name": "Marked", + "desc": "Smoke Bomb will add +1 Mark to enemies it hits. (Max 5, 0.5s Cooldown)", + "archetype": "Shadestepper", + "archetype_req": 5, + "parents": [ + "Violent Vortex" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 28, + "col": 1, + "icon": "node_3" + }, + "properties": {}, + "effects": [ + { + "type": "stat_scaling", + "slider": true, + "slider_name": "Marked", + "slider_step": 1, + "slider_max": 5, + "output": [ + { + "type": "stat", + "name": "damMult.Marked" + } + ], + "scaling": [ + 10 + ] + } + ] + }, + { + "display_name": "Echo", + "desc": "Your Clones will mimic your spells and abilities. While they are active, deal -60% damage.", + "archetype": "Trickster", + "archetype_req": 6, + "base_abil": "Dash", + "parents": [ + "Sandbagging", + "Shurikens" + ], + "dependencies": [ + "Mirror Image" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 28, + "col": 4, + "icon": "node_3" + }, + "properties": {}, + "effects": [ + { + "type": "raw_stat", + "toggle": "Activate Echo", + "bonuses": [ + { + "type": "stat", + "name": "damMult.Echo", + "value": -60 + } + ] + } + ] + }, + { + "display_name": "Shurikens", + "desc": "After using Dash, your next Main Attack will throw 3 shurikens", + "archetype": "Acrobat", + "archetype_req": 0, + "base_abil": "Dash", + "parents": [ + "Echo", + "Far Reach" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 28, + "col": 6, + "icon": "node_2" + }, + "properties": {}, + "effects": [ + { + "type": "replace_spell", + "name": "Shurikens", + "cost": 0, + "base_spell": 6, + "spell_type": "damage", + "scaling": "spell", + "use_atkspd": true, + "display": "Total Damage", + "parts": [ + { + "name": "Per Shuriken", + "type": "damage", + "multipliers": [ + 90, + 0, + 0, + 0, + 10, + 0 + ] + }, + { + "name": "Total Damage", + "type": "total", + "hits": { + "Per Shuriken": 3 + } + } + ] + } + ] + }, + { + "display_name": "Far Reach", + "desc": "Increase the range of Multihit", + "archetype": "", + "archetype_req": 0, + "base_abil": "Multihit", + "parents": [ + "Dancing Blade", + "Shurikens" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 28, + "col": 8, + "icon": "node_0" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Stronger Multihit", + "desc": "Increases Multihit's amount of hits by +3", + "archetype": "", + "archetype_req": 0, + "base_abil": "Multihit", + "parents": [ + "Echo", + "Shurikens" + ], + "dependencies": [], + "blockers": [ + "Backstab" + ], + "cost": 1, + "display": { + "row": 29, + "col": 5, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 0, + "target_part": "Total Damage", + "hits": { + "Per Hit": 3 + } + } + ] + }, + { + "display_name": "Psithurism", + "desc": "Increase your Walk Speed by +20% and your Jump Height by +1", + "archetype": "Acrobat", + "archetype_req": 5, + "parents": [ + "Shurikens", + "Far Reach" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 29, + "col": 7, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "raw_stat", + "bonuses": [ + { + "type": "stat", + "name": "ws", + "value": 20 + }, + { + "type": "stat", + "name": "jh", + "value": 1 + } + ] + } + ] + }, + { + "display_name": "Ambush", + "desc": "Increase Surprise Strike's damage by +40%", + "archetype": "Shadestepper", + "archetype_req": 4, + "base_abil": "Dash", + "parents": [ + "Marked" + ], + "dependencies": [ + "Surprise Strike" + ], + "blockers": [], + "cost": 1, + "display": { + "row": 31, + "col": 1, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "raw_stat", + "toggle": "Activate Surprise Strike", + "bonuses": [ + { + "type": "stat", + "name": "damMult.SurpriseStrike", + "value": 40 + } + ] + } + ] + }, + { + "display_name": "Cheaper Dash 2", + "desc": "Reduce the Mana cost of Dash", + "archetype": "", + "archetype_req": 0, + "base_abil": "Dash", + "parents": [ + "Echo" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 31, + "col": 4, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 2, + "cost": -5 + } + ] + }, + { + "display_name": "Parry", + "desc": "After dodging damage, if you cast a spell within 1.5s, it will be free. (3s Cooldown)", + "archetype": "Acrobat", + "archetype_req": 5, + "parents": [ + "Cheaper Spin Attack 2" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 31, + "col": 6, + "icon": "node_2" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Cheaper Spin Attack 2", + "desc": "Reduce the Mana cost of Spin Attack", + "archetype": "", + "archetype_req": 0, + "base_abil": "Spin Attack", + "parents": [ + "Far Reach", + "Parry" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 31, + "col": 8, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 1, + "cost": -5 + } + ] + }, + { + "display_name": "Death Magnet", + "desc": "After leaving Vanish, pull all nearby Marked mobs towards you", + "archetype": "Shadestepper", + "archetype_req": 5, + "base_abil": "Dash", + "parents": [ + "Cheaper Multihit 2", + "Ambush" + ], + "dependencies": [ + "Vanish" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 33, + "col": 0, + "icon": "node_1" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Cheaper Multihit 2", + "desc": "Reduce the Mana cost of Multihit", + "archetype": "", + "archetype_req": 0, + "base_abil": "Multihit", + "parents": [ + "Death Magnet", + "Ambush", + "Hoodwink" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 33, + "col": 2, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 3, + "cost": -5 + } + ] + }, + { + "display_name": "Hoodwink", + "desc": "When hitting enemies with Spin Attack, shorten the duration of your negative effects by 30% and transfer it onto enemies Lure can be transferred to the feeble minded. (Bosses and special enemies are immune)", + "archetype": "Trickster", + "archetype_req": 1, + "base_abil": "Spin Attack", + "parents": [ + "Cheaper Multihit 2", + "Cheaper Dash 2", + "Choke Bomb" + ], + "dependencies": [ + "Spin Attack" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 33, + "col": 4, + "icon": "node_1" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Choke Bomb", + "desc": "Smoke Bomb will slow down enemies while in the smoke", + "archetype": "Trickster", + "archetype_req": 0, + "base_abil": "Smoke Bomb", + "parents": [ + "Hoodwink", + "Wall Jump", + "Parry" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 33, + "col": 6, + "icon": "node_1" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Wall Jump", + "desc": "When you Hop into a wall, bounce backward. (Hold shift to cancel)", + "archetype": "Acrobat", + "archetype_req": 5, + "parents": [ + "Choke Bomb", + "Cheaper Spin Attack 2" + ], + "dependencies": [ + "Hop" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 33, + "col": 8, + "icon": "node_1" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Fatal Spin", + "desc": "Spin Attack will add +1 Mark to all enemies it hits and gain additional area of effect", + "archetype": "Shadestepper", + "archetype_req": 8, + "base_abil": "Spin Attack", + "parents": [ + "Death Magnet", + "Cheaper Multihit 2" + ], + "dependencies": [ + "Marked" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 34, + "col": 1, + "icon": "node_1" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Stronger Lacerate", + "desc": "Lacerate will deal +1 slash", + "archetype": "Acrobat", + "archetype_req": 0, + "base_abil": "Spin Attack", + "parents": [ + "Choke Bomb", + "Wall Jump" + ], + "dependencies": [ + "Lacerate" + ], + "blockers": [], + "cost": 1, + "display": { + "row": 34, + "col": 7, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 1, + "target_part": "Total Damage", + "hits": { + "Spin Attack": 1 + } + } + ] + }, + { + "display_name": "Stronger Vortex", + "desc": "If you deal more damage than 3x of your max health in a single hit, deal 60% of the damage to other nearby enemies", + "archetype": "Shadestepper", + "archetype_req": 4, + "parents": [ + "Fatal Spin" + ], + "dependencies": [ + "Violent Vortex" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 35, + "col": 0, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "replace_spell", + "name": "Violent Vortex", + "cost": 0, + "base_spell": 5, + "spell_type": "damage", + "scaling": "spell", + "use_atkspd": true, + "display": "Total Damage", + "parts": [ + { + "name": "Total Damage", + "type": "damage", + "multipliers": [ + 0, + 0, + 0, + 0, + 0, + 0 + ] + } + ] + } + ] + }, + { + "display_name": "Harvester", + "desc": "After killing an enemy, gain +5 Mana for each leftover Marks it had", + "archetype": "Shadestepper", + "archetype_req": 0, + "parents": [ + "Fatal Spin", + "Cheaper Smoke Bomb 2" + ], + "dependencies": [ + "Marked" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 37, + "col": 1, + "icon": "node_2" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Cheaper Smoke Bomb 2", + "desc": "Reduce the Mana cost of Smoke Bomb", + "archetype": "", + "archetype_req": 0, + "base_abil": "Smoke Bomb", + "parents": [ + "Harvester", + "Hoodwink", + "Blade Fury" + ], + "dependencies": [ + "Smoke Bomb" + ], + "blockers": [], + "cost": 1, + "display": { + "row": 37, + "col": 4, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "add_spell_prop", + "base_spell": 4, + "cost": -5 + } + ] + }, + { + "display_name": "Blade Fury", + "desc": "Multihit will be easier to aim and enemies hit will stay locked in front of you", + "archetype": "Acrobat", + "archetype_req": 0, + "base_abil": "Multihit", + "parents": [ + "Stronger Lacerate", + "Cheaper Smoke Bomb 2" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 37, + "col": 7, + "icon": "node_1" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "More Marks", + "desc": "Add +2 max Marks", + "archetype": "Shadestepper", + "archetype_req": 0, + "base_abil": "Marked", + "parents": [ + "Harvester", + "Cheaper Smoke Bomb 2" + ], + "dependencies": [ + "Marked" + ], + "blockers": [], + "cost": 1, + "display": { + "row": 38, + "col": 2, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "stat_scaling", + "slider": true, + "slider_name": "Marked", + "slider_max": 2, + "output": [ + { + "type": "stat", + "name": "damMult.Marked" + } + ], + "scaling": [10] + } + ] + }, + { + "display_name": "Stronger Clones", + "desc": "Improve your damage while your Clones are active by +20%", + "archetype": "Trickster", + "archetype_req": 7, + "base_abil": "Dash", + "parents": [ + "Cheaper Smoke Bomb 2", + "Blade Fury" + ], + "dependencies": [ + "Mirror Image" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 38, + "col": 5, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "raw_stat", + "toggle": "Activate Echo", + "bonuses": [ + { + "type": "stat", + "name": "damMult.Echo", + "value": 20 + } + ] + } + ] + }, + { + "display_name": "Ricochets", + "desc": "When hitting an enemy with your Shurikens, they will bounce to the nearest enemy", + "archetype": "Acrobat", + "archetype_req": 6, + "base_abil": "Dash", + "parents": [ + "Blade Fury" + ], + "dependencies": [ + "Shurikens" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 38, + "col": 8, + "icon": "node_1" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Satsujin", + "desc": "If an enemy has 3 Marks and 70% of their health or more, your next hit will deal triple damage. (30s Cooldown, per enemy)", + "archetype": "Shadestepper", + "archetype_req": 12, + "parents": [ + "Harvester" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 39, + "col": 1, + "icon": "node_3" + }, + "properties": {}, + "effects": [ + { + "type": "raw_stat", + "toggle": "Activate Satsujin", + "bonuses": [ + { + "type": "stat", + "name": "dmgMult.Satsujin", + "value": 300 + } + ] + } + ] + }, + { + "display_name": "Forbidden Art", + "desc": "Summon +3 additional Clones. (+20s Cooldown)", + "archetype": "Trickster", + "archetype_req": 8, + "base_abil": "Dash", + "parents": [ + "Cheaper Smoke Bomb 2" + ], + "dependencies": [ + "Mirror Image" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 39, + "col": 4, + "icon": "node_2" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Diversion", + "desc": "Anytime a Lured enemy gets killed, every nearby ally gets +40% health as extra overflowing health. (3s Cooldown). Decay -4% of the bonus every second.", + "archetype": "Trickster", + "archetype_req": 12, + "base_abil": "Smoke Bomb", + "parents": [ + "Forbidden Art" + ], + "dependencies": [ + "Delirious Gas" + ], + "blockers": [], + "cost": 2, + "display": { + "row": 40, + "col": 5, + "icon": "node_3" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Jasmine Bloom", + "desc": "After spending 40 Mana, bloom an area under you that damages enemies below it every 0.4s After every bloom, reset the duration and increase the radius (Max 10 Blocks)", + "archetype": "Acrobat", + "archetype_req": 12, + "parents": [ + "Blade Fury" + ], + "dependencies": [], + "blockers": [], + "cost": 2, + "display": { + "row": 39, + "col": 7, + "icon": "node_3" + }, + "properties": {}, + "effects": [ + { + "type": "replace_spell", + "name": "Jasmine Bloom", + "cost": 0, + "base_spell": 7, + "spell_type": "damage", + "scaling": "spell", + "use_atkspd": true, + "display": "Per Hit", + "parts": [ + { + "name": "Per Hit", + "type": "damage", + "multipliers": [ + 60, + 5, + 0, + 15, + 0, + 0 + ] + } + ] + } + ] + }, + { + "display_name": "Better Ricochets", + "desc": "Add +1 Max Bounce to Ricochets", + "archetype": "Acrobat", + "archetype_req": 0, + "base_abil": "Dash", + "parents": [ + "Jasmine Bloom" + ], + "dependencies": [ + "Ricochets" + ], + "blockers": [], + "cost": 1, + "display": { + "row": 40, + "col": 8, + "icon": "node_0" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Devour", + "desc": "Harvester will give +5 Mana", + "archetype": "Shadestepper", + "archetype_req": 0, + "parents": [ + "Satsujin" + ], + "dependencies": [ + "Harvester" + ], + "blockers": [], + "cost": 1, + "display": { + "row": 41, + "col": 0, + "icon": "node_0" + }, + "properties": {}, + "effects": [] + }, + { + "display_name": "Better Marked", + "desc": "Increase Marked's damage bonus by +5%", + "archetype": "", + "archetype_req": 0, + "base_abil": "Marked", + "parents": [ + "Satsujin" + ], + "dependencies": [], + "blockers": [], + "cost": 1, + "display": { + "row": 41, + "col": 2, + "icon": "node_0" + }, + "properties": {}, + "effects": [ + { + "type": "stat_scaling", + "slider": true, + "slider_name": "Marked", + "output": [ + { + "type": "stat", + "name": "damMult.Marked" + } + ], + "scaling": [ + 5 + ] + } + ] } ] -} +} \ No newline at end of file diff --git a/js/atree_constants_min.js b/js/atree_constants_min.js index 314e0d7..ab12d27 100644 --- a/js/atree_constants_min.js +++ b/js/atree_constants_min.js @@ -1 +1 @@ -const atrees={"Archer":[{"display_name":"Arrow Shield","desc":"Create a shield around you that deal damage and knockback mobs when triggered. (2 Charges)","parents":[60,34],"dependencies":[],"blockers":[],"cost":1,"display":{"row":9,"col":6,"icon":"node_archer"},"properties":{"charges":2,"duration":60,"aoe":5000},"effects":[{"type":"replace_spell","name":"Arrow Shield","cost":30,"base_spell":4,"display":"Total Damage","parts":[{"name":"Shield Damage","type":"damage","multipliers":[90,0,0,0,0,10]},{"name":"Total Damage","type":"total","hits":{"Shield Damage":2}}]}],"id":0},{"display_name":"Escape","desc":"Throw yourself backward to avoid danger. (Hold shift while escaping to cancel)","parents":[3],"dependencies":[],"blockers":[],"cost":1,"display":{"row":7,"col":4,"icon":"node_archer"},"properties":{"aoe":0,"range":0},"effects":[{"type":"replace_spell","name":"Escape","cost":25,"base_spell":2,"display":"","parts":[]}],"id":1},{"display_name":"Arrow Bomb","desc":"Throw a long-range arrow that explodes and deal high damage in a large area. (Self-damage for 25% of your DPS)","parents":[],"dependencies":[],"blockers":[],"cost":1,"display":{"row":0,"col":4,"icon":"node_archer"},"properties":{"aoe":4.5,"range":26},"effects":[{"type":"replace_spell","name":"Arrow Bomb","cost":50,"base_spell":3,"spell_type":"damage","display":"Total Damage","parts":[{"name":"Arrow Bomb","type":"damage","multipliers":[160,0,0,0,20,0]},{"name":"Total Damage","type":"total","hits":{"Arrow Bomb":1}}]}],"id":2},{"display_name":"Heart Shatter","desc":"If you hit a mob directly with Arrow Bomb, shatter its heart and deal bonus damage.","base_abil":2,"parents":[31],"dependencies":[],"blockers":[],"cost":1,"display":{"row":4,"col":4,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Heart Shatter","multipliers":[100,0,0,0,0,0]},{"type":"add_spell_prop","base_spell":3,"target_part":"Total Damage","hits":{"Heart Shatter":1}}],"id":3},{"display_name":"Fire Creep","desc":"Arrow Bomb will leak a trail of fire for 6s, Damaging enemies that walk into it every 0.4s.","base_abil":2,"parents":[68,39,5],"dependencies":[],"blockers":[],"cost":2,"display":{"row":16,"col":6,"icon":"node_1"},"properties":{"aoe":0.8,"duration":6},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Fire Creep","multipliers":[30,0,0,0,20,0]},{"type":"add_spell_prop","base_spell":3,"target_part":"Total Burn Damage","hits":{"Fire Creep":15}}],"id":4},{"display_name":"Bryophyte Roots","desc":"When you hit an enemy with Arrow Storm, create an area that slows them down and deals damage every 0.4s.","base_abil":7,"archetype":"Trapper","archetype_req":1,"parents":[4,35],"dependencies":[7],"blockers":[],"cost":2,"display":{"row":16,"col":8,"icon":"node_1"},"properties":{"aoe":2,"duration":5},"effects":[{"type":"add_spell_prop","base_spell":1,"target_part":"Bryophyte Roots","cost":0,"multipliers":[40,20,0,0,0,0]},{"type":"add_spell_prop","base_spell":1,"target_part":"Total Roots Damage","hits":{"Bryophyte Roots":12}}],"id":5},{"display_name":"Nimble String","desc":"Arrow Storm throw out +6 arrows per stream and shoot twice as fast.","base_abil":7,"parents":[36,69],"dependencies":[7],"blockers":[68],"cost":2,"display":{"row":15,"col":2,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"target_part":"Single Arrow","multipliers":[-15,0,0,0,0,0]},{"type":"add_spell_prop","base_spell":1,"target_part":"Single Stream","hits":{"Single Arrow":6}}],"id":6},{"display_name":"Arrow Storm","desc":"Shoot a stream of 8 arrows, dealing significant damage to close mobs and pushing them back.","parents":[58,34],"dependencies":[],"blockers":[],"cost":1,"display":{"row":9,"col":2,"icon":"node_archer"},"properties":{"range":16},"effects":[{"type":"replace_spell","name":"Arrow Storm","cost":40,"base_spell":1,"spell_type":"damage","display":"Total Damage","parts":[{"name":"Single Arrow","multipliers":[30,0,10,0,0,0]},{"name":"Single Stream","hits":{"Single Arrow":8}},{"name":"Total Damage","hits":{"Single Stream":1}}]}],"id":7},{"display_name":"Guardian Angels","desc":"Your protective arrows from Arrow Shield will become sentient bows, dealing damage up to 8 times each to nearby enemies. (Arrow Shield will no longer push nearby enemies)","archetype":"Boltslinger","archetype_req":3,"base_abil":0,"parents":[59,67],"dependencies":[0],"blockers":[],"cost":2,"display":{"row":19,"col":1,"icon":"node_3"},"properties":{"range":4,"duration":60,"shots":8,"charges":2},"effects":[{"type":"replace_spell","name":"Guardian Angels","base_spell":4,"display":"Total Damage","parts":[{"name":"Single Arrow","type":"damage","multipliers":[30,0,0,0,0,10]},{"name":"Single Bow","type":"total","hits":{"Single Arrow":8}},{"name":"Total Damage","type":"total","hits":{"Single Bow":2}}]}],"id":8},{"display_name":"Windy Feet","desc":"When casting Escape, give speed to yourself and nearby allies.","base_abil":1,"parents":[7],"dependencies":[],"blockers":[],"cost":1,"display":{"row":10,"col":1,"icon":"node_1"},"properties":{"aoe":8,"duration":120},"effects":[],"id":9},{"display_name":"Basaltic Trap","desc":"When you hit the ground with Arrow Bomb, leave a Trap that damages enemies. (Max 2 Traps)","archetype":"Trapper","archetype_req":2,"parents":[5],"dependencies":[],"blockers":[],"cost":2,"display":{"row":19,"col":8,"icon":"node_3"},"properties":{"aoe":7,"traps":2},"effects":[{"type":"replace_spell","name":"Basaltic Trap","base_spell":7,"display":"Trap Damage","parts":[{"name":"Trap Damage","type":"damage","multipliers":[140,30,0,0,30,0]}]}],"id":10},{"display_name":"Windstorm","desc":"Arrow Storm shoot +1 stream of arrows, and each stream shoots +2 arrows, effectively doubling its damage.","base_abil":7,"parents":[8,33],"dependencies":[],"blockers":[68],"cost":2,"display":{"row":21,"col":1,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"target_part":"Single Arrow","multipliers":[-10,0,-2,0,0,2]},{"type":"add_spell_prop","base_spell":1,"target_part":"Total Damage","hits":{"Single Stream":1}},{"type":"add_spell_prop","base_spell":1,"target_part":"Single Stream","cost":0,"hits":{"Single Arrow":2}}],"id":11},{"display_name":"Grappling Hook","base_abil":1,"desc":"When casting Escape, throw a hook that pulls you when hitting a block. If you hit an enemy, pull them towards you instead. (Escape will not throw you backward anymore)","archetype":"Trapper","archetype_req":0,"parents":[61,40,33],"dependencies":[],"blockers":[20],"cost":2,"display":{"row":21,"col":5,"icon":"node_2"},"properties":{"range":26},"effects":[],"id":12},{"display_name":"Implosion","desc":"Arrow bomb will pull enemies towards you. If a trap is nearby, it will pull them towards it instead. Increase Heart Shatter's damage.","archetype":"Trapper","archetype_req":0,"base_abil":2,"parents":[12,40],"dependencies":[],"blockers":[],"cost":2,"display":{"row":22,"col":6,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Heart Shatter","multipliers":[40,0,0,0,0,0]}],"id":13},{"display_name":"Twain's Arc","desc":"When you have 2+ Focus, holding shift will summon the Twain's Arc. Charge it up to shoot a destructive long-range beam. (Damage is dealt as Main Attack Damage)","archetype":"Sharpshooter","archetype_req":4,"parents":[62,64],"dependencies":[61],"blockers":[],"cost":2,"display":{"row":25,"col":4,"icon":"node_2"},"properties":{"range":64,"focusReq":2},"effects":[{"type":"replace_spell","name":"Twain's Arc","base_spell":5,"scaling":"melee","use_atkspd":false,"display":"Single Shot","parts":[{"name":"Single Shot","type":"damage","multipliers":[200,0,0,0,0,0]}]}],"id":14},{"display_name":"Fierce Stomp","desc":"When using Escape, hold shift to quickly drop down and deal damage.","archetype":"Boltslinger","archetype_req":0,"base_abil":1,"parents":[42,64],"dependencies":[],"blockers":[],"cost":2,"display":{"row":26,"col":1,"icon":"node_1"},"properties":{"aoe":4},"effects":[{"type":"add_spell_prop","base_spell":2,"target_part":"Fierce Stomp","cost":0,"multipliers":[100,0,0,0,0,0]},{"type":"add_spell_prop","base_spell":2,"target_part":"Stomp Damage","cost":0,"hits":{"Fierce Stomp":1},"display":"Stomp Damage"}],"id":15},{"display_name":"Scorched Earth","desc":"Fire Creep become much stronger.","archetype":"Sharpshooter","archetype_req":0,"parents":[14],"dependencies":[4],"blockers":[],"cost":1,"display":{"row":26,"col":5,"icon":"node_1"},"properties":{"duration":2,"aoe":0.4},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Fire Creep","multipliers":[10,0,0,0,5,0]}],"id":16},{"display_name":"Leap","desc":"When you double tap jump, leap foward. (2s Cooldown)","archetype":"Boltslinger","archetype_req":5,"parents":[42,55],"dependencies":[],"blockers":[],"cost":2,"display":{"row":28,"col":0,"icon":"node_1"},"properties":{"cooldown":2},"effects":[],"id":17},{"display_name":"Shocking Bomb","desc":"Arrow Bomb will not be affected by gravity, and all damage conversions become Thunder.","archetype":"Sharpshooter","archetype_req":5,"base_abil":2,"parents":[14,44,55],"dependencies":[2],"blockers":[],"cost":2,"display":{"row":28,"col":4,"icon":"node_1"},"properties":{"gravity":0},"effects":[{"type":"convert_spell_conv","target_part":"all","base_spell":3,"conversion":"Thunder"}],"id":18},{"display_name":"Mana Trap","desc":"Your Traps will give you 2.85 Mana per second when you stay close to them.","archetype":"Trapper","archetype_req":5,"base_abil":10,"parents":[43,44],"dependencies":[],"blockers":[],"cost":2,"display":{"row":28,"col":8,"icon":"node_3"},"properties":{"range":16,"manaRegen":2.85},"effects":[{"type":"add_spell_prop","base_spell":3,"cost":10}],"id":19},{"display_name":"Escape Artist","desc":"When casting Escape, release 120 arrows towards the ground.","archetype":"Boltslinger","archetype_req":0,"base_abil":1,"parents":[46,17],"dependencies":[],"blockers":[12],"cost":2,"display":{"row":31,"col":0,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":2,"target_part":"Per Arrow","multipliers":[20,0,10,0,0,0]},{"type":"add_spell_prop","base_spell":2,"target_part":"Max Damage (Escape Artist)","hits":{"Per Arrow":120},"display":"Max Damage (Escape Artist)"}],"id":20},{"display_name":"Initiator","desc":"If you do not damage an enemy for 5s or more, your next sucessful hit will deal +50% damage and add +1 Focus.","archetype":"Sharpshooter","archetype_req":5,"parents":[18,44,47],"dependencies":[61],"blockers":[],"cost":2,"display":{"row":31,"col":5,"icon":"node_2"},"properties":{},"effects":[],"id":21},{"display_name":"Call of the Hound","desc":"Arrow Shield summon a Hound that will attack and drag aggressive enemies towards your traps.","archetype":"Trapper","archetype_req":0,"base_abil":0,"parents":[21,47],"dependencies":[0],"blockers":[],"cost":2,"display":{"row":32,"col":7,"icon":"node_2"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":4,"target_part":"Hound Damage","multipliers":[40,0,0,0,0,0]}],"id":22},{"display_name":"Arrow Hurricane","desc":"Arrow Storm will shoot +2 stream of arrows.","archetype":"Boltslinger","archetype_req":8,"base_abil":7,"parents":[48,20],"dependencies":[],"blockers":[68],"cost":2,"display":{"row":33,"col":0,"icon":"node_3"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"target_part":"Total Damage","hits":{"Single Stream":2}}],"id":23},{"display_name":"Geyser Stomp","desc":"Fierce Stomp will create geysers, dealing more damage and vertical knockback.","base_abil":1,"parents":[56],"dependencies":[15],"blockers":[],"cost":2,"display":{"row":37,"col":1,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":2,"target_part":"Geyser Stomp","multipliers":[0,0,0,50,0,0]},{"type":"add_spell_prop","base_spell":2,"target_part":"Stomp Damage","hits":{"Geyser Stomp":1}},{"type":"raw_stat","bonuses":[{"type":"prop","abil":15,"name":"aoe","value":1}]}],"id":24},{"display_name":"Crepuscular Ray","desc":"If you have 5 Focus, casting Arrow Storm will make you levitate and shoot 20 homing arrows per second until you run out of Focus. While in that state, you will lose 1 Focus per second.","archetype":"Sharpshooter","archetype_req":10,"parents":[49],"dependencies":[7],"blockers":[],"cost":2,"display":{"row":37,"col":4,"icon":"node_3"},"properties":{},"effects":[{"type":"replace_spell","name":"Crepuscular Ray","base_spell":6,"display":"DPS","parts":[{"name":"Single Arrow","multipliers":[20,0,0,5,0,0]},{"name":"DPS","hits":{"Single Arrow":20}},{"name":"Total Damage","hits":{"DPS":7}}]}],"id":25},{"display_name":"Grape Bomb","desc":"Arrow bomb will throw 3 additional smaller bombs when exploding.","base_abil":2,"parents":[51],"dependencies":[],"blockers":[],"cost":2,"display":{"row":37,"col":7,"icon":"node_2"},"properties":{"aoe":2},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Grape Bomb","multipliers":[30,0,0,0,10,0]},{"type":"add_spell_prop","base_spell":3,"target_part":"Total Damage","hits":{"Grape Bomb":3}}],"id":26},{"display_name":"Tangled Traps","desc":"Your Traps will be connected by a rope that deals damage to enemies every 0.2s.","archetype":"Trapper","archetype_req":0,"base_abil":10,"parents":[26],"dependencies":[10],"blockers":[],"cost":2,"display":{"row":38,"col":6,"icon":"node_1"},"properties":{"attackSpeed":0.2},"effects":[{"type":"add_spell_prop","base_spell":7,"target_part":"Line Damage Tick","multipliers":[20,0,0,0,0,20]},{"type":"add_spell_prop","base_spell":7,"target_part":"DPS","hits":{"Line Damage Tick":5}}],"id":27},{"display_name":"Snow Storm","desc":"Enemies near you will be slowed down.","parents":[24,63],"dependencies":[],"blockers":[],"cost":2,"display":{"row":39,"col":2,"icon":"node_2"},"properties":{"range":2.5,"slowness":0.3},"effects":[],"id":28},{"display_name":"All-Seeing Panoptes","desc":"Your bows from Guardian Angels become all-seeing, increasing their range, damage and letting them shoot up to +5 times each.","archetype":"Boltslinger","archetype_req":11,"base_abil":0,"parents":[28],"dependencies":[8],"blockers":[],"cost":2,"display":{"row":40,"col":1,"icon":"node_3"},"properties":{"range":8,"shots":5},"effects":[{"type":"add_spell_prop","base_spell":4,"target_part":"Single Arrow","multipliers":[0,0,0,0,10,0]},{"type":"add_spell_prop","base_spell":4,"target_part":"Single Bow","hits":{"Single Arrow":5}}],"id":29},{"display_name":"Minefield","desc":"Allow you to place +6 Traps, but with reduced damage and range.","archetype":"Trapper","archetype_req":10,"base_abil":10,"parents":[26,53],"dependencies":[10],"blockers":[],"cost":2,"display":{"row":40,"col":7,"icon":"node_3"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":7,"target_part":"Trap Damage","cost":0,"multipliers":[-80,0,0,0,0,0]},{"type":"raw_stat","bonuses":[{"type":"prop","abil":10,"name":"aoe","value":-2},{"type":"prop","abil":10,"name":"traps","value":6}]}],"id":30},{"display_name":"Bow Proficiency I","desc":"Improve your Main Attack's damage and range when using a bow.","base_abil":999,"parents":[2],"dependencies":[],"blockers":[],"cost":1,"display":{"row":2,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":0,"target_part":"Single Shot","multipliers":[5,0,0,0,0,0]}],"id":31},{"display_name":"Cheaper Arrow Bomb","desc":"Reduce the Mana cost of Arrow Bomb.","base_abil":2,"parents":[31],"dependencies":[],"blockers":[],"cost":1,"display":{"row":2,"col":6,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"cost":-10}],"id":32},{"display_name":"Cheaper Arrow Storm","desc":"Reduce the Mana cost of Arrow Storm.","base_abil":7,"parents":[12,11,61],"dependencies":[],"blockers":[],"cost":1,"display":{"row":21,"col":3,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"cost":-5}],"id":33},{"display_name":"Cheaper Escape","desc":"Reduce the Mana cost of Escape.","base_abil":1,"parents":[7,0],"dependencies":[],"blockers":[],"cost":1,"display":{"row":9,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":2,"cost":-5}],"id":34},{"display_name":"Earth Mastery","base_abil":998,"desc":"Increases your base damage from all Earth attacks","archetype":"Trapper","archetype_req":0,"parents":[0],"dependencies":[],"blockers":[],"cost":1,"display":{"row":13,"col":8,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"eDamPct","value":20},{"type":"stat","name":"eDamAddMin","value":2},{"type":"stat","name":"eDamAddMax","value":4}]}],"id":35},{"display_name":"Thunder Mastery","base_abil":998,"desc":"Increases your base damage from all Thunder attacks","archetype":"Boltslinger","archetype_req":0,"parents":[7,39,34],"dependencies":[],"blockers":[],"cost":1,"display":{"row":13,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"tDamPct","value":10},{"type":"stat","name":"tDamAddMin","value":1},{"type":"stat","name":"tDamAddMax","value":8}]}],"id":36},{"display_name":"Water Mastery","base_abil":998,"desc":"Increases your base damage from all Water attacks","archetype":"Sharpshooter","archetype_req":0,"parents":[34,36,39],"dependencies":[],"blockers":[],"cost":1,"display":{"row":14,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"wDamPct","value":15},{"type":"stat","name":"wDamAddMin","value":2},{"type":"stat","name":"wDamAddMax","value":4}]}],"id":37},{"display_name":"Air Mastery","base_abil":998,"desc":"Increases base damage from all Air attacks","archetype":"Boltslinger","archetype_req":0,"parents":[7],"dependencies":[],"blockers":[],"cost":1,"display":{"row":13,"col":0,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"aDamPct","value":15},{"type":"stat","name":"aDamAddMin","value":3},{"type":"stat","name":"aDamAddMax","value":4}]}],"id":38},{"display_name":"Fire Mastery","base_abil":998,"desc":"Increases base damage from all Fire attacks","archetype":"Sharpshooter","archetype_req":0,"parents":[36,0,34],"dependencies":[],"blockers":[],"cost":1,"display":{"row":13,"col":6,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"fDamPct","value":15},{"type":"stat","name":"fDamAddMin","value":3},{"type":"stat","name":"fDamAddMax","value":5}]}],"id":39},{"display_name":"More Shields","desc":"Give +2 charges to Arrow Shield.","base_abil":0,"parents":[12,10],"dependencies":[0],"blockers":[],"cost":1,"display":{"row":21,"col":7,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":4,"target_part":"Total Damage","hits":{"Shield Damage":2,"Single Bow":2}},{"type":"raw_stat","bonuses":[{"type":"prop","abil":0,"name":"charges","value":2}]}],"id":40},{"display_name":"Stormy Feet","desc":"Windy Feet will last longer and add more speed.","archetype":"Boltslinger","base_abil":1,"parents":[11],"dependencies":[9],"blockers":[],"cost":1,"display":{"row":23,"col":1,"icon":"node_0"},"properties":{"duration":60},"effects":[],"id":41},{"display_name":"Refined Gunpowder","desc":"Increase the damage of Arrow Bomb.","base_abil":2,"parents":[11,64],"dependencies":[],"blockers":[],"cost":1,"display":{"row":25,"col":0,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Arrow Bomb","multipliers":[50,0,0,0,0,0]}],"id":42},{"display_name":"More Traps","desc":"Increase the maximum amount of active Traps you can have by +2.","archetype":"Trapper","archetype_req":0,"base_abil":10,"parents":[54],"dependencies":[10],"blockers":[],"cost":1,"display":{"row":26,"col":8,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"prop","abil":10,"name":"traps","value":2}]}],"id":43},{"display_name":"Better Arrow Shield","desc":"Arrow Shield will gain additional area of effect, knockback and damage.","archetype":"Sharpshooter","archetype_req":0,"base_abil":0,"parents":[19,18,14],"dependencies":[0],"blockers":[],"cost":1,"display":{"row":28,"col":6,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Arrow Shield","behavior":"modify","multipliers":[40,0,0,0,0,0]},{"type":"raw_stat","bonuses":[{"type":"prop","abil":0,"behavior":"modify","name":"aoe","value":1}]}],"id":44},{"display_name":"Better Leap","desc":"Reduce leap's cooldown by 1s.","archetype":"Boltslinger","archetype_req":0,"base_abil":17,"parents":[17,55],"dependencies":[17],"blockers":[],"cost":1,"display":{"row":29,"col":1,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"prop","abil":17,"name":"cooldown","value":-1}]}],"id":45},{"display_name":"Better Guardian Angels","desc":"Your Guardian Angels can shoot +4 arrows before disappearing.","archetype":"Boltslinger","archetype_req":0,"base_abil":0,"parents":[20,55],"dependencies":[8],"blockers":[],"cost":1,"display":{"row":31,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":4,"target_part":"Single Bow","hits":{"Single Arrow":4}}],"id":46},{"display_name":"Cheaper Arrow Storm (2)","desc":"Reduce the Mana cost of Arrow Storm.","base_abil":7,"parents":[21,19],"dependencies":[],"blockers":[],"cost":1,"display":{"row":31,"col":8,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"cost":-5}],"id":47},{"display_name":"Precise Shot","desc":"+30% Critical Hit Damage","parents":[46,49,23],"dependencies":[],"blockers":[],"cost":1,"display":{"row":33,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"critDamPct","value":30}]}],"id":48},{"display_name":"Cheaper Arrow Shield","desc":"Reduce the Mana cost of Arrow Shield.","base_abil":0,"parents":[48,21],"dependencies":[],"blockers":[],"cost":1,"display":{"row":33,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":4,"cost":-5}],"id":49},{"display_name":"Rocket Jump","desc":"Arrow Bomb's self-damage will knockback you farther away.","base_abil":2,"parents":[47,21],"dependencies":[2],"blockers":[],"cost":1,"display":{"row":33,"col":6,"icon":"node_0"},"properties":{},"effects":[],"id":50},{"display_name":"Cheaper Escape (2)","desc":"Reduce the Mana cost of Escape.","base_abil":1,"parents":[22,70],"dependencies":[],"blockers":[],"cost":1,"display":{"row":34,"col":7,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":2,"cost":-5}],"id":51},{"display_name":"Stronger Hook","desc":"Increase your Grappling Hook's range, speed and strength.","archetype":"Trapper","archetype_req":5,"base_abil":1,"parents":[51],"dependencies":[12],"blockers":[],"cost":1,"display":{"row":35,"col":8,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"prop","abil":12,"name":"range","value":8}]}],"id":52},{"display_name":"Cheaper Arrow Bomb (2)","desc":"Reduce the Mana cost of Arrow Bomb.","base_abil":2,"parents":[63,30],"dependencies":[],"blockers":[],"cost":1,"display":{"row":40,"col":5,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"cost":-5}],"id":53},{"display_name":"Bouncing Bomb","desc":"Arrow Bomb will bounce once when hitting a block or enemy","base_abil":2,"parents":[40],"dependencies":[],"blockers":[],"cost":2,"display":{"row":25,"col":7,"icon":"node_2"},"properties":{},"effects":[],"id":54},{"display_name":"Homing Shots","desc":"Your Main Attack arrows will follow nearby enemies and not be affected by gravity","archetype":"Sharpshooter","base_abil":999,"parents":[17,18],"dependencies":[],"blockers":[],"cost":2,"display":{"row":28,"col":2,"icon":"node_2"},"properties":{},"effects":[],"id":55},{"display_name":"Shrapnel Bomb","desc":"Arrow Bomb's explosion will fling 15 shrapnel, dealing damage in a large area","archetype":"Boltslinger","archetype_req":8,"base_abil":2,"parents":[23,48],"dependencies":[],"blockers":[],"cost":2,"display":{"row":34,"col":1,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Shrapnel Bomblet","multipliers":[40,0,0,0,20,0]}],"id":56},{"display_name":"Elusive","desc":"If you do not get hit for 8+ seconds, become immune to self-damage and remove Arrow Storm's recoil. (Dodging counts as not getting hit)","archetype":"Boltslinger","archetype_req":0,"parents":[24],"dependencies":[],"blockers":[],"cost":2,"display":{"row":38,"col":0,"icon":"node_1"},"properties":{},"effects":[],"id":57},{"display_name":"Double Shots","desc":"Double Main Attack arrows, but they deal -30% damage per arrow (harder to hit far enemies)","archetype":"Boltslinger","archetype_req":0,"base_abil":999,"parents":[1],"dependencies":[],"blockers":[60],"cost":1,"display":{"row":7,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":0,"target_part":"Single Shot","multipliers":[-30,0,0,0,0,0]},{"type":"add_spell_prop","base_spell":0,"target_part":"Total Damage","hits":{"Single Shot":2},"display":"Total Damage"}],"id":58},{"display_name":"Triple Shots","desc":"Triple Main Attack arrows, but they deal -20% damage per arrow","archetype":"Boltslinger","archetype_req":0,"base_abil":999,"parents":[69,67],"dependencies":[58],"blockers":[],"cost":1,"display":{"row":17,"col":0,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":0,"target_part":"Single Shot","multipliers":[-20,0,0,0,0,0]},{"type":"add_spell_prop","base_spell":0,"target_part":"Total Damage","hits":{"Single Shot":1},"display":"Total Damage"}],"id":59},{"display_name":"Power Shots","desc":"Main Attack arrows have increased speed and knockback","archetype":"Sharpshooter","archetype_req":0,"base_abil":999,"parents":[1],"dependencies":[],"blockers":[58],"cost":1,"display":{"row":7,"col":6,"icon":"node_0"},"properties":{},"effects":[],"id":60},{"display_name":"Focus","desc":"When hitting an aggressive mob 5+ blocks away, gain +1 Focus (Max 3). Resets if you miss once","archetype":"Sharpshooter","archetype_req":2,"parents":[68],"dependencies":[],"blockers":[],"cost":2,"display":{"row":19,"col":4,"icon":"node_3"},"properties":{},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Focus","output":{"type":"stat","name":"damMult.Focus"},"scaling":[40],"slider_max":3}],"id":61},{"display_name":"More Focus","desc":"Add +2 max Focus","archetype":"Sharpshooter","archetype_req":0,"base_abil":61,"parents":[33,12],"dependencies":[61],"blockers":[],"cost":1,"display":{"row":22,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Focus","slider_max":2,"output":{"type":"stat","name":"damMult.Focus"},"scaling":[-5]}],"id":62},{"display_name":"More Focus (2)","desc":"Add +2 max Focus","archetype":"Sharpshooter","archetype_req":0,"base_abil":61,"parents":[25,28],"dependencies":[61],"blockers":[],"cost":1,"display":{"row":39,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Focus","slider_max":2,"output":{"type":"stat","name":"damMult.Focus"},"scaling":[-5]}],"id":63},{"display_name":"Traveler","desc":"For every 1% Walk Speed you have from items, gain +1 Raw Spell Damage (Max 100)","parents":[42,14],"dependencies":[],"blockers":[],"cost":1,"display":{"row":25,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"stat_scaling","slider":false,"inputs":[{"type":"stat","name":"spd"}],"output":{"type":"stat","name":"sdRaw"},"scaling":[1],"max":100}],"id":64},{"display_name":"Patient Hunter","desc":"Your Traps will deal +20% more damage for every second they are active (Max +80%)","archetype":"Trapper","archetype_req":0,"base_abil":10,"parents":[40],"dependencies":[10],"blockers":[],"cost":2,"display":{"row":22,"col":8,"icon":"node_1"},"properties":{"max":80},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Trap Wait Time","slider_max":4,"output":{"type":"stat","name":"damMult.Basaltic:7.Trap Damage"},"slider_step":1,"scaling":[20]}],"id":65},{"display_name":"Stronger Patient Hunter","desc":"Add +80% Max Damage to Patient Hunter","archetype":"Trapper","archetype_req":0,"base_abil":10,"parents":[26],"dependencies":[65],"blockers":[],"cost":1,"display":{"row":38,"col":8,"icon":"node_0"},"properties":{},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Trap Wait Time","slider_max":4},{"type":"raw_stat","bonuses":[{"type":"prop","abil":65,"name":"max","value":80}]}],"id":66},{"display_name":"Frenzy","desc":"Every time you hit an enemy, briefly gain +6% Walk Speed (Max 200%). Decay -40% of the bonus every second","archetype":"Boltslinger","archetype_req":0,"parents":[59,6],"dependencies":[],"blockers":[],"cost":2,"display":{"row":17,"col":2,"icon":"node_1"},"properties":{},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Hits dealt","output":{"type":"stat","name":"spd"},"scaling":[6],"max":160}],"id":67},{"display_name":"Phantom Ray","desc":"Condense Arrow Storm into a single ray that damages enemies 10 times per second","base_abil":7,"parents":[37,4],"dependencies":[7],"blockers":[11,6,23],"cost":2,"display":{"row":16,"col":4,"icon":"node_2"},"properties":{},"effects":[{"type":"replace_spell","name":"Phantom Ray","base_spell":1,"spell_type":"damage","scaling":"spell","display":"Total Damage","parts":[{"name":"Single Arrow","type":"damage","multipliers":[25,0,5,0,0,0]},{"name":"Total Damage","type":"total","hits":{"Single Arrow":16}}]},{"type":"add_spell_prop","base_spell":1,"cost":-10}],"id":68},{"display_name":"Arrow Rain","desc":"When Arrow Shield loses its last charge, unleash 150 arrows raining down on enemies","base_abil":0,"parents":[6,38],"dependencies":[0],"blockers":[],"cost":2,"display":{"row":15,"col":0,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":4,"target_part":"Arrow Rain (Per Arrow)","multipliers":[80,0,0,0,0,60]},{"type":"add_spell_prop","base_spell":4,"target_part":"Arrow Rain (Total)","hits":{"Arrow Rain (Per Arrow)":150}}],"id":69},{"display_name":"Decimator","desc":"Phantom Ray will increase its damage by 10% everytime you do not miss with it (Max 70%)","archetype":"Sharpshooter","archetype_req":0,"base_abil":7,"parents":[49,51],"dependencies":[68],"blockers":[],"cost":2,"display":{"row":34,"col":5,"icon":"node_1"},"properties":{},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Phantom Ray hits","slider_max":7,"output":{"type":"stat","name":"damMult.Decimator:1.Single Arrow"},"scaling":[10]}],"id":70}],"Warrior":[{"display_name":"Bash","desc":"Violently bash the ground, dealing high damage in a large area","parents":[],"dependencies":[],"blockers":[],"cost":1,"display":{"row":0,"col":4,"icon":"node_warrior"},"properties":{"aoe":4,"range":3},"effects":[{"type":"replace_spell","name":"Bash","cost":45,"base_spell":1,"spell_type":"damage","scaling":"spell","display":"Total Damage","parts":[{"name":"Single Hit","type":"damage","multipliers":[130,20,0,0,0,0]},{"name":"Total Damage","type":"total","hits":{"Single Hit":1}}]}],"id":0},{"display_name":"Spear Proficiency 1","desc":"Improve your Main Attack's damage and range w/ spear","base_abil":999,"parents":[0],"dependencies":[],"blockers":[],"cost":1,"display":{"row":2,"col":4,"icon":"node_0"},"properties":{"melee_range":1},"effects":[{"type":"add_spell_prop","base_spell":0,"target_part":"melee","multipliers":[5,0,0,0,0,0]}],"id":1},{"display_name":"Cheaper Bash","desc":"Reduce the Mana cost of Bash","base_abil":0,"parents":[1],"dependencies":[],"blockers":[],"cost":1,"display":{"row":2,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"cost":-10}],"id":2},{"display_name":"Double Bash","desc":"Bash will hit a second time at a farther range","parents":[1],"base_abil":0,"dependencies":[],"blockers":[],"cost":1,"display":{"row":4,"col":4,"icon":"node_1"},"properties":{"range":3},"effects":[{"type":"add_spell_prop","base_spell":1,"target_part":"Total Damage","cost":0,"hits":{"Single Hit":1}},{"type":"add_spell_prop","base_spell":1,"target_part":"Single Hit","cost":0,"multipliers":[-50,0,0,0,0,0]}],"id":3},{"display_name":"Charge","desc":"Charge forward at high speed (hold shift to cancel)","parents":[3],"dependencies":[],"blockers":[],"cost":1,"display":{"row":6,"col":4,"icon":"node_warrior"},"properties":{},"effects":[{"type":"replace_spell","name":"Charge","cost":25,"base_spell":2,"spell_type":"damage","scaling":"spell","display":"","parts":[]}],"id":4},{"display_name":"Heavy Impact","desc":"After using Charge, violently crash down into the ground and deal damage","base_abil":4,"parents":[8],"dependencies":[],"blockers":[],"cost":1,"display":{"row":9,"col":1,"icon":"node_1"},"properties":{"aoe":4},"effects":[{"type":"add_spell_prop","base_spell":2,"target_part":"Heavy Impact","cost":0,"multipliers":[100,0,0,0,0,0]},{"type":"add_spell_prop","base_spell":2,"target_part":"Contact Damage","display":"Contact Damage","hits":{"Heavy Impact":1}}],"id":5},{"display_name":"Vehement","desc":"For every 1% or 1 Raw Main Attack Damage you have from items, gain +2% Walk Speed (Max 20%)","archetype":"Fallen","archetype_req":0,"parents":[4],"dependencies":[],"blockers":[7],"cost":1,"display":{"row":6,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"stat_scaling","slider":false,"inputs":[{"type":"stat","name":"mdPct"},{"type":"stat","name":"mdRaw"}],"output":{"type":"stat","name":"spd"},"scaling":[2,2],"max":20}],"id":6},{"display_name":"Tougher Skin","desc":"Harden your skin and become permanently +5% more resistant. For every 1% or 1 Raw Heath Regen you have from items, gain +10 Health (Max 100)","archetype":"Paladin","archetype_req":0,"parents":[4],"dependencies":[],"blockers":[6],"cost":1,"display":{"row":6,"col":6,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"defMult.Base","value":5}]},{"type":"stat_scaling","slider":false,"inputs":[{"type":"stat","name":"hprRaw"},{"type":"stat","name":"hprPct"}],"output":{"type":"stat","name":"hpBonus"},"scaling":[10,10],"max":100}],"id":7},{"display_name":"Uppercut","desc":"Rocket enemies in the air and deal massive damage","parents":[6,9],"dependencies":[],"blockers":[],"cost":1,"display":{"row":8,"col":2,"icon":"node_warrior"},"properties":{"aoe":3,"range":5},"effects":[{"type":"replace_spell","name":"Uppercut","cost":45,"base_spell":3,"spell_type":"damage","scaling":"spell","display":"Total Damage","parts":[{"name":"Uppercut","multipliers":[200,40,40,0,0,0]},{"name":"Total Damage","hits":{"Uppercut":1}}]}],"id":8},{"display_name":"Cheaper Charge","desc":"Reduce the Mana cost of Charge","base_abil":4,"parents":[8,10],"dependencies":[],"blockers":[],"cost":1,"display":{"row":8,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":2,"cost":-5}],"id":9},{"display_name":"War Scream","desc":"Emit a terrorizing roar that deals damage, pull nearby enemies, and add damage resistance to yourself and allies","parents":[7,9],"dependencies":[],"blockers":[],"cost":1,"display":{"row":8,"col":6,"icon":"node_warrior"},"properties":{"duration":30,"aoe":12,"defense_bonus":10},"effects":[{"type":"replace_spell","name":"War Scream","cost":35,"base_spell":4,"spell_type":"damage","scaling":"spell","display":"Total Damage","parts":[{"name":"War Scream","multipliers":[50,0,0,0,50,0]},{"name":"Total Damage","hits":{"War Scream":1}}]}],"id":10},{"display_name":"Earth Mastery","base_abil":998,"desc":"Increases base damage from all Earth attacks","archetype":"Fallen","archetype_req":0,"parents":[8],"dependencies":[],"blockers":[],"cost":1,"display":{"row":10,"col":0,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"eDamPct","value":20},{"type":"stat","name":"eDamAddMin","value":2},{"type":"stat","name":"eDamAddMax","value":4}]}],"id":11},{"display_name":"Thunder Mastery","base_abil":998,"desc":"Increases base damage from all Thunder attacks","archetype":"Fallen","archetype_req":0,"parents":[8,14,9],"dependencies":[],"blockers":[],"cost":1,"display":{"row":10,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"tDamPct","value":10},{"type":"stat","name":"tDamAddMin","value":1},{"type":"stat","name":"tDamAddMax","value":8}]}],"id":12},{"display_name":"Water Mastery","base_abil":998,"desc":"Increases base damage from all Water attacks","archetype":"Battle Monk","archetype_req":0,"parents":[9,12,14],"dependencies":[],"blockers":[],"cost":1,"display":{"row":11,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"wDamPct","value":15},{"type":"stat","name":"wDamAddMin","value":2},{"type":"stat","name":"wDamAddMax","value":4}]}],"id":13},{"display_name":"Air Mastery","base_abil":998,"desc":"Increases base damage from all Air attacks","archetype":"Battle Monk","archetype_req":0,"parents":[10,12,9],"dependencies":[],"blockers":[],"cost":1,"display":{"row":10,"col":6,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"aDamPct","value":15},{"type":"stat","name":"aDamAddMin","value":3},{"type":"stat","name":"aDamAddMax","value":4}]}],"id":14},{"display_name":"Fire Mastery","base_abil":998,"desc":"Increases base damage from all Fire attacks","archetype":"Paladin","archetype_req":0,"parents":[10],"dependencies":[],"blockers":[],"cost":1,"display":{"row":10,"col":8,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"fDamPct","value":15},{"type":"stat","name":"fDamAddMin","value":3},{"type":"stat","name":"fDamAddMax","value":5}]}],"id":15},{"display_name":"Quadruple Bash","desc":"Bash will hit 4 times at an even larger range","archetype":"Fallen","archetype_req":0,"base_abil":0,"parents":[11,17],"dependencies":[],"blockers":[],"cost":2,"display":{"row":12,"col":0,"icon":"node_1"},"properties":{"range":6},"effects":[{"type":"add_spell_prop","base_spell":1,"target_part":"Total Damage","hits":{"Single Hit":2}},{"type":"add_spell_prop","base_spell":1,"target_part":"Single Hit","multipliers":[-20,0,0,0,0,0]}],"id":16},{"display_name":"Fireworks","desc":"Mobs hit by Uppercut will explode mid-air and receive additional damage","archetype":"Fallen","archetype_req":0,"base_abil":8,"parents":[12,16],"dependencies":[],"blockers":[],"cost":2,"display":{"row":12,"col":2,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Fireworks","multipliers":[80,0,20,0,0,0]},{"type":"add_spell_prop","base_spell":3,"target_part":"Total Damage","hits":{"Fireworks":1}}],"id":17},{"display_name":"Half-Moon Swipe","desc":"Uppercut will deal a footsweep attack at a longer and wider angle. All elemental conversions become Water","archetype":"Battle Monk","archetype_req":1,"base_abil":8,"parents":[13],"dependencies":[8],"blockers":[],"cost":2,"display":{"row":13,"col":4,"icon":"node_1"},"properties":{"range":4},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Uppercut","cost":-10,"multipliers":[-70,0,0,30,0,0]}],"id":18},{"display_name":"Flyby Jab","desc":"Damage enemies in your way when using Charge","base_abil":4,"parents":[14,20],"dependencies":[],"blockers":[],"cost":2,"display":{"row":12,"col":6,"icon":"node_1"},"properties":{"aoe":2},"effects":[{"type":"add_spell_prop","base_spell":2,"target_part":"Flyby Jab","multipliers":[20,0,0,0,0,40]},{"type":"add_spell_prop","base_spell":2,"target_part":"Contact Damage","display":"Contact Damage","hits":{"Flyby Jab":1}}],"id":19},{"display_name":"Flaming Uppercut","desc":"Uppercut will light mobs on fire, dealing damage every 0.6 seconds","archetype":"Paladin","archetype_req":0,"base_abil":8,"parents":[15,19],"dependencies":[8],"blockers":[],"cost":2,"display":{"row":12,"col":8,"icon":"node_1"},"properties":{"duration":3,"tick":0.6},"effects":[{"type":"replace_spell","name":"Flaming Uppercut","base_spell":8,"display":"DPS","parts":[{"name":"Damage Tick","multipliers":[0,0,0,0,50,0]},{"name":"DPS","hits":{"Damage Tick":1.6666666666666667}},{"name":"Total Damage","hits":{"Damage Tick":5}}]}],"id":20},{"display_name":"Iron Lungs","desc":"War Scream deals more damage","archetype":"Paladin","archetype_req":0,"base_abil":10,"parents":[19,20],"dependencies":[],"blockers":[],"cost":1,"display":{"row":13,"col":7,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":4,"target_part":"War Scream","cost":0,"multipliers":[30,0,0,0,0,30]}],"id":21},{"display_name":"Generalist","desc":"After casting 3 different spells in a row, your next spell will cost 5 mana","archetype":"Battle Monk","archetype_req":3,"parents":[23],"dependencies":[],"blockers":[],"cost":2,"display":{"row":15,"col":2,"icon":"node_3"},"properties":{},"effects":[],"id":22},{"display_name":"Counter","desc":"When dodging a nearby enemy attack, get 30% chance to instantly attack back","archetype":"Battle Monk","archetype_req":0,"parents":[18],"dependencies":[],"blockers":[],"cost":2,"display":{"row":15,"col":4,"icon":"node_1"},"properties":{"chance":30},"effects":[{"type":"replace_spell","name":"Counter","base_spell":5,"display":"Counter Damage","parts":[{"name":"Counter Damage","multipliers":[60,0,20,0,0,20]}]}],"id":23},{"display_name":"Mantle of the Bovemists","desc":"When casting War Scream, create a holy shield around you that reduces all incoming damage by 70% for 3 hits (20s cooldown)","archetype":"Paladin","archetype_req":3,"parents":[21],"dependencies":[10],"blockers":[],"cost":2,"display":{"row":15,"col":7,"icon":"node_3"},"properties":{"mantle_charge":3},"effects":[{"type":"raw_stat","toggle":"Activate Mantle","bonuses":[{"type":"stat","name":"defMult.Mantle","value":70}]}],"id":24},{"display_name":"Bak'al's Grasp","desc":"After casting War Scream, become Corrupted (15s Cooldown). You cannot heal while in that state. While Corrupted, every 2% of Health you lose will add +4 Raw Damage to your attacks (Max 120)","archetype":"Fallen","archetype_req":2,"parents":[16,17],"dependencies":[10],"blockers":[],"cost":2,"display":{"row":16,"col":1,"icon":"node_3"},"properties":{"cooldown":15},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Corrupted","slider_max":100,"slider_step":1,"output":{"type":"stat","name":"damRaw"},"max":120,"scaling":[2]}],"id":25},{"display_name":"Spear Proficiency 2","desc":"Improve your Main Attack's damage and range w/ spear","base_abil":999,"parents":[25,27],"dependencies":[],"blockers":[],"cost":1,"display":{"row":17,"col":0,"icon":"node_0"},"properties":{"melee_range":1},"effects":[{"type":"add_spell_prop","base_spell":0,"target_part":"melee","multipliers":[5,0,0,0,0,0]}],"id":26},{"display_name":"Cheaper Uppercut","desc":"Reduce the Mana Cost of Uppercut","base_abil":8,"parents":[26,28,23],"dependencies":[],"blockers":[],"cost":1,"display":{"row":17,"col":3,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"cost":-5}],"id":27},{"display_name":"Aerodynamics","desc":"During Charge, you can steer and change direction","archetype":"Battle Monk","archetype_req":0,"base_abil":4,"parents":[27,29],"dependencies":[],"blockers":[],"cost":2,"display":{"row":17,"col":5,"icon":"node_1"},"properties":{},"effects":[],"id":28},{"display_name":"Provoke","desc":"Mobs damaged by War Scream will target only you for at least 5s. Reduce the Mana cost of War Scream","base_abil":10,"parents":[28,24],"dependencies":[],"blockers":[],"cost":2,"display":{"row":17,"col":7,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":4,"cost":-5}],"id":29},{"display_name":"Precise Strikes","desc":"+30% Critical Hit Damage","parents":[27,26],"dependencies":[],"blockers":[],"cost":1,"display":{"row":18,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"critDamPct","value":30}]}],"id":30},{"display_name":"Air Shout","desc":"War Scream will fire a projectile that can go through walls and deal damage multiple times","base_abil":10,"parents":[28,29],"dependencies":[10],"blockers":[],"cost":2,"display":{"row":18,"col":6,"icon":"node_1"},"properties":{"attackRate":2},"effects":[{"type":"add_spell_prop","base_spell":4,"target_part":"Air Shout","multipliers":[40,0,0,0,0,10]}],"id":31},{"display_name":"Enraged Blow","desc":"While Corriupted, every 1% of Health you lose will increase your damage by +3% (Max 300%)","archetype":"Fallen","archetype_req":0,"base_abil":25,"parents":[26],"dependencies":[25],"blockers":[],"cost":2,"display":{"row":20,"col":0,"icon":"node_2"},"properties":{},"effects":[{"type":"stat_scaling","slider_name":"Corrupted","slider":true,"output":{"type":"stat","name":"damMult.Enraged"},"scaling":[3]}],"id":32},{"display_name":"Flying Kick","desc":"When using Charge, mobs hit will halt your momentum and get knocked back","archetype":"Battle Monk","archetype_req":1,"base_abil":4,"parents":[27,34],"dependencies":[],"blockers":[],"cost":2,"display":{"row":20,"col":3,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":2,"target_part":"Flying Kick","multipliers":[150,0,0,20,0,30]},{"type":"add_spell_prop","base_spell":2,"target_part":"Flying Kick Max Damage","hits":{"Flying Kick":1},"display":"Flying Kick Max Damage"}],"id":33},{"display_name":"Stronger Mantle","desc":"Add +2 additional charges to Mantle of the Bovemists","archetype":"Paladin","archetype_req":0,"base_abil":24,"parents":[35,33],"dependencies":[24],"blockers":[],"cost":1,"display":{"row":20,"col":6,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"prop","abil":24,"name":"mantle_charge","value":2}]}],"id":34},{"display_name":"Manachism","desc":"If you receive a hit that's less than 5% of your max HP, gain 10 Mana (1s Cooldown)","archetype":"Paladin","archetype_req":3,"parents":[34,29],"dependencies":[],"blockers":[],"cost":2,"display":{"row":20,"col":8,"icon":"node_2"},"properties":{"cooldown":1},"effects":[],"id":35},{"display_name":"Boiling Blood","desc":"Bash leaves a trail of boiling blood behind its first explosion, slowing down and damaging enemies above it every 0.4 seconds","base_abil":0,"parents":[32,37],"dependencies":[],"blockers":[],"cost":2,"display":{"row":22,"col":0,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"target_part":"Boiling Blood","cost":0,"multipliers":[25,0,0,0,5,0]}],"id":36},{"display_name":"Ragnarokkr","desc":"War Scream become deafening, increasing its range and giving damage bonus to players","archetype":"Fallen","archetype_req":0,"base_abil":10,"parents":[36,33],"dependencies":[10],"blockers":[],"cost":2,"display":{"row":22,"col":2,"icon":"node_2"},"properties":{"aoe":2},"effects":[{"type":"add_spell_prop","base_spell":4,"cost":10}],"id":37},{"display_name":"Ambidextrous","desc":"Increase your chance to attack with Counter by +30%","base_abil":23,"parents":[33,34,39],"dependencies":[23],"blockers":[],"cost":1,"display":{"row":22,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"prop","abil":23,"name":"chance","value":30}]}],"id":38},{"display_name":"Burning Heart","desc":"For every 100 Health Bonus you have from item IDs, gain +2% Fire Damage (Max 100%)","archetype":"Paladin","archetype_req":0,"parents":[38,40],"dependencies":[],"blockers":[],"cost":1,"display":{"row":22,"col":6,"icon":"node_0"},"properties":{},"effects":[{"type":"stat_scaling","slider":false,"inputs":[{"type":"stat","name":"hpBonus"}],"output":{"type":"stat","name":"fDamPct"},"scaling":[0.02],"max":100}],"id":39},{"display_name":"Stronger Bash","desc":"Increase the damage of Bash","base_abil":0,"parents":[39,35],"dependencies":[],"blockers":[],"cost":1,"display":{"row":22,"col":8,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"target_part":"Single Hit","multipliers":[30,0,0,0,0,0]}],"id":40},{"display_name":"Intoxicating Blood","desc":"After leaving Corrupted, gain 2% of the health lost back for each enemy killed while Corrupted","archetype":"Fallen","archetype_req":5,"base_abil":25,"parents":[37,36],"dependencies":[25],"blockers":[],"cost":2,"display":{"row":23,"col":1,"icon":"node_1"},"properties":{},"effects":[],"id":41},{"display_name":"Comet","desc":"After being hit by Fireworks, enemies will crash into the ground and receive more damage","archetype":"Fallen","archetype_req":0,"base_abil":8,"parents":[37],"dependencies":[17],"blockers":[],"cost":2,"display":{"row":24,"col":2,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Comet","cost":0,"multipliers":[80,20,0,0,0,0]},{"type":"add_spell_prop","base_spell":3,"target_part":"Total Damage","cost":0,"hits":{"Comet":1}}],"id":42},{"display_name":"Collide","desc":"Mobs thrown into walls from Flying Kick will explode and receive additonal damage","archetype":"Battle Monk","archetype_req":4,"base_abil":4,"parents":[38,39],"dependencies":[33],"blockers":[],"cost":2,"display":{"row":23,"col":5,"icon":"node_1"},"properties":{"aoe":4},"effects":[{"type":"add_spell_prop","base_spell":2,"target_part":"Collide","cost":0,"multipliers":[150,0,0,0,50,0]},{"type":"add_spell_prop","base_spell":2,"target_part":"Flying Kick Max Damage","hits":{"Collide":1}}],"id":43},{"display_name":"Rejuvenating Skin","desc":"Regain back 30% of the damage you take as healing over 30s","archetype":"Paladin","archetype_req":5,"parents":[39,40],"dependencies":[],"blockers":[],"cost":2,"display":{"row":23,"col":7,"icon":"node_3"},"properties":{},"effects":[],"id":44},{"display_name":"Uncontainable Corruption","desc":"Reduce the cooldown of Bak'al's Grasp by -5s, and increase the raw damage gained for every 2% of health lost by +1","base_abil":25,"parents":[36,46],"dependencies":[25],"blockers":[],"cost":1,"display":{"row":26,"col":0,"icon":"node_0"},"properties":{},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Corrupted","output":{"type":"stat","name":"damRaw"},"scaling":[0.5]},{"type":"raw_stat","bonuses":[{"type":"prop","abil":25,"name":"cooldown","value":-5}]}],"id":45},{"display_name":"Radiant Devotee","desc":"For every 4% Reflection you have from items, gain +1/5s Mana Regen (Max 10/5s)","archetype":"Battle Monk","archetype_req":1,"parents":[47,45],"dependencies":[],"blockers":[],"cost":1,"display":{"row":26,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"stat_scaling","inputs":[{"type":"stat","name":"ref"}],"output":{"type":"stat","name":"mr"},"scaling":[0.25],"max":10}],"id":46},{"display_name":"Whirlwind Strike","desc":"Uppercut will create a strong gust of air, launching you upward with enemies (Hold shift to stay grounded)","archetype":"Battle Monk","archetype_req":5,"base_abil":8,"parents":[38,46],"dependencies":[8],"blockers":[],"cost":2,"display":{"row":26,"col":4,"icon":"node_1"},"properties":{"range":2},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Uppercut","multipliers":[0,0,0,0,0,50]}],"id":47},{"display_name":"Mythril Skin","desc":"Gain +5% Base Resistance and become immune to knockback","archetype":"Paladin","archetype_req":6,"parents":[44],"dependencies":[],"blockers":[],"cost":2,"display":{"row":26,"col":7,"icon":"node_1"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"defMult.Base","value":5}]}],"id":48},{"display_name":"Armour Breaker","desc":"While Corrupted, losing 30% Health will make your next Uppercut destroy enemies' defense, rendering them weaker to damage","archetype":"Fallen","archetype_req":0,"base_abil":8,"parents":[45,46],"dependencies":[25],"blockers":[],"cost":2,"display":{"row":27,"col":1,"icon":"node_2"},"properties":{"duration":5},"effects":[{"type":"raw_stat","toggle":"Activate Armor Breaker","bonuses":[{"type":"stat","name":"damMult.ArmorBreaker","value":30}]}],"id":49},{"display_name":"Shield Strike","desc":"When your Mantle of the Bovemist loses all charges, deal damage around you for each Mantle individually lost","archetype":"Paladin","archetype_req":0,"base_abil":24,"parents":[48,51],"dependencies":[],"blockers":[],"cost":2,"display":{"row":27,"col":6,"icon":"node_1"},"properties":{},"effects":[{"type":"replace_spell","name":"Shield Strike","base_spell":6,"display":"Damage per Shield","parts":[{"name":"Damage per Shield","multipliers":[60,0,20,0,0,0]}]}],"id":50},{"display_name":"Sparkling Hope","desc":"Everytime you heal 5% of your max health, deal damage to all nearby enemies","archetype":"Paladin","archetype_req":0,"parents":[48],"dependencies":[],"blockers":[],"cost":2,"display":{"row":27,"col":8,"icon":"node_2"},"properties":{"aoe":6},"effects":[{"type":"replace_spell","name":"Sparkling Hope","base_spell":7,"display":"Damage Tick","parts":[{"name":"Damage Tick","multipliers":[10,0,5,0,0,0]}]}],"id":51},{"display_name":"Massive Bash","desc":"While Corrupted, every 3% Health you lose will add +1 AoE to Bash (Max 10)","archetype":"Fallen","archetype_req":8,"base_abil":25,"parents":[53,45],"dependencies":[],"blockers":[],"cost":2,"display":{"row":28,"col":0,"icon":"node_2"},"properties":{},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Corrupted","output":{"type":"prop","abil":0,"name":"aoe"},"scaling":[0.3333333333333333],"max":10}],"id":52},{"display_name":"Tempest","desc":"War Scream will ripple the ground and deal damage 3 times in a large area","archetype":"Battle Monk","archetype_req":0,"base_abil":10,"parents":[52,54],"dependencies":[],"blockers":[],"cost":2,"display":{"row":28,"col":2,"icon":"node_1"},"properties":{"aoe":16},"effects":[{"type":"add_spell_prop","base_spell":4,"target_part":"Tempest","multipliers":[30,10,0,0,0,10]},{"type":"add_spell_prop","base_spell":4,"target_part":"Tempest Total Damage","hits":{"Tempest":3}},{"type":"add_spell_prop","base_spell":4,"target_part":"Total Damage","hits":{"Tempest":3}}],"id":53},{"display_name":"Spirit of the Rabbit","desc":"Reduce the Mana cost of Charge and increase your Walk Speed by +20%","archetype":"Battle Monk","archetype_req":5,"base_abil":4,"parents":[53,47],"dependencies":[],"blockers":[],"cost":1,"display":{"row":28,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":2,"cost":-5},{"type":"raw_stat","bonuses":[{"type":"stat","name":"spd","value":20}]}],"id":54},{"display_name":"Massacre","desc":"While Corrupted, if your effective attack speed is Slow or lower, hitting an enemy with your Main Attack will add +1% to your Corrupted bar","archetype":"Fallen","archetype_req":5,"base_abil":999,"parents":[53,52],"dependencies":[],"blockers":[],"cost":2,"display":{"row":29,"col":1,"icon":"node_1"},"properties":{},"effects":[],"id":55},{"display_name":"Axe Kick","desc":"Increase the damage of Uppercut, but also increase its mana cost","base_abil":8,"parents":[53,54],"dependencies":[],"blockers":[],"cost":1,"display":{"row":29,"col":3,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Uppercut","cost":10,"multipliers":[100,0,0,0,0,0]}],"id":56},{"display_name":"Radiance","desc":"Bash will buff your allies' positive IDs. (15s Cooldown)","archetype":"Paladin","archetype_req":2,"base_abil":0,"parents":[54,58],"dependencies":[],"blockers":[],"cost":2,"display":{"row":29,"col":5,"icon":"node_2"},"properties":{"cooldown":15},"effects":[],"id":57},{"display_name":"Cheaper Bash 2","desc":"Reduce the Mana cost of Bash","base_abil":0,"parents":[57,50,51],"dependencies":[],"blockers":[],"cost":1,"display":{"row":29,"col":7,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"cost":-5}],"id":58},{"display_name":"Cheaper War Scream","desc":"Reduce the Mana cost of War Scream","base_abil":10,"parents":[52],"dependencies":[],"blockers":[],"cost":1,"display":{"row":31,"col":0,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":4,"cost":-5}],"id":59},{"display_name":"Discombobulate","desc":"Every time you hit an enemy, briefly increase your elemental damage dealt to them by +3 (Additive, Max +80). This bonus decays -5 every second","archetype":"Battle Monk","archetype_req":11,"parents":[62],"dependencies":[],"blockers":[],"cost":2,"display":{"row":31,"col":2,"icon":"node_3"},"properties":{},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Hits dealt","slider_max":27,"output":[{"type":"stat","name":"eDamAddMin"},{"type":"stat","name":"eDamAddMax"},{"type":"stat","name":"tDamAddMin"},{"type":"stat","name":"tDamAddMax"},{"type":"stat","name":"wDamAddMin"},{"type":"stat","name":"wDamAddMax"},{"type":"stat","name":"fDamAddMin"},{"type":"stat","name":"fDamAddMax"},{"type":"stat","name":"aDamAddMin"},{"type":"stat","name":"aDamAddMax"}],"scaling":[3],"max":80}],"id":60},{"display_name":"Thunderclap","desc":"Bash will cast at the player's position and gain additional AoE.\n\n All elemental conversions become Thunder","archetype":"Battle Monk","archetype_req":8,"parents":[62],"dependencies":[],"blockers":[],"cost":2,"display":{"row":32,"col":5,"icon":"node_1"},"properties":{},"effects":[{"type":"convert_spell_conv","target_part":"all","base_spell":1,"conversion":"Thunder"},{"type":"raw_stat","bonuses":[{"type":"prop","abil":0,"name":"aoe","value":3}]}],"id":61},{"display_name":"Cyclone","desc":"After casting War Scream, envelop yourself with a vortex that damages nearby enemies every 0.5s","archetype":"Battle Monk","archetype_req":0,"parents":[54],"dependencies":[],"blockers":[],"cost":2,"display":{"row":31,"col":4,"icon":"node_1"},"properties":{"aoe":4,"duration":20},"effects":[{"type":"add_spell_prop","base_spell":4,"target_part":"Cyclone","multipliers":[10,0,0,0,5,10]},{"type":"add_spell_prop","base_spell":4,"target_part":"Cyclone Total Damage","hits":{"Cyclone":40}}],"id":62},{"display_name":"Second Chance","desc":"When you receive a fatal blow, survive and regain 30% of your Health (10m Cooldown)","archetype":"Paladin","archetype_req":12,"parents":[58],"dependencies":[],"blockers":[],"cost":2,"display":{"row":32,"col":7,"icon":"node_3"},"properties":{},"effects":[],"id":63},{"display_name":"Blood Pact","desc":"If you do not have enough mana to cast a spell, spend health instead (0.6% health per mana)","archetype":"Fallen","archetype_req":10,"parents":[59],"dependencies":[],"blockers":[],"cost":2,"display":{"row":34,"col":1,"icon":"node_3"},"properties":{"health_cost":0.6},"effects":[],"id":64},{"display_name":"Haemorrhage","desc":"Reduce Blood Pact's health cost. (0.3% health per mana)","archetype":"Fallen","archetype_req":0,"base_abil":64,"parents":[64],"dependencies":[64],"blockers":[],"cost":1,"display":{"row":35,"col":2,"icon":"node_1"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"prop","abil":64,"name":"health_cost","value":-0.3}]}],"id":65},{"display_name":"Brink of Madness","desc":"If your health is 25% full or less, gain +40% Resistance","parents":[64,67],"dependencies":[],"blockers":[],"cost":2,"display":{"row":35,"col":4,"icon":"node_2"},"properties":{},"effects":[{"type":"raw_stat","toggle":"Activate Brink","bonuses":[{"type":"stat","name":"defMult.Brink","value":40}]}],"id":66},{"display_name":"Cheaper Uppercut 2","desc":"Reduce the Mana cost of Uppercut","base_abil":8,"parents":[63,66],"dependencies":[],"blockers":[],"cost":1,"display":{"row":35,"col":6,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"cost":-5}],"id":67},{"display_name":"Martyr","desc":"When you receive a fatal blow, all nearby allies become invincible","archetype":"Paladin","archetype_req":0,"parents":[63],"dependencies":[],"blockers":[],"cost":2,"display":{"row":35,"col":8,"icon":"node_1"},"properties":{"duration":3,"aoe":12},"effects":[],"id":68}],"Mage":[{"display_name":"Meteor","desc":"Summon a slow but powerful meteor from the sky, dealing massive damage in a large area","parents":[],"dependencies":[],"blockers":[],"cost":1,"display":{"row":0,"col":4,"icon":"node_mage"},"properties":{"aoe":5,"range":18},"effects":[{"type":"replace_spell","name":"Meteor","cost":55,"base_spell":3,"display":"Total Damage","parts":[{"name":"Meteor Damage","multipliers":[300,100,0,0,0,0]},{"name":"Total Damage","hits":{"Meteor Damage":1}}]}],"id":0},{"display_name":"Teleport","desc":"Instantly teleport in the direction you're facing","parents":[4],"dependencies":[],"blockers":[],"cost":1,"display":{"row":6,"col":4,"icon":"node_mage"},"properties":{"range":12},"effects":[{"type":"replace_spell","name":"Teleport","cost":25,"base_spell":2,"display":"","parts":[]}],"id":1},{"display_name":"Heal","desc":"Heal yourself and nearby allies in a large area around you. (When healing an ally, you cannot heal more than 30% of their max health)","parents":[14,12],"dependencies":[],"blockers":[],"cost":1,"display":{"row":8,"col":2,"icon":"node_mage"},"properties":{"aoe":5},"effects":[{"type":"replace_spell","name":"Heal","cost":35,"base_spell":1,"display":"Heal","parts":[{"name":"Heal","power":0.1}]}],"id":2},{"display_name":"Ice Snake","desc":"Summon a fast-moving ice snake that reduces your enemies' speed and damage them.","parents":[13,12],"dependencies":[],"blockers":[],"cost":1,"display":{"row":8,"col":6,"icon":"node_mage"},"properties":{"range":18,"effects":40,"duration":3},"effects":[{"type":"replace_spell","name":"Ice Snake","cost":35,"base_spell":4,"display":"Ice Snake Damage","parts":[{"name":"Ice Snake Damage","multipliers":[70,0,0,30,0,0]}]}],"id":3},{"display_name":"Shooting Star","desc":"Drastically increase the speed of your Meteor ability.","base_abil":3,"parents":[5],"dependencies":[],"blockers":[],"cost":1,"display":{"row":4,"col":4,"icon":"node_1"},"properties":{},"effects":[],"id":4},{"display_name":"Wand Proficiency I","desc":"Improve your Main Attack's damage and range when using a wand.","base_abil":999,"parents":[0],"dependencies":[],"blockers":[],"cost":1,"display":{"row":2,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"mdPct","value":5}]}],"id":5},{"display_name":"Cheaper Meteor","desc":"Reduce the Mana cost of Meteor.","base_abil":0,"parents":[5],"dependencies":[],"blockers":[],"cost":1,"display":{"row":2,"col":6,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"cost":-10}],"id":6},{"display_name":"Earth Mastery","base_abil":998,"desc":"Increases your base damage from all Earth attacks","archetype":"Arcanist","archetype_req":0,"parents":[3],"dependencies":[],"blockers":[],"cost":1,"display":{"row":10,"col":8,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"eDamPct","value":20},{"type":"stat","name":"eDamAddMin","value":2},{"type":"stat","name":"eDamAddMax","value":4}]}],"id":7},{"display_name":"Thunder Mastery","base_abil":998,"desc":"Increases your base damage from all Thunder attacks","archetype":"Riftwalker","archetype_req":0,"parents":[2,12],"dependencies":[],"blockers":[],"cost":1,"display":{"row":10,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"tDamPct","value":10},{"type":"stat","name":"tDamAddMin","value":1},{"type":"stat","name":"tDamAddMax","value":8}]}],"id":8},{"display_name":"Water Mastery","base_abil":998,"desc":"Increases your base damage from all Water attacks","archetype":"Light Bender","archetype_req":0,"parents":[12,8],"dependencies":[],"blockers":[],"cost":1,"display":{"row":11,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"wDamPct","value":15},{"type":"stat","name":"wDamAddMin","value":2},{"type":"stat","name":"wDamAddMax","value":4}]}],"id":9},{"display_name":"Air Mastery","base_abil":998,"desc":"Increases base damage from all Air attacks","archetype":"Riftwalker","archetype_req":0,"parents":[2],"dependencies":[],"blockers":[],"cost":1,"display":{"row":10,"col":0,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"aDamPct","value":15},{"type":"stat","name":"aDamAddMin","value":3},{"type":"stat","name":"aDamAddMax","value":4}]}],"id":10},{"display_name":"Fire Mastery","base_abil":998,"desc":"Increases base damage from all Fire attacks","archetype":"Arcanist","archetype_req":0,"parents":[3],"dependencies":[],"blockers":[],"cost":1,"display":{"row":10,"col":6,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"fDamPct","value":15},{"type":"stat","name":"fDamAddMin","value":3},{"type":"stat","name":"fDamAddMax","value":5}]}],"id":11},{"display_name":"Cheaper Teleport","desc":"Reduce the Mana cost of Teleport.","base_abil":1,"parents":[2,3],"dependencies":[],"blockers":[],"cost":1,"display":{"row":8,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":2,"cost":-5}],"id":12},{"display_name":"Wisdom","desc":"For every 2% or 2 Raw Spell Damage you have from items, gain +1/5s mana regen (Max 5/5s)","archetype":"Arcanist","archetype_req":0,"parents":[1],"dependencies":[],"blockers":[14],"cost":1,"display":{"row":6,"col":6,"icon":"node_0"},"properties":{},"effects":[{"type":"stat_scaling","slider":false,"inputs":[{"type":"stat","name":"sdPct"},{"type":"stat","name":"sdRaw"}],"output":{"type":"stat","name":"mr"},"scaling":[0.5,0.5],"max":5}],"id":13},{"display_name":"Wand Proficiency II","desc":"Improve your Main Attack's damage and range when using a wand.","archetype":"Riftwalker","archetype_req":0,"base_abil":999,"parents":[1],"dependencies":[],"blockers":[],"cost":1,"display":{"row":6,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"mdPct","value":5}]}],"id":14},{"display_name":"Wind Slash","desc":"When using Teleport, slash through the air and deal damage to enemies you pierce.","archetype":"Riftwalker","base_abil":1,"parents":[10,16],"dependencies":[1],"blockers":[],"cost":2,"display":{"row":12,"col":0,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","target_part":"Wind Slash","base_spell":2,"multipliers":[50,0,0,0,0,50]},{"type":"add_spell_prop","target_part":"Total Damage","base_spell":2,"display":"Total Damage","hits":{"Wind Slash":1}}],"id":15},{"display_name":"Thunderstorm","desc":"After casting Meteor, summon 3 lightning strikes and deal additional damage","base_abil":0,"parents":[15,8],"dependencies":[0],"blockers":[],"cost":2,"display":{"row":12,"col":2,"icon":"node_1"},"properties":{"aoe":2},"effects":[{"type":"add_spell_prop","target_part":"Lightning Damage","base_spell":3,"multipliers":[30,0,15,0,0,0]},{"type":"add_spell_prop","target_part":"Total Damage","base_spell":3,"hits":{"Lightning Damage":3}}],"id":16},{"display_name":"Stronger Meteor","desc":"Increase the damage of Meteor.","base_abil":0,"archetype":"Arcanist","archetype_req":2,"parents":[18],"dependencies":[0],"blockers":[],"cost":1,"display":{"row":13,"col":8,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Meteor Damage","behavior":"modify","multipliers":[30,90,0,0,0,0]},{"type":"add_spell_prop","base_spell":3,"target_part":"Lightning Damage","behavior":"modify","multipliers":[30,90,0,0,0,0]}],"id":17},{"display_name":"Burning Sigil","desc":"Meteor will leave a sigil that damages enemies every 0.4s.","base_abil":0,"parents":[11,7],"dependencies":[],"blockers":[],"cost":2,"display":{"row":12,"col":7,"icon":"node_1"},"properties":{"aoe":7,"duration":8},"effects":[{"type":"replace_spell","name":"Burning Sigil","base_spell":6,"display":"DPS","parts":[{"name":"Tick Damage","multipliers":[15,0,0,0,25,0]},{"name":"DPS","hits":{"Tick Damage":2.5}},{"name":"Total Burn Damage","hits":{"Tick Damage":20}}]}],"id":18},{"display_name":"Sunshower","desc":"Heal emit a strong light, damaging nearby enemies.","archetype":"Light Bender","archetype_req":0,"base_abil":2,"parents":[9],"dependencies":[2],"blockers":[22],"cost":2,"display":{"row":13,"col":4,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"target_part":"Sunshower Damage","multipliers":[70,0,0,30,0,0]}],"id":19},{"display_name":"Windsweeper","desc":"Your Main Attack will add +1 Winded to enemies you hit. (Max 5, 0.5s cooldown) Ice Snake will deal additional damage to enemies for every Winded they have","archetype":"Riftwalker","archetype_req":3,"parents":[15,16],"dependencies":[3],"blockers":[],"cost":2,"display":{"row":15,"col":1,"icon":"node_3"},"properties":{"max":5},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Winded","output":{"type":"stat","name":"nConvBase:4.Ice Snake Damage"},"scaling":[20],"slider_step":1,"slider_max":5},{"type":"stat_scaling","slider":true,"slider_name":"Winded","output":{"type":"stat","name":"wConvBase:4.Ice Snake Damage"},"scaling":[10]}],"id":20},{"display_name":"Ophanim","desc":"When casting Meteor, instead summon 2 orbs of light with 200 Health that will attack when you use your Main Attack. When they damage an enemy, they lose 20% of their Health. They can be healed back.","archetype":"Light Bender","archetype_req":2,"parents":[19],"dependencies":[],"blockers":[],"cost":2,"display":{"row":15,"col":4,"icon":"node_3"},"properties":{"health":200},"effects":[{"type":"replace_spell","name":"Ophanim","base_spell":3,"display":"Per Melee (max)","parts":[{"name":"Per Orb","multipliers":[50,0,30,20,0,0]},{"name":"Per Melee (max)","hits":{"Per Orb":2}}]},{"type":"add_spell_prop","base_spell":3,"cost":30}],"id":21},{"display_name":"Arcane Transfer","desc":"Meteor and Ice Snake will add +5 Mana to a Mana Bank for every aggressive enemy you hit. Heal will now transfer the content of your Mana Bank into usable Mana instead of healing.","archetype":"Arcanist","archetype_req":2,"parents":[18],"dependencies":[],"blockers":[],"cost":2,"display":{"row":15,"col":7,"icon":"node_3"},"properties":{"bank":90},"effects":[{"type":"replace_spell","name":"Arcane Transfer","base_spell":1,"parts":[],"display":""}],"id":22},{"display_name":"Cheaper Heal","desc":"Reduce the Mana cost of Heal.","base_abil":2,"parents":[20,24],"dependencies":[],"blockers":[],"cost":1,"display":{"row":17,"col":1,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"cost":-5}],"id":23},{"display_name":"Purification","desc":"Heal and Arcane Transfer will purify you of all negative effects and fire. (3s Cooldown)","base_abil":1,"parents":[21,23,25],"dependencies":[],"blockers":[],"cost":2,"display":{"row":17,"col":4,"icon":"node_2"},"properties":{},"effects":[],"id":24},{"display_name":"Sentient Snake","desc":"Ice Snake will follow the direction you're facing, allowing you to control it.","base_abil":3,"parents":[22,24],"dependencies":[3],"blockers":[],"cost":2,"display":{"row":17,"col":6,"icon":"node_1"},"properties":{},"effects":[],"id":25},{"display_name":"Eye Piercer","desc":"Teleport will blind enemies, confusing them for a short amount of time.","base_abil":1,"parents":[23],"dependencies":[1],"blockers":[],"cost":2,"display":{"row":18,"col":0,"icon":"node_1"},"properties":{},"effects":[],"id":26},{"display_name":"Breathless","desc":"Meteor will deal additional damage to enemies for every Winded they have.","base_abil":20,"archetype":"Riftwalker","archetype_req":0,"parents":[23,24],"dependencies":[20],"blockers":[],"cost":2,"display":{"row":18,"col":2,"icon":"node_1"},"properties":{},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Winded","output":[{"type":"stat","name":"nConvBase:3.Meteor Damage"},{"type":"stat","name":"eConvBase:3.Meteor Damage"},{"type":"stat","name":"nConvBase:3.Per Orb"},{"type":"stat","name":"eConvBase:3.Per Orb"},{"type":"stat","name":"nConvBase:3.Lightning Damage"},{"type":"stat","name":"eConvBase:3.Lightning Damage"}],"scaling":[15]}],"id":27},{"display_name":"Larger Heal","desc":"Increase your Heal's range.","base_abil":1,"archetype":"Light Bender","archetype_req":0,"parents":[24,25],"dependencies":[2],"blockers":[22],"cost":1,"display":{"row":18,"col":5,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"prop","abil":2,"name":"aoe","value":2}]}],"id":28},{"display_name":"Larger Mana Bank","desc":"Increase your maximum Mana Bank by +30.","base_abil":1,"archetype":"Arcanist","archetype_req":0,"parents":[25],"dependencies":[22],"blockers":[],"cost":1,"display":{"row":18,"col":8,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"prop","abil":22,"name":"bank","value":30}]}],"id":29},{"display_name":"Cheaper Ice Snake","desc":"Reduce the Mana cost of Ice Snake.","base_abil":3,"parents":[26,32],"dependencies":[],"blockers":[],"cost":1,"display":{"row":20,"col":0,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":4,"cost":-5}],"id":30},{"display_name":"Cheaper Teleport II","desc":"Reduce the Mana cost of Teleport.","base_abil":1,"parents":[24],"_parents":["Purification","Fortitude"],"dependencies":[],"blockers":[],"cost":1,"display":{"row":20,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":2,"cost":-5}],"id":31},{"display_name":"Fortitude","desc":"After healing 120% of your max health within 10s, apply a damage bonus to each player you've healed. (15s Cooldown)","base_abil":2,"archetype":"Light Bender","archetype_req":0,"parents":[30,31],"dependencies":[],"blockers":[],"cost":2,"display":{"row":20,"col":2,"icon":"node_2"},"properties":{"duration":5},"effects":[],"id":32},{"display_name":"Pyrokinesis","desc":"When your Mana Bank reaches 30, your Main Attack will stop and explode when it hits an enemy. (Damage is dealt as Main Attack Damage)","base_abil":4,"archetype":"Arcanist","archetype_req":4,"parents":[25],"dependencies":[],"blockers":[],"cost":2,"display":{"row":20,"col":7,"icon":"node_2"},"properties":{},"__TODO":"replace_spell pyrokinesis damage","effects":[],"id":33},{"display_name":"Seance","desc":"For every 5/3s Lifesteal you have from items, gain 1% Spell Damage (Max 50%)","archetype":"","archetype_req":0,"parents":[33,36],"dependencies":[],"blockers":[],"cost":1,"display":{"row":22,"col":7,"icon":"node_0"},"properties":{},"effects":[{"type":"stat_scaling","slider":false,"inputs":[{"type":"stat","name":"ls"}],"output":{"type":"stat","name":"sdPct"},"scaling":[0.2],"max":50}],"id":34},{"display_name":"Blink","desc":"Teleport will trigger 2 times in quick successions","base_abil":1,"archetype":"Riftwalker","archetype_req":0,"parents":[32,30],"dependencies":[1],"blockers":[],"cost":2,"display":{"row":21,"col":1,"icon":"node_1"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"prop","abil":1,"name":"range","value":-4}]},{"type":"add_spell_prop","behavior":"modify","target_part":"Total Damage","base_spell":2,"hits":{"Wind Slash":1,"Explosion Damage":1}}],"id":35},{"display_name":"Snake Nest","desc":"Ice Snake will summon 3 snakes.","base_abil":3,"parents":[34,31,40],"dependencies":[3],"blockers":[],"cost":2,"display":{"row":22,"col":5,"icon":"node_1"},"properties":{},"effects":[],"id":36},{"display_name":"Arcane Restoration","desc":"Pyrokinesis will add +1 Mana every 1s to your Mana Bank when hitting an aggressive enemy.","base_abil":999,"archetype":"Arcanist","archetype_req":0,"parents":[34,36],"dependencies":[33],"blockers":[],"cost":2,"display":{"row":23,"col":6,"icon":"node_1"},"properties":{"duration":4},"effects":[],"id":37},{"display_name":"Fluid Healing","desc":"For every 1% Water Damage Bonus you have, buff Heal's healing power by +0.3%.","archetype":"Light Bender","archetype_req":0,"base_abil":2,"parents":[40,39],"dependencies":[],"blockers":[],"cost":2,"display":{"row":23,"col":2,"icon":"node_1"},"properties":{},"effects":[{"type":"stat_scaling","slider":false,"round":false,"inputs":[{"type":"stat","name":"wDamPct"}],"output":{"type":"stat","name":"healPct"},"scaling":[0.3]}],"id":38},{"display_name":"Transonic Warp","desc":"Teleport will deal additional damage to enemies for every Winded they have.","base_abil":20,"archetype":"Riftwalker","archetype_req":5,"parents":[30],"dependencies":[3,20],"blockers":[],"cost":2,"display":{"row":23,"col":0,"icon":"node_2"},"properties":{},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Winded","output":[{"type":"stat","name":"nConvBase:2.Wind Slash"},{"type":"stat","name":"nConvBase:2.Explosion Damage"}],"scaling":[30]},{"type":"stat_scaling","slider":true,"slider_name":"Winded","output":[{"type":"stat","name":"tConvBase:2.Wind Slash"},{"type":"stat","name":"tConvBase:2.Explosion Damage"}],"scaling":[10]},{"type":"stat_scaling","slider":true,"slider_name":"Winded","output":[{"type":"stat","name":"aConvBase:2.Wind Slash"},{"type":"stat","name":"aConvBase:2.Explosion Damage"}],"scaling":[5]}],"id":39},{"display_name":"Healthier Ophanim I","desc":"Increase the health of your orbs from Ophanim by +800 and reduce the damage they take when hitting an enemy by -5%.","archetype":"Light Bender","archetype_req":0,"base_abil":21,"parents":[32,31],"dependencies":[21],"blockers":[],"cost":1,"display":{"row":22,"col":3,"icon":"node_0"},"properties":{},"effects":[],"id":40},{"display_name":"Orphion's Pulse","desc":"Heal will trigger 2 more times, increasing the overall healing.","archetype":"Light Bender","base_abil":2,"parents":[40,36],"dependencies":[2],"blockers":[22],"cost":2,"display":{"row":23,"col":4,"icon":"node_1"},"properties":{"aoe":5},"effects":[{"type":"add_spell_prop","base_spell":1,"target_part":"Heal Pulse","power":0.15},{"type":"add_spell_prop","base_spell":1,"display":"Total Heal","target_part":"Total Heal","hits":{"Heal":1,"Heal Pulse":2}}],"id":41},{"display_name":"Diffusion","desc":"If you kill an enemy with Winded on them, the leftover Winded will spread to nearby enemies.","archetype":"Riftwalker","archetype_req":6,"base_abil":20,"parents":[39,38],"dependencies":[20],"blockers":[],"cost":2,"display":{"row":25,"col":1,"icon":"node_3"},"properties":{"aoe":5},"effects":[],"id":42},{"display_name":"Lightweaver","desc":"After healing 60% of your max health within 10s, summon a rotating orb that damages all enemies it touches for 20s. (Max 3 Orbs)","archetype":"Light Bender","archetype_req":7,"parents":[41],"dependencies":[],"blockers":[],"cost":2,"display":{"row":25,"col":4,"icon":"node_3"},"properties":{},"effects":[{"type":"replace_spell","name":"Lightweaver","base_spell":5,"display":"Orb Damage","parts":[{"name":"Single Orb","type":"damage","multipliers":[30,0,0,0,20,0]},{"name":"Orb Damage","type":"total","hits":{"Single Orb":3}}]}],"id":43},{"display_name":"Arcane Speed","desc":"After casting Heal or Arcane Transfer, gain +80% speed for 3s. (8s Cooldown)","base_abil":2,"parents":[43,45],"dependencies":[2],"blockers":[],"cost":2,"display":{"row":25,"col":6,"icon":"node_1"},"properties":{},"effects":[],"id":44},{"display_name":"Larger Mana Bank II","desc":"Increase your maximum Mana Bank by +30.","base_abil":1,"archetype":"Arcanist","archetype_req":0,"parents":[34,44],"dependencies":[22],"blockers":[],"cost":1,"display":{"row":25,"col":8,"icon":"node_0"},"properties":{},"effects":[],"id":45},{"display_name":"Psychokinesis","desc":"Meteor will launch directly from you as a slow projectile.","base_abil":3,"archetype":"Arcanist","archetype_req":5,"parents":[45,44],"dependencies":[0],"blockers":[],"cost":1,"display":{"row":26,"col":7,"icon":"node_1"},"properties":{},"effects":[],"id":46},{"display_name":"More Winded","desc":"Incrase your maximum Winded by +5.","base_abil":20,"archetype":"Riftwalker","archetype_req":0,"parents":[42],"dependencies":[20],"blockers":[],"cost":1,"display":{"row":26,"col":0,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"prop","abil":20,"name":"max","value":5}]},{"type":"stat_scaling","slider":true,"slider_name":"Winded","slider_max":5}],"id":47},{"display_name":"Cheaper Ice Snake II","desc":"Reduce the Mana cost of Ice Snake.","base_abil":3,"parents":[42,52],"dependencies":[],"blockers":[],"cost":1,"display":{"row":27,"col":1,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":4,"cost":-5}],"id":48},{"display_name":"Cheaper Meteor II","desc":"Reduce the Mana cost of Meteor.","base_abil":0,"parents":[52,43,44],"dependencies":[],"blockers":[],"cost":1,"display":{"row":27,"col":5,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"cost":-5}],"id":49},{"display_name":"Chaos Explosion","desc":"When your Mana Bank reaches 120, casting Arcane Transfer will rapidly unleash the last 3 spells you've cast in order.","base_abil":22,"archetype":"Arcanist","archetype_req":8,"parents":[45],"dependencies":[22],"blockers":[],"cost":2,"display":{"row":27,"col":8,"icon":"node_3"},"properties":{},"effects":[],"id":50},{"display_name":"Arcane Power","desc":"Meteor and Ice Snake will add +2 Mana to your Mana Bank for each aggressive mob you hit.","base_abil":22,"archetype":"Arcanist","archetype_req":0,"parents":[56],"dependencies":[22],"blockers":[],"cost":1,"display":{"row":29,"col":6,"icon":"node_0"},"properties":{},"effects":[],"id":51},{"display_name":"Explosive Entrance","desc":"Deal Damage in an area on the location you Teleport to.","base_abil":1,"parents":[48,49],"dependencies":[1],"blockers":[],"cost":2,"display":{"row":27,"col":3,"icon":"node_1"},"properties":{"aoe":3},"effects":[{"type":"add_spell_prop","target_part":"Explosion Damage","base_spell":2,"multipliers":[50,0,0,0,30,0]},{"type":"add_spell_prop","behavior":"modify","target_part":"Total Damage","base_spell":2,"hits":{"Explosion Damage":1}}],"id":52},{"display_name":"Gust","desc":"Ice Snake will add +1 Winded to enemies and deal more damage.","base_abil":3,"archetype":"Riftwalker","archetype_req":7,"parents":[48,52],"dependencies":[3],"blockers":[],"cost":2,"display":{"row":28,"col":2,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","target_part":"Ice Snake Damage","base_spell":4,"multipliers":[0,0,0,0,0,20]}],"id":53},{"display_name":"Time Dilation","desc":"When sprinting, create an area that increases the speed of all allies the longer they run in it. (Step out or stop running to cancel)","archetype":"Riftwalker","archetype_req":7,"parents":[48],"dependencies":[],"blockers":[],"cost":2,"display":{"row":28,"col":0,"icon":"node_2"},"properties":{},"effects":[],"id":54},{"display_name":"Better Ophanim","desc":"Increase your maximum orbs from Ophanim by +1.","archetype":"Light Bender","archetype_req":0,"base_abil":21,"parents":[49],"_parents":["Explosive Entrance","Cheaper Meteor II"],"dependencies":[21],"blockers":[],"cost":1,"display":{"row":28,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Per Melee (max)","hits":{"Per Orb":1}}],"id":55},{"display_name":"Arctic Snake","desc":"Ice Snake will freeze enemies completely for 2s.","base_abil":3,"parents":[50],"dependencies":[3],"blockers":[],"cost":2,"display":{"row":28,"col":7,"icon":"node_1"},"properties":{},"effects":[],"id":56},{"display_name":"Devitalize","desc":"Enemies will deal -2% damage for every Winded they have.","base_abil":20,"archetype":"Riftwalker","archetype_req":5,"parents":[58,59],"dependencies":[],"blockers":[],"cost":2,"display":{"row":32,"col":1,"icon":"node_1"},"properties":{},"effects":[],"id":57},{"display_name":"More Winded II","desc":"Incrase your maximum Winded by +5.","base_abil":20,"archetype":"Riftwalker","archetype_req":0,"parents":[54],"_parents":["Time Dilation","Dynamic Faith"],"dependencies":[20],"blockers":[],"cost":1,"display":{"row":31,"col":0,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"prop","abil":20,"name":"max","value":5}]},{"type":"stat_scaling","slider":true,"slider_name":"Winded","slider_max":5}],"id":58},{"display_name":"Dynamic Faith","desc":"For every 2% Sprint you have from items, gain +1% Thunder Damage (Max 100%)","parents":[58,61],"dependencies":[],"blockers":[],"cost":1,"display":{"row":31,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"stat_scaling","slider":false,"inputs":[{"type":"stat","name":"sprint"}],"output":{"type":"stat","name":"tDamPct"},"scaling":[0.5],"max":100}],"id":59},{"display_name":"Divination","desc":"Increase your maximum orbs from Ophanim by +3 and reduce their damage.","base_abil":21,"archetype":"Light Bender","archetype_req":0,"parents":[59,61],"dependencies":[21],"blockers":[],"cost":2,"display":{"row":32,"col":3,"icon":"node_2"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Per Orb","multipliers":[-50,0,-10,0,0,0]},{"type":"add_spell_prop","base_spell":3,"target_part":"Per Melee (max)","hits":{"Per Orb":3}}],"id":60},{"display_name":"Healthier Ophanim II","desc":"Increase the health of your orbs from Ophanim by +3000.","base_abil":21,"archetype":"Light Bender","archetype_req":0,"parents":[55],"dependencies":[40],"blockers":[],"cost":1,"display":{"row":31,"col":4,"icon":"node_0"},"properties":{},"effects":[],"id":61},{"display_name":"Sunflare","desc":"After healing 400% of your max health within 10s, your next Heal will make every nearby ally temporarily immune.","archetype":"Light Bender","archetype_req":12,"base_abil":2,"parents":[61],"dependencies":[],"blockers":[],"cost":2,"display":{"row":32,"col":5,"icon":"node_3"},"properties":{"aoe":12,"duration":5},"effects":[],"id":62},{"display_name":"Larger Mana Bank III","desc":"Increase your maximum Mana Bank by +30.","archetype":"Arcanist","archetype_req":0,"base_abil":22,"parents":[56],"dependencies":[22],"blockers":[],"cost":1,"display":{"row":31,"col":7,"icon":"node_0"},"properties":{},"effects":[],"id":63},{"display_name":"Arcane Overflow","desc":"Arcane Transfer will allow you to overflow your mana over its maximum limits.","archetype":"Arcanist","archetype_req":11,"base_abil":22,"parents":[63],"dependencies":[22],"blockers":[],"cost":2,"display":{"row":33,"col":7,"icon":"node_3"},"properties":{},"effects":[],"id":64},{"display_name":"Memory Recollection","desc":"Chaos Explosion will cast +2 spells.","archetype":"Arcanist","archetype_req":0,"base_abil":22,"parents":[64],"dependencies":[50],"blockers":[],"cost":1,"display":{"row":34,"col":8,"icon":"node_0"},"properties":{},"effects":[],"id":65},{"display_name":"Manastorm","desc":"If you have more than 100 Mana, casting a spell will give you +10 mana over 5s.","archetype":"Arcanist","archetype_req":1,"parents":[69,64,62],"dependencies":[],"blockers":[],"cost":2,"display":{"row":34,"col":5,"icon":"node_1"},"properties":{},"effects":[],"id":66},{"display_name":"Better Lightweaver","desc":"Increase your Max Orbs by +2.","archetype":"Light Bender","archetype_req":0,"base_abil":43,"parents":[69,66],"dependencies":[43],"blockers":[],"cost":1,"display":{"row":35,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","target_part":"Orb Damage","base_spell":5,"hits":{"Single Orb":2}}],"id":67},{"display_name":"Timelock","desc":"Holding shift and casting Heal will absorb all Winded on nearby enemies and make you Timelocked. While Timelocked, your mana will not be depleted and you become immovable from outside forces. Enemies will recieve Winded damage from all absorbed stacks. (Max 30)","archetype":"Riftwalker","archetype_req":12,"parents":[58],"dependencies":[],"blockers":[],"cost":2,"display":{"row":34,"col":0,"icon":"node_3"},"properties":{},"effects":[],"id":68},{"display_name":"Cheaper Heal II","desc":"Reduce the Mana cost of Heal.","base_abil":2,"parents":[68,66],"dependencies":[],"blockers":[],"cost":1,"display":{"row":34,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"cost":-5}],"id":69}]} \ No newline at end of file +const atrees={"Archer":[{"display_name":"Arrow Shield","desc":"Create a shield around you that deal damage and knockback mobs when triggered. (2 Charges)","parents":[60,34],"dependencies":[],"blockers":[],"cost":1,"display":{"row":9,"col":6,"icon":"node_archer"},"properties":{"charges":2,"duration":60,"aoe":5000},"effects":[{"type":"replace_spell","name":"Arrow Shield","cost":30,"base_spell":4,"display":"Total Damage","parts":[{"name":"Shield Damage","type":"damage","multipliers":[90,0,0,0,0,10]},{"name":"Total Damage","type":"total","hits":{"Shield Damage":2}}]}],"id":0},{"display_name":"Escape","desc":"Throw yourself backward to avoid danger. (Hold shift while escaping to cancel)","parents":[3],"dependencies":[],"blockers":[],"cost":1,"display":{"row":7,"col":4,"icon":"node_archer"},"properties":{"aoe":0,"range":0},"effects":[{"type":"replace_spell","name":"Escape","cost":25,"base_spell":2,"display":"","parts":[]}],"id":1},{"display_name":"Arrow Bomb","desc":"Throw a long-range arrow that explodes and deal high damage in a large area. (Self-damage for 25% of your DPS)","parents":[],"dependencies":[],"blockers":[],"cost":1,"display":{"row":0,"col":4,"icon":"node_archer"},"properties":{"aoe":4.5,"range":26},"effects":[{"type":"replace_spell","name":"Arrow Bomb","cost":50,"base_spell":3,"spell_type":"damage","display":"Total Damage","parts":[{"name":"Arrow Bomb","type":"damage","multipliers":[160,0,0,0,20,0]},{"name":"Total Damage","type":"total","hits":{"Arrow Bomb":1}}]}],"id":2},{"display_name":"Heart Shatter","desc":"If you hit a mob directly with Arrow Bomb, shatter its heart and deal bonus damage.","base_abil":2,"parents":[31],"dependencies":[],"blockers":[],"cost":1,"display":{"row":4,"col":4,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Heart Shatter","multipliers":[100,0,0,0,0,0]},{"type":"add_spell_prop","base_spell":3,"target_part":"Total Damage","hits":{"Heart Shatter":1}}],"id":3},{"display_name":"Fire Creep","desc":"Arrow Bomb will leak a trail of fire for 6s, Damaging enemies that walk into it every 0.4s.","base_abil":2,"parents":[68,39,5],"dependencies":[],"blockers":[],"cost":2,"display":{"row":16,"col":6,"icon":"node_1"},"properties":{"aoe":0.8,"duration":6},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Fire Creep","multipliers":[30,0,0,0,20,0]},{"type":"add_spell_prop","base_spell":3,"target_part":"Total Burn Damage","hits":{"Fire Creep":15}}],"id":4},{"display_name":"Bryophyte Roots","desc":"When you hit an enemy with Arrow Storm, create an area that slows them down and deals damage every 0.4s.","base_abil":7,"archetype":"Trapper","archetype_req":1,"parents":[4,35],"dependencies":[7],"blockers":[],"cost":2,"display":{"row":16,"col":8,"icon":"node_1"},"properties":{"aoe":2,"duration":5},"effects":[{"type":"add_spell_prop","base_spell":1,"target_part":"Bryophyte Roots","cost":0,"multipliers":[40,20,0,0,0,0]},{"type":"add_spell_prop","base_spell":1,"target_part":"Total Roots Damage","hits":{"Bryophyte Roots":12}}],"id":5},{"display_name":"Nimble String","desc":"Arrow Storm throw out +6 arrows per stream and shoot twice as fast.","base_abil":7,"parents":[36,69],"dependencies":[7],"blockers":[68],"cost":2,"display":{"row":15,"col":2,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"target_part":"Single Arrow","multipliers":[-15,0,0,0,0,0]},{"type":"add_spell_prop","base_spell":1,"target_part":"Single Stream","hits":{"Single Arrow":6}}],"id":6},{"display_name":"Arrow Storm","desc":"Shoot a stream of 8 arrows, dealing significant damage to close mobs and pushing them back.","parents":[58,34],"dependencies":[],"blockers":[],"cost":1,"display":{"row":9,"col":2,"icon":"node_archer"},"properties":{"range":16},"effects":[{"type":"replace_spell","name":"Arrow Storm","cost":40,"base_spell":1,"spell_type":"damage","display":"Total Damage","parts":[{"name":"Single Arrow","multipliers":[30,0,10,0,0,0]},{"name":"Single Stream","hits":{"Single Arrow":8}},{"name":"Total Damage","hits":{"Single Stream":1}}]}],"id":7},{"display_name":"Guardian Angels","desc":"Your protective arrows from Arrow Shield will become sentient bows, dealing damage up to 8 times each to nearby enemies. (Arrow Shield will no longer push nearby enemies)","archetype":"Boltslinger","archetype_req":3,"base_abil":0,"parents":[59,67],"dependencies":[0],"blockers":[],"cost":2,"display":{"row":19,"col":1,"icon":"node_3"},"properties":{"range":4,"duration":60,"shots":8,"charges":2},"effects":[{"type":"replace_spell","name":"Guardian Angels","base_spell":4,"display":"Total Damage","parts":[{"name":"Single Arrow","type":"damage","multipliers":[30,0,0,0,0,10]},{"name":"Single Bow","type":"total","hits":{"Single Arrow":8}},{"name":"Total Damage","type":"total","hits":{"Single Bow":2}}]}],"id":8},{"display_name":"Windy Feet","desc":"When casting Escape, give speed to yourself and nearby allies.","base_abil":1,"parents":[7],"dependencies":[],"blockers":[],"cost":1,"display":{"row":10,"col":1,"icon":"node_1"},"properties":{"aoe":8,"duration":120},"effects":[],"id":9},{"display_name":"Basaltic Trap","desc":"When you hit the ground with Arrow Bomb, leave a Trap that damages enemies. (Max 2 Traps)","archetype":"Trapper","archetype_req":2,"parents":[5],"dependencies":[],"blockers":[],"cost":2,"display":{"row":19,"col":8,"icon":"node_3"},"properties":{"aoe":7,"traps":2},"effects":[{"type":"replace_spell","name":"Basaltic Trap","base_spell":7,"display":"Trap Damage","parts":[{"name":"Trap Damage","type":"damage","multipliers":[140,30,0,0,30,0]}]}],"id":10},{"display_name":"Windstorm","desc":"Arrow Storm shoot +1 stream of arrows, and each stream shoots +2 arrows, effectively doubling its damage.","base_abil":7,"parents":[8,33],"dependencies":[],"blockers":[68],"cost":2,"display":{"row":21,"col":1,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"target_part":"Single Arrow","multipliers":[-10,0,-2,0,0,2]},{"type":"add_spell_prop","base_spell":1,"target_part":"Total Damage","hits":{"Single Stream":1}},{"type":"add_spell_prop","base_spell":1,"target_part":"Single Stream","cost":0,"hits":{"Single Arrow":2}}],"id":11},{"display_name":"Grappling Hook","base_abil":1,"desc":"When casting Escape, throw a hook that pulls you when hitting a block. If you hit an enemy, pull them towards you instead. (Escape will not throw you backward anymore)","archetype":"Trapper","archetype_req":0,"parents":[61,40,33],"dependencies":[],"blockers":[20],"cost":2,"display":{"row":21,"col":5,"icon":"node_2"},"properties":{"range":26},"effects":[],"id":12},{"display_name":"Implosion","desc":"Arrow bomb will pull enemies towards you. If a trap is nearby, it will pull them towards it instead. Increase Heart Shatter's damage.","archetype":"Trapper","archetype_req":0,"base_abil":2,"parents":[12,40],"dependencies":[],"blockers":[],"cost":2,"display":{"row":22,"col":6,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Heart Shatter","multipliers":[40,0,0,0,0,0]}],"id":13},{"display_name":"Twain's Arc","desc":"When you have 2+ Focus, holding shift will summon the Twain's Arc. Charge it up to shoot a destructive long-range beam. (Damage is dealt as Main Attack Damage)","archetype":"Sharpshooter","archetype_req":4,"parents":[62,64],"dependencies":[61],"blockers":[],"cost":2,"display":{"row":25,"col":4,"icon":"node_2"},"properties":{"range":64,"focusReq":2},"effects":[{"type":"replace_spell","name":"Twain's Arc","base_spell":5,"scaling":"melee","use_atkspd":false,"display":"Single Shot","parts":[{"name":"Single Shot","type":"damage","multipliers":[200,0,0,0,0,0]}]}],"id":14},{"display_name":"Fierce Stomp","desc":"When using Escape, hold shift to quickly drop down and deal damage.","archetype":"Boltslinger","archetype_req":0,"base_abil":1,"parents":[42,64],"dependencies":[],"blockers":[],"cost":2,"display":{"row":26,"col":1,"icon":"node_1"},"properties":{"aoe":4},"effects":[{"type":"add_spell_prop","base_spell":2,"target_part":"Fierce Stomp","cost":0,"multipliers":[100,0,0,0,0,0]},{"type":"add_spell_prop","base_spell":2,"target_part":"Stomp Damage","cost":0,"hits":{"Fierce Stomp":1},"display":"Stomp Damage"}],"id":15},{"display_name":"Scorched Earth","desc":"Fire Creep become much stronger.","archetype":"Sharpshooter","archetype_req":0,"parents":[14],"dependencies":[4],"blockers":[],"cost":1,"display":{"row":26,"col":5,"icon":"node_1"},"properties":{"duration":2,"aoe":0.4},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Fire Creep","multipliers":[10,0,0,0,5,0]}],"id":16},{"display_name":"Leap","desc":"When you double tap jump, leap foward. (2s Cooldown)","archetype":"Boltslinger","archetype_req":5,"parents":[42,55],"dependencies":[],"blockers":[],"cost":2,"display":{"row":28,"col":0,"icon":"node_1"},"properties":{"cooldown":2},"effects":[],"id":17},{"display_name":"Shocking Bomb","desc":"Arrow Bomb will not be affected by gravity, and all damage conversions become Thunder.","archetype":"Sharpshooter","archetype_req":5,"base_abil":2,"parents":[14,44,55],"dependencies":[2],"blockers":[],"cost":2,"display":{"row":28,"col":4,"icon":"node_1"},"properties":{"gravity":0},"effects":[{"type":"convert_spell_conv","target_part":"all","base_spell":3,"conversion":"Thunder"}],"id":18},{"display_name":"Mana Trap","desc":"Your Traps will give you 2.85 Mana per second when you stay close to them.","archetype":"Trapper","archetype_req":5,"base_abil":10,"parents":[43,44],"dependencies":[],"blockers":[],"cost":2,"display":{"row":28,"col":8,"icon":"node_3"},"properties":{"range":16,"manaRegen":2.85},"effects":[{"type":"add_spell_prop","base_spell":3,"cost":10}],"id":19},{"display_name":"Escape Artist","desc":"When casting Escape, release 120 arrows towards the ground.","archetype":"Boltslinger","archetype_req":0,"base_abil":1,"parents":[46,17],"dependencies":[],"blockers":[12],"cost":2,"display":{"row":31,"col":0,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":2,"target_part":"Per Arrow","multipliers":[20,0,10,0,0,0]},{"type":"add_spell_prop","base_spell":2,"target_part":"Max Damage (Escape Artist)","hits":{"Per Arrow":120},"display":"Max Damage (Escape Artist)"}],"id":20},{"display_name":"Initiator","desc":"If you do not damage an enemy for 5s or more, your next sucessful hit will deal +50% damage and add +1 Focus.","archetype":"Sharpshooter","archetype_req":5,"parents":[18,44,47],"dependencies":[61],"blockers":[],"cost":2,"display":{"row":31,"col":5,"icon":"node_2"},"properties":{},"effects":[],"id":21},{"display_name":"Call of the Hound","desc":"Arrow Shield summon a Hound that will attack and drag aggressive enemies towards your traps.","archetype":"Trapper","archetype_req":0,"base_abil":0,"parents":[21,47],"dependencies":[0],"blockers":[],"cost":2,"display":{"row":32,"col":7,"icon":"node_2"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":4,"target_part":"Hound Damage","multipliers":[40,0,0,0,0,0]}],"id":22},{"display_name":"Arrow Hurricane","desc":"Arrow Storm will shoot +2 stream of arrows.","archetype":"Boltslinger","archetype_req":8,"base_abil":7,"parents":[48,20],"dependencies":[],"blockers":[68],"cost":2,"display":{"row":33,"col":0,"icon":"node_3"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"target_part":"Total Damage","hits":{"Single Stream":2}}],"id":23},{"display_name":"Geyser Stomp","desc":"Fierce Stomp will create geysers, dealing more damage and vertical knockback.","base_abil":1,"parents":[56],"dependencies":[15],"blockers":[],"cost":2,"display":{"row":37,"col":1,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":2,"target_part":"Geyser Stomp","multipliers":[0,0,0,50,0,0]},{"type":"add_spell_prop","base_spell":2,"target_part":"Stomp Damage","hits":{"Geyser Stomp":1}},{"type":"raw_stat","bonuses":[{"type":"prop","abil":15,"name":"aoe","value":1}]}],"id":24},{"display_name":"Crepuscular Ray","desc":"If you have 5 Focus, casting Arrow Storm will make you levitate and shoot 20 homing arrows per second until you run out of Focus. While in that state, you will lose 1 Focus per second.","archetype":"Sharpshooter","archetype_req":10,"parents":[49],"dependencies":[7],"blockers":[],"cost":2,"display":{"row":37,"col":4,"icon":"node_3"},"properties":{},"effects":[{"type":"replace_spell","name":"Crepuscular Ray","base_spell":6,"display":"DPS","parts":[{"name":"Single Arrow","multipliers":[20,0,0,5,0,0]},{"name":"DPS","hits":{"Single Arrow":20}},{"name":"Total Damage","hits":{"DPS":7}}]}],"id":25},{"display_name":"Grape Bomb","desc":"Arrow bomb will throw 3 additional smaller bombs when exploding.","base_abil":2,"parents":[51],"dependencies":[],"blockers":[],"cost":2,"display":{"row":37,"col":7,"icon":"node_2"},"properties":{"aoe":2},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Grape Bomb","multipliers":[30,0,0,0,10,0]},{"type":"add_spell_prop","base_spell":3,"target_part":"Total Damage","hits":{"Grape Bomb":3}}],"id":26},{"display_name":"Tangled Traps","desc":"Your Traps will be connected by a rope that deals damage to enemies every 0.2s.","archetype":"Trapper","archetype_req":0,"base_abil":10,"parents":[26],"dependencies":[10],"blockers":[],"cost":2,"display":{"row":38,"col":6,"icon":"node_1"},"properties":{"attackSpeed":0.2},"effects":[{"type":"add_spell_prop","base_spell":7,"target_part":"Line Damage Tick","multipliers":[20,0,0,0,0,20]},{"type":"add_spell_prop","base_spell":7,"target_part":"DPS","hits":{"Line Damage Tick":5}}],"id":27},{"display_name":"Snow Storm","desc":"Enemies near you will be slowed down.","parents":[24,63],"dependencies":[],"blockers":[],"cost":2,"display":{"row":39,"col":2,"icon":"node_2"},"properties":{"range":2.5,"slowness":0.3},"effects":[],"id":28},{"display_name":"All-Seeing Panoptes","desc":"Your bows from Guardian Angels become all-seeing, increasing their range, damage and letting them shoot up to +5 times each.","archetype":"Boltslinger","archetype_req":11,"base_abil":0,"parents":[28],"dependencies":[8],"blockers":[],"cost":2,"display":{"row":40,"col":1,"icon":"node_3"},"properties":{"range":8,"shots":5},"effects":[{"type":"add_spell_prop","base_spell":4,"target_part":"Single Arrow","multipliers":[0,0,0,0,10,0]},{"type":"add_spell_prop","base_spell":4,"target_part":"Single Bow","hits":{"Single Arrow":5}}],"id":29},{"display_name":"Minefield","desc":"Allow you to place +6 Traps, but with reduced damage and range.","archetype":"Trapper","archetype_req":10,"base_abil":10,"parents":[26,53],"dependencies":[10],"blockers":[],"cost":2,"display":{"row":40,"col":7,"icon":"node_3"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":7,"target_part":"Trap Damage","cost":0,"multipliers":[-80,0,0,0,0,0]},{"type":"raw_stat","bonuses":[{"type":"prop","abil":10,"name":"aoe","value":-2},{"type":"prop","abil":10,"name":"traps","value":6}]}],"id":30},{"display_name":"Bow Proficiency I","desc":"Improve your Main Attack's damage and range when using a bow.","base_abil":999,"parents":[2],"dependencies":[],"blockers":[],"cost":1,"display":{"row":2,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":0,"target_part":"Single Shot","multipliers":[5,0,0,0,0,0]}],"id":31},{"display_name":"Cheaper Arrow Bomb","desc":"Reduce the Mana cost of Arrow Bomb.","base_abil":2,"parents":[31],"dependencies":[],"blockers":[],"cost":1,"display":{"row":2,"col":6,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"cost":-10}],"id":32},{"display_name":"Cheaper Arrow Storm","desc":"Reduce the Mana cost of Arrow Storm.","base_abil":7,"parents":[12,11,61],"dependencies":[],"blockers":[],"cost":1,"display":{"row":21,"col":3,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"cost":-5}],"id":33},{"display_name":"Cheaper Escape","desc":"Reduce the Mana cost of Escape.","base_abil":1,"parents":[7,0],"dependencies":[],"blockers":[],"cost":1,"display":{"row":9,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":2,"cost":-5}],"id":34},{"display_name":"Earth Mastery","base_abil":998,"desc":"Increases your base damage from all Earth attacks","archetype":"Trapper","archetype_req":0,"parents":[0],"dependencies":[],"blockers":[],"cost":1,"display":{"row":13,"col":8,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"eDamPct","value":20},{"type":"stat","name":"eDamAddMin","value":2},{"type":"stat","name":"eDamAddMax","value":4}]}],"id":35},{"display_name":"Thunder Mastery","base_abil":998,"desc":"Increases your base damage from all Thunder attacks","archetype":"Boltslinger","archetype_req":0,"parents":[7,39,34],"dependencies":[],"blockers":[],"cost":1,"display":{"row":13,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"tDamPct","value":10},{"type":"stat","name":"tDamAddMin","value":1},{"type":"stat","name":"tDamAddMax","value":8}]}],"id":36},{"display_name":"Water Mastery","base_abil":998,"desc":"Increases your base damage from all Water attacks","archetype":"Sharpshooter","archetype_req":0,"parents":[34,36,39],"dependencies":[],"blockers":[],"cost":1,"display":{"row":14,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"wDamPct","value":15},{"type":"stat","name":"wDamAddMin","value":2},{"type":"stat","name":"wDamAddMax","value":4}]}],"id":37},{"display_name":"Air Mastery","base_abil":998,"desc":"Increases base damage from all Air attacks","archetype":"Boltslinger","archetype_req":0,"parents":[7],"dependencies":[],"blockers":[],"cost":1,"display":{"row":13,"col":0,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"aDamPct","value":15},{"type":"stat","name":"aDamAddMin","value":3},{"type":"stat","name":"aDamAddMax","value":4}]}],"id":38},{"display_name":"Fire Mastery","base_abil":998,"desc":"Increases base damage from all Fire attacks","archetype":"Sharpshooter","archetype_req":0,"parents":[36,0,34],"dependencies":[],"blockers":[],"cost":1,"display":{"row":13,"col":6,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"fDamPct","value":15},{"type":"stat","name":"fDamAddMin","value":3},{"type":"stat","name":"fDamAddMax","value":5}]}],"id":39},{"display_name":"More Shields","desc":"Give +2 charges to Arrow Shield.","base_abil":0,"parents":[12,10],"dependencies":[0],"blockers":[],"cost":1,"display":{"row":21,"col":7,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":4,"target_part":"Total Damage","hits":{"Shield Damage":2,"Single Bow":2}},{"type":"raw_stat","bonuses":[{"type":"prop","abil":0,"name":"charges","value":2}]}],"id":40},{"display_name":"Stormy Feet","desc":"Windy Feet will last longer and add more speed.","archetype":"Boltslinger","base_abil":1,"parents":[11],"dependencies":[9],"blockers":[],"cost":1,"display":{"row":23,"col":1,"icon":"node_0"},"properties":{"duration":60},"effects":[],"id":41},{"display_name":"Refined Gunpowder","desc":"Increase the damage of Arrow Bomb.","base_abil":2,"parents":[11,64],"dependencies":[],"blockers":[],"cost":1,"display":{"row":25,"col":0,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Arrow Bomb","multipliers":[50,0,0,0,0,0]}],"id":42},{"display_name":"More Traps","desc":"Increase the maximum amount of active Traps you can have by +2.","archetype":"Trapper","archetype_req":0,"base_abil":10,"parents":[54],"dependencies":[10],"blockers":[],"cost":1,"display":{"row":26,"col":8,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"prop","abil":10,"name":"traps","value":2}]}],"id":43},{"display_name":"Better Arrow Shield","desc":"Arrow Shield will gain additional area of effect, knockback and damage.","archetype":"Sharpshooter","archetype_req":0,"base_abil":0,"parents":[19,18,14],"dependencies":[0],"blockers":[],"cost":1,"display":{"row":28,"col":6,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Arrow Shield","behavior":"modify","multipliers":[40,0,0,0,0,0]},{"type":"raw_stat","bonuses":[{"type":"prop","abil":0,"behavior":"modify","name":"aoe","value":1}]}],"id":44},{"display_name":"Better Leap","desc":"Reduce leap's cooldown by 1s.","archetype":"Boltslinger","archetype_req":0,"base_abil":17,"parents":[17,55],"dependencies":[17],"blockers":[],"cost":1,"display":{"row":29,"col":1,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"prop","abil":17,"name":"cooldown","value":-1}]}],"id":45},{"display_name":"Better Guardian Angels","desc":"Your Guardian Angels can shoot +4 arrows before disappearing.","archetype":"Boltslinger","archetype_req":0,"base_abil":0,"parents":[20,55],"dependencies":[8],"blockers":[],"cost":1,"display":{"row":31,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":4,"target_part":"Single Bow","hits":{"Single Arrow":4}}],"id":46},{"display_name":"Cheaper Arrow Storm (2)","desc":"Reduce the Mana cost of Arrow Storm.","base_abil":7,"parents":[21,19],"dependencies":[],"blockers":[],"cost":1,"display":{"row":31,"col":8,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"cost":-5}],"id":47},{"display_name":"Precise Shot","desc":"+30% Critical Hit Damage","parents":[46,49,23],"dependencies":[],"blockers":[],"cost":1,"display":{"row":33,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"critDamPct","value":30}]}],"id":48},{"display_name":"Cheaper Arrow Shield","desc":"Reduce the Mana cost of Arrow Shield.","base_abil":0,"parents":[48,21],"dependencies":[],"blockers":[],"cost":1,"display":{"row":33,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":4,"cost":-5}],"id":49},{"display_name":"Rocket Jump","desc":"Arrow Bomb's self-damage will knockback you farther away.","base_abil":2,"parents":[47,21],"dependencies":[2],"blockers":[],"cost":1,"display":{"row":33,"col":6,"icon":"node_0"},"properties":{},"effects":[],"id":50},{"display_name":"Cheaper Escape (2)","desc":"Reduce the Mana cost of Escape.","base_abil":1,"parents":[22,70],"dependencies":[],"blockers":[],"cost":1,"display":{"row":34,"col":7,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":2,"cost":-5}],"id":51},{"display_name":"Stronger Hook","desc":"Increase your Grappling Hook's range, speed and strength.","archetype":"Trapper","archetype_req":5,"base_abil":1,"parents":[51],"dependencies":[12],"blockers":[],"cost":1,"display":{"row":35,"col":8,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"prop","abil":12,"name":"range","value":8}]}],"id":52},{"display_name":"Cheaper Arrow Bomb (2)","desc":"Reduce the Mana cost of Arrow Bomb.","base_abil":2,"parents":[63,30],"dependencies":[],"blockers":[],"cost":1,"display":{"row":40,"col":5,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"cost":-5}],"id":53},{"display_name":"Bouncing Bomb","desc":"Arrow Bomb will bounce once when hitting a block or enemy","base_abil":2,"parents":[40],"dependencies":[],"blockers":[],"cost":2,"display":{"row":25,"col":7,"icon":"node_2"},"properties":{},"effects":[],"id":54},{"display_name":"Homing Shots","desc":"Your Main Attack arrows will follow nearby enemies and not be affected by gravity","archetype":"Sharpshooter","base_abil":999,"parents":[17,18],"dependencies":[],"blockers":[],"cost":2,"display":{"row":28,"col":2,"icon":"node_2"},"properties":{},"effects":[],"id":55},{"display_name":"Shrapnel Bomb","desc":"Arrow Bomb's explosion will fling 15 shrapnel, dealing damage in a large area","archetype":"Boltslinger","archetype_req":8,"base_abil":2,"parents":[23,48],"dependencies":[],"blockers":[],"cost":2,"display":{"row":34,"col":1,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Shrapnel Bomblet","multipliers":[40,0,0,0,20,0]}],"id":56},{"display_name":"Elusive","desc":"If you do not get hit for 8+ seconds, become immune to self-damage and remove Arrow Storm's recoil. (Dodging counts as not getting hit)","archetype":"Boltslinger","archetype_req":0,"parents":[24],"dependencies":[],"blockers":[],"cost":2,"display":{"row":38,"col":0,"icon":"node_1"},"properties":{},"effects":[],"id":57},{"display_name":"Double Shots","desc":"Double Main Attack arrows, but they deal -30% damage per arrow (harder to hit far enemies)","archetype":"Boltslinger","archetype_req":0,"base_abil":999,"parents":[1],"dependencies":[],"blockers":[60],"cost":1,"display":{"row":7,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":0,"target_part":"Single Shot","multipliers":[-30,0,0,0,0,0]},{"type":"add_spell_prop","base_spell":0,"target_part":"Total Damage","hits":{"Single Shot":2},"display":"Total Damage"}],"id":58},{"display_name":"Triple Shots","desc":"Triple Main Attack arrows, but they deal -20% damage per arrow","archetype":"Boltslinger","archetype_req":0,"base_abil":999,"parents":[69,67],"dependencies":[58],"blockers":[],"cost":1,"display":{"row":17,"col":0,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":0,"target_part":"Single Shot","multipliers":[-20,0,0,0,0,0]},{"type":"add_spell_prop","base_spell":0,"target_part":"Total Damage","hits":{"Single Shot":1},"display":"Total Damage"}],"id":59},{"display_name":"Power Shots","desc":"Main Attack arrows have increased speed and knockback","archetype":"Sharpshooter","archetype_req":0,"base_abil":999,"parents":[1],"dependencies":[],"blockers":[58],"cost":1,"display":{"row":7,"col":6,"icon":"node_0"},"properties":{},"effects":[],"id":60},{"display_name":"Focus","desc":"When hitting an aggressive mob 5+ blocks away, gain +1 Focus (Max 3). Resets if you miss once","archetype":"Sharpshooter","archetype_req":2,"parents":[68],"dependencies":[],"blockers":[],"cost":2,"display":{"row":19,"col":4,"icon":"node_3"},"properties":{},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Focus","output":{"type":"stat","name":"damMult.Focus"},"scaling":[40],"slider_max":3}],"id":61},{"display_name":"More Focus","desc":"Add +2 max Focus","archetype":"Sharpshooter","archetype_req":0,"base_abil":61,"parents":[33,12],"dependencies":[61],"blockers":[],"cost":1,"display":{"row":22,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Focus","slider_max":2,"output":{"type":"stat","name":"damMult.Focus"},"scaling":[-5]}],"id":62},{"display_name":"More Focus (2)","desc":"Add +2 max Focus","archetype":"Sharpshooter","archetype_req":0,"base_abil":61,"parents":[25,28],"dependencies":[61],"blockers":[],"cost":1,"display":{"row":39,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Focus","slider_max":2,"output":{"type":"stat","name":"damMult.Focus"},"scaling":[-5]}],"id":63},{"display_name":"Traveler","desc":"For every 1% Walk Speed you have from items, gain +1 Raw Spell Damage (Max 100)","parents":[42,14],"dependencies":[],"blockers":[],"cost":1,"display":{"row":25,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"stat_scaling","slider":false,"inputs":[{"type":"stat","name":"spd"}],"output":{"type":"stat","name":"sdRaw"},"scaling":[1],"max":100}],"id":64},{"display_name":"Patient Hunter","desc":"Your Traps will deal +20% more damage for every second they are active (Max +80%)","archetype":"Trapper","archetype_req":0,"base_abil":10,"parents":[40],"dependencies":[10],"blockers":[],"cost":2,"display":{"row":22,"col":8,"icon":"node_1"},"properties":{"max":80},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Trap Wait Time","slider_max":4,"output":{"type":"stat","name":"damMult.Basaltic:7.Trap Damage"},"slider_step":1,"scaling":[20]}],"id":65},{"display_name":"Stronger Patient Hunter","desc":"Add +80% Max Damage to Patient Hunter","archetype":"Trapper","archetype_req":0,"base_abil":10,"parents":[26],"dependencies":[65],"blockers":[],"cost":1,"display":{"row":38,"col":8,"icon":"node_0"},"properties":{},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Trap Wait Time","slider_max":4},{"type":"raw_stat","bonuses":[{"type":"prop","abil":65,"name":"max","value":80}]}],"id":66},{"display_name":"Frenzy","desc":"Every time you hit an enemy, briefly gain +6% Walk Speed (Max 200%). Decay -40% of the bonus every second","archetype":"Boltslinger","archetype_req":0,"parents":[59,6],"dependencies":[],"blockers":[],"cost":2,"display":{"row":17,"col":2,"icon":"node_1"},"properties":{},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Hits dealt","output":{"type":"stat","name":"spd"},"scaling":[6],"max":160}],"id":67},{"display_name":"Phantom Ray","desc":"Condense Arrow Storm into a single ray that damages enemies 10 times per second","base_abil":7,"parents":[37,4],"dependencies":[7],"blockers":[11,6,23],"cost":2,"display":{"row":16,"col":4,"icon":"node_2"},"properties":{},"effects":[{"type":"replace_spell","name":"Phantom Ray","base_spell":1,"spell_type":"damage","scaling":"spell","display":"Total Damage","parts":[{"name":"Single Arrow","type":"damage","multipliers":[25,0,5,0,0,0]},{"name":"Total Damage","type":"total","hits":{"Single Arrow":16}}]},{"type":"add_spell_prop","base_spell":1,"cost":-10}],"id":68},{"display_name":"Arrow Rain","desc":"When Arrow Shield loses its last charge, unleash 150 arrows raining down on enemies","base_abil":0,"parents":[6,38],"dependencies":[0],"blockers":[],"cost":2,"display":{"row":15,"col":0,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":4,"target_part":"Arrow Rain (Per Arrow)","multipliers":[80,0,0,0,0,60]},{"type":"add_spell_prop","base_spell":4,"target_part":"Arrow Rain (Total)","hits":{"Arrow Rain (Per Arrow)":150}}],"id":69},{"display_name":"Decimator","desc":"Phantom Ray will increase its damage by 10% everytime you do not miss with it (Max 70%)","archetype":"Sharpshooter","archetype_req":0,"base_abil":7,"parents":[49,51],"dependencies":[68],"blockers":[],"cost":2,"display":{"row":34,"col":5,"icon":"node_1"},"properties":{},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Phantom Ray hits","slider_max":7,"output":{"type":"stat","name":"damMult.Decimator:1.Single Arrow"},"scaling":[10]}],"id":70}],"Warrior":[{"display_name":"Bash","desc":"Violently bash the ground, dealing high damage in a large area","parents":[],"dependencies":[],"blockers":[],"cost":1,"display":{"row":0,"col":4,"icon":"node_warrior"},"properties":{"aoe":4,"range":3},"effects":[{"type":"replace_spell","name":"Bash","cost":45,"base_spell":1,"spell_type":"damage","scaling":"spell","display":"Total Damage","parts":[{"name":"Single Hit","type":"damage","multipliers":[130,20,0,0,0,0]},{"name":"Total Damage","type":"total","hits":{"Single Hit":1}}]}],"id":0},{"display_name":"Spear Proficiency 1","desc":"Improve your Main Attack's damage and range w/ spear","base_abil":999,"parents":[0],"dependencies":[],"blockers":[],"cost":1,"display":{"row":2,"col":4,"icon":"node_0"},"properties":{"melee_range":1},"effects":[{"type":"add_spell_prop","base_spell":0,"target_part":"melee","multipliers":[5,0,0,0,0,0]}],"id":1},{"display_name":"Cheaper Bash","desc":"Reduce the Mana cost of Bash","base_abil":0,"parents":[1],"dependencies":[],"blockers":[],"cost":1,"display":{"row":2,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"cost":-10}],"id":2},{"display_name":"Double Bash","desc":"Bash will hit a second time at a farther range","parents":[1],"base_abil":0,"dependencies":[],"blockers":[],"cost":1,"display":{"row":4,"col":4,"icon":"node_1"},"properties":{"range":3},"effects":[{"type":"add_spell_prop","base_spell":1,"target_part":"Total Damage","cost":0,"hits":{"Single Hit":1}},{"type":"add_spell_prop","base_spell":1,"target_part":"Single Hit","cost":0,"multipliers":[-50,0,0,0,0,0]}],"id":3},{"display_name":"Charge","desc":"Charge forward at high speed (hold shift to cancel)","parents":[3],"dependencies":[],"blockers":[],"cost":1,"display":{"row":6,"col":4,"icon":"node_warrior"},"properties":{},"effects":[{"type":"replace_spell","name":"Charge","cost":25,"base_spell":2,"spell_type":"damage","scaling":"spell","display":"","parts":[]}],"id":4},{"display_name":"Heavy Impact","desc":"After using Charge, violently crash down into the ground and deal damage","base_abil":4,"parents":[8],"dependencies":[],"blockers":[],"cost":1,"display":{"row":9,"col":1,"icon":"node_1"},"properties":{"aoe":4},"effects":[{"type":"add_spell_prop","base_spell":2,"target_part":"Heavy Impact","cost":0,"multipliers":[100,0,0,0,0,0]},{"type":"add_spell_prop","base_spell":2,"target_part":"Contact Damage","display":"Contact Damage","hits":{"Heavy Impact":1}}],"id":5},{"display_name":"Vehement","desc":"For every 1% or 1 Raw Main Attack Damage you have from items, gain +2% Walk Speed (Max 20%)","archetype":"Fallen","archetype_req":0,"parents":[4],"dependencies":[],"blockers":[7],"cost":1,"display":{"row":6,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"stat_scaling","slider":false,"inputs":[{"type":"stat","name":"mdPct"},{"type":"stat","name":"mdRaw"}],"output":{"type":"stat","name":"spd"},"scaling":[2,2],"max":20}],"id":6},{"display_name":"Tougher Skin","desc":"Harden your skin and become permanently +5% more resistant. For every 1% or 1 Raw Heath Regen you have from items, gain +10 Health (Max 100)","archetype":"Paladin","archetype_req":0,"parents":[4],"dependencies":[],"blockers":[6],"cost":1,"display":{"row":6,"col":6,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"defMult.Base","value":5}]},{"type":"stat_scaling","slider":false,"inputs":[{"type":"stat","name":"hprRaw"},{"type":"stat","name":"hprPct"}],"output":{"type":"stat","name":"hpBonus"},"scaling":[10,10],"max":100}],"id":7},{"display_name":"Uppercut","desc":"Rocket enemies in the air and deal massive damage","parents":[6,9],"dependencies":[],"blockers":[],"cost":1,"display":{"row":8,"col":2,"icon":"node_warrior"},"properties":{"aoe":3,"range":5},"effects":[{"type":"replace_spell","name":"Uppercut","cost":45,"base_spell":3,"spell_type":"damage","scaling":"spell","display":"Total Damage","parts":[{"name":"Uppercut","multipliers":[200,40,40,0,0,0]},{"name":"Total Damage","hits":{"Uppercut":1}}]}],"id":8},{"display_name":"Cheaper Charge","desc":"Reduce the Mana cost of Charge","base_abil":4,"parents":[8,10],"dependencies":[],"blockers":[],"cost":1,"display":{"row":8,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":2,"cost":-5}],"id":9},{"display_name":"War Scream","desc":"Emit a terrorizing roar that deals damage, pull nearby enemies, and add damage resistance to yourself and allies","parents":[7,9],"dependencies":[],"blockers":[],"cost":1,"display":{"row":8,"col":6,"icon":"node_warrior"},"properties":{"duration":30,"aoe":12,"defense_bonus":10},"effects":[{"type":"replace_spell","name":"War Scream","cost":35,"base_spell":4,"spell_type":"damage","scaling":"spell","display":"Total Damage","parts":[{"name":"War Scream","multipliers":[50,0,0,0,50,0]},{"name":"Total Damage","hits":{"War Scream":1}}]}],"id":10},{"display_name":"Earth Mastery","base_abil":998,"desc":"Increases base damage from all Earth attacks","archetype":"Fallen","archetype_req":0,"parents":[8],"dependencies":[],"blockers":[],"cost":1,"display":{"row":10,"col":0,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"eDamPct","value":20},{"type":"stat","name":"eDamAddMin","value":2},{"type":"stat","name":"eDamAddMax","value":4}]}],"id":11},{"display_name":"Thunder Mastery","base_abil":998,"desc":"Increases base damage from all Thunder attacks","archetype":"Fallen","archetype_req":0,"parents":[8,14,9],"dependencies":[],"blockers":[],"cost":1,"display":{"row":10,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"tDamPct","value":10},{"type":"stat","name":"tDamAddMin","value":1},{"type":"stat","name":"tDamAddMax","value":8}]}],"id":12},{"display_name":"Water Mastery","base_abil":998,"desc":"Increases base damage from all Water attacks","archetype":"Battle Monk","archetype_req":0,"parents":[9,12,14],"dependencies":[],"blockers":[],"cost":1,"display":{"row":11,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"wDamPct","value":15},{"type":"stat","name":"wDamAddMin","value":2},{"type":"stat","name":"wDamAddMax","value":4}]}],"id":13},{"display_name":"Air Mastery","base_abil":998,"desc":"Increases base damage from all Air attacks","archetype":"Battle Monk","archetype_req":0,"parents":[10,12,9],"dependencies":[],"blockers":[],"cost":1,"display":{"row":10,"col":6,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"aDamPct","value":15},{"type":"stat","name":"aDamAddMin","value":3},{"type":"stat","name":"aDamAddMax","value":4}]}],"id":14},{"display_name":"Fire Mastery","base_abil":998,"desc":"Increases base damage from all Fire attacks","archetype":"Paladin","archetype_req":0,"parents":[10],"dependencies":[],"blockers":[],"cost":1,"display":{"row":10,"col":8,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"fDamPct","value":15},{"type":"stat","name":"fDamAddMin","value":3},{"type":"stat","name":"fDamAddMax","value":5}]}],"id":15},{"display_name":"Quadruple Bash","desc":"Bash will hit 4 times at an even larger range","archetype":"Fallen","archetype_req":0,"base_abil":0,"parents":[11,17],"dependencies":[],"blockers":[],"cost":2,"display":{"row":12,"col":0,"icon":"node_1"},"properties":{"range":6},"effects":[{"type":"add_spell_prop","base_spell":1,"target_part":"Total Damage","hits":{"Single Hit":2}},{"type":"add_spell_prop","base_spell":1,"target_part":"Single Hit","multipliers":[-20,0,0,0,0,0]}],"id":16},{"display_name":"Fireworks","desc":"Mobs hit by Uppercut will explode mid-air and receive additional damage","archetype":"Fallen","archetype_req":0,"base_abil":8,"parents":[12,16],"dependencies":[],"blockers":[],"cost":2,"display":{"row":12,"col":2,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Fireworks","multipliers":[80,0,20,0,0,0]},{"type":"add_spell_prop","base_spell":3,"target_part":"Total Damage","hits":{"Fireworks":1}}],"id":17},{"display_name":"Half-Moon Swipe","desc":"Uppercut will deal a footsweep attack at a longer and wider angle. All elemental conversions become Water","archetype":"Battle Monk","archetype_req":1,"base_abil":8,"parents":[13],"dependencies":[8],"blockers":[],"cost":2,"display":{"row":13,"col":4,"icon":"node_1"},"properties":{"range":4},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Uppercut","cost":-10,"multipliers":[-70,0,0,30,0,0]}],"id":18},{"display_name":"Flyby Jab","desc":"Damage enemies in your way when using Charge","base_abil":4,"parents":[14,20],"dependencies":[],"blockers":[],"cost":2,"display":{"row":12,"col":6,"icon":"node_1"},"properties":{"aoe":2},"effects":[{"type":"add_spell_prop","base_spell":2,"target_part":"Flyby Jab","multipliers":[20,0,0,0,0,40]},{"type":"add_spell_prop","base_spell":2,"target_part":"Contact Damage","display":"Contact Damage","hits":{"Flyby Jab":1}}],"id":19},{"display_name":"Flaming Uppercut","desc":"Uppercut will light mobs on fire, dealing damage every 0.6 seconds","archetype":"Paladin","archetype_req":0,"base_abil":8,"parents":[15,19],"dependencies":[8],"blockers":[],"cost":2,"display":{"row":12,"col":8,"icon":"node_1"},"properties":{"duration":3,"tick":0.6},"effects":[{"type":"replace_spell","name":"Flaming Uppercut","base_spell":8,"display":"DPS","parts":[{"name":"Damage Tick","multipliers":[0,0,0,0,50,0]},{"name":"DPS","hits":{"Damage Tick":1.6666666666666667}},{"name":"Total Damage","hits":{"Damage Tick":5}}]}],"id":20},{"display_name":"Iron Lungs","desc":"War Scream deals more damage","archetype":"Paladin","archetype_req":0,"base_abil":10,"parents":[19,20],"dependencies":[],"blockers":[],"cost":1,"display":{"row":13,"col":7,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":4,"target_part":"War Scream","cost":0,"multipliers":[30,0,0,0,0,30]}],"id":21},{"display_name":"Generalist","desc":"After casting 3 different spells in a row, your next spell will cost 5 mana","archetype":"Battle Monk","archetype_req":3,"parents":[23],"dependencies":[],"blockers":[],"cost":2,"display":{"row":15,"col":2,"icon":"node_3"},"properties":{},"effects":[],"id":22},{"display_name":"Counter","desc":"When dodging a nearby enemy attack, get 30% chance to instantly attack back","archetype":"Battle Monk","archetype_req":0,"parents":[18],"dependencies":[],"blockers":[],"cost":2,"display":{"row":15,"col":4,"icon":"node_1"},"properties":{"chance":30},"effects":[{"type":"replace_spell","name":"Counter","base_spell":5,"display":"Counter Damage","parts":[{"name":"Counter Damage","multipliers":[60,0,20,0,0,20]}]}],"id":23},{"display_name":"Mantle of the Bovemists","desc":"When casting War Scream, create a holy shield around you that reduces all incoming damage by 70% for 3 hits (20s cooldown)","archetype":"Paladin","archetype_req":3,"parents":[21],"dependencies":[10],"blockers":[],"cost":2,"display":{"row":15,"col":7,"icon":"node_3"},"properties":{"mantle_charge":3},"effects":[{"type":"raw_stat","toggle":"Activate Mantle","bonuses":[{"type":"stat","name":"defMult.Mantle","value":70}]}],"id":24},{"display_name":"Bak'al's Grasp","desc":"After casting War Scream, become Corrupted (15s Cooldown). You cannot heal while in that state. While Corrupted, every 2% of Health you lose will add +4 Raw Damage to your attacks (Max 120)","archetype":"Fallen","archetype_req":2,"parents":[16,17],"dependencies":[10],"blockers":[],"cost":2,"display":{"row":16,"col":1,"icon":"node_3"},"properties":{"cooldown":15},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Corrupted","slider_max":100,"slider_step":1,"output":{"type":"stat","name":"damRaw"},"max":120,"scaling":[2]}],"id":25},{"display_name":"Spear Proficiency 2","desc":"Improve your Main Attack's damage and range w/ spear","base_abil":999,"parents":[25,27],"dependencies":[],"blockers":[],"cost":1,"display":{"row":17,"col":0,"icon":"node_0"},"properties":{"melee_range":1},"effects":[{"type":"add_spell_prop","base_spell":0,"target_part":"melee","multipliers":[5,0,0,0,0,0]}],"id":26},{"display_name":"Cheaper Uppercut","desc":"Reduce the Mana Cost of Uppercut","base_abil":8,"parents":[26,28,23],"dependencies":[],"blockers":[],"cost":1,"display":{"row":17,"col":3,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"cost":-5}],"id":27},{"display_name":"Aerodynamics","desc":"During Charge, you can steer and change direction","archetype":"Battle Monk","archetype_req":0,"base_abil":4,"parents":[27,29],"dependencies":[],"blockers":[],"cost":2,"display":{"row":17,"col":5,"icon":"node_1"},"properties":{},"effects":[],"id":28},{"display_name":"Provoke","desc":"Mobs damaged by War Scream will target only you for at least 5s. Reduce the Mana cost of War Scream","base_abil":10,"parents":[28,24],"dependencies":[],"blockers":[],"cost":2,"display":{"row":17,"col":7,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":4,"cost":-5}],"id":29},{"display_name":"Precise Strikes","desc":"+30% Critical Hit Damage","parents":[27,26],"dependencies":[],"blockers":[],"cost":1,"display":{"row":18,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"critDamPct","value":30}]}],"id":30},{"display_name":"Air Shout","desc":"War Scream will fire a projectile that can go through walls and deal damage multiple times","base_abil":10,"parents":[28,29],"dependencies":[10],"blockers":[],"cost":2,"display":{"row":18,"col":6,"icon":"node_1"},"properties":{"attackRate":2},"effects":[{"type":"add_spell_prop","base_spell":4,"target_part":"Air Shout","multipliers":[40,0,0,0,0,10]}],"id":31},{"display_name":"Enraged Blow","desc":"While Corriupted, every 1% of Health you lose will increase your damage by +3% (Max 300%)","archetype":"Fallen","archetype_req":0,"base_abil":25,"parents":[26],"dependencies":[25],"blockers":[],"cost":2,"display":{"row":20,"col":0,"icon":"node_2"},"properties":{},"effects":[{"type":"stat_scaling","slider_name":"Corrupted","slider":true,"output":{"type":"stat","name":"damMult.Enraged"},"scaling":[3]}],"id":32},{"display_name":"Flying Kick","desc":"When using Charge, mobs hit will halt your momentum and get knocked back","archetype":"Battle Monk","archetype_req":1,"base_abil":4,"parents":[27,34],"dependencies":[],"blockers":[],"cost":2,"display":{"row":20,"col":3,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":2,"target_part":"Flying Kick","multipliers":[150,0,0,20,0,30]},{"type":"add_spell_prop","base_spell":2,"target_part":"Flying Kick Max Damage","hits":{"Flying Kick":1},"display":"Flying Kick Max Damage"}],"id":33},{"display_name":"Stronger Mantle","desc":"Add +2 additional charges to Mantle of the Bovemists","archetype":"Paladin","archetype_req":0,"base_abil":24,"parents":[35,33],"dependencies":[24],"blockers":[],"cost":1,"display":{"row":20,"col":6,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"prop","abil":24,"name":"mantle_charge","value":2}]}],"id":34},{"display_name":"Manachism","desc":"If you receive a hit that's less than 5% of your max HP, gain 10 Mana (1s Cooldown)","archetype":"Paladin","archetype_req":3,"parents":[34,29],"dependencies":[],"blockers":[],"cost":2,"display":{"row":20,"col":8,"icon":"node_2"},"properties":{"cooldown":1},"effects":[],"id":35},{"display_name":"Boiling Blood","desc":"Bash leaves a trail of boiling blood behind its first explosion, slowing down and damaging enemies above it every 0.4 seconds","base_abil":0,"parents":[32,37],"dependencies":[],"blockers":[],"cost":2,"display":{"row":22,"col":0,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"target_part":"Boiling Blood","cost":0,"multipliers":[25,0,0,0,5,0]}],"id":36},{"display_name":"Ragnarokkr","desc":"War Scream become deafening, increasing its range and giving damage bonus to players","archetype":"Fallen","archetype_req":0,"base_abil":10,"parents":[36,33],"dependencies":[10],"blockers":[],"cost":2,"display":{"row":22,"col":2,"icon":"node_2"},"properties":{"aoe":2},"effects":[{"type":"add_spell_prop","base_spell":4,"cost":10}],"id":37},{"display_name":"Ambidextrous","desc":"Increase your chance to attack with Counter by +30%","base_abil":23,"parents":[33,34,39],"dependencies":[23],"blockers":[],"cost":1,"display":{"row":22,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"prop","abil":23,"name":"chance","value":30}]}],"id":38},{"display_name":"Burning Heart","desc":"For every 100 Health Bonus you have from item IDs, gain +2% Fire Damage (Max 100%)","archetype":"Paladin","archetype_req":0,"parents":[38,40],"dependencies":[],"blockers":[],"cost":1,"display":{"row":22,"col":6,"icon":"node_0"},"properties":{},"effects":[{"type":"stat_scaling","slider":false,"inputs":[{"type":"stat","name":"hpBonus"}],"output":{"type":"stat","name":"fDamPct"},"scaling":[0.02],"max":100}],"id":39},{"display_name":"Stronger Bash","desc":"Increase the damage of Bash","base_abil":0,"parents":[39,35],"dependencies":[],"blockers":[],"cost":1,"display":{"row":22,"col":8,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"target_part":"Single Hit","multipliers":[30,0,0,0,0,0]}],"id":40},{"display_name":"Intoxicating Blood","desc":"After leaving Corrupted, gain 2% of the health lost back for each enemy killed while Corrupted","archetype":"Fallen","archetype_req":5,"base_abil":25,"parents":[37,36],"dependencies":[25],"blockers":[],"cost":2,"display":{"row":23,"col":1,"icon":"node_1"},"properties":{},"effects":[],"id":41},{"display_name":"Comet","desc":"After being hit by Fireworks, enemies will crash into the ground and receive more damage","archetype":"Fallen","archetype_req":0,"base_abil":8,"parents":[37],"dependencies":[17],"blockers":[],"cost":2,"display":{"row":24,"col":2,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Comet","cost":0,"multipliers":[80,20,0,0,0,0]},{"type":"add_spell_prop","base_spell":3,"target_part":"Total Damage","cost":0,"hits":{"Comet":1}}],"id":42},{"display_name":"Collide","desc":"Mobs thrown into walls from Flying Kick will explode and receive additonal damage","archetype":"Battle Monk","archetype_req":4,"base_abil":4,"parents":[38,39],"dependencies":[33],"blockers":[],"cost":2,"display":{"row":23,"col":5,"icon":"node_1"},"properties":{"aoe":4},"effects":[{"type":"add_spell_prop","base_spell":2,"target_part":"Collide","cost":0,"multipliers":[150,0,0,0,50,0]},{"type":"add_spell_prop","base_spell":2,"target_part":"Flying Kick Max Damage","hits":{"Collide":1}}],"id":43},{"display_name":"Rejuvenating Skin","desc":"Regain back 30% of the damage you take as healing over 30s","archetype":"Paladin","archetype_req":5,"parents":[39,40],"dependencies":[],"blockers":[],"cost":2,"display":{"row":23,"col":7,"icon":"node_3"},"properties":{},"effects":[],"id":44},{"display_name":"Uncontainable Corruption","desc":"Reduce the cooldown of Bak'al's Grasp by -5s, and increase the raw damage gained for every 2% of health lost by +1","base_abil":25,"parents":[36,46],"dependencies":[25],"blockers":[],"cost":1,"display":{"row":26,"col":0,"icon":"node_0"},"properties":{},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Corrupted","output":{"type":"stat","name":"damRaw"},"scaling":[0.5]},{"type":"raw_stat","bonuses":[{"type":"prop","abil":25,"name":"cooldown","value":-5}]}],"id":45},{"display_name":"Radiant Devotee","desc":"For every 4% Reflection you have from items, gain +1/5s Mana Regen (Max 10/5s)","archetype":"Battle Monk","archetype_req":1,"parents":[47,45],"dependencies":[],"blockers":[],"cost":1,"display":{"row":26,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"stat_scaling","inputs":[{"type":"stat","name":"ref"}],"output":{"type":"stat","name":"mr"},"scaling":[0.25],"max":10}],"id":46},{"display_name":"Whirlwind Strike","desc":"Uppercut will create a strong gust of air, launching you upward with enemies (Hold shift to stay grounded)","archetype":"Battle Monk","archetype_req":5,"base_abil":8,"parents":[38,46],"dependencies":[8],"blockers":[],"cost":2,"display":{"row":26,"col":4,"icon":"node_1"},"properties":{"range":2},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Uppercut","multipliers":[0,0,0,0,0,50]}],"id":47},{"display_name":"Mythril Skin","desc":"Gain +5% Base Resistance and become immune to knockback","archetype":"Paladin","archetype_req":6,"parents":[44],"dependencies":[],"blockers":[],"cost":2,"display":{"row":26,"col":7,"icon":"node_1"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"defMult.Base","value":5}]}],"id":48},{"display_name":"Armour Breaker","desc":"While Corrupted, losing 30% Health will make your next Uppercut destroy enemies' defense, rendering them weaker to damage","archetype":"Fallen","archetype_req":0,"base_abil":8,"parents":[45,46],"dependencies":[25],"blockers":[],"cost":2,"display":{"row":27,"col":1,"icon":"node_2"},"properties":{"duration":5},"effects":[{"type":"raw_stat","toggle":"Activate Armor Breaker","bonuses":[{"type":"stat","name":"damMult.ArmorBreaker","value":30}]}],"id":49},{"display_name":"Shield Strike","desc":"When your Mantle of the Bovemist loses all charges, deal damage around you for each Mantle individually lost","archetype":"Paladin","archetype_req":0,"base_abil":24,"parents":[48,51],"dependencies":[],"blockers":[],"cost":2,"display":{"row":27,"col":6,"icon":"node_1"},"properties":{},"effects":[{"type":"replace_spell","name":"Shield Strike","base_spell":6,"display":"Damage per Shield","parts":[{"name":"Damage per Shield","multipliers":[60,0,20,0,0,0]}]}],"id":50},{"display_name":"Sparkling Hope","desc":"Everytime you heal 5% of your max health, deal damage to all nearby enemies","archetype":"Paladin","archetype_req":0,"parents":[48],"dependencies":[],"blockers":[],"cost":2,"display":{"row":27,"col":8,"icon":"node_2"},"properties":{"aoe":6},"effects":[{"type":"replace_spell","name":"Sparkling Hope","base_spell":7,"display":"Damage Tick","parts":[{"name":"Damage Tick","multipliers":[10,0,5,0,0,0]}]}],"id":51},{"display_name":"Massive Bash","desc":"While Corrupted, every 3% Health you lose will add +1 AoE to Bash (Max 10)","archetype":"Fallen","archetype_req":8,"base_abil":25,"parents":[53,45],"dependencies":[],"blockers":[],"cost":2,"display":{"row":28,"col":0,"icon":"node_2"},"properties":{},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Corrupted","output":{"type":"prop","abil":0,"name":"aoe"},"scaling":[0.3333333333333333],"max":10}],"id":52},{"display_name":"Tempest","desc":"War Scream will ripple the ground and deal damage 3 times in a large area","archetype":"Battle Monk","archetype_req":0,"base_abil":10,"parents":[52,54],"dependencies":[],"blockers":[],"cost":2,"display":{"row":28,"col":2,"icon":"node_1"},"properties":{"aoe":16},"effects":[{"type":"add_spell_prop","base_spell":4,"target_part":"Tempest","multipliers":[30,10,0,0,0,10]},{"type":"add_spell_prop","base_spell":4,"target_part":"Tempest Total Damage","hits":{"Tempest":3}},{"type":"add_spell_prop","base_spell":4,"target_part":"Total Damage","hits":{"Tempest":3}}],"id":53},{"display_name":"Spirit of the Rabbit","desc":"Reduce the Mana cost of Charge and increase your Walk Speed by +20%","archetype":"Battle Monk","archetype_req":5,"base_abil":4,"parents":[53,47],"dependencies":[],"blockers":[],"cost":1,"display":{"row":28,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":2,"cost":-5},{"type":"raw_stat","bonuses":[{"type":"stat","name":"spd","value":20}]}],"id":54},{"display_name":"Massacre","desc":"While Corrupted, if your effective attack speed is Slow or lower, hitting an enemy with your Main Attack will add +1% to your Corrupted bar","archetype":"Fallen","archetype_req":5,"base_abil":999,"parents":[53,52],"dependencies":[],"blockers":[],"cost":2,"display":{"row":29,"col":1,"icon":"node_1"},"properties":{},"effects":[],"id":55},{"display_name":"Axe Kick","desc":"Increase the damage of Uppercut, but also increase its mana cost","base_abil":8,"parents":[53,54],"dependencies":[],"blockers":[],"cost":1,"display":{"row":29,"col":3,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Uppercut","cost":10,"multipliers":[100,0,0,0,0,0]}],"id":56},{"display_name":"Radiance","desc":"Bash will buff your allies' positive IDs. (15s Cooldown)","archetype":"Paladin","archetype_req":2,"base_abil":0,"parents":[54,58],"dependencies":[],"blockers":[],"cost":2,"display":{"row":29,"col":5,"icon":"node_2"},"properties":{"cooldown":15},"effects":[],"id":57},{"display_name":"Cheaper Bash 2","desc":"Reduce the Mana cost of Bash","base_abil":0,"parents":[57,50,51],"dependencies":[],"blockers":[],"cost":1,"display":{"row":29,"col":7,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"cost":-5}],"id":58},{"display_name":"Cheaper War Scream","desc":"Reduce the Mana cost of War Scream","base_abil":10,"parents":[52],"dependencies":[],"blockers":[],"cost":1,"display":{"row":31,"col":0,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":4,"cost":-5}],"id":59},{"display_name":"Discombobulate","desc":"Every time you hit an enemy, briefly increase your elemental damage dealt to them by +3 (Additive, Max +80). This bonus decays -5 every second","archetype":"Battle Monk","archetype_req":11,"parents":[62],"dependencies":[],"blockers":[],"cost":2,"display":{"row":31,"col":2,"icon":"node_3"},"properties":{},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Hits dealt","slider_max":27,"output":[{"type":"stat","name":"eDamAddMin"},{"type":"stat","name":"eDamAddMax"},{"type":"stat","name":"tDamAddMin"},{"type":"stat","name":"tDamAddMax"},{"type":"stat","name":"wDamAddMin"},{"type":"stat","name":"wDamAddMax"},{"type":"stat","name":"fDamAddMin"},{"type":"stat","name":"fDamAddMax"},{"type":"stat","name":"aDamAddMin"},{"type":"stat","name":"aDamAddMax"}],"scaling":[3],"max":80}],"id":60},{"display_name":"Thunderclap","desc":"Bash will cast at the player's position and gain additional AoE.\n\n All elemental conversions become Thunder","archetype":"Battle Monk","archetype_req":8,"parents":[62],"dependencies":[],"blockers":[],"cost":2,"display":{"row":32,"col":5,"icon":"node_1"},"properties":{},"effects":[{"type":"convert_spell_conv","target_part":"all","base_spell":1,"conversion":"Thunder"},{"type":"raw_stat","bonuses":[{"type":"prop","abil":0,"name":"aoe","value":3}]}],"id":61},{"display_name":"Cyclone","desc":"After casting War Scream, envelop yourself with a vortex that damages nearby enemies every 0.5s","archetype":"Battle Monk","archetype_req":0,"parents":[54],"dependencies":[],"blockers":[],"cost":2,"display":{"row":31,"col":4,"icon":"node_1"},"properties":{"aoe":4,"duration":20},"effects":[{"type":"add_spell_prop","base_spell":4,"target_part":"Cyclone","multipliers":[10,0,0,0,5,10]},{"type":"add_spell_prop","base_spell":4,"target_part":"Cyclone Total Damage","hits":{"Cyclone":40}}],"id":62},{"display_name":"Second Chance","desc":"When you receive a fatal blow, survive and regain 30% of your Health (10m Cooldown)","archetype":"Paladin","archetype_req":12,"parents":[58],"dependencies":[],"blockers":[],"cost":2,"display":{"row":32,"col":7,"icon":"node_3"},"properties":{},"effects":[],"id":63},{"display_name":"Blood Pact","desc":"If you do not have enough mana to cast a spell, spend health instead (0.6% health per mana)","archetype":"Fallen","archetype_req":10,"parents":[59],"dependencies":[],"blockers":[],"cost":2,"display":{"row":34,"col":1,"icon":"node_3"},"properties":{"health_cost":0.6},"effects":[],"id":64},{"display_name":"Haemorrhage","desc":"Reduce Blood Pact's health cost. (0.3% health per mana)","archetype":"Fallen","archetype_req":0,"base_abil":64,"parents":[64],"dependencies":[64],"blockers":[],"cost":1,"display":{"row":35,"col":2,"icon":"node_1"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"prop","abil":64,"name":"health_cost","value":-0.3}]}],"id":65},{"display_name":"Brink of Madness","desc":"If your health is 25% full or less, gain +40% Resistance","parents":[64,67],"dependencies":[],"blockers":[],"cost":2,"display":{"row":35,"col":4,"icon":"node_2"},"properties":{},"effects":[{"type":"raw_stat","toggle":"Activate Brink","bonuses":[{"type":"stat","name":"defMult.Brink","value":40}]}],"id":66},{"display_name":"Cheaper Uppercut 2","desc":"Reduce the Mana cost of Uppercut","base_abil":8,"parents":[63,66],"dependencies":[],"blockers":[],"cost":1,"display":{"row":35,"col":6,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"cost":-5}],"id":67},{"display_name":"Martyr","desc":"When you receive a fatal blow, all nearby allies become invincible","archetype":"Paladin","archetype_req":0,"parents":[63],"dependencies":[],"blockers":[],"cost":2,"display":{"row":35,"col":8,"icon":"node_1"},"properties":{"duration":3,"aoe":12},"effects":[],"id":68}],"Mage":[{"display_name":"Meteor","desc":"Summon a slow but powerful meteor from the sky, dealing massive damage in a large area","parents":[],"dependencies":[],"blockers":[],"cost":1,"display":{"row":0,"col":4,"icon":"node_mage"},"properties":{"aoe":5,"range":18},"effects":[{"type":"replace_spell","name":"Meteor","cost":55,"base_spell":3,"display":"Total Damage","parts":[{"name":"Meteor Damage","multipliers":[300,100,0,0,0,0]},{"name":"Total Damage","hits":{"Meteor Damage":1}}]}],"id":0},{"display_name":"Teleport","desc":"Instantly teleport in the direction you're facing","parents":[4],"dependencies":[],"blockers":[],"cost":1,"display":{"row":6,"col":4,"icon":"node_mage"},"properties":{"range":12},"effects":[{"type":"replace_spell","name":"Teleport","cost":25,"base_spell":2,"display":"","parts":[]}],"id":1},{"display_name":"Heal","desc":"Heal yourself and nearby allies in a large area around you. (When healing an ally, you cannot heal more than 30% of their max health)","parents":[14,12],"dependencies":[],"blockers":[],"cost":1,"display":{"row":8,"col":2,"icon":"node_mage"},"properties":{"aoe":5},"effects":[{"type":"replace_spell","name":"Heal","cost":35,"base_spell":1,"display":"Heal","parts":[{"name":"Heal","power":0.1}]}],"id":2},{"display_name":"Ice Snake","desc":"Summon a fast-moving ice snake that reduces your enemies' speed and damage them.","parents":[13,12],"dependencies":[],"blockers":[],"cost":1,"display":{"row":8,"col":6,"icon":"node_mage"},"properties":{"range":18,"effects":40,"duration":3},"effects":[{"type":"replace_spell","name":"Ice Snake","cost":35,"base_spell":4,"display":"Ice Snake Damage","parts":[{"name":"Ice Snake Damage","multipliers":[70,0,0,30,0,0]}]}],"id":3},{"display_name":"Shooting Star","desc":"Drastically increase the speed of your Meteor ability.","base_abil":3,"parents":[5],"dependencies":[],"blockers":[],"cost":1,"display":{"row":4,"col":4,"icon":"node_1"},"properties":{},"effects":[],"id":4},{"display_name":"Wand Proficiency I","desc":"Improve your Main Attack's damage and range when using a wand.","base_abil":999,"parents":[0],"dependencies":[],"blockers":[],"cost":1,"display":{"row":2,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"mdPct","value":5}]}],"id":5},{"display_name":"Cheaper Meteor","desc":"Reduce the Mana cost of Meteor.","base_abil":0,"parents":[5],"dependencies":[],"blockers":[],"cost":1,"display":{"row":2,"col":6,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"cost":-10}],"id":6},{"display_name":"Earth Mastery","base_abil":998,"desc":"Increases your base damage from all Earth attacks","archetype":"Arcanist","archetype_req":0,"parents":[3],"dependencies":[],"blockers":[],"cost":1,"display":{"row":10,"col":8,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"eDamPct","value":20},{"type":"stat","name":"eDamAddMin","value":2},{"type":"stat","name":"eDamAddMax","value":4}]}],"id":7},{"display_name":"Thunder Mastery","base_abil":998,"desc":"Increases your base damage from all Thunder attacks","archetype":"Riftwalker","archetype_req":0,"parents":[2,12],"dependencies":[],"blockers":[],"cost":1,"display":{"row":10,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"tDamPct","value":10},{"type":"stat","name":"tDamAddMin","value":1},{"type":"stat","name":"tDamAddMax","value":8}]}],"id":8},{"display_name":"Water Mastery","base_abil":998,"desc":"Increases your base damage from all Water attacks","archetype":"Light Bender","archetype_req":0,"parents":[12,8],"dependencies":[],"blockers":[],"cost":1,"display":{"row":11,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"wDamPct","value":15},{"type":"stat","name":"wDamAddMin","value":2},{"type":"stat","name":"wDamAddMax","value":4}]}],"id":9},{"display_name":"Air Mastery","base_abil":998,"desc":"Increases base damage from all Air attacks","archetype":"Riftwalker","archetype_req":0,"parents":[2],"dependencies":[],"blockers":[],"cost":1,"display":{"row":10,"col":0,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"aDamPct","value":15},{"type":"stat","name":"aDamAddMin","value":3},{"type":"stat","name":"aDamAddMax","value":4}]}],"id":10},{"display_name":"Fire Mastery","base_abil":998,"desc":"Increases base damage from all Fire attacks","archetype":"Arcanist","archetype_req":0,"parents":[3],"dependencies":[],"blockers":[],"cost":1,"display":{"row":10,"col":6,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"fDamPct","value":15},{"type":"stat","name":"fDamAddMin","value":3},{"type":"stat","name":"fDamAddMax","value":5}]}],"id":11},{"display_name":"Cheaper Teleport","desc":"Reduce the Mana cost of Teleport.","base_abil":1,"parents":[2,3],"dependencies":[],"blockers":[],"cost":1,"display":{"row":8,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":2,"cost":-5}],"id":12},{"display_name":"Wisdom","desc":"For every 2% or 2 Raw Spell Damage you have from items, gain +1/5s mana regen (Max 5/5s)","archetype":"Arcanist","archetype_req":0,"parents":[1],"dependencies":[],"blockers":[14],"cost":1,"display":{"row":6,"col":6,"icon":"node_0"},"properties":{},"effects":[{"type":"stat_scaling","slider":false,"inputs":[{"type":"stat","name":"sdPct"},{"type":"stat","name":"sdRaw"}],"output":{"type":"stat","name":"mr"},"scaling":[0.5,0.5],"max":5}],"id":13},{"display_name":"Wand Proficiency II","desc":"Improve your Main Attack's damage and range when using a wand.","archetype":"Riftwalker","archetype_req":0,"base_abil":999,"parents":[1],"dependencies":[],"blockers":[],"cost":1,"display":{"row":6,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"mdPct","value":5}]}],"id":14},{"display_name":"Wind Slash","desc":"When using Teleport, slash through the air and deal damage to enemies you pierce.","archetype":"Riftwalker","base_abil":1,"parents":[10,16],"dependencies":[1],"blockers":[],"cost":2,"display":{"row":12,"col":0,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","target_part":"Wind Slash","base_spell":2,"multipliers":[50,0,0,0,0,50]},{"type":"add_spell_prop","target_part":"Total Damage","base_spell":2,"display":"Total Damage","hits":{"Wind Slash":1}}],"id":15},{"display_name":"Thunderstorm","desc":"After casting Meteor, summon 3 lightning strikes and deal additional damage","base_abil":0,"parents":[15,8],"dependencies":[0],"blockers":[],"cost":2,"display":{"row":12,"col":2,"icon":"node_1"},"properties":{"aoe":2},"effects":[{"type":"add_spell_prop","target_part":"Lightning Damage","base_spell":3,"multipliers":[30,0,15,0,0,0]},{"type":"add_spell_prop","target_part":"Total Damage","base_spell":3,"hits":{"Lightning Damage":3}}],"id":16},{"display_name":"Stronger Meteor","desc":"Increase the damage of Meteor.","base_abil":0,"archetype":"Arcanist","archetype_req":2,"parents":[18],"dependencies":[0],"blockers":[],"cost":1,"display":{"row":13,"col":8,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Meteor Damage","behavior":"modify","multipliers":[30,90,0,0,0,0]},{"type":"add_spell_prop","base_spell":3,"target_part":"Lightning Damage","behavior":"modify","multipliers":[30,90,0,0,0,0]}],"id":17},{"display_name":"Burning Sigil","desc":"Meteor will leave a sigil that damages enemies every 0.4s.","base_abil":0,"parents":[11,7],"dependencies":[],"blockers":[],"cost":2,"display":{"row":12,"col":7,"icon":"node_1"},"properties":{"aoe":7,"duration":8},"effects":[{"type":"replace_spell","name":"Burning Sigil","base_spell":6,"display":"DPS","parts":[{"name":"Tick Damage","multipliers":[15,0,0,0,25,0]},{"name":"DPS","hits":{"Tick Damage":2.5}},{"name":"Total Burn Damage","hits":{"Tick Damage":20}}]}],"id":18},{"display_name":"Sunshower","desc":"Heal emit a strong light, damaging nearby enemies.","archetype":"Light Bender","archetype_req":0,"base_abil":2,"parents":[9],"dependencies":[2],"blockers":[22],"cost":2,"display":{"row":13,"col":4,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"target_part":"Sunshower Damage","multipliers":[70,0,0,30,0,0]}],"id":19},{"display_name":"Windsweeper","desc":"Your Main Attack will add +1 Winded to enemies you hit. (Max 5, 0.5s cooldown) Ice Snake will deal additional damage to enemies for every Winded they have","archetype":"Riftwalker","archetype_req":3,"parents":[15,16],"dependencies":[3],"blockers":[],"cost":2,"display":{"row":15,"col":1,"icon":"node_3"},"properties":{"max":5},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Winded","output":{"type":"stat","name":"nConvBase:4.Ice Snake Damage"},"scaling":[20],"slider_step":1,"slider_max":5},{"type":"stat_scaling","slider":true,"slider_name":"Winded","output":{"type":"stat","name":"wConvBase:4.Ice Snake Damage"},"scaling":[10]}],"id":20},{"display_name":"Ophanim","desc":"When casting Meteor, instead summon 2 orbs of light with 200 Health that will attack when you use your Main Attack. When they damage an enemy, they lose 20% of their Health. They can be healed back.","archetype":"Light Bender","archetype_req":2,"parents":[19],"dependencies":[],"blockers":[],"cost":2,"display":{"row":15,"col":4,"icon":"node_3"},"properties":{"health":200},"effects":[{"type":"replace_spell","name":"Ophanim","base_spell":3,"display":"Per Melee (max)","parts":[{"name":"Per Orb","multipliers":[50,0,30,20,0,0]},{"name":"Per Melee (max)","hits":{"Per Orb":2}}]},{"type":"add_spell_prop","base_spell":3,"cost":30}],"id":21},{"display_name":"Arcane Transfer","desc":"Meteor and Ice Snake will add +5 Mana to a Mana Bank for every aggressive enemy you hit. Heal will now transfer the content of your Mana Bank into usable Mana instead of healing.","archetype":"Arcanist","archetype_req":2,"parents":[18],"dependencies":[],"blockers":[],"cost":2,"display":{"row":15,"col":7,"icon":"node_3"},"properties":{"bank":90},"effects":[{"type":"replace_spell","name":"Arcane Transfer","base_spell":1,"parts":[],"display":""}],"id":22},{"display_name":"Cheaper Heal","desc":"Reduce the Mana cost of Heal.","base_abil":2,"parents":[20,24],"dependencies":[],"blockers":[],"cost":1,"display":{"row":17,"col":1,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"cost":-5}],"id":23},{"display_name":"Purification","desc":"Heal and Arcane Transfer will purify you of all negative effects and fire. (3s Cooldown)","base_abil":1,"parents":[21,23,25],"dependencies":[],"blockers":[],"cost":2,"display":{"row":17,"col":4,"icon":"node_2"},"properties":{},"effects":[],"id":24},{"display_name":"Sentient Snake","desc":"Ice Snake will follow the direction you're facing, allowing you to control it.","base_abil":3,"parents":[22,24],"dependencies":[3],"blockers":[],"cost":2,"display":{"row":17,"col":6,"icon":"node_1"},"properties":{},"effects":[],"id":25},{"display_name":"Eye Piercer","desc":"Teleport will blind enemies, confusing them for a short amount of time.","base_abil":1,"parents":[23],"dependencies":[1],"blockers":[],"cost":2,"display":{"row":18,"col":0,"icon":"node_1"},"properties":{},"effects":[],"id":26},{"display_name":"Breathless","desc":"Meteor will deal additional damage to enemies for every Winded they have.","base_abil":20,"archetype":"Riftwalker","archetype_req":0,"parents":[23,24],"dependencies":[20],"blockers":[],"cost":2,"display":{"row":18,"col":2,"icon":"node_1"},"properties":{},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Winded","output":[{"type":"stat","name":"nConvBase:3.Meteor Damage"},{"type":"stat","name":"eConvBase:3.Meteor Damage"},{"type":"stat","name":"nConvBase:3.Per Orb"},{"type":"stat","name":"eConvBase:3.Per Orb"},{"type":"stat","name":"nConvBase:3.Lightning Damage"},{"type":"stat","name":"eConvBase:3.Lightning Damage"}],"scaling":[15]}],"id":27},{"display_name":"Larger Heal","desc":"Increase your Heal's range.","base_abil":1,"archetype":"Light Bender","archetype_req":0,"parents":[24,25],"dependencies":[2],"blockers":[22],"cost":1,"display":{"row":18,"col":5,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"prop","abil":2,"name":"aoe","value":2}]}],"id":28},{"display_name":"Larger Mana Bank","desc":"Increase your maximum Mana Bank by +30.","base_abil":1,"archetype":"Arcanist","archetype_req":0,"parents":[25],"dependencies":[22],"blockers":[],"cost":1,"display":{"row":18,"col":8,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"prop","abil":22,"name":"bank","value":30}]}],"id":29},{"display_name":"Cheaper Ice Snake","desc":"Reduce the Mana cost of Ice Snake.","base_abil":3,"parents":[26,32],"dependencies":[],"blockers":[],"cost":1,"display":{"row":20,"col":0,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":4,"cost":-5}],"id":30},{"display_name":"Cheaper Teleport II","desc":"Reduce the Mana cost of Teleport.","base_abil":1,"parents":[24],"_parents":["Purification","Fortitude"],"dependencies":[],"blockers":[],"cost":1,"display":{"row":20,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":2,"cost":-5}],"id":31},{"display_name":"Fortitude","desc":"After healing 120% of your max health within 10s, apply a damage bonus to each player you've healed. (15s Cooldown)","base_abil":2,"archetype":"Light Bender","archetype_req":0,"parents":[30,31],"dependencies":[],"blockers":[],"cost":2,"display":{"row":20,"col":2,"icon":"node_2"},"properties":{"duration":5},"effects":[],"id":32},{"display_name":"Pyrokinesis","desc":"When your Mana Bank reaches 30, your Main Attack will stop and explode when it hits an enemy. (Damage is dealt as Main Attack Damage)","base_abil":4,"archetype":"Arcanist","archetype_req":4,"parents":[25],"dependencies":[],"blockers":[],"cost":2,"display":{"row":20,"col":7,"icon":"node_2"},"properties":{},"__TODO":"replace_spell pyrokinesis damage","effects":[],"id":33},{"display_name":"Seance","desc":"For every 5/3s Lifesteal you have from items, gain 1% Spell Damage (Max 50%)","archetype":"","archetype_req":0,"parents":[33,36],"dependencies":[],"blockers":[],"cost":1,"display":{"row":22,"col":7,"icon":"node_0"},"properties":{},"effects":[{"type":"stat_scaling","slider":false,"inputs":[{"type":"stat","name":"ls"}],"output":{"type":"stat","name":"sdPct"},"scaling":[0.2],"max":50}],"id":34},{"display_name":"Blink","desc":"Teleport will trigger 2 times in quick successions","base_abil":1,"archetype":"Riftwalker","archetype_req":0,"parents":[32,30],"dependencies":[1],"blockers":[],"cost":2,"display":{"row":21,"col":1,"icon":"node_1"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"prop","abil":1,"name":"range","value":-4}]},{"type":"add_spell_prop","behavior":"modify","target_part":"Total Damage","base_spell":2,"hits":{"Wind Slash":1,"Explosion Damage":1}}],"id":35},{"display_name":"Snake Nest","desc":"Ice Snake will summon 3 snakes.","base_abil":3,"parents":[34,31,40],"dependencies":[3],"blockers":[],"cost":2,"display":{"row":22,"col":5,"icon":"node_1"},"properties":{},"effects":[],"id":36},{"display_name":"Arcane Restoration","desc":"Pyrokinesis will add +1 Mana every 1s to your Mana Bank when hitting an aggressive enemy.","base_abil":999,"archetype":"Arcanist","archetype_req":0,"parents":[34,36],"dependencies":[33],"blockers":[],"cost":2,"display":{"row":23,"col":6,"icon":"node_1"},"properties":{"duration":4},"effects":[],"id":37},{"display_name":"Fluid Healing","desc":"For every 1% Water Damage Bonus you have, buff Heal's healing power by +0.3%.","archetype":"Light Bender","archetype_req":0,"base_abil":2,"parents":[40,39],"dependencies":[],"blockers":[],"cost":2,"display":{"row":23,"col":2,"icon":"node_1"},"properties":{},"effects":[{"type":"stat_scaling","slider":false,"round":false,"inputs":[{"type":"stat","name":"wDamPct"}],"output":{"type":"stat","name":"healPct"},"scaling":[0.3]}],"id":38},{"display_name":"Transonic Warp","desc":"Teleport will deal additional damage to enemies for every Winded they have.","base_abil":20,"archetype":"Riftwalker","archetype_req":5,"parents":[30],"dependencies":[3,20],"blockers":[],"cost":2,"display":{"row":23,"col":0,"icon":"node_2"},"properties":{},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Winded","output":[{"type":"stat","name":"nConvBase:2.Wind Slash"},{"type":"stat","name":"nConvBase:2.Explosion Damage"}],"scaling":[30]},{"type":"stat_scaling","slider":true,"slider_name":"Winded","output":[{"type":"stat","name":"tConvBase:2.Wind Slash"},{"type":"stat","name":"tConvBase:2.Explosion Damage"}],"scaling":[10]},{"type":"stat_scaling","slider":true,"slider_name":"Winded","output":[{"type":"stat","name":"aConvBase:2.Wind Slash"},{"type":"stat","name":"aConvBase:2.Explosion Damage"}],"scaling":[5]}],"id":39},{"display_name":"Healthier Ophanim I","desc":"Increase the health of your orbs from Ophanim by +800 and reduce the damage they take when hitting an enemy by -5%.","archetype":"Light Bender","archetype_req":0,"base_abil":21,"parents":[32,31],"dependencies":[21],"blockers":[],"cost":1,"display":{"row":22,"col":3,"icon":"node_0"},"properties":{},"effects":[],"id":40},{"display_name":"Orphion's Pulse","desc":"Heal will trigger 2 more times, increasing the overall healing.","archetype":"Light Bender","base_abil":2,"parents":[40,36],"dependencies":[2],"blockers":[22],"cost":2,"display":{"row":23,"col":4,"icon":"node_1"},"properties":{"aoe":5},"effects":[{"type":"add_spell_prop","base_spell":1,"target_part":"Heal Pulse","power":0.15},{"type":"add_spell_prop","base_spell":1,"display":"Total Heal","target_part":"Total Heal","hits":{"Heal":1,"Heal Pulse":2}}],"id":41},{"display_name":"Diffusion","desc":"If you kill an enemy with Winded on them, the leftover Winded will spread to nearby enemies.","archetype":"Riftwalker","archetype_req":6,"base_abil":20,"parents":[39,38],"dependencies":[20],"blockers":[],"cost":2,"display":{"row":25,"col":1,"icon":"node_3"},"properties":{"aoe":5},"effects":[],"id":42},{"display_name":"Lightweaver","desc":"After healing 60% of your max health within 10s, summon a rotating orb that damages all enemies it touches for 20s. (Max 3 Orbs)","archetype":"Light Bender","archetype_req":7,"parents":[41],"dependencies":[],"blockers":[],"cost":2,"display":{"row":25,"col":4,"icon":"node_3"},"properties":{},"effects":[{"type":"replace_spell","name":"Lightweaver","base_spell":5,"display":"Orb Damage","parts":[{"name":"Single Orb","type":"damage","multipliers":[30,0,0,0,20,0]},{"name":"Orb Damage","type":"total","hits":{"Single Orb":3}}]}],"id":43},{"display_name":"Arcane Speed","desc":"After casting Heal or Arcane Transfer, gain +80% speed for 3s. (8s Cooldown)","base_abil":2,"parents":[43,45],"dependencies":[2],"blockers":[],"cost":2,"display":{"row":25,"col":6,"icon":"node_1"},"properties":{},"effects":[],"id":44},{"display_name":"Larger Mana Bank II","desc":"Increase your maximum Mana Bank by +30.","base_abil":1,"archetype":"Arcanist","archetype_req":0,"parents":[34,44],"dependencies":[22],"blockers":[],"cost":1,"display":{"row":25,"col":8,"icon":"node_0"},"properties":{},"effects":[],"id":45},{"display_name":"Psychokinesis","desc":"Meteor will launch directly from you as a slow projectile.","base_abil":3,"archetype":"Arcanist","archetype_req":5,"parents":[45,44],"dependencies":[0],"blockers":[],"cost":1,"display":{"row":26,"col":7,"icon":"node_1"},"properties":{},"effects":[],"id":46},{"display_name":"More Winded","desc":"Incrase your maximum Winded by +5.","base_abil":20,"archetype":"Riftwalker","archetype_req":0,"parents":[42],"dependencies":[20],"blockers":[],"cost":1,"display":{"row":26,"col":0,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"prop","abil":20,"name":"max","value":5}]},{"type":"stat_scaling","slider":true,"slider_name":"Winded","slider_max":5}],"id":47},{"display_name":"Cheaper Ice Snake II","desc":"Reduce the Mana cost of Ice Snake.","base_abil":3,"parents":[42,52],"dependencies":[],"blockers":[],"cost":1,"display":{"row":27,"col":1,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":4,"cost":-5}],"id":48},{"display_name":"Cheaper Meteor II","desc":"Reduce the Mana cost of Meteor.","base_abil":0,"parents":[52,43,44],"dependencies":[],"blockers":[],"cost":1,"display":{"row":27,"col":5,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"cost":-5}],"id":49},{"display_name":"Chaos Explosion","desc":"When your Mana Bank reaches 120, casting Arcane Transfer will rapidly unleash the last 3 spells you've cast in order.","base_abil":22,"archetype":"Arcanist","archetype_req":8,"parents":[45],"dependencies":[22],"blockers":[],"cost":2,"display":{"row":27,"col":8,"icon":"node_3"},"properties":{},"effects":[],"id":50},{"display_name":"Arcane Power","desc":"Meteor and Ice Snake will add +2 Mana to your Mana Bank for each aggressive mob you hit.","base_abil":22,"archetype":"Arcanist","archetype_req":0,"parents":[56],"dependencies":[22],"blockers":[],"cost":1,"display":{"row":29,"col":6,"icon":"node_0"},"properties":{},"effects":[],"id":51},{"display_name":"Explosive Entrance","desc":"Deal Damage in an area on the location you Teleport to.","base_abil":1,"parents":[48,49],"dependencies":[1],"blockers":[],"cost":2,"display":{"row":27,"col":3,"icon":"node_1"},"properties":{"aoe":3},"effects":[{"type":"add_spell_prop","target_part":"Explosion Damage","base_spell":2,"multipliers":[50,0,0,0,30,0]},{"type":"add_spell_prop","behavior":"modify","target_part":"Total Damage","base_spell":2,"hits":{"Explosion Damage":1}}],"id":52},{"display_name":"Gust","desc":"Ice Snake will add +1 Winded to enemies and deal more damage.","base_abil":3,"archetype":"Riftwalker","archetype_req":7,"parents":[48,52],"dependencies":[3],"blockers":[],"cost":2,"display":{"row":28,"col":2,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","target_part":"Ice Snake Damage","base_spell":4,"multipliers":[0,0,0,0,0,20]}],"id":53},{"display_name":"Time Dilation","desc":"When sprinting, create an area that increases the speed of all allies the longer they run in it. (Step out or stop running to cancel)","archetype":"Riftwalker","archetype_req":7,"parents":[48],"dependencies":[],"blockers":[],"cost":2,"display":{"row":28,"col":0,"icon":"node_2"},"properties":{},"effects":[],"id":54},{"display_name":"Better Ophanim","desc":"Increase your maximum orbs from Ophanim by +1.","archetype":"Light Bender","archetype_req":0,"base_abil":21,"parents":[49],"_parents":["Explosive Entrance","Cheaper Meteor II"],"dependencies":[21],"blockers":[],"cost":1,"display":{"row":28,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Per Melee (max)","hits":{"Per Orb":1}}],"id":55},{"display_name":"Arctic Snake","desc":"Ice Snake will freeze enemies completely for 2s.","base_abil":3,"parents":[50],"dependencies":[3],"blockers":[],"cost":2,"display":{"row":28,"col":7,"icon":"node_1"},"properties":{},"effects":[],"id":56},{"display_name":"Devitalize","desc":"Enemies will deal -2% damage for every Winded they have.","base_abil":20,"archetype":"Riftwalker","archetype_req":5,"parents":[58,59],"dependencies":[],"blockers":[],"cost":2,"display":{"row":32,"col":1,"icon":"node_1"},"properties":{},"effects":[],"id":57},{"display_name":"More Winded II","desc":"Incrase your maximum Winded by +5.","base_abil":20,"archetype":"Riftwalker","archetype_req":0,"parents":[54],"_parents":["Time Dilation","Dynamic Faith"],"dependencies":[20],"blockers":[],"cost":1,"display":{"row":31,"col":0,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"prop","abil":20,"name":"max","value":5}]},{"type":"stat_scaling","slider":true,"slider_name":"Winded","slider_max":5}],"id":58},{"display_name":"Dynamic Faith","desc":"For every 2% Sprint you have from items, gain +1% Thunder Damage (Max 100%)","parents":[58,61],"dependencies":[],"blockers":[],"cost":1,"display":{"row":31,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"stat_scaling","slider":false,"inputs":[{"type":"stat","name":"sprint"}],"output":{"type":"stat","name":"tDamPct"},"scaling":[0.5],"max":100}],"id":59},{"display_name":"Divination","desc":"Increase your maximum orbs from Ophanim by +3 and reduce their damage.","base_abil":21,"archetype":"Light Bender","archetype_req":0,"parents":[59,61],"dependencies":[21],"blockers":[],"cost":2,"display":{"row":32,"col":3,"icon":"node_2"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Per Orb","multipliers":[-50,0,-10,0,0,0]},{"type":"add_spell_prop","base_spell":3,"target_part":"Per Melee (max)","hits":{"Per Orb":3}}],"id":60},{"display_name":"Healthier Ophanim II","desc":"Increase the health of your orbs from Ophanim by +3000.","base_abil":21,"archetype":"Light Bender","archetype_req":0,"parents":[55],"dependencies":[40],"blockers":[],"cost":1,"display":{"row":31,"col":4,"icon":"node_0"},"properties":{},"effects":[],"id":61},{"display_name":"Sunflare","desc":"After healing 400% of your max health within 10s, your next Heal will make every nearby ally temporarily immune.","archetype":"Light Bender","archetype_req":12,"base_abil":2,"parents":[61],"dependencies":[],"blockers":[],"cost":2,"display":{"row":32,"col":5,"icon":"node_3"},"properties":{"aoe":12,"duration":5},"effects":[],"id":62},{"display_name":"Larger Mana Bank III","desc":"Increase your maximum Mana Bank by +30.","archetype":"Arcanist","archetype_req":0,"base_abil":22,"parents":[56],"dependencies":[22],"blockers":[],"cost":1,"display":{"row":31,"col":7,"icon":"node_0"},"properties":{},"effects":[],"id":63},{"display_name":"Arcane Overflow","desc":"Arcane Transfer will allow you to overflow your mana over its maximum limits.","archetype":"Arcanist","archetype_req":11,"base_abil":22,"parents":[63],"dependencies":[22],"blockers":[],"cost":2,"display":{"row":33,"col":7,"icon":"node_3"},"properties":{},"effects":[],"id":64},{"display_name":"Memory Recollection","desc":"Chaos Explosion will cast +2 spells.","archetype":"Arcanist","archetype_req":0,"base_abil":22,"parents":[64],"dependencies":[50],"blockers":[],"cost":1,"display":{"row":34,"col":8,"icon":"node_0"},"properties":{},"effects":[],"id":65},{"display_name":"Manastorm","desc":"If you have more than 100 Mana, casting a spell will give you +10 mana over 5s.","archetype":"Arcanist","archetype_req":1,"parents":[69,64,62],"dependencies":[],"blockers":[],"cost":2,"display":{"row":34,"col":5,"icon":"node_1"},"properties":{},"effects":[],"id":66},{"display_name":"Better Lightweaver","desc":"Increase your Max Orbs by +2.","archetype":"Light Bender","archetype_req":0,"base_abil":43,"parents":[69,66],"dependencies":[43],"blockers":[],"cost":1,"display":{"row":35,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","target_part":"Orb Damage","base_spell":5,"hits":{"Single Orb":2}}],"id":67},{"display_name":"Timelock","desc":"Holding shift and casting Heal will absorb all Winded on nearby enemies and make you Timelocked. While Timelocked, your mana will not be depleted and you become immovable from outside forces. Enemies will recieve Winded damage from all absorbed stacks. (Max 30)","archetype":"Riftwalker","archetype_req":12,"parents":[58],"dependencies":[],"blockers":[],"cost":2,"display":{"row":34,"col":0,"icon":"node_3"},"properties":{},"effects":[],"id":68},{"display_name":"Cheaper Heal II","desc":"Reduce the Mana cost of Heal.","base_abil":2,"parents":[68,66],"dependencies":[],"blockers":[],"cost":1,"display":{"row":34,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"cost":-5}],"id":69}],"Assassin":[{"display_name":"Spin Attack","desc":"Slash rapidly around you, damaging enemies in a large area.","archetype":"","archetype_req":0,"parents":[],"dependencies":[],"blockers":[],"cost":1,"display":{"row":0,"col":4,"icon":"node_assassin"},"properties":{},"effects":[{"type":"replace_spell","name":"Spin Attack","cost":45,"base_spell":1,"spell_type":"damage","scaling":"spell","use_atkspd":true,"display":"Spin Attack","parts":[{"name":"Spin Attack","type":"damage","multipliers":[120,0,30,0,0,0]}]}],"id":0},{"display_name":"Dagger Proficiency I","desc":"Increase your speed by +5% and improve your Main Attack’s damage when using a dagger.","archetype":"","archetype_req":0,"parents":[0],"dependencies":[],"blockers":[],"cost":1,"display":{"row":2,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"spd","value":5},{"type":"stat","name":"mdPct","value":5}]}],"id":1},{"display_name":"Cheaper Spin Attack","desc":"Reduce the Mana cost of Spin Attack.","archetype":"","archetype_req":0,"base_abil":0,"parents":[1],"dependencies":[],"blockers":[],"cost":1,"display":{"row":2,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"cost":-10}],"id":2},{"display_name":"Double Spin","desc":"Spin Attack will activate twice.","archetype":"","archetype_req":0,"base_abil":0,"parents":[1],"dependencies":[],"blockers":[],"cost":1,"display":{"row":4,"col":4,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"target_part":"Total Damage","hits":{"Spin Attack":2},"display":"Total Damage"}],"id":3},{"display_name":"Poisoned Blade","desc":"For every 24 or 2 Raw Main Attack Damage you have from items, gain +5/3s Poison Damage (Max 50/3s)","archetype":"Shadestepper","archetype_req":0,"parents":[5],"dependencies":[],"blockers":[6],"cost":0,"display":{"row":7,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"stat_scaling","slider":false,"inputs":[{"type":"stat","name":"mdPct"},{"type":"stat","name":"mdRaw"}],"output":[{"type":"stat","name":"poison"}],"scaling":[2.5,2.5],"max":50}],"id":4},{"display_name":"Dash","desc":"Dash in the direction you're facing.","archetype":"","archetype_req":0,"parents":[3],"dependencies":[],"blockers":[],"cost":1,"display":{"row":7,"col":4,"icon":"node_assassin"},"properties":{},"effects":[{"type":"replace_spell","name":"Dash","cost":20,"base_spell":2,"spell_type":"damage","scaling":"spell","use_atkspd":true,"display":"Total Damage","parts":[{"name":"None","type":"damage","multipliers":[0,0,0,0,0,0]}]}],"id":5},{"display_name":"Double Slice","desc":"Your Main Attack will attack twice, but deal -4% damage per hit.","archetype":"Acrobat","archetype_req":0,"base_abil":999,"parents":[5],"dependencies":[],"blockers":[4],"cost":1,"display":{"row":7,"col":6,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":0,"multipliers":[-40,0,0,0,0,0]}],"id":6},{"display_name":"Smoke Bomb","desc":"Throw a bomb that slouly emits smoke, damaging all enemies in it every 0.5s.","archetype":"","archetype_req":0,"parents":[4,8],"dependencies":[],"blockers":[],"cost":1,"display":{"row":9,"col":2,"icon":"node_assassin"},"properties":{},"effects":[{"type":"replace_spell","name":"Smoke Bomb","cost":40,"base_spell":4,"spell_type":"damage","scaling":"spell","use_atkspd":true,"display":"Total Damage","parts":[{"name":"Per Tick","type":"damage","multipliers":[25,5,0,0,0,5]},{"name":"Per Bomb","type":"total","hits":{"Per Tick":10}},{"name":"Total Damage","type":"total","hits":{"Per Bomb":1}}]}],"id":7},{"display_name":"Cheaper Dash","desc":"Reduce the Mana cost of Dash","archetype":"","archetype_req":0,"base_abil":5,"parents":[7,9],"dependencies":[],"blockers":[],"cost":1,"display":{"row":9,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":2,"cost":-5}],"id":8},{"display_name":"Multihit","desc":"Unleash a rapid flurry of 8 hits to enemies facing you, dealing overwhelming damage","archetype":"","archetype_req":0,"parents":[6,8],"dependencies":[],"blockers":[],"cost":1,"display":{"row":9,"col":6,"icon":"node_assassin"},"properties":{},"effects":[{"type":"replace_spell","name":"Multihit","cost":45,"base_spell":3,"spell_type":"damage","scaling":"spell","use_atkspd":true,"display":"Total Damage","parts":[{"name":"Per Hit","type":"damage","multipliers":[25,0,0,10,0,0]},{"name":"Total Damage","type":"total","hits":{"Per Hit":8}}]}],"id":9},{"display_name":"Earth Mastery","desc":"Increases base damage from all Earth attacks","archetype":"Shadestepper","archetype_req":0,"base_abil":998,"parents":[7,11],"dependencies":[],"blockers":[],"cost":1,"display":{"row":13,"col":0,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"eDamPct","value":20},{"type":"stat","name":"eDamAddMin","value":2},{"type":"stat","name":"eDamAddMax","value":4}]}],"id":10},{"display_name":"Thunder Mastery","desc":"Increases base damage from all Thunder attacks","archetype":"Shadestepper","archetype_req":0,"base_abil":998,"parents":[10,7],"dependencies":[],"blockers":[],"cost":1,"display":{"row":13,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"tDamPct","value":10},{"type":"stat","name":"tDamAddMin","value":1},{"type":"stat","name":"tDamAddMax","value":8}]}],"id":11},{"display_name":"Fire Mastery","desc":"Increases base damage from all Fire attacks","archetype":"Trickster","archetype_req":0,"base_abil":998,"parents":[8,13],"dependencies":[],"blockers":[],"cost":1,"display":{"row":14,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"fDamPct","value":15},{"type":"stat","name":"fDamAddMin","value":3},{"type":"stat","name":"fDamAddMax","value":5}]}],"id":12},{"display_name":"Water Mastery","desc":"Increases base damage from all Water attacks","archetype":"Acrobat","archetype_req":0,"base_abil":998,"parents":[9,14],"dependencies":[],"blockers":[],"cost":1,"display":{"row":13,"col":6,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"wDamPct","value":15},{"type":"stat","name":"wDamAddMin","value":2},{"type":"stat","name":"wDamAddMax","value":4}]}],"id":13},{"display_name":"Air Mastery","desc":"Increases base damage from all Air attacks","archetype":"Acrobat","archetype_req":0,"base_abil":998,"parents":[13,9],"dependencies":[],"blockers":[],"cost":1,"display":{"row":13,"col":8,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"aDamPct","value":15},{"type":"stat","name":"aDamAddMin","value":3},{"type":"stat","name":"aDamAddMax","value":4}]}],"id":14},{"display_name":"Backstab","desc":"Multihit will deal a single devastating hit. If you strike the enemy from behind, deal double damage","archetype":"Shadestepper","archetype_req":2,"parents":[10,11],"dependencies":[9],"blockers":[44],"cost":2,"display":{"row":15,"col":1,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Per Hit","behavior":"modify","cost":0,"multipliers":[200,50,0,0,0,0]},{"type":"add_spell_prop","base_spell":3,"target_part":"Total Damage","behavior":"modify","hits":{"Per Hit":1}},{"type":"add_spell_prop","base_spell":3,"cost":-5}],"id":15},{"display_name":"Fatality","desc":"Multihit will deal an additional final slash","archetype":"","archetype_req":0,"base_abil":9,"parents":[13,14],"dependencies":[9],"blockers":[],"cost":2,"display":{"row":15,"col":7,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"target_part":"Fatality","multipliers":[100,0,0,0,0,50]},{"type":"add_spell_prop","base_spell":3,"target_part":"Total Damage","hits":{"Fatality":1}}],"id":16},{"display_name":"Vanish","desc":"Dash will vanish you into the shadows and make you invisible to enemies (10s Cooldown). You cannot heal or gain mana while in that state (Attack or get hit to cancel)","archetype":"","archetype_req":0,"base_abil":5,"parents":[15,18],"dependencies":[5],"blockers":[],"cost":2,"display":{"row":16,"col":2,"icon":"node_2"},"properties":{"duration":5},"effects":[],"id":17},{"display_name":"Sticky Bomb","desc":"Smoke Bomb will stick to enemies and deal additional damage","archetype":"Trickster","archetype_req":0,"base_abil":7,"parents":[17,12],"dependencies":[7],"blockers":[],"cost":2,"display":{"row":16,"col":4,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":4,"target_part":"Per Tick","multipliers":[0,0,0,0,10,0]}],"id":18},{"display_name":"Righting Reflex","desc":"When you hold shift while airborne, slowly glide and become immune to fall damage (Max 5s)","archetype":"Acrobat","archetype_req":0,"parents":[16],"dependencies":[],"blockers":[],"cost":2,"display":{"row":16,"col":6,"icon":"node_2"},"properties":{},"effects":[],"id":19},{"display_name":"Surprise Strike","desc":"While using Vanish, your next attack will deal +60% more damage for a single hit only","archetype":"Shadestepper","archetype_req":3,"base_abil":5,"parents":[17],"dependencies":[17],"blockers":[],"cost":2,"display":{"row":19,"col":2,"icon":"node_3"},"properties":{},"effects":[{"type":"raw_stat","toggle":"Activate Surprise Strike","bonuses":[{"type":"stat","name":"damMult.SurpriseStrike","value":60}]}],"id":20},{"display_name":"Mirror Image","desc":"After leaving Vanish, summon 3 Clones that will follow you and protect you. (20s Cooldown)","archetype":"Trickster","archetype_req":2,"base_abil":5,"parents":[18],"dependencies":[17],"blockers":[22],"cost":2,"display":{"row":19,"col":4,"icon":"node_3"},"properties":{"clone":3},"effects":[],"id":21},{"display_name":"Lacerate","desc":"Spin Attack will lunge you forward, deal 3 strikes, and lunge you backward","archetype":"Acrobat","archetype_req":2,"base_abil":0,"parents":[16],"dependencies":[],"blockers":[21],"cost":2,"display":{"row":19,"col":7,"icon":"node_3"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"target_part":"Spin Attack","behavior":"modify","multipliers":[40,0,0,10,0,20]},{"type":"add_spell_prop","base_spell":1,"target_part":"Total Damage","behavior":"modify","hits":{"Spin Attack":3}}],"id":22},{"display_name":"Silent Killer","desc":"After killing an enemy, reset Vanish's cooldown","archetype":"","archetype_req":0,"base_abil":5,"parents":[20],"dependencies":[17],"blockers":[],"cost":2,"display":{"row":20,"col":1,"icon":"node_2"},"properties":{},"effects":[],"id":23},{"display_name":"Shenanigans","desc":"For every 2% Stealing you have from items, gain +1/3s Mana Steal (Max 8/3s)","archetype":"Trickster","archetype_req":0,"parents":[21],"dependencies":[],"blockers":[],"cost":1,"display":{"row":20,"col":5,"icon":"node_0"},"properties":{},"effects":[{"type":"stat_scaling","slider":false,"inputs":[{"type":"stat","name":"stealing"}],"output":[{"type":"stat","name":"ms"}],"scaling":[0.5],"max":8}],"id":24},{"display_name":"Wall of Smoke","desc":"Smoke Bomb will throw +2 bombs, damaging more often in a larger area","archetype":"","archetype_req":0,"base_abil":7,"parents":[22],"dependencies":[7],"blockers":[],"cost":2,"display":{"row":20,"col":8,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":4,"target_part":"Total Damage","hits":{"Per Bomb":2}},{"type":"add_spell_prop","base_spell":4,"target_part":"Per Bomb","multipliers":[-20,0,0,0,0,0]}],"id":25},{"display_name":"Better Smoke Bomb","desc":"Increase the range and area of effect of Smoke Bomb","archetype":"","archetype_req":0,"base_abil":7,"parents":[23,27],"dependencies":[7],"blockers":[],"cost":1,"display":{"row":22,"col":0,"icon":"node_0"},"properties":{},"effects":[],"id":26},{"display_name":"Shadow Travel","desc":"Vanish will increase your speed by +100%","archetype":"Shadestepper","archetype_req":0,"base_abil":5,"parents":[26,23,28],"dependencies":[17],"blockers":[],"cost":2,"display":{"row":22,"col":2,"icon":"node_1"},"properties":{},"effects":[],"id":27},{"display_name":"Cheaper Multihit","desc":"Reduce the Mana cost of Multihit","archetype":"","archetype_req":0,"base_abil":9,"parents":[24,27,29],"dependencies":[],"blockers":[],"cost":1,"display":{"row":22,"col":5,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"cost":-5}],"id":28},{"display_name":"Dagger Proficiency II","desc":"Increase your Main Attack's range and add +5 raw damage to all attacks","archetype":"","archetype_req":0,"base_abil":999,"parents":[28,25],"dependencies":[],"blockers":[],"cost":1,"display":{"row":22,"col":8,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"damRaw","value":5}]}],"id":29},{"display_name":"Last Laugh","desc":"When losing a Clone, it will cast Spin Attack before dying","archetype":"Trickster","archetype_req":3,"base_abil":5,"parents":[27,28],"dependencies":[21],"blockers":[],"cost":2,"display":{"row":23,"col":4,"icon":"node_1"},"properties":{},"effects":[],"id":30},{"display_name":"Cheaper Smoke Bomb","desc":"Reduce the Mana cost of Smoke Bomb","archetype":"","archetype_req":0,"base_abil":7,"parents":[26,32],"dependencies":[7],"blockers":[],"cost":1,"display":{"row":25,"col":0,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":4,"cost":-5}],"id":31},{"display_name":"Blazing Powder","desc":"Spin Attack will blind enemies and deal additional damage","archetype":"","archetype_req":0,"base_abil":0,"parents":[31,27,28],"dependencies":[],"blockers":[],"cost":2,"display":{"row":25,"col":3,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"target_part":"Spin Attack","multipliers":[0,0,0,0,20,0]}],"id":32},{"display_name":"Weightless","desc":"When you hit an enemy while airborne, gain +0.5 Mana (1.25+ blocks off the ground to be airborne)","archetype":"Acrobat","archetype_req":4,"parents":[28,29],"dependencies":[],"blockers":[],"cost":2,"display":{"row":25,"col":7,"icon":"node_2"},"properties":{},"effects":[],"id":33},{"display_name":"Black Hole","desc":"Smoke Bomb will pull nearby enemies","archetype":"","archetype_req":0,"base_abil":7,"parents":[31,32],"dependencies":[],"blockers":[],"cost":2,"display":{"row":26,"col":1,"icon":"node_1"},"properties":{},"effects":[],"id":34},{"display_name":"Sandbagging","desc":"Anytime you get hit for less than 5% of your max hp, reduce your abilities cooldown by -2s. (1s Cooldown)","archetype":"Trickster","archetype_req":0,"parents":[32,36],"dependencies":[],"blockers":[],"cost":2,"display":{"row":26,"col":4,"icon":"node_1"},"properties":{},"effects":[],"id":35},{"display_name":"Hop","desc":"When you double tap jump, leap forward. (2s Cooldown)","archetype":"Acrobat","archetype_req":0,"parents":[35,33],"dependencies":[],"blockers":[],"cost":2,"display":{"row":26,"col":6,"icon":"node_1"},"properties":{"cooldown":2},"effects":[],"id":36},{"display_name":"Dancing Blade","desc":"Deal damage to mobs you Dash through","archetype":"","archetype_req":0,"base_abil":5,"parents":[33],"dependencies":[5],"blockers":[],"cost":2,"display":{"row":26,"col":8,"icon":"node_1"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":2,"target_part":"Dancing Blade","multipliers":[80,0,0,0,0,20],"display":"Dancing Blade"}],"id":37},{"display_name":"Violent Vortex","desc":"If you deal more damage than 2x of your max health in a single hit, deal 20% of the damage to other nearby enemies","archetype":"Shadestepper","archetype_req":0,"parents":[31],"dependencies":[],"blockers":[],"cost":2,"display":{"row":27,"col":0,"icon":"node_1"},"properties":{},"effects":[{"type":"replace_spell","name":"Violent Vortex","cost":0,"base_spell":5,"spell_type":"damage","scaling":"spell","use_atkspd":true,"display":"Total Damage","parts":[{"name":"Total Damage","type":"damage","multipliers":[0,0,0,0,0,0]}]}],"id":38},{"display_name":"Delirious Gas","desc":"While inside Smoke Bomb, increase your damage by +40% and gain Lure for 20s","archetype":"Trickster","archetype_req":4,"base_abil":7,"parents":[35],"dependencies":[7],"blockers":[],"cost":2,"display":{"row":27,"col":3,"icon":"node_2"},"properties":{},"effects":[{"type":"raw_stat","toggle":"Activate Delirious Gas","bonuses":[{"type":"stat","name":"damMult.DeliriousGas","value":40}]}],"id":39},{"display_name":"Marked","desc":"Smoke Bomb will add +1 Mark to enemies it hits. (Max 5, 0.5s Cooldown)","archetype":"Shadestepper","archetype_req":5,"parents":[38],"dependencies":[],"blockers":[],"cost":2,"display":{"row":28,"col":1,"icon":"node_3"},"properties":{},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Marked","slider_step":1,"slider_max":5,"output":[{"type":"stat","name":"damMult.Marked"}],"scaling":[10]}],"id":40},{"display_name":"Echo","desc":"Your Clones will mimic your spells and abilities. While they are active, deal -60% damage.","archetype":"Trickster","archetype_req":6,"base_abil":5,"parents":[35,42],"dependencies":[21],"blockers":[],"cost":2,"display":{"row":28,"col":4,"icon":"node_3"},"properties":{},"effects":[{"type":"raw_stat","toggle":"Activate Echo","bonuses":[{"type":"stat","name":"damMult.Echo","value":-60}]}],"id":41},{"display_name":"Shurikens","desc":"After using Dash, your next Main Attack will throw 3 shurikens","archetype":"Acrobat","archetype_req":0,"base_abil":5,"parents":[41,43],"dependencies":[],"blockers":[],"cost":2,"display":{"row":28,"col":6,"icon":"node_2"},"properties":{},"effects":[{"type":"replace_spell","name":"Shurikens","cost":0,"base_spell":6,"spell_type":"damage","scaling":"spell","use_atkspd":true,"display":"Total Damage","parts":[{"name":"Per Shuriken","type":"damage","multipliers":[90,0,0,0,10,0]},{"name":"Total Damage","type":"total","hits":{"Per Shuriken":3}}]}],"id":42},{"display_name":"Far Reach","desc":"Increase the range of Multihit","archetype":"","archetype_req":0,"base_abil":9,"parents":[37,42],"dependencies":[],"blockers":[],"cost":1,"display":{"row":28,"col":8,"icon":"node_0"},"properties":{},"effects":[],"id":43},{"display_name":"Stronger Multihit","desc":"Increases Multihit's amount of hits by +3","archetype":"","archetype_req":0,"base_abil":9,"parents":[41,42],"dependencies":[],"blockers":[15],"cost":1,"display":{"row":29,"col":5,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":0,"target_part":"Total Damage","hits":{"Per Hit":3}}],"id":44},{"display_name":"Psithurism","desc":"Increase your Walk Speed by +20% and your Jump Height by +1","archetype":"Acrobat","archetype_req":5,"parents":[42,43],"dependencies":[],"blockers":[],"cost":1,"display":{"row":29,"col":7,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","bonuses":[{"type":"stat","name":"ws","value":20},{"type":"stat","name":"jh","value":1}]}],"id":45},{"display_name":"Ambush","desc":"Increase Surprise Strike's damage by +40%","archetype":"Shadestepper","archetype_req":4,"base_abil":5,"parents":[40],"dependencies":[20],"blockers":[],"cost":1,"display":{"row":31,"col":1,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","toggle":"Activate Surprise Strike","bonuses":[{"type":"stat","name":"damMult.SurpriseStrike","value":40}]}],"id":46},{"display_name":"Cheaper Dash 2","desc":"Reduce the Mana cost of Dash","archetype":"","archetype_req":0,"base_abil":5,"parents":[41],"dependencies":[],"blockers":[],"cost":1,"display":{"row":31,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":2,"cost":-5}],"id":47},{"display_name":"Parry","desc":"After dodging damage, if you cast a spell within 1.5s, it will be free. (3s Cooldown)","archetype":"Acrobat","archetype_req":5,"parents":[49],"dependencies":[],"blockers":[],"cost":2,"display":{"row":31,"col":6,"icon":"node_2"},"properties":{},"effects":[],"id":48},{"display_name":"Cheaper Spin Attack 2","desc":"Reduce the Mana cost of Spin Attack","archetype":"","archetype_req":0,"base_abil":0,"parents":[43,48],"dependencies":[],"blockers":[],"cost":1,"display":{"row":31,"col":8,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"cost":-5}],"id":49},{"display_name":"Death Magnet","desc":"After leaving Vanish, pull all nearby Marked mobs towards you","archetype":"Shadestepper","archetype_req":5,"base_abil":5,"parents":[51,46],"dependencies":[17],"blockers":[],"cost":2,"display":{"row":33,"col":0,"icon":"node_1"},"properties":{},"effects":[],"id":50},{"display_name":"Cheaper Multihit 2","desc":"Reduce the Mana cost of Multihit","archetype":"","archetype_req":0,"base_abil":9,"parents":[50,46,52],"dependencies":[],"blockers":[],"cost":1,"display":{"row":33,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":3,"cost":-5}],"id":51},{"display_name":"Hoodwink","desc":"When hitting enemies with Spin Attack, shorten the duration of your negative effects by 30% and transfer it onto enemies Lure can be transferred to the feeble minded. (Bosses and special enemies are immune)","archetype":"Trickster","archetype_req":1,"base_abil":0,"parents":[51,47,53],"dependencies":[0],"blockers":[],"cost":2,"display":{"row":33,"col":4,"icon":"node_1"},"properties":{},"effects":[],"id":52},{"display_name":"Choke Bomb","desc":"Smoke Bomb will slow down enemies while in the smoke","archetype":"Trickster","archetype_req":0,"base_abil":7,"parents":[52,54,48],"dependencies":[],"blockers":[],"cost":1,"display":{"row":33,"col":6,"icon":"node_1"},"properties":{},"effects":[],"id":53},{"display_name":"Wall Jump","desc":"When you Hop into a wall, bounce backward. (Hold shift to cancel)","archetype":"Acrobat","archetype_req":5,"parents":[53,49],"dependencies":[36],"blockers":[],"cost":2,"display":{"row":33,"col":8,"icon":"node_1"},"properties":{},"effects":[],"id":54},{"display_name":"Fatal Spin","desc":"Spin Attack will add +1 Mark to all enemies it hits and gain additional area of effect","archetype":"Shadestepper","archetype_req":8,"base_abil":0,"parents":[50,51],"dependencies":[40],"blockers":[],"cost":2,"display":{"row":34,"col":1,"icon":"node_1"},"properties":{},"effects":[],"id":55},{"display_name":"Stronger Lacerate","desc":"Lacerate will deal +1 slash","archetype":"Acrobat","archetype_req":0,"base_abil":0,"parents":[53,54],"dependencies":[22],"blockers":[],"cost":1,"display":{"row":34,"col":7,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":1,"target_part":"Total Damage","hits":{"Spin Attack":1}}],"id":56},{"display_name":"Stronger Vortex","desc":"If you deal more damage than 3x of your max health in a single hit, deal 60% of the damage to other nearby enemies","archetype":"Shadestepper","archetype_req":4,"parents":[55],"dependencies":[38],"blockers":[],"cost":2,"display":{"row":35,"col":0,"icon":"node_0"},"properties":{},"effects":[{"type":"replace_spell","name":"Violent Vortex","cost":0,"base_spell":5,"spell_type":"damage","scaling":"spell","use_atkspd":true,"display":"Total Damage","parts":[{"name":"Total Damage","type":"damage","multipliers":[0,0,0,0,0,0]}]}],"id":57},{"display_name":"Harvester","desc":"After killing an enemy, gain +5 Mana for each leftover Marks it had","archetype":"Shadestepper","archetype_req":0,"parents":[55,59],"dependencies":[40],"blockers":[],"cost":2,"display":{"row":37,"col":1,"icon":"node_2"},"properties":{},"effects":[],"id":58},{"display_name":"Cheaper Smoke Bomb 2","desc":"Reduce the Mana cost of Smoke Bomb","archetype":"","archetype_req":0,"base_abil":7,"parents":[58,52,60],"dependencies":[7],"blockers":[],"cost":1,"display":{"row":37,"col":4,"icon":"node_0"},"properties":{},"effects":[{"type":"add_spell_prop","base_spell":4,"cost":-5}],"id":59},{"display_name":"Blade Fury","desc":"Multihit will be easier to aim and enemies hit will stay locked in front of you","archetype":"Acrobat","archetype_req":0,"base_abil":9,"parents":[56,59],"dependencies":[],"blockers":[],"cost":2,"display":{"row":37,"col":7,"icon":"node_1"},"properties":{},"effects":[],"id":60},{"display_name":"More Marks","desc":"Add +2 max Marks","archetype":"Shadestepper","archetype_req":0,"base_abil":40,"parents":[58,59],"dependencies":[40],"blockers":[],"cost":1,"display":{"row":38,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Marked","slider_max":2,"output":[{"type":"stat","name":"damMult.Marked"}],"scaling":[10]}],"id":61},{"display_name":"Stronger Clones","desc":"Improve your damage while your Clones are active by +20%","archetype":"Trickster","archetype_req":7,"base_abil":5,"parents":[59,60],"dependencies":[21],"blockers":[],"cost":2,"display":{"row":38,"col":5,"icon":"node_0"},"properties":{},"effects":[{"type":"raw_stat","toggle":"Activate Echo","bonuses":[{"type":"stat","name":"damMult.Echo","value":20}]}],"id":62},{"display_name":"Ricochets","desc":"When hitting an enemy with your Shurikens, they will bounce to the nearest enemy","archetype":"Acrobat","archetype_req":6,"base_abil":5,"parents":[60],"dependencies":[42],"blockers":[],"cost":2,"display":{"row":38,"col":8,"icon":"node_1"},"properties":{},"effects":[],"id":63},{"display_name":"Satsujin","desc":"If an enemy has 3 Marks and 70% of their health or more, your next hit will deal triple damage. (30s Cooldown, per enemy)","archetype":"Shadestepper","archetype_req":12,"parents":[58],"dependencies":[],"blockers":[],"cost":2,"display":{"row":39,"col":1,"icon":"node_3"},"properties":{},"effects":[{"type":"raw_stat","toggle":"Activate Satsujin","bonuses":[{"type":"stat","name":"dmgMult.Satsujin","value":300}]}],"id":64},{"display_name":"Forbidden Art","desc":"Summon +3 additional Clones. (+20s Cooldown)","archetype":"Trickster","archetype_req":8,"base_abil":5,"parents":[59],"dependencies":[21],"blockers":[],"cost":2,"display":{"row":39,"col":4,"icon":"node_2"},"properties":{},"effects":[],"id":65},{"display_name":"Diversion","desc":"Anytime a Lured enemy gets killed, every nearby ally gets +40% health as extra overflowing health. (3s Cooldown). Decay -4% of the bonus every second.","archetype":"Trickster","archetype_req":12,"base_abil":7,"parents":[65],"dependencies":[39],"blockers":[],"cost":2,"display":{"row":40,"col":5,"icon":"node_3"},"properties":{},"effects":[],"id":66},{"display_name":"Jasmine Bloom","desc":"After spending 40 Mana, bloom an area under you that damages enemies below it every 0.4s After every bloom, reset the duration and increase the radius (Max 10 Blocks)","archetype":"Acrobat","archetype_req":12,"parents":[60],"dependencies":[],"blockers":[],"cost":2,"display":{"row":39,"col":7,"icon":"node_3"},"properties":{},"effects":[{"type":"replace_spell","name":"Jasmine Bloom","cost":0,"base_spell":7,"spell_type":"damage","scaling":"spell","use_atkspd":true,"display":"Per Hit","parts":[{"name":"Per Hit","type":"damage","multipliers":[60,5,0,15,0,0]}]}],"id":67},{"display_name":"Better Ricochets","desc":"Add +1 Max Bounce to Ricochets","archetype":"Acrobat","archetype_req":0,"base_abil":5,"parents":[67],"dependencies":[63],"blockers":[],"cost":1,"display":{"row":40,"col":8,"icon":"node_0"},"properties":{},"effects":[],"id":68},{"display_name":"Devour","desc":"Harvester will give +5 Mana","archetype":"Shadestepper","archetype_req":0,"parents":[64],"dependencies":[58],"blockers":[],"cost":1,"display":{"row":41,"col":0,"icon":"node_0"},"properties":{},"effects":[],"id":69},{"display_name":"Better Marked","desc":"Increase Marked's damage bonus by +5%","archetype":"","archetype_req":0,"base_abil":40,"parents":[64],"dependencies":[],"blockers":[],"cost":1,"display":{"row":41,"col":2,"icon":"node_0"},"properties":{},"effects":[{"type":"stat_scaling","slider":true,"slider_name":"Marked","output":[{"type":"stat","name":"damMult.Marked"}],"scaling":[5]}],"id":70}]} \ No newline at end of file