From 98ac80688f585fc6ee79dc1ff2718f72d4c1b66b Mon Sep 17 00:00:00 2001 From: Lukasz Fortuna Date: Sat, 9 Nov 2024 19:35:30 +0100 Subject: [PATCH] Update abilities - added cost field to abilities - added dummy skills for orion - fixed module 'datetime' has not attribute 'UTC' error --- manifests.py | 4 +- openchamp/lang/en.json | 11 +- .../patchdata/onslaught/characters/orion.json | 161 +++++++++++++++++- 3 files changed, 171 insertions(+), 5 deletions(-) diff --git a/manifests.py b/manifests.py index 9f04e6c..c521008 100644 --- a/manifests.py +++ b/manifests.py @@ -19,7 +19,7 @@ def load_patchdata(patachdata_dir) -> Dict: for gamemode in gamemodes: gamemode_manifest = { - 'created_at': datetime.datetime.now(datetime.UTC).isoformat(), + 'created_at': datetime.datetime.now(datetime.timezone.utc).isoformat(), 'gamemode': gamemode, } @@ -101,7 +101,7 @@ def get_visible_subdir_names(file_path: str) -> str: main_manifest = { 'version': args['version'], 'update_url': args['update_url'], - 'created_at': datetime.datetime.now(datetime.UTC).isoformat(), + 'created_at': datetime.datetime.now(datetime.timezone.utc).isoformat(), 'asset_groups': asset_groups, } diff --git a/openchamp/lang/en.json b/openchamp/lang/en.json index c3299c8..38f81d3 100644 --- a/openchamp/lang/en.json +++ b/openchamp/lang/en.json @@ -91,6 +91,15 @@ "UNIT:openchamp:orion:ability_1:NAME": "Charged Shot", "UNIT:openchamp:orion:ability_1:LORE": "Orion charges his bow and fires a powerful shot that homes in on the target, dealing physical damage.", "UNIT:openchamp:orion:ability_1_fx": "Charged Shot", + "UNIT:openchamp:orion:ability_2:NAME": "Magic Mushroom", + "UNIT:openchamp:orion:ability_2:LORE": "Orion consumes magic mushroom which improves his movement and attack speed.", + "UNIT:openchamp:orion:ability_2_fx": "Magic Mushroom", + "UNIT:openchamp:orion:ability_3:NAME": "Charged Shot2", + "UNIT:openchamp:orion:ability_3:LORE": "Orion charges his bow and fires a powerful shot that homes in on the target, dealing physical damage.", + "UNIT:openchamp:orion:ability_3_fx": "Charged Shot2", + "UNIT:openchamp:orion:ability_4:NAME": "Eagle Eye Strike", + "UNIT:openchamp:orion:ability_4:LORE": "Takes aim and fires a single, devastating arrow that deals critical damage to a target.", + "UNIT:openchamp:orion:ability_4_fx": "Eagle Eye Strike", "ITEM:COST_LABEL": "Total cost: %d", "ITEM:NOT_ENOUGH_GOLD": "You need %d more gold to purchase \"%s\".", "ITEM:NOT_ENOUGH_SLOTS": "Not enough item slots to purchase item \"%s\".", @@ -119,4 +128,4 @@ "ITEM:openchamp:silky_glove:LORE": "An enchanted silk glove protects the wearer from magic and helps them attack faster.", "ITEM:openchamp:hidden_kunai:NAME": "Hidden Kunais", "ITEM:openchamp:hidden_kunai:LORE": "A pair of kunais that deal extra damage on hit." -} \ No newline at end of file +} diff --git a/openchamp/patchdata/onslaught/characters/orion.json b/openchamp/patchdata/onslaught/characters/orion.json index 7b67033..28d90d4 100644 --- a/openchamp/patchdata/onslaught/characters/orion.json +++ b/openchamp/patchdata/onslaught/characters/orion.json @@ -131,6 +131,7 @@ "channel_time": 0.5, "use_attack_range": false, "casting_range": 1500, + "cost": 40, "effect_source": "ability_single", "projectile": { "model": "openchamp:particles/arrow", @@ -171,7 +172,163 @@ "scaling": "500 + 1.5 c.curr.dmg_phy" } ] - } + }, + "ability_2": { + "display_id": "openchamp:orion:ability_2", + "texture_id": "openchamp:units/characters/orion/ability_2", + "has_upgrades": true, + "base_values": { + "base_id": "PointAndClickProjectile", + "display_id": "openchamp:orion:ability_2_fx", + "as_scaled": false, + "cooldown": 5, + "channel_time": 0.5, + "use_attack_range": false, + "casting_range": 1500, + "cost": 70, + "effect_source": "ability_single", + "projectile": { + "model": "openchamp:particles/arrow", + "model_scale": { + "x": 0.3, + "y": 1.0, + "z": 0.3 + }, + "model_rotation": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "spawn_offset": { + "x": 0.0, + "y": 1.0, + "z": 0.0 + }, + "speed": 30.0, + "damage_type": "physical", + "launch_sfx": "openchamp:sfx/game/basic_attack_1" + } + }, + "ability_data": [ + { + "scaling": "100 + 1.5 c.curr.dmg_phy" + }, + { + "scaling": "200 + 1.5 c.curr.dmg_phy" + }, + { + "scaling": "300 + 1.5 c.curr.dmg_phy" + }, + { + "scaling": "400 + 1.5 c.curr.dmg_phy" + }, + { + "scaling": "500 + 1.5 c.curr.dmg_phy" + } + ] + }, + "ability_3": { + "display_id": "openchamp:orion:ability_3", + "texture_id": "openchamp:units/characters/orion/ability_3", + "has_upgrades": true, + "base_values": { + "base_id": "PointAndClickProjectile", + "display_id": "openchamp:orion:ability_3_fx", + "as_scaled": false, + "cooldown": 5, + "channel_time": 0.5, + "use_attack_range": false, + "casting_range": 1500, + "cost": 40, + "effect_source": "ability_single", + "projectile": { + "model": "openchamp:particles/arrow", + "model_scale": { + "x": 0.3, + "y": 1.0, + "z": 0.3 + }, + "model_rotation": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "spawn_offset": { + "x": 0.0, + "y": 1.0, + "z": 0.0 + }, + "speed": 30.0, + "damage_type": "physical", + "launch_sfx": "openchamp:sfx/game/basic_attack_1" + } + }, + "ability_data": [ + { + "scaling": "100 + 1.5 c.curr.dmg_phy" + }, + { + "scaling": "200 + 1.5 c.curr.dmg_phy" + }, + { + "scaling": "300 + 1.5 c.curr.dmg_phy" + }, + { + "scaling": "400 + 1.5 c.curr.dmg_phy" + }, + { + "scaling": "500 + 1.5 c.curr.dmg_phy" + } + ] + }, + "ability_4": { + "display_id": "openchamp:orion:ability_4", + "texture_id": "openchamp:units/characters/orion/ability_4", + "has_upgrades": true, + "base_values": { + "base_id": "PointAndClickProjectile", + "display_id": "openchamp:orion:ability_4_fx", + "as_scaled": false, + "cooldown": 5, + "channel_time": 0.5, + "use_attack_range": false, + "casting_range": 3000, + "cost": 100, + "effect_source": "ability_single", + "projectile": { + "model": "openchamp:particles/arrow", + "model_scale": { + "x": 0.3, + "y": 1.0, + "z": 0.3 + }, + "model_rotation": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "spawn_offset": { + "x": 0.0, + "y": 1.0, + "z": 0.0 + }, + "speed": 30.0, + "damage_type": "physical", + "launch_sfx": "openchamp:sfx/game/basic_attack_1" + } + }, + "ability_data": [ + { + "scaling": "300 + 1.5 c.curr.dmg_phy" + }, + { + "scaling": "600 + 1.5 c.curr.dmg_phy" + }, + { + "scaling": "900 + 1.5 c.curr.dmg_phy" + } + ] + }, } } -} \ No newline at end of file +}