Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[MoM] Convert Lifting Hand to power, give Telekinetics a new passive #75816

Merged
merged 19 commits into from
Aug 22, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 11 additions & 2 deletions data/mods/MindOverMatter/PowerDescriptionSpoilers.md
Original file line number Diff line number Diff line change
Expand Up @@ -735,7 +735,7 @@ Powers causing photokinetic damage have a 40% chance to blind the target for 3 s

# Telekinesis

**Passive Power: Lifting Hand**: The telekinetic may carry a single item next to them in a field of telekinetic force. The item's weight increases proportional to their total levels in their telekinetic powers, increasing by one rank per 8 total telekinetic levels, though they must use the recipe Contemplate Lifting Field to increase it.
**Passive Power: Grasping Hand**: The telekinetic may bring items quickly to hand, reducing the time necessary to pull items from pockets or containers by 10%, plus 0.075% times the telekinetic's total levels in telekinesis powers.

Powers causing telekinetic damage have a 40% chance to stagger the target for 2 seconds and a 20% chance to down the target. Each of these is checked independently.

Expand Down Expand Up @@ -802,6 +802,15 @@ Powers causing telekinetic damage have a 40% chance to stagger the target for 2
*Effects*: Unleash an indiscriminate wave of force, knocking back everything nearby by 2 to 6 squares, plus 1 square per 10 power levels to 1 square per four power levels. This power affects item and allies as well as enemies.<br />
*Prerequisites*: Force Shove 7, Knockdown 4 <br />

## Lifting Field (C)
*Difficulty*: 4<br />
*Target*: Self<br />
*Duration*: From 8 minutes and 14 seconds to 27 minutes and 54 seconds, plus 1 minute and 33 seconds to 4 minutes and 19 seconds per power level<br />
*Stamina Cost*: 4500, minus 100 per level to a minimum of 2000<br />
*Channeling Time*: 200 moves, minus 6.5 moves per level to a minimum of 55<br />
*Effects*: Create a field to float a single object next to the psion, keeping it close at hand and preventing its weight or encumbrance from affecting them. The weight limit increases at each level of the power; there is no volume or length limit.<br />
*Prerequisites*: Lift Vehicle 3 *or* Far Hand 7 AND Momentum Alteration 5<br />

## Enhance Strength (C)
*Difficulty*: 5<br />
*Target*: Self<br />
Expand All @@ -827,7 +836,7 @@ Powers causing telekinetic damage have a 40% chance to stagger the target for 2
*Stamina Cost*: 6500, minus 200 per level to a minimum of 3250<br />
*Channeling Time*: 250 moves, minus 8 moves per level to a minimum of 125<br />
*Effects*: Create a field to lift up a vehicle just enough to work on the wheels or undercarriage. This field requires more intense concentration and cannot be sustained in combat.<br />
*Prerequisites*: Enhance Strength 10 *or* Far Hand 8 AND Slowfall 8<br />
*Prerequisites*: Enhance Strength 10 *or* Far Hand 8 AND Slowfall 8 *or* Lifting Field 12<br />

