Skip to content

Commit

Permalink
Merge pull request #72856 from Standing-Storm/noisemaker
Browse files Browse the repository at this point in the history
[MoM] Add Noisemaker telekinetic power
  • Loading branch information
Maleclypse authored Apr 6, 2024
2 parents 6e9f56a + 7e9bf13 commit 28aa11c
Show file tree
Hide file tree
Showing 4 changed files with 158 additions and 1 deletion.
9 changes: 9 additions & 0 deletions data/mods/MindOverMatter/PowerDescriptionSpoilers.md
Original file line number Diff line number Diff line change
Expand Up @@ -739,6 +739,15 @@ Powers causing telekinetic damage have a 40% chance to stagger the target for 2
*Effects*: The psion shoves a single target away, moving it 2 to 4 squares plus 0.5 to 1 squares per power level.<br />
*Prerequisites*: Starting power<br />

## Noisemaker
*Difficulty*: 2<br />
*Target*: One target within to 2 squares away plus 0.9 squares per power level<br />
*Duration*: Instant<br />
*Stamina Cost*: 1750, minus 85 per level to a minimum of 450<br />
*Channeling Time*: 64 moves, minus 4 moves per level to a minimum of 15<br />
*Effects*: Thump the ground with telekinetic force, causing 3 to 8 noise plus 0.5 to 1.5 noise per power level.<br />
*Prerequisites*: None<br />

## Knockdown
*Difficulty*: 2<br />
*Target*: One target within to 2 squares away plus 0.5 squares per power level<br />
Expand Down
32 changes: 31 additions & 1 deletion data/mods/MindOverMatter/powers/learning_eocs/telekinesis.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,29 @@
[
{
"type": "effect_on_condition",
"id": "EOC_TELEKIN_LEARNING_NOISEMAKER",
"recurrence": [ "12 hours", "24 hours" ],
"condition": {
"and": [
{ "u_has_trait": "TELEKINETIC" },
{ "math": [ "u_vitamin('vitamin_psi_learning_counter')", "==", "1" ] },
{ "test_eoc": "EOC_PSI_LEARNING_BANNED_EFFECTS" },
{ "math": [ "u_spell_level('telekinetic_noise')", "<=", "0" ] },
{ "not": { "u_know_recipe": "practice_telekinetic_noise" } }
]
},
"deactivate_condition": {
"or": [ { "not": { "u_has_trait": "TELEKINETIC" } }, { "math": [ "u_spell_level('telekinetic_noise')", ">=", "1" ] } ]
},
"effect": [
{ "math": [ "u_vitamin('vitamin_psi_learning_counter')", "=", "0" ] },
{ "u_learn_recipe": "practice_telekinetic_noise" },
{
"u_message": "Use of your powers has led to an insight. You could use a quick burst of telekinetic force to create noise, luring enemies away from you or toward a trapped location, if you can figure out the proper technique.",
"popup": true
}
]
},
{
"type": "effect_on_condition",
"id": "EOC_TELEKIN_LEARNING_SLAM_DOWN",
Expand All @@ -10,7 +35,12 @@
{
"or": [
{ "x_in_y_chance": { "x": 1, "y": 20 } },
{ "and": [ { "math": [ "u_spell_level('telekinetic_push')", ">=", "4" ] } ] }
{
"or": [
{ "math": [ "u_spell_level('telekinetic_push')", ">=", "4" ] },
{ "math": [ "u_spell_level('telekinetic_noise')", ">=", "1" ] }
]
}
]
},
{ "test_eoc": "EOC_PSI_LEARNING_BANNED_EFFECTS" },
Expand Down
41 changes: 41 additions & 0 deletions data/mods/MindOverMatter/powers/telekinesis.json
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,47 @@
"casting_time_increment": -4,
"ignored_monster_species": [ "PSI_NULL" ]
},
{
"id": "telekinetic_noise",
"type": "SPELL",
"name": "[Ψ]Noisemaker",
"description": "Using a focused burst of telekinesis, slam two objects together, or an object into the ground, or simply hit the ground with your powers, causing a loud noise.",
"message": "You lash out at the ground with your powers.",
"teachable": false,
"valid_targets": [ "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": "noise",
"shape": "blast",
"min_damage": {
"math": [
"( (u_spell_level('telekinetic_noise') * 0.5) + 3) * (scaling_factor(u_val('intelligence') ) ) * u_nether_attunement_power_scaling"
]
},
"max_damage": {
"math": [
"( (u_spell_level('telekinetic_noise') * 1.5) + 8) * (scaling_factor(u_val('intelligence') ) ) * u_nether_attunement_power_scaling"
]
},
"min_range": {
"math": [
"min( (( (u_spell_level('telekinetic_noise') * 0.9) + 2) * (scaling_factor(u_val('intelligence') ) ) * u_nether_attunement_power_scaling), 60)"
]
},
"max_range": 60,
"energy_source": "STAMINA",
"base_energy_cost": 1750,
"final_energy_cost": 450,
"energy_increment": -85,
"base_casting_time": 65,
"final_casting_time": 15,
"casting_time_increment": -4,
"sound_type": "combat",
"sound_description": "a loud thump"
},
{
"id": "telekinetic_slam_down",
"type": "SPELL",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
"nested_category_data": [
"practice_telekinetic_pull",
"practice_telekinetic_push",
"practice_telekinetic_noise",
"practice_telekinetic_slam_down",
"practice_telekinetic_momentum",
"practice_telekinetic_slowfall",
Expand Down Expand Up @@ -85,6 +86,82 @@
}
]
},
{
"type": "recipe",
"activity_level": "LIGHT_EXERCISE",
"name": "contemplation: noisemaker",
"id": "practice_telekinetic_noise",
"description": "Contemplate your powers and improve your ability to create noisy distractions.",
"category": "CC_*",
"subcategory": "CSC_*_NESTED",
"skill_used": "metaphysics",
"difficulty": 1,
"time": "30 m",
"autolearn": false,
"proficiencies": [ { "proficiency": "prof_contemplation_telekinesis", "required": false } ],
"tools": [ [ [ "matrix_crystal_drained", -1 ], [ "matrix_crystal_telekinesis", -1 ] ] ],
"flags": [ "SECRET", "BLIND_HARD" ],
"result_eocs": [
{
"id": "EOC_PRACTICE_TELEKIN_NOISEMAKER",
"condition": { "math": [ "u_spell_level('telekinetic_noise')", ">=", "1" ] },
"effect": [
{ "u_message": "You spend some time meditating and contemplating your powers and emerge with new knowledge." },
{ "math": [ "u_spell_exp('telekinetic_noise')", "+=", "(contemplation_factor(1))" ] },
{ "math": [ "u_vitamin('vitamin_psionic_drain')", "+=", "rng( 1,10 )" ] },
{ "math": [ "u_val('stored_kcal')", "-=", "psionics_contemplation_kcal_cost(2)" ] },
{ "run_eocs": "EOC_PSI_PRACTICE_FOCUS_MOD" }
],
"false_effect": [
{ "u_message": "You attempt to unlock new capabilities within your mind." },
{ "u_assign_activity": "ACT_PSI_LEARNING_NEW_POWER", "duration": "16 hours" },
{ "u_add_effect": "effect_psi_learning_new_power", "duration": "16 hours" },
{ "run_eocs": "EOC_PSI_PRACTICE_FOCUS_MOD" },
{
"queue_eocs": "EOC_PRACTICE_TELEKIN_NOISEMAKER_LEARNING",
"time_in_future": [ { "math": [ "learn_new_power_lower_time_bound(2)" ] }, { "math": [ "learn_new_power_upper_time_bound(2)" ] } ]
}
]
}
]
},
{
"type": "effect_on_condition",
"id": "EOC_PRACTICE_TELEKIN_NOISEMAKER_LEARNING",
"condition": {
"and": [
{ "u_has_effect": "effect_psi_learning_new_power" },
{
"not": { "u_has_any_effect": [ "sleep", "effect_vitakin_wakeful_resting", "lack_sleep", "sleep_deprived", "under_operation" ] }
}
]
},
"effect": [
{
"run_eocs": [
{
"id": "EOC_PRACTICE_TELEKIN_NOISEMAKER_LEARNING_2",
"condition": {
"roll_contested": { "math": [ "u_skill('metaphysics') + u_has_proficiency('prof_contemplation_telekinesis')" ] },
"difficulty": 6
},
"effect": [
{
"u_message": "As you meditate, all the pieces suddenly come together. You've unlocked the Noisemaker power.",
"popup": true
},
{ "math": [ "u_spell_level('telekinetic_noise')", "=", "1" ] },
{ "math": [ "u_vitamin('vitamin_psionic_drain')", "+=", "rng( 10,20 )" ] }
],
"false_effect": [
{ "u_message": "You just couldn't manage to grasp the technique. You'll have to try again.", "popup": true },
{ "math": [ "u_vitamin('vitamin_psionic_drain')", "+=", "rng( 10,20 )" ] }
]
}
]
}
]
},
{
"type": "recipe",
"activity_level": "LIGHT_EXERCISE",
Expand Down

0 comments on commit 28aa11c

Please sign in to comment.