Skip to content

Commit

Permalink
[MoM] Gateway now has a volume limit (#79985)
Browse files Browse the repository at this point in the history
* Initial commit

* Power description
  • Loading branch information
Standing-Storm authored Mar 4, 2025
1 parent 2f958ec commit e21a73d
Show file tree
Hide file tree
Showing 2 changed files with 117 additions and 12 deletions.
2 changes: 1 addition & 1 deletion data/mods/MindOverMatter/PowerDescriptionSpoilers.md
Original file line number Diff line number Diff line change
Expand Up @@ -1516,7 +1516,7 @@ Powers causing telepathic damage have a 5% chance to down the target, a 33% chan
*Duration*: Instant<br />
*Stamina Cost*: 10000, minus 200 per level to a minimum of 6000<br />
*Channeling Time*: 200 moves, minus 5.5 moves per level to a minimum of 75. Attunement takes 8 hours, minus 20 minutes per power level of Gateway to a minimum of 30 minutes<br />
*Effects*: Transport yourself through the Nether to an attuned location. This power works at any distance. You may have a number of destinations simultaneously equal to 1 + 1 per 3 levels of Gateway (2.5 levels if you have the Good Memory trait, 4 levels if you have the Forgetful trait).<br />
*Effects*: Transport yourself through the Nether to an attuned location. This power works at any distance. You may have a number of destinations simultaneously equal to 1 + 1 per 3 levels of Gateway (2.5 levels if you have the Good Memory trait, 4 levels if you have the Forgetful trait). You can always teleport yourself, and can carry 10L of gear, plus 7.5L per power level.<br />
*Prerequisites*: Farstep 10, Loci Establishment 6 <br />
</details>
<details>
Expand Down
127 changes: 116 additions & 11 deletions data/mods/MindOverMatter/powers/teleportation_eoc.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,21 @@
[
{
"type": "effect_on_condition",
"id": "EOC_TELEPORT_SELF_CARRIED_VOLUME_CHECKER",
"effect": [
{ "math": [ "u_teleport_total_carried_volume = 0" ] },
{
"u_run_inv_eocs": "all",
"search_data": [ { "condition": { "math": [ "n_volume() > 0" ] } } ],
"true_eocs": [
{
"id": "EOC_TELEPORT_SELF_CARRIED_VOLUME_CHECKER_ADD_VOLUME",
"effect": [ { "math": [ "u_teleport_total_carried_volume", "+=", "n_volume()" ] } ]
}
]
}
]
},
{
"type": "effect_on_condition",
"id": "EOC_TELEPORT_ITEM_APPORT",
Expand Down Expand Up @@ -231,6 +248,16 @@
}
]
},
{
"type": "effect_on_condition",
"id": "EOC_TELEPORTER_GATEWAY_MESSAGE_CARRYING_TOO_MUCH",
"effect": [
{
"u_message": "You attempt to teleport to your destination, but your skin merely tingles and nothing happens. You're carrying too much.",
"type": "bad"
}
]
},
{
"type": "effect_on_condition",
"id": "EOC_TELEPORTER_ATTUNING_MESSAGE",
Expand All @@ -252,7 +279,24 @@
{
"type": "effect_on_condition",
"id": "EOC_TELEPORT_GATEWAY_SELECTOR",
"condition": {
"and": [
{ "not": { "u_has_worn_with_flag": "DIMENSIONAL_ANCHOR" } },
{ "not": { "u_has_flag": "DIMENSIONAL_ANCHOR" } },
{ "not": { "u_has_flag": "TELEPORT_LOCK" } }
]
},
"effect": [
{ "run_eocs": "EOC_TELEPORT_SELF_CARRIED_VOLUME_CHECKER" },
{
"if": {
"math": [
"u_teleport_total_carried_volume <= ( ( ( u_spell_level('teleport_gateway') * 7500 ) + 10000 ) * scaling_factor( u_val('intelligence') ) * u_nether_attunement_power_scaling )"
]
},
"then": [ { "math": [ "u_teleport_total_carried_volume = 1" ] } ],
"else": [ { "math": [ "u_teleport_total_carried_volume = -1" ] } ]
},
{
"run_eoc_selector": [
"EOC_TELEPORT_GATEWAY_SELECTOR_01",
Expand Down Expand Up @@ -294,7 +338,8 @@
"hide_failing": true,
"allow_cancel": true
}
]
],
"false_effect": [ { "u_message": "You feel a strange, inward force.", "type": "bad" } ]
},
{
"type": "effect_on_condition",
Expand Down Expand Up @@ -327,7 +372,13 @@
"type": "effect_on_condition",
"id": "EOC_TELEPORT_GATEWAY_TELEPORT_01",
"condition": { "math": [ "has_var(u_gateway_destination_1)" ] },
"effect": [ { "u_teleport": { "u_val": "gateway_destination_1" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ]
"effect": [
{
"if": { "math": [ "u_teleport_total_carried_volume >= 0" ] },
"then": [ { "u_teleport": { "u_val": "gateway_destination_1" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ],
"else": [ { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE_CARRYING_TOO_MUCH" } ]
}
]
},
{
"type": "effect_on_condition",
Expand Down Expand Up @@ -386,7 +437,13 @@
"type": "effect_on_condition",
"id": "EOC_TELEPORT_GATEWAY_TELEPORT_02",
"condition": { "math": [ "has_var(u_gateway_destination_2)" ] },
"effect": [ { "u_teleport": { "u_val": "gateway_destination_2" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ]
"effect": [
{
"if": { "math": [ "u_teleport_total_carried_volume >= 0" ] },
"then": [ { "u_teleport": { "u_val": "gateway_destination_2" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ],
"else": [ { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE_CARRYING_TOO_MUCH" } ]
}
]
},
{
"type": "effect_on_condition",
Expand Down Expand Up @@ -445,7 +502,13 @@
"type": "effect_on_condition",
"id": "EOC_TELEPORT_GATEWAY_TELEPORT_03",
"condition": { "math": [ "has_var(u_gateway_destination_3)" ] },
"effect": [ { "u_teleport": { "u_val": "gateway_destination_3" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ]
"effect": [
{
"if": { "math": [ "u_teleport_total_carried_volume >= 0" ] },
"then": [ { "u_teleport": { "u_val": "gateway_destination_3" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ],
"else": [ { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE_CARRYING_TOO_MUCH" } ]
}
]
},
{
"type": "effect_on_condition",
Expand Down Expand Up @@ -504,7 +567,13 @@
"type": "effect_on_condition",
"id": "EOC_TELEPORT_GATEWAY_TELEPORT_04",
"condition": { "math": [ "has_var(u_gateway_destination_4)" ] },
"effect": [ { "u_teleport": { "u_val": "gateway_destination_4" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ]
"effect": [
{
"if": { "math": [ "u_teleport_total_carried_volume >= 0" ] },
"then": [ { "u_teleport": { "u_val": "gateway_destination_4" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ],
"else": [ { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE_CARRYING_TOO_MUCH" } ]
}
]
},
{
"type": "effect_on_condition",
Expand Down Expand Up @@ -563,7 +632,13 @@
"type": "effect_on_condition",
"id": "EOC_TELEPORT_GATEWAY_TELEPORT_05",
"condition": { "math": [ "has_var(u_gateway_destination_5)" ] },
"effect": [ { "u_teleport": { "u_val": "gateway_destination_5" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ]
"effect": [
{
"if": { "math": [ "u_teleport_total_carried_volume >= 0" ] },
"then": [ { "u_teleport": { "u_val": "gateway_destination_5" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ],
"else": [ { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE_CARRYING_TOO_MUCH" } ]
}
]
},
{
"type": "effect_on_condition",
Expand Down Expand Up @@ -622,7 +697,13 @@
"type": "effect_on_condition",
"id": "EOC_TELEPORT_GATEWAY_TELEPORT_06",
"condition": { "math": [ "has_var(u_gateway_destination_6)" ] },
"effect": [ { "u_teleport": { "u_val": "gateway_destination_6" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ]
"effect": [
{
"if": { "math": [ "u_teleport_total_carried_volume >= 0" ] },
"then": [ { "u_teleport": { "u_val": "gateway_destination_6" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ],
"else": [ { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE_CARRYING_TOO_MUCH" } ]
}
]
},
{
"type": "effect_on_condition",
Expand Down Expand Up @@ -681,7 +762,13 @@
"type": "effect_on_condition",
"id": "EOC_TELEPORT_GATEWAY_TELEPORT_07",
"condition": { "math": [ "has_var(u_gateway_destination_7)" ] },
"effect": [ { "u_teleport": { "u_val": "gateway_destination_7" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ]
"effect": [
{
"if": { "math": [ "u_teleport_total_carried_volume >= 0" ] },
"then": [ { "u_teleport": { "u_val": "gateway_destination_7" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ],
"else": [ { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE_CARRYING_TOO_MUCH" } ]
}
]
},
{
"type": "effect_on_condition",
Expand Down Expand Up @@ -740,7 +827,13 @@
"type": "effect_on_condition",
"id": "EOC_TELEPORT_GATEWAY_TELEPORT_08",
"condition": { "math": [ "has_var(u_gateway_destination_8)" ] },
"effect": [ { "u_teleport": { "u_val": "gateway_destination_8" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ]
"effect": [
{
"if": { "math": [ "u_teleport_total_carried_volume >= 0" ] },
"then": [ { "u_teleport": { "u_val": "gateway_destination_8" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ],
"else": [ { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE_CARRYING_TOO_MUCH" } ]
}
]
},
{
"type": "effect_on_condition",
Expand Down Expand Up @@ -799,7 +892,13 @@
"type": "effect_on_condition",
"id": "EOC_TELEPORT_GATEWAY_TELEPORT_09",
"condition": { "math": [ "has_var(u_gateway_destination_9)" ] },
"effect": [ { "u_teleport": { "u_val": "gateway_destination_9" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ]
"effect": [
{
"if": { "math": [ "u_teleport_total_carried_volume >= 0" ] },
"then": [ { "u_teleport": { "u_val": "gateway_destination_9" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ],
"else": [ { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE_CARRYING_TOO_MUCH" } ]
}
]
},
{
"type": "effect_on_condition",
Expand Down Expand Up @@ -858,7 +957,13 @@
"type": "effect_on_condition",
"id": "EOC_TELEPORT_GATEWAY_TELEPORT_10",
"condition": { "math": [ "has_var(u_gateway_destination_10)" ] },
"effect": [ { "u_teleport": { "u_val": "gateway_destination_10" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ]
"effect": [
{
"if": { "math": [ "u_teleport_total_carried_volume >= 0" ] },
"then": [ { "u_teleport": { "u_val": "gateway_destination_10" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ],
"else": [ { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE_CARRYING_TOO_MUCH" } ]
}
]
},
{
"type": "effect_on_condition",
Expand Down

0 comments on commit e21a73d

Please sign in to comment.