Skip to content

Commit

Permalink
[MoM] Change Voltaic Strikes and Electrical Discharge to concentration (
Browse files Browse the repository at this point in the history
CleverRaven#75313)

* Initial commit

* update documentation
  • Loading branch information
Standing-Storm authored Jul 30, 2024
1 parent 951b8da commit 8062226
Show file tree
Hide file tree
Showing 5 changed files with 157 additions and 35 deletions.
4 changes: 2 additions & 2 deletions data/mods/MindOverMatter/PowerDescriptionSpoilers.md
Original file line number Diff line number Diff line change
Expand Up @@ -317,7 +317,7 @@ This is natural painkiller and so has natural effects (reduces speed slightly)<b
*Effects*: Zap a single target with a jolt of electricity, doing 2 to 7 plus 1 to 1.5 per power level electrical damage, as well as dazing them for the power's duration.<br />
*Prerequisites*: Starting power<br />

## Electrical Discharge
## Electrical Discharge (C)
*Difficulty*: 2<br />
*Target*: Self<br />
*Duration*: 5 minutes to 13 minutes and 20 seconds, plus 1 minute and 20 seconds to 3 minutes and 45 seconds per power level<br />
Expand All @@ -326,7 +326,7 @@ This is natural painkiller and so has natural effects (reduces speed slightly)<b
*Effects*: Build up a charge in the psion's body, zapping anyone who attacks them 50% of the time for 1 to 5 damage, plus 1/4 (i.e., one point per four levels) to 1/2 damage per power level. The power also renders the psion's gear and bionic power immune to EMP attacks.<br />
*Prerequisites*: Static Touch 4<br />

## Voltaic Strikes
## Voltaic Strikes (C)
*Difficulty*: 3<br />
*Target*: Self<br />
*Duration*: 4 minutes to 10 minutes, plus 55 seconds to 1 minute 30 seconds per power level.<br />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -254,6 +254,8 @@
"EOC_CLAIR_REMOVE_CLEAR_SIGHT",
"EOC_CLAIR_REMOVE_GROUP_TACTICS",
"EOC_ELECTROKIN_REMOVE_SEE_ELECTRICITY",
"EOC_ELECTROKIN_REMOVE_ZAP_ENEMIES",
"EOC_ELECTROKIN_REMOVE_MELEE_ATTACKS",
"EOC_ELECTROKIN_REMOVE_HACKING_INTERFACE",
"EOC_ELECTROKIN_REMOVE_PERSONAL_BATTERY",
"EOC_ELECTROKIN_REMOVE_REDUCE_PAIN",
Expand Down Expand Up @@ -292,14 +294,10 @@
{ "u_remove_item_with": "clair_sense_rad_item" },
{ "u_lose_effect": "effect_clair_perfect_shot" },
{ "u_lose_effect": "effect_clair_omniscence" },
{ "u_lose_effect": "effect_electrokin_zap_enemies" },
{ "u_lose_effect": "effect_electrokin_melee_attacks" },
{ "u_lose_effect": "effect_electrokinetic_speed_boost" },
{ "u_lose_effect": "effect_photokin_dodge" },
{ "u_lose_effect": "effect_photokin_invisibility" },
{ "u_lose_effect": "effect_photokin_arms" },
{ "u_lose_effect": "effect_pyrokinetic_aura" },
{ "u_lose_effect": "effect_pyrokinetic_flame_immunity" },
{ "u_lose_effect": "effect_telekinetic_slowfall" },
{ "u_lose_effect": "effect_telekinetic_aegis" },
{ "u_lose_effect": "effect_telepath_invisibility" },
Expand Down Expand Up @@ -334,6 +332,8 @@
"EOC_CLAIR_REMOVE_CLEAR_SIGHT",
"EOC_CLAIR_REMOVE_GROUP_TACTICS",
"EOC_ELECTROKIN_REMOVE_SEE_ELECTRICITY",
"EOC_ELECTROKIN_REMOVE_ZAP_ENEMIES",
"EOC_ELECTROKIN_REMOVE_MELEE_ATTACKS",
"EOC_ELECTROKIN_REMOVE_HACKING_INTERFACE",
"EOC_ELECTROKIN_REMOVE_PERSONAL_BATTERY",
"EOC_ELECTROKIN_REMOVE_REDUCE_PAIN",
Expand Down
10 changes: 2 additions & 8 deletions data/mods/MindOverMatter/effects/effects_psionic.json
Original file line number Diff line number Diff line change
Expand Up @@ -963,12 +963,9 @@
"desc": [ "Your body is filled with electrical currents." ],
"apply_message": "",
"remove_message": "The tingling on your skin fades.",
"decay_messages": [ [ "The protective electrical currents are nearly gone.", "bad" ], [ "Your skin is losing its charge.", "bad" ] ],
"rating": "good",
"max_duration": "20 minutes",
"max_duration": "7 days",
"max_intensity": 49,
"dur_add_perc": 10,
"int_dur_factor": "25 s",
"enchantments": [ "enchant_electrokin_zap_enemies" ],
"flags": [ "EMP_IMMUNE" ]
},
Expand All @@ -979,12 +976,9 @@
"desc": [ "Your melee attacks unleash electrical blasts." ],
"apply_message": "",
"remove_message": "Your hands no longer spark with electricity.",
"decay_messages": [ [ "The charge in your hands is nearly gone.", "bad" ], [ "The current in your hands is fading.", "bad" ] ],
"rating": "good",
"max_duration": "20 minutes",
"max_duration": "7 days",
"max_intensity": 73,
"dur_add_perc": 10,
"int_dur_factor": "17 s",
"enchantments": [ "enchant_electrokin_electric_strikes" ]
},
{
Expand Down
50 changes: 29 additions & 21 deletions data/mods/MindOverMatter/powers/electrokinesis.json
Original file line number Diff line number Diff line change
Expand Up @@ -86,18 +86,18 @@
{
"id": "electrokinetic_zap_enemies",
"type": "SPELL",
"name": "[Ψ]Electrical Discharge",
"description": "Build up a charge in your body, zapping anyone who attempts to attack you. It will also protect you from EMP attacks.",
"message": "Your skin tingles.",
"name": "[Ψ]Electrical Discharge (C)",
"description": "Build up a charge in your body, zapping anyone who attempts to attack you. It will also protect you from EMP attacks.\n\nThis power <color_yellow>is maintained by concentration</color> and <color_red>may fail</color> if <color_yellow>concentration is interrupted</color>.",
"message": "",
"teachable": false,
"valid_targets": [ "self" ],
"spell_class": "ELECTROKINETIC",
"skill": "metaphysics",
"flags": [ "PSIONIC", "CONCENTRATE", "SILENT", "NO_HANDS", "NO_LEGS", "NO_EXPLOSION_SFX", "RANDOM_DURATION" ],
"difficulty": 2,
"max_level": { "math": [ "int_to_level(1)" ] },
"effect": "attack",
"effect_str": "effect_electrokin_zap_enemies",
"effect": "effect_on_condition",
"effect_str": "EOC_ELECTROKIN_ZAP_ENEMIES_INITIATE",
"shape": "blast",
"min_duration": {
"math": [
Expand All @@ -110,18 +110,22 @@
]
},
"energy_source": "STAMINA",
"base_energy_cost": 3500,
"final_energy_cost": 1100,
"energy_increment": -120,
"base_casting_time": 125,
"final_casting_time": 45,
"casting_time_increment": -5
"base_energy_cost": {
"math": [
"u_effect_intensity('effect_electrokin_zap_enemies') > -1 ? 0 : max((3500 - (u_spell_level('electrokinetic_zap_enemies') * 120)), 1100)"
]
},
"base_casting_time": {
"math": [
"u_effect_intensity('effect_electrokin_zap_enemies') > -1 ? 10 : max((125 -(u_spell_level('electrokinetic_zap_enemies') * 5)), 45)"
]
}
},
{
"id": "electrokinetic_melee_attacks",
"type": "SPELL",
"name": "[Ψ]Voltaic Strikes",
"description": "Unleash electrical blasts on those you strike in melee. It also provides protection against electrical damage.",
"name": "[Ψ]Voltaic Strikes (C)",
"description": "Unleash electrical blasts on those you strike in melee. It also provides protection against electrical damage.\n\nThis power <color_yellow>is maintained by concentration</color> and <color_red>may fail</color> if <color_yellow>concentration is interrupted</color>.",
"message": "Lightning crackles between your fingers!",
"teachable": false,
"valid_targets": [ "self" ],
Expand All @@ -130,8 +134,8 @@
"flags": [ "PSIONIC", "CONCENTRATE", "SILENT", "NO_HANDS", "NO_LEGS", "NO_EXPLOSION_SFX", "RANDOM_DURATION" ],
"difficulty": 3,
"max_level": { "math": [ "int_to_level(1)" ] },
"effect": "attack",
"effect_str": "effect_electrokin_melee_attacks",
"effect": "effect_on_condition",
"effect_str": "EOC_ELECTROKIN_MELEE_ATTACKS_INITIATE",
"shape": "blast",
"min_duration": {
"math": [
Expand All @@ -144,12 +148,16 @@
]
},
"energy_source": "STAMINA",
"base_energy_cost": 3750,
"final_energy_cost": 1450,
"energy_increment": -115,
"base_casting_time": 85,
"final_casting_time": 35,
"casting_time_increment": -6
"base_energy_cost": {
"math": [
"u_effect_intensity('effect_electrokin_melee_attacks') > -1 ? 0 : max((3750 - (u_spell_level('electrokinetic_melee_attacks') * 115)), 1450)"
]
},
"base_casting_time": {
"math": [
"u_effect_intensity('effect_electrokin_melee_attacks') > -1 ? 10 : max((85 -(u_spell_level('electrokinetic_melee_attacks') * 6)), 35)"
]
}
},
{
"id": "electrokinetic_hacking_interface",
Expand Down
120 changes: 120 additions & 0 deletions data/mods/MindOverMatter/powers/electrokinesis_concentration_eocs.json
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,126 @@
],
"false_effect": [ ]
},
{
"type": "effect_on_condition",
"id": "EOC_ELECTROKIN_ZAP_ENEMIES_INITIATE",
"condition": { "not": { "u_has_effect": "effect_electrokin_zap_enemies" } },
"effect": [
{ "u_message": "Your skin tingles.", "type": "good" },
{ "run_eocs": "EOC_POWER_MAINTENANCE_PLUS_ONE" },
{ "u_add_effect": "effect_electrokin_zap_enemies", "duration": "PERMANENT" },
{
"queue_eocs": "EOC_ELECTROKIN_ZAP_ENEMIES_DRAIN",
"time_in_future": [
{
"math": [
"( (u_spell_level('electrokinetic_zap_enemies') * 80) + 300) * (scaling_factor(u_val('intelligence') ) ) * u_nether_attunement_power_scaling"
]
},
{
"math": [
"( (u_spell_level('electrokinetic_zap_enemies') * 225) + 800) * (scaling_factor(u_val('intelligence') ) ) * u_nether_attunement_power_scaling"
]
}
]
}
],
"false_effect": [ { "run_eocs": "EOC_ELECTROKIN_REMOVE_ZAP_ENEMIES" } ]
},
{
"type": "effect_on_condition",
"id": "EOC_ELECTROKIN_REMOVE_ZAP_ENEMIES",
"condition": { "u_has_effect": "effect_electrokin_zap_enemies" },
"effect": [ { "run_eocs": "EOC_POWER_MAINTENANCE_MINUS_ONE" }, { "u_lose_effect": "effect_electrokin_zap_enemies" } ]
},
{
"type": "effect_on_condition",
"id": "EOC_ELECTROKIN_ZAP_ENEMIES_DRAIN",
"condition": { "u_has_effect": "effect_electrokin_zap_enemies" },
"effect": [
{ "math": [ "u_latest_channeled_power_difficulty", "=", "2" ] },
{ "run_eocs": "EOC_PSIONICS_GAIN_NETHER_ATTUNEMENT_2" },
{ "math": [ "u_calories()", "-=", "psionics_kcal_cost(2)" ] },
{ "math": [ "u_spell_exp('electrokinetic_zap_enemies')", "+=", "(maintenance_exp_factor(u_val('focus')))" ] },
{ "run_eocs": "EOC_POWER_MAINTENANCE_CONCENTRATION_CHECK" },
{
"queue_eocs": "EOC_ELECTROKIN_ZAP_ENEMIES_DRAIN",
"time_in_future": [
{
"math": [
"( (u_spell_level('electrokinetic_zap_enemies') * 80) + 300) * (scaling_factor(u_val('intelligence') ) ) * u_nether_attunement_power_scaling"
]
},
{
"math": [
"( (u_spell_level('electrokinetic_zap_enemies') * 225) + 800) * (scaling_factor(u_val('intelligence') ) ) * u_nether_attunement_power_scaling"
]
}
]
}
],
"false_effect": [ ]
},
{
"type": "effect_on_condition",
"id": "EOC_ELECTROKIN_MELEE_ATTACKS_INITIATE",
"condition": { "not": { "u_has_effect": "effect_electrokin_melee_attacks" } },
"effect": [
{ "u_message": "Lightning crackles between your fingers!", "type": "good" },
{ "run_eocs": "EOC_POWER_MAINTENANCE_PLUS_ONE" },
{ "u_add_effect": "effect_electrokin_melee_attacks", "duration": "PERMANENT" },
{
"queue_eocs": "EOC_ELECTROKIN_MELEE_ATTACKS_DRAIN",
"time_in_future": [
{
"math": [
"( (u_spell_level('electrokinetic_melee_attacks') * 55) + 240) * (scaling_factor(u_val('intelligence') ) ) * u_nether_attunement_power_scaling"
]
},
{
"math": [
"( (u_spell_level('electrokinetic_melee_attacks') * 90) + 600) * (scaling_factor(u_val('intelligence') ) ) * u_nether_attunement_power_scaling"
]
}
]
}
],
"false_effect": [ { "run_eocs": "EOC_ELECTROKIN_REMOVE_MELEE_ATTACKS" } ]
},
{
"type": "effect_on_condition",
"id": "EOC_ELECTROKIN_REMOVE_MELEE_ATTACKS",
"condition": { "u_has_effect": "effect_electrokin_melee_attacks" },
"effect": [ { "run_eocs": "EOC_POWER_MAINTENANCE_MINUS_ONE" }, { "u_lose_effect": "effect_electrokin_melee_attacks" } ]
},
{
"type": "effect_on_condition",
"id": "EOC_ELECTROKIN_MELEE_ATTACKS_DRAIN",
"condition": { "u_has_effect": "effect_electrokin_melee_attacks" },
"effect": [
{ "math": [ "u_latest_channeled_power_difficulty", "=", "3" ] },
{ "run_eocs": "EOC_PSIONICS_GAIN_NETHER_ATTUNEMENT_2" },
{ "math": [ "u_calories()", "-=", "psionics_kcal_cost(3)" ] },
{ "math": [ "u_spell_exp('electrokinetic_melee_attacks')", "+=", "(maintenance_exp_factor(u_val('focus')))" ] },
{ "run_eocs": "EOC_POWER_MAINTENANCE_CONCENTRATION_CHECK" },
{
"queue_eocs": "EOC_ELECTROKIN_MELEE_ATTACKS_DRAIN",
"time_in_future": [
{
"math": [
"( (u_spell_level('electrokinetic_melee_attacks') * 55) + 240) * (scaling_factor(u_val('intelligence') ) ) * u_nether_attunement_power_scaling"
]
},
{
"math": [
"( (u_spell_level('electrokinetic_melee_attacks') * 90) + 600) * (scaling_factor(u_val('intelligence') ) ) * u_nether_attunement_power_scaling"
]
}
]
}
],
"false_effect": [ ]
},
{
"type": "effect_on_condition",
"id": "EOC_ELECTROKIN_HACKING_INTERFACE_INITIATE",
Expand Down

0 comments on commit 8062226

Please sign in to comment.