Merge branch 'atree-json-fix' into atree_encode
This commit is contained in:
commit
61172d16d4
3 changed files with 41 additions and 47 deletions
|
@ -70,7 +70,7 @@ stat_scaling: {
|
||||||
"slider_name": Optional[str],
|
"slider_name": Optional[str],
|
||||||
"slider_step": Optional[float],
|
"slider_step": Optional[float],
|
||||||
"inputs": Optional[list[scaling_target]],
|
"inputs": Optional[list[scaling_target]],
|
||||||
"output": scaling_target,
|
"output": scaling_target | List[scaling_target],
|
||||||
"scaling": list[float],
|
"scaling": list[float],
|
||||||
"max": float
|
"max": float
|
||||||
}
|
}
|
||||||
|
|
|
@ -3507,7 +3507,6 @@ const atrees = {
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"display_name": "Shield Strike",
|
"display_name": "Shield Strike",
|
||||||
"desc": "When your Mantle of the Bovemist loses all charges, deal damage around you for each Mantle individually lost",
|
"desc": "When your Mantle of the Bovemist loses all charges, deal damage around you for each Mantle individually lost",
|
||||||
|
@ -3573,13 +3572,12 @@ const atrees = {
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"display_name": "Massive Bash",
|
"display_name": "Massive Bash",
|
||||||
"desc": "While Corrupted, every 3% Health you lose will add +1 AoE to Bash (Max 10)",
|
"desc": "While Corrupted, every 3% Health you lose will add +1 AoE to Bash (Max 10)",
|
||||||
"archetype": "Fallen",
|
"archetype": "Fallen",
|
||||||
"archetype_req": 8,
|
"archetype_req": 8,
|
||||||
"base_abil": "Bak'al's Grasp",
|
"base_abil": "Bash",
|
||||||
"parents": ["Tempest", "Uncontainable Corruption"],
|
"parents": ["Tempest", "Uncontainable Corruption"],
|
||||||
"dependencies": [],
|
"dependencies": [],
|
||||||
"blockers": [],
|
"blockers": [],
|
||||||
|
@ -3600,13 +3598,11 @@ const atrees = {
|
||||||
"abil": "Bash",
|
"abil": "Bash",
|
||||||
"name": "aoe"
|
"name": "aoe"
|
||||||
},
|
},
|
||||||
"scaling": [0.333333333333333],
|
"scaling": [0.3333333333333333],
|
||||||
"max": 10,
|
"max": 10,
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},{
|
||||||
|
|
||||||
{
|
|
||||||
"display_name": "Tempest",
|
"display_name": "Tempest",
|
||||||
"desc": "War Scream will ripple the ground and deal damage 3 times in a large area",
|
"desc": "War Scream will ripple the ground and deal damage 3 times in a large area",
|
||||||
"archetype": "Battle Monk",
|
"archetype": "Battle Monk",
|
||||||
|
@ -3643,10 +3639,7 @@ const atrees = {
|
||||||
"type": "add_spell_prop",
|
"type": "add_spell_prop",
|
||||||
"base_spell": 4,
|
"base_spell": 4,
|
||||||
"target_part": "Total Damage",
|
"target_part": "Total Damage",
|
||||||
"cost": "0",
|
"hits": { "Tempest": 3 }
|
||||||
"hits": {
|
|
||||||
"Tempest": 3
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
@ -3655,7 +3648,7 @@ const atrees = {
|
||||||
"desc": "Reduce the Mana cost of Charge and increase your Walk Speed by +20%",
|
"desc": "Reduce the Mana cost of Charge and increase your Walk Speed by +20%",
|
||||||
"archetype": "Battle Monk",
|
"archetype": "Battle Monk",
|
||||||
"archetype_req": 5,
|
"archetype_req": 5,
|
||||||
"base_spell": "Charge",
|
"base_abil": "Charge",
|
||||||
"parents": ["Tempest", "Whirlwind Strike"],
|
"parents": ["Tempest", "Whirlwind Strike"],
|
||||||
"dependencies": [],
|
"dependencies": [],
|
||||||
"blockers": [],
|
"blockers": [],
|
||||||
|
@ -3674,22 +3667,15 @@ const atrees = {
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "raw_stat",
|
"type": "raw_stat",
|
||||||
"bonuses": [
|
"bonuses": [{ "type": "stat", "name": "spd", "value": 20 }]
|
||||||
{
|
|
||||||
"type": "stat",
|
|
||||||
"name": "spd",
|
|
||||||
"value": 20
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
},{
|
||||||
]
|
|
||||||
},
|
|
||||||
|
|
||||||
{
|
|
||||||
"display_name": "Massacre",
|
"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",
|
"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": "Fallen",
|
||||||
"archetype_req": 5,
|
"archetype_req": 5,
|
||||||
|
"base_abil": 999,
|
||||||
"parents": ["Tempest", "Massive Bash"],
|
"parents": ["Tempest", "Massive Bash"],
|
||||||
"dependencies": [],
|
"dependencies": [],
|
||||||
"blockers": [],
|
"blockers": [],
|
||||||
|
@ -3702,11 +3688,10 @@ const atrees = {
|
||||||
"properties": {},
|
"properties": {},
|
||||||
"effects": []
|
"effects": []
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"display_name": "Axe Kick",
|
"display_name": "Axe Kick",
|
||||||
"desc": "Increase the damage of Uppercut, but also increase its mana cost",
|
"desc": "Increase the damage of Uppercut, but also increase its mana cost",
|
||||||
"base_spell": "Uppercut",
|
"base_abil": "Uppercut",
|
||||||
"parents": ["Tempest", "Spirit of the Rabbit"],
|
"parents": ["Tempest", "Spirit of the Rabbit"],
|
||||||
"dependencies": [],
|
"dependencies": [],
|
||||||
"blockers": [],
|
"blockers": [],
|
||||||
|
@ -3732,7 +3717,7 @@ const atrees = {
|
||||||
"desc": "Bash will buff your allies' positive IDs. (15s Cooldown)",
|
"desc": "Bash will buff your allies' positive IDs. (15s Cooldown)",
|
||||||
"archetype": "Paladin",
|
"archetype": "Paladin",
|
||||||
"archetype_req": 2,
|
"archetype_req": 2,
|
||||||
"base_spell": "Bash",
|
"base_abil": "Bash",
|
||||||
"parents": ["Spirit of the Rabbit", "Cheaper Bash 2"],
|
"parents": ["Spirit of the Rabbit", "Cheaper Bash 2"],
|
||||||
"dependencies": [],
|
"dependencies": [],
|
||||||
"blockers": [],
|
"blockers": [],
|
||||||
|
@ -3751,7 +3736,7 @@ const atrees = {
|
||||||
{
|
{
|
||||||
"display_name": "Cheaper Bash 2",
|
"display_name": "Cheaper Bash 2",
|
||||||
"desc": "Reduce the Mana cost of Bash",
|
"desc": "Reduce the Mana cost of Bash",
|
||||||
"base_spell": "Bash",
|
"base_abil": "Bash",
|
||||||
"parents": ["Radiance", "Shield Strike", "Sparkling Hope"],
|
"parents": ["Radiance", "Shield Strike", "Sparkling Hope"],
|
||||||
"dependencies": [],
|
"dependencies": [],
|
||||||
"blockers": [],
|
"blockers": [],
|
||||||
|
@ -3774,7 +3759,7 @@ const atrees = {
|
||||||
{
|
{
|
||||||
"display_name": "Cheaper War Scream",
|
"display_name": "Cheaper War Scream",
|
||||||
"desc": "Reduce the Mana cost of War Scream",
|
"desc": "Reduce the Mana cost of War Scream",
|
||||||
"base_spell": "War Scream",
|
"base_abil": "War Scream",
|
||||||
"parents": ["Massive Bash"],
|
"parents": ["Massive Bash"],
|
||||||
"dependencies": [],
|
"dependencies": [],
|
||||||
"blockers": [],
|
"blockers": [],
|
||||||
|
@ -3815,10 +3800,13 @@ const atrees = {
|
||||||
"type": "stat_scaling",
|
"type": "stat_scaling",
|
||||||
"slider": true,
|
"slider": true,
|
||||||
"slider_name": "Hits dealt",
|
"slider_name": "Hits dealt",
|
||||||
"output": {
|
"output": [
|
||||||
"type": "stat",
|
{ "type": "stat", "name": "eDamAddMin" }, { "type": "stat", "name": "eDamAddMax" },
|
||||||
"name": "rainrawButDifferent"
|
{ "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": [2],
|
"scaling": [2],
|
||||||
"max": 50
|
"max": 50
|
||||||
}
|
}
|
||||||
|
@ -3881,14 +3869,12 @@ const atrees = {
|
||||||
"type": "add_spell_prop",
|
"type": "add_spell_prop",
|
||||||
"base_spell": 4,
|
"base_spell": 4,
|
||||||
"target_part": "Cyclone",
|
"target_part": "Cyclone",
|
||||||
"cost": 0,
|
|
||||||
"multipliers": [10, 0, 0, 0, 5, 10]
|
"multipliers": [10, 0, 0, 0, 5, 10]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "add_spell_prop",
|
"type": "add_spell_prop",
|
||||||
"base_spell": 4,
|
"base_spell": 4,
|
||||||
"target_part": "Cyclone Total Damage",
|
"target_part": "Cyclone Total Damage",
|
||||||
"cost": 0,
|
|
||||||
"hits": {
|
"hits": {
|
||||||
"Cyclone": 40
|
"Cyclone": 40
|
||||||
}
|
}
|
||||||
|
@ -3917,7 +3903,7 @@ const atrees = {
|
||||||
|
|
||||||
{
|
{
|
||||||
"display_name": "Blood Pact",
|
"display_name": "Blood Pact",
|
||||||
"desc": "If you do not have enough mana to cast a spell, spend health instead (1% health per mana)",
|
"desc": "If you do not have enough mana to cast a spell, spend health instead (0.6% health per mana)",
|
||||||
"archetype": "",
|
"archetype": "",
|
||||||
"archetype_req": 10,
|
"archetype_req": 10,
|
||||||
"parents": ["Cheaper War Scream"],
|
"parents": ["Cheaper War Scream"],
|
||||||
|
@ -3929,15 +3915,18 @@ const atrees = {
|
||||||
"col": 1,
|
"col": 1,
|
||||||
"icon": "node_3"
|
"icon": "node_3"
|
||||||
},
|
},
|
||||||
"properties": {},
|
"properties": {
|
||||||
|
"health_cost": 0.6
|
||||||
|
},
|
||||||
"effects": []
|
"effects": []
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"display_name": "Haemorrhage",
|
"display_name": "Haemorrhage",
|
||||||
"desc": "Reduce Blood Pact's health cost. (0.5% health per mana)",
|
"desc": "Reduce Blood Pact's health cost. (0.3% health per mana)",
|
||||||
"archetype": "Fallen",
|
"archetype": "Fallen",
|
||||||
"archetype_req": 0,
|
"archetype_req": 0,
|
||||||
|
"base_abil": "Blood Pact",
|
||||||
"parents": ["Blood Pact"],
|
"parents": ["Blood Pact"],
|
||||||
"dependencies": ["Blood Pact"],
|
"dependencies": ["Blood Pact"],
|
||||||
"blockers": [],
|
"blockers": [],
|
||||||
|
@ -3948,14 +3937,15 @@ const atrees = {
|
||||||
"icon": "node_1"
|
"icon": "node_1"
|
||||||
},
|
},
|
||||||
"properties": {},
|
"properties": {},
|
||||||
"effects": []
|
"effects": [{
|
||||||
|
"type": "raw_stat",
|
||||||
|
"bonuses": [{ "type": "prop", "abil": "Blood Pact", "name": "health_cost", "value": -0.3}]
|
||||||
|
}]
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"display_name": "Brink of Madness",
|
"display_name": "Brink of Madness",
|
||||||
"desc": "If your health is 25% full or less, gain +40% Resistance",
|
"desc": "If your health is 25% full or less, gain +40% Resistance",
|
||||||
"archetype": "",
|
|
||||||
"archetype_req": 0,
|
|
||||||
"parents": ["Blood Pact", "Cheaper Uppercut 2"],
|
"parents": ["Blood Pact", "Cheaper Uppercut 2"],
|
||||||
"dependencies": [],
|
"dependencies": [],
|
||||||
"blockers": [],
|
"blockers": [],
|
||||||
|
@ -3972,8 +3962,7 @@ const atrees = {
|
||||||
{
|
{
|
||||||
"display_name": "Cheaper Uppercut 2",
|
"display_name": "Cheaper Uppercut 2",
|
||||||
"desc": "Reduce the Mana cost of Uppercut",
|
"desc": "Reduce the Mana cost of Uppercut",
|
||||||
"archetype": "",
|
"base_abil": "Uppercut",
|
||||||
"archetype_req": 0,
|
|
||||||
"parents": ["Second Chance", "Brink of Madness"],
|
"parents": ["Second Chance", "Brink of Madness"],
|
||||||
"dependencies": [],
|
"dependencies": [],
|
||||||
"blockers": [],
|
"blockers": [],
|
||||||
|
|
|
@ -37,21 +37,26 @@ for _class, info in atree_data.items():
|
||||||
translate([abil], "base_abil")
|
translate([abil], "base_abil")
|
||||||
|
|
||||||
if "effects" not in info[abil]:
|
if "effects" not in info[abil]:
|
||||||
|
print("WARNING: abil missing 'effects' tag")
|
||||||
print(info[abil])
|
print(info[abil])
|
||||||
info[abil]["effects"] = []
|
info[abil]["effects"] = []
|
||||||
for effect in info[abil]["effects"]:
|
for effect in info[abil]["effects"]:
|
||||||
if effect["type"] == "raw_stat":
|
if effect["type"] == "raw_stat":
|
||||||
for bonus in effect["bonuses"]:
|
for bonus in effect["bonuses"]:
|
||||||
if "abil" in bonus:
|
if "abil" in bonus and bonus["abil"] in id_data[_class]:
|
||||||
bonus["abil"] = id_data[_class][bonus["abil"]]
|
bonus["abil"] = id_data[_class][bonus["abil"]]
|
||||||
|
|
||||||
elif effect["type"] == "stat_scaling":
|
elif effect["type"] == "stat_scaling":
|
||||||
if "inputs" in effect: # Might not exist for sliders
|
if "inputs" in effect: # Might not exist for sliders
|
||||||
for _input in effect["inputs"]:
|
for _input in effect["inputs"]:
|
||||||
if "abil" in _input:
|
if "abil" in _input and _input["abil"] in id_data[_class]:
|
||||||
_input["abil"] = id_data[_class][_input["abil"]]
|
_input["abil"] = id_data[_class][_input["abil"]]
|
||||||
|
if isinstance(effect["output"], list):
|
||||||
if "abil" in effect["output"]:
|
for output in effect["outputs"]:
|
||||||
|
if "abil" in output and output["abil"] in id_data[_class]:
|
||||||
|
output["abil"] = id_data[_class][output["abil"]]
|
||||||
|
else:
|
||||||
|
if "abil" in effect["output"] and effect["output"]["abil"] in id_data[_class]:
|
||||||
effect["output"]["abil"] = id_data[_class][effect["output"]["abil"]]
|
effect["output"]["abil"] = id_data[_class][effect["output"]["abil"]]
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue