From f107c12406aa4750924ed99a86416aa7c607cd80 Mon Sep 17 00:00:00 2001 From: Standing-Storm <120433252+Standing-Storm@users.noreply.github.com> Date: Thu, 4 Jan 2024 10:07:15 -0600 Subject: [PATCH] [MoM] Add new telekinesis power--knockdown (#70623) * Add power * Add practice recipe * Fixes * Fixes * Fixes --- .../MindOverMatter/powers/telekinesis.json | 57 ++++++++++++++++++- .../practice/telekinesis_practice.json | 29 ++++++++++ 2 files changed, 84 insertions(+), 2 deletions(-) diff --git a/data/mods/MindOverMatter/powers/telekinesis.json b/data/mods/MindOverMatter/powers/telekinesis.json index 1344050c648f9..b02a7c4a9c61d 100644 --- a/data/mods/MindOverMatter/powers/telekinesis.json +++ b/data/mods/MindOverMatter/powers/telekinesis.json @@ -85,6 +85,59 @@ "ignored_monster_species": [ "PSI_NULL" ], "learn_spells": { "telekinetic_wave": 7, "telekinetic_hammer": 10, "telekinetic_strength": 13, "telekinetic_explosion": 15 } }, + { + "id": "telekinetic_slam_down", + "type": "SPELL", + "name": "[Ψ]Knockdown", + "description": "Slam something to the ground with a burst of telekinetic force, doing a small amount of damage and downing them.", + "message": "Your target is knocked to the ground.", + "teachable": false, + "valid_targets": [ "ally", "hostile", "ground" ], + "spell_class": "TELEKINETIC", + "skill": "metaphysics", + "flags": [ "PSIONIC", "CONCENTRATE", "RANDOM_DAMAGE", "NO_HANDS", "NO_LEGS", "NO_EXPLOSION_SFX" ], + "difficulty": 2, + "max_level": { "math": [ "int_to_level(1)" ] }, + "effect": "attack", + "effect_str": "downed", + "extra_effects": [ { "id": "psionic_drained_difficulty_two", "hit_self": true } ], + "shape": "blast", + "damage_type": "psi_telekinetic_damage", + "min_damage": { + "math": [ + "( (u_spell_level('telekinetic_slam_down') * 0.5) + 5) * (scaling_factor(u_val('intelligence') ) ) * u_nether_attunement_power_scaling" + ] + }, + "max_damage": { + "math": [ + "( (u_spell_level('telekinetic_slam_down') * 1.2) + 15) * (scaling_factor(u_val('intelligence') ) ) * u_nether_attunement_power_scaling" + ] + }, + "min_duration": { + "math": [ + "( (u_spell_level('telekinetic_slam_down') * 25) + 100) * (scaling_factor(u_val('intelligence') ) ) * u_nether_attunement_power_scaling" + ] + }, + "max_duration": { + "math": [ + "( (u_spell_level('telekinetic_slam_down') * 95) + 400) * (scaling_factor(u_val('intelligence') ) ) * u_nether_attunement_power_scaling" + ] + }, + "min_range": { + "math": [ + "min( (( (u_spell_level('telekinetic_slam_down') * 0.5) + 2) * (scaling_factor(u_val('intelligence') ) ) * u_nether_attunement_power_scaling), 40)" + ] + }, + "max_range": 40, + "energy_source": "STAMINA", + "base_energy_cost": 2500, + "final_energy_cost": 850, + "energy_increment": -65, + "base_casting_time": 75, + "final_casting_time": 30, + "casting_time_increment": -3, + "ignored_monster_species": [ "PSI_NULL" ] + }, { "id": "telekinetic_momentum", "type": "SPELL", @@ -305,13 +358,13 @@ "spell_class": "TELEKINETIC", "skill": "metaphysics", "flags": [ "PSIONIC", "CONCENTRATE", "NO_PROJECTILE", "RANDOM_DAMAGE", "NO_HANDS", "NO_LEGS" ], + "difficulty": 5, + "max_level": { "math": [ "int_to_level(1)" ] }, "extra_effects": [ { "id": "tele_mindhammer_bash", "hit_self": false, "max_level": 20 }, { "id": "psionic_drained_difficulty_five", "hit_self": true } ], "damage_type": "psi_telekinetic_damage", - "difficulty": 5, - "max_level": { "math": [ "int_to_level(1)" ] }, "effect": "attack", "shape": "blast", "min_damage": { diff --git a/data/mods/MindOverMatter/recipes/practice/telekinesis_practice.json b/data/mods/MindOverMatter/recipes/practice/telekinesis_practice.json index 63185aeda4842..1dbe9fbaf0328 100644 --- a/data/mods/MindOverMatter/recipes/practice/telekinesis_practice.json +++ b/data/mods/MindOverMatter/recipes/practice/telekinesis_practice.json @@ -12,6 +12,7 @@ "nested_category_data": [ "practice_telekinetic_pull", "practice_telekinetic_push", + "practice_telekinetic_slam_down", "practice_telekinetic_momentum", "practice_telekinetic_slowfall", "practice_telekinetic_wave", @@ -124,6 +125,34 @@ } ] }, + { + "type": "recipe", + "activity_level": "LIGHT_EXERCISE", + "name": "contemplation: knockdown", + "id": "practice_telekinetic_slam_down", + "description": "Contemplate your powers and improve your ability to knock your targets over.", + "category": "CC_*", + "subcategory": "CSC_*_NESTED", + "skill_used": "metaphysics", + "difficulty": 1, + "time": "30 m", + "autolearn": false, + "tools": [ [ [ "matrix_crystal_drained", -1 ] ] ], + "flags": [ "SECRET", "BLIND_HARD" ], + "result_eocs": [ + { + "id": "EOC_PRACTICE_TELEKIN_SLAM_DOWN", + "condition": { "math": [ "u_spell_level('telekinetic_slam_down')", ">=", "1" ] }, + "effect": [ + { "u_message": "You spend some time meditating and contemplating your powers and emerge with new knowledge." }, + { "math": [ "u_spell_exp('telekinetic_slam_down')", "+=", "(contemplation_factor(1))" ] }, + { "math": [ "u_vitamin('vitamin_psionic_drain')", "+=", "rng( 0,2 )" ] }, + { "math": [ "u_val('stored_kcal')", "-=", "psionics_contemplation_kcal_cost(2)" ] }, + { "run_eocs": "EOC_PSI_PRACTICE_FOCUS_MOD" } + ] + } + ] + }, { "type": "recipe", "activity_level": "LIGHT_EXERCISE",