## Inertial Barrier (C)
*Difficulty*: 6<br />
Expand Down
4 changes: 2 additions & 2 deletions data/mods/MindOverMatter/effectoncondition/eoc_awakening.json
Original file line number Diff line number Diff line change
Expand Up @@ -355,7 +355,7 @@
"popup": true
},
{ "u_add_trait": "TELEKINETIC" },
{ "u_add_trait": "TELEKINETIC_LIFTER_1" },
{ "u_add_trait": "TELEKINETIC_GRAB_POCKETS" },
{ "u_add_effect": "effect_telekinetic_armor", "duration": "1 minutes" },
{ "run_eocs": "EOC_TEACH_TELEKIN_CONTEMPLATE_RECIPES" },
{ "math": [ "u_awakening_countup", "+=", "1" ] },
Expand Down Expand Up @@ -879,7 +879,7 @@
"popup": true
},
{ "u_add_trait": "TELEKINETIC" },
{ "u_add_trait": "TELEKINETIC_LIFTER_1" },
{ "u_add_trait": "TELEKINETIC_GRAB_POCKETS" },
{ "run_eocs": "EOC_TEACH_TELEKIN_CONTEMPLATE_RECIPES" },
{ "u_add_effect": "psionic_awakened", "duration": { "math": [ "ps_str * time(' 2 h')" ] } },
{ "math": [ "u_awakening_countup", "+=", "1" ] },
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -692,6 +692,7 @@
"EOC_CHECK_GAMEBEGIN_TELEKIN_RECIPE_MOMENTUM",
"EOC_CHECK_GAMEBEGIN_TELEKIN_RECIPE_SLOWFALL",
"EOC_CHECK_GAMEBEGIN_TELEKIN_RECIPE_WAVE",
"EOC_CHECK_GAMEBEGIN_TELEKIN_RECIPE_LIFTING_FIELD",
"EOC_CHECK_GAMEBEGIN_TELEKIN_RECIPE_STRENGTH",
"EOC_CHECK_GAMEBEGIN_TELEKIN_RECIPE_HAMMER",
"EOC_CHECK_GAMEBEGIN_TELEKIN_RECIPE_VEHICLE_LIFT",
Expand All @@ -708,13 +709,13 @@
"type": "effect_on_condition",
"id": "EOC_CHECK_GAMEBEGIN_TELEKIN_RECIPE_PUSH",
"condition": { "and": [ { "u_has_trait": "TELEKINETIC" }, { "math": [ "u_spell_level('telekinetic_push')", ">=", "0" ] } ] },
"effect": [ { "u_learn_recipe": "practice_telekinetic_push" }, { "u_learn_recipe": "improve_telekinesis_lifting_field" } ]
"effect": [ { "u_learn_recipe": "practice_telekinetic_push" } ]
},
{
"type": "effect_on_condition",
"id": "EOC_CHECK_GAMEBEGIN_TELEKIN_RECIPE_PULL",
"condition": { "and": [ { "u_has_trait": "TELEKINETIC" }, { "math": [ "u_spell_level('telekinetic_pull')", ">=", "0" ] } ] },
"effect": [ { "u_learn_recipe": "practice_telekinetic_pull" }, { "u_learn_recipe": "improve_telekinesis_lifting_field" } ]
"effect": [ { "u_learn_recipe": "practice_telekinetic_pull" } ]
},
{
"type": "effect_on_condition",
Expand All @@ -740,6 +741,12 @@
"condition": { "and": [ { "u_has_trait": "TELEKINETIC" }, { "math": [ "u_spell_level('telekinetic_wave')", ">=", "0" ] } ] },
"effect": [ { "u_learn_recipe": "practice_telekinetic_wave" } ]
},
{
"type": "effect_on_condition",
"id": "EOC_CHECK_GAMEBEGIN_TELEKIN_RECIPE_LIFTING_FIELD",
"condition": { "and": [ { "u_has_trait": "TELEKINETIC" }, { "math": [ "u_spell_level('telekinetic_lifting_field')", ">=", "0" ] } ] },
"effect": [ { "u_learn_recipe": "practice_telekinetic_lifting_field" } ]
},
{
"type": "effect_on_condition",
"id": "EOC_CHECK_GAMEBEGIN_TELEKIN_RECIPE_STRENGTH",
Expand Down
287 changes: 0 additions & 287 deletions data/mods/MindOverMatter/effectoncondition/eoc_mutations.json
Original file line number Diff line number Diff line change
@@ -1,291 +1,4 @@
[
{
"type": "effect_on_condition",
"id": "EOC_TELEKINETIC_LIFTER",
"condition": { "u_has_trait": "TELEKINETIC" },
"effect": {
"switch": { "math": [ "u_spell_level_sum('school': 'TELEKINETIC') / 8" ] },
"cases": [
{
"case": 0,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_1" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 1,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_2" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 2,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_3" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 3,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_4" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 4,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_5" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 5,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_6" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 6,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_7" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 7,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_8" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 8,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_9" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 9,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_10" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 10,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_11" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 11,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_12" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 12,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_13" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 13,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_14" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 14,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_15" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 15,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_16" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 16,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_17" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 17,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_18" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 18,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_19" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 19,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_20" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 20,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_21" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 21,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_22" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 22,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_23" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 23,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_24" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 24,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_25" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 25,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_26" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 26,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_27" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 27,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_28" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 28,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_29" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
},
{
"case": 29,
"effect": [
{ "run_eocs": "EOC_TELEKIN_REMOVE_LIFTING_FIELD" },
{ "u_add_trait": "TELEKINETIC_LIFTER_30" },
{ "u_message": "You meditate on your lifting field.", "type": "good" }
]
}
]
}
},
{
"type": "effect_on_condition",
"id": "EOC_TELEKIN_REMOVE_LIFTING_FIELD",
"condition": { "u_has_trait": "TELEKINETIC" },
"effect": [
{ "u_lose_trait": "TELEKINETIC_LIFTER_30" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_29" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_28" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_27" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_26" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_25" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_24" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_23" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_22" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_21" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_20" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_19" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_18" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_17" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_16" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_15" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_14" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_13" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_12" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_11" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_10" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_9" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_8" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_7" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_6" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_5" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_4" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_3" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_2" },
{ "u_lose_trait": "TELEKINETIC_LIFTER_1" }
]
},
{
"type": "effect_on_condition",
"id": "EOC_PSI_EXTENDED_CHANNELING_ON",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -276,6 +276,7 @@
"EOC_PYRO_REMOVE_TORCH_WELD",
"EOC_PYROKIN_REMOVE_FLAME_IMMUNITY",
"EOC_TELEKIN_REMOVE_MOMENTUM",
"EOC_TELEKIN_REMOVE_LIFTING_FIELD",
"EOC_TELEKIN_REMOVE_TELEKINETIC_STRENGTH",
"EOC_TELEKIN_REMOVE_SHIELD",
"EOC_TELEKIN_REMOVE_JACKING_TOOL",
Expand Down Expand Up @@ -356,6 +357,7 @@
"EOC_PYRO_REMOVE_TORCH_WELD",
"EOC_PYROKIN_REMOVE_FLAME_IMMUNITY",
"EOC_TELEKIN_REMOVE_MOMENTUM",
"EOC_TELEKIN_REMOVE_LIFTING_FIELD",
"EOC_TELEKIN_REMOVE_TELEKINETIC_STRENGTH",
"EOC_TELEKIN_REMOVE_SHIELD",
"EOC_TELEKIN_REMOVE_JACKING_TOOL",
Expand Down
Loading
Loading