Skip to content

Commit

Permalink
[XE] Chronomagic Adjustments (#78689)
Browse files Browse the repository at this point in the history
* adjust experience requirements

* Make timeloop ending message more apparent

* json style

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
  • Loading branch information
b3brodie and github-actions[bot] authored Dec 21, 2024
1 parent 16efaf3 commit 562d799
Show file tree
Hide file tree
Showing 4 changed files with 68 additions and 1 deletion.
1 change: 0 additions & 1 deletion data/mods/Xedra_Evolved/effects/effects.json
Original file line number Diff line number Diff line change
Expand Up @@ -3015,7 +3015,6 @@
"id": "effect_xedra_time_loop",
"name": [ "Time Looped" ],
"desc": [ "Every few seconds every change to your person reverts." ],
"remove_message": "Your time loop ends!",
"rating": "good",
"flags": [ "CANNOT_CHANGE_TEMPERATURE", "FREEZE_EFFECTS", "CANNOT_GAIN_EFFECTS" ],
"enchantments": [ { "values": [ { "value": "EQUIPMENT_DAMAGE_CHANCE", "multiply": -1 } ] } ],
Expand Down
20 changes: 20 additions & 0 deletions data/mods/Xedra_Evolved/eocs/chronomancer_eocs.json
Original file line number Diff line number Diff line change
Expand Up @@ -491,6 +491,26 @@
{ "run_eocs": "EOC_XEDRA_TIME_LOOP_LOOP", "time_in_future": "5 seconds" }
]
},
{
"type": "effect_on_condition",
"id": "EOC_XEDRA_TIME_LOOP_ENDED_LOOP",
"eoc_type": "EVENT",
"required_event": "character_loses_effect",
"condition": { "compare_string": [ "effect_xedra_time_loop", { "context_val": "effect" } ] },
"effect": [
{
"u_message": "Your time loop ends!",
"type": "neutral",
"popup": true,
"popup_w_interrupt_query": true,
"interrupt_type": "eoc"
},
{
"run_eocs": "EOC_XEDRA_TIME_LOAD_VARIABLES_DYNAMIC",
"variables": { "xedra_chronomancer_prefix": "time_loop" }
}
]
},
{
"type": "effect_on_condition",
"id": "EOC_XEDRA_CHRONOMANCER_OPEN_INSIGHT_MENU",
Expand Down
12 changes: 12 additions & 0 deletions data/mods/Xedra_Evolved/jmath.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,18 @@
"//": "used to transform the variable time (the smallest measure is 1 second) to the spell time (the smallest measure is 1 move, 1 second = 100 moves)",
"return": "_0 * 100"
},
{
"type": "jmath_function",
"id": "xedra_chronomancer_formula_get_level",
"num_args": 1,
"return": "( sqrt( ( 2 / 375 ) * _0 + 0.25 ) ) - 0.5"
},
{
"type": "jmath_function",
"id": "xedra_chronomancer_formula_exp_for_level",
"num_args": 1,
"return": "375 * 0.5 * _0 * (_0 + 1)"
},
{
"type": "jmath_function",
"id": "spell_train_factor",
Expand Down
36 changes: 36 additions & 0 deletions data/mods/Xedra_Evolved/spells/chronomancer.json
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@
"min_duration": { "math": [ "xedra_chron_spell_calc( u_spell_level('xedra_chronomancer_time_freeze_target'), 60000, 0 )" ] },
"max_duration": { "math": [ "xedra_chron_spell_calc( u_spell_level('xedra_chronomancer_time_freeze_target'), 60000, 0 )" ] },
"energy_source": "MANA",
"get_level_formula_id": "xedra_chronomancer_formula_get_level",
"exp_for_level_formula_id": "xedra_chronomancer_formula_exp_for_level",
"base_energy_cost": 200,
"final_energy_cost": 50,
"energy_increment": -5,
Expand All @@ -46,6 +48,8 @@
"min_range": { "math": [ "min( xedra_chron_spell_calc( u_spell_level('xedra_chronomancer_normalize_time'), 2, 1 ), 80 )" ] },
"max_range": 80,
"energy_source": "NONE",
"get_level_formula_id": "xedra_chronomancer_formula_get_level",
"exp_for_level_formula_id": "xedra_chronomancer_formula_exp_for_level",
"base_energy_cost": 0,
"base_casting_time": 200,
"final_casting_time": 50,
Expand Down Expand Up @@ -117,6 +121,8 @@
"min_duration": { "math": [ "xedra_chron_spell_calc( u_spell_level('xedra_chronomancer_entropic_burst'), 50, 200 )" ] },
"max_duration": { "math": [ "xedra_chron_spell_calc( u_spell_level('xedra_chronomancer_entropic_burst'), 50, 200 )" ] },
"energy_source": "MANA",
"get_level_formula_id": "xedra_chronomancer_formula_get_level",
"exp_for_level_formula_id": "xedra_chronomancer_formula_exp_for_level",
"base_energy_cost": 600,
"final_energy_cost": 150,
"energy_increment": -15,
Expand Down Expand Up @@ -203,6 +209,8 @@
"min_duration": { "math": [ "xedra_chron_spell_calc( u_spell_level('xedra_chronomancer_time_bubble'), 60000, 0 )" ] },
"max_duration": { "math": [ "xedra_chron_spell_calc( u_spell_level('xedra_chronomancer_time_bubble'), 60000, 0 )" ] },
"energy_source": "MANA",
"get_level_formula_id": "xedra_chronomancer_formula_get_level",
"exp_for_level_formula_id": "xedra_chronomancer_formula_exp_for_level",
"base_energy_cost": 600,
"final_energy_cost": 150,
"energy_increment": -15,
Expand All @@ -226,6 +234,8 @@
"effect_str": "EOC_XEDRA_DAMAGE_REVERSAL",
"shape": "blast",
"energy_source": "MANA",
"get_level_formula_id": "xedra_chronomancer_formula_get_level",
"exp_for_level_formula_id": "xedra_chronomancer_formula_exp_for_level",
"base_energy_cost": 200,
"final_energy_cost": 50,
"energy_increment": -5,
Expand All @@ -251,6 +261,8 @@
"min_duration": { "math": [ "xedra_chron_spell_calc( u_spell_level('xedra_chronomancer_time_loop'), 3000, 0 )" ] },
"max_duration": { "math": [ "xedra_chron_spell_calc( u_spell_level('xedra_chronomancer_time_loop'), 3000, 0 )" ] },
"energy_source": "MANA",
"get_level_formula_id": "xedra_chronomancer_formula_get_level",
"exp_for_level_formula_id": "xedra_chronomancer_formula_exp_for_level",
"base_energy_cost": 300,
"final_energy_cost": 100,
"energy_increment": -10,
Expand All @@ -275,6 +287,8 @@
"min_damage": { "math": [ "xedra_chron_spell_calc( u_spell_level('xedra_chronomancer_time_stop'), 200, 0 )" ] },
"max_damage": { "math": [ "xedra_chron_spell_calc( u_spell_level('xedra_chronomancer_time_stop'), 200, 0 )" ] },
"energy_source": "MANA",
"get_level_formula_id": "xedra_chronomancer_formula_get_level",
"exp_for_level_formula_id": "xedra_chronomancer_formula_exp_for_level",
"base_energy_cost": 1000,
"final_energy_cost": 800,
"energy_increment": -10,
Expand All @@ -295,6 +309,8 @@
"effect": "translocate",
"shape": "blast",
"energy_source": "MANA",
"get_level_formula_id": "xedra_chronomancer_formula_get_level",
"exp_for_level_formula_id": "xedra_chronomancer_formula_exp_for_level",
"base_energy_cost": 1000,
"final_energy_cost": 500,
"energy_increment": -25,
Expand All @@ -314,6 +330,10 @@
"flags": [ "SILENT", "NO_HANDS", "NO_LEGS", "NO_EXPLOSION_SFX", "NO_FAIL" ],
"difficulty": 0,
"max_level": 0,
"energy_source": "MANA",
"base_energy_cost": 0,
"get_level_formula_id": "xedra_chronomancer_formula_get_level",
"exp_for_level_formula_id": "xedra_chronomancer_formula_exp_for_level",
"effect": "ter_transform",
"effect_str": "xedra_chronomancer_memorize_terrain_switch",
"shape": "blast",
Expand Down Expand Up @@ -350,6 +370,8 @@
"min_range": 1,
"max_range": 1,
"energy_source": "MANA",
"get_level_formula_id": "xedra_chronomancer_formula_get_level",
"exp_for_level_formula_id": "xedra_chronomancer_formula_exp_for_level",
"base_energy_cost": 1000,
"final_energy_cost": 800,
"energy_increment": -10,
Expand Down Expand Up @@ -405,6 +427,8 @@
"effect_str": "EOC_XEDRA_CHRONOMANCER_STABLE_TIMELOOP_INITIATE",
"shape": "blast",
"energy_source": "MANA",
"get_level_formula_id": "xedra_chronomancer_formula_get_level",
"exp_for_level_formula_id": "xedra_chronomancer_formula_exp_for_level",
"base_energy_cost": {
"math": [
"u_effect_intensity('effect_xedra_chronomancer_stable_timeloop') > -1 ? 0 : max( ( 1000 - ( 25 * u_spell_level('xedra_chronomancer_stable_loop') ) ), 250 ) "
Expand Down Expand Up @@ -432,6 +456,8 @@
"effect_str": "EOC_XEDRA_CHRONOMANCER_CHRONAL_ACCEL_INITIATE",
"shape": "blast",
"energy_source": "MANA",
"get_level_formula_id": "xedra_chronomancer_formula_get_level",
"exp_for_level_formula_id": "xedra_chronomancer_formula_exp_for_level",
"base_energy_cost": {
"math": [
"u_effect_intensity('effect_xedra_chronomancer_chronal_accel') > -1 ? 0 : max( ( 1000 - ( 25 * u_spell_level('xedra_chronomancer_chronal_acceleration') ) ), 250 ) "
Expand Down Expand Up @@ -459,6 +485,8 @@
"effect_str": "EOC_XEDRA_CHRONOMANCER_DESTABILIZING_STRIKES_INITIATE",
"shape": "blast",
"energy_source": "MANA",
"get_level_formula_id": "xedra_chronomancer_formula_get_level",
"exp_for_level_formula_id": "xedra_chronomancer_formula_exp_for_level",
"base_energy_cost": {
"math": [
"u_effect_intensity('effect_xedra_chronomancer_destabilizing_strikes') > -1 ? 0 : max( ( 1000 - ( 25 * u_spell_level('xedra_chronomancer_destabilizing_strikes') ) ), 250 ) "
Expand Down Expand Up @@ -503,6 +531,8 @@
"effect_str": "EOC_XEDRA_CHRONOMANCER_STABILIZE_TIMELINE_INITIATE",
"shape": "blast",
"energy_source": "MANA",
"get_level_formula_id": "xedra_chronomancer_formula_get_level",
"exp_for_level_formula_id": "xedra_chronomancer_formula_exp_for_level",
"base_energy_cost": {
"math": [
"u_effect_intensity('effect_xedra_chronomancer_stabilize_timeline') > -1 ? 0 : max( ( 500 - ( 12.5 * u_spell_level('xedra_chronomancer_stabilize_timeline') ) ), 125 ) "
Expand Down Expand Up @@ -530,6 +560,8 @@
"effect_str": "EOC_XEDRA_CHRONOMANCER_REVERSE_ENTROPY_INITIATE",
"shape": "blast",
"energy_source": "MANA",
"get_level_formula_id": "xedra_chronomancer_formula_get_level",
"exp_for_level_formula_id": "xedra_chronomancer_formula_exp_for_level",
"base_energy_cost": {
"math": [
"u_effect_intensity('effect_xedra_chronomancer_reverse_entropy') > -1 ? 0 : max( ( 1000 - ( 25 * u_spell_level('xedra_chronomancer_reverse_entropy') ) ), 250 ) "
Expand Down Expand Up @@ -557,6 +589,8 @@
"effect_str": "EOC_XEDRA_CHRONOMANCER_REWRITE_WOUND_CAUSALITY",
"shape": "blast",
"energy_source": "MANA",
"get_level_formula_id": "xedra_chronomancer_formula_get_level",
"exp_for_level_formula_id": "xedra_chronomancer_formula_exp_for_level",
"base_energy_cost": 20,
"base_casting_time": { "math": [ " max( ( 200 - ( 5 * u_spell_level('xedra_chronomancer_rewrite_wound_causality') ) ), 50 )" ] }
},
Expand All @@ -576,6 +610,8 @@
"effect_str": "EOC_XEDRA_CHRONOMANCER_REWRITE_EQUIPMENT_CAUSALITY",
"shape": "blast",
"energy_source": "MANA",
"get_level_formula_id": "xedra_chronomancer_formula_get_level",
"exp_for_level_formula_id": "xedra_chronomancer_formula_exp_for_level",
"base_energy_cost": 20,
"base_casting_time": { "math": [ " max( ( 200 - ( 5 * u_spell_level('xedra_chronomancer_rewrite_equipment_causality') ) ), 50 )" ] }
}
Expand Down

0 comments on commit 562d799

Please sign in to comment.