Skip to content

Commit

Permalink
[Magiclysm] Add Mana Extraction classless spell (#76559)
Browse files Browse the repository at this point in the history
* Initial commit

* Update components
  • Loading branch information
Standing-Storm authored Sep 20, 2024
1 parent 09de5fe commit 9ed7edb
Show file tree
Hide file tree
Showing 6 changed files with 43 additions and 3 deletions.
22 changes: 22 additions & 0 deletions data/mods/Magiclysm/Spells/classless.json
Original file line number Diff line number Diff line change
Expand Up @@ -579,6 +579,28 @@
"energy_increment": 33.33,
"base_casting_time": 100
},
{
"id": "classless_restore_crystal_mana",
"//": "This spell does not have a corresponding Dabbler hobby because it's literally useless on its own.",
"type": "SPELL",
"name": "Mana Extraction",
"description": "Return crystallized mana into raw mana and absorb it, restoring some of your mana. The process is slow and not very efficient, but it's easier to transport than mana potions.",
"message": "You slowly crush the crystallized mana and as it flares into a burst of light, absorb the now-free mana.",
"valid_targets": [ "self" ],
"flags": [ "RESTORATION_SPELL", "CONCENTRATE", "SOMATIC", "NO_LEGS", "RANDOM_DAMAGE" ],
"effect": "recover_energy",
"effect_str": "MANA",
"shape": "blast",
"components": "spell_components_restore_crystal_mana",
"difficulty": 3,
"max_level": 10,
"min_damage": { "math": [ "(u_spell_level('classless_restore_crystal_mana') * 10) + 50" ] },
"max_damage": { "math": [ "(u_spell_level('classless_restore_crystal_mana') * 30) + 150" ] },
"energy_source": "MANA",
"extra_effects": [ { "id": "eoc_restoration_setup", "hit_self": true } ],
"base_energy_cost": 0,
"base_casting_time": 12000
},
{
"id": "eoc_evocation_setup",
"type": "SPELL",
Expand Down
1 change: 1 addition & 0 deletions data/mods/Magiclysm/itemgroups/itemgroups.json
Original file line number Diff line number Diff line change
Expand Up @@ -1583,6 +1583,7 @@
{ "item": "spell_scroll_ethereal_grasp", "prob": 50 },
{ "item": "spell_scroll_crystallize_mana", "prob": 50 },
{ "item": "spell_scroll_blinding_flash", "prob": 50 },
{ "item": "spell_scroll_classless_restore_crystal_mana", "prob": 40 },
{ "item": "spell_scroll_classless_clean_clothing_and_self", "prob": 50 },
{ "item": "spell_scroll_classless_easy_sleep_spell", "prob": 50 }
],
Expand Down
1 change: 1 addition & 0 deletions data/mods/Magiclysm/itemgroups/spellbooks.json
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@
[ "spell_scroll_classless_watch_spell", 30 ],
[ "spell_scroll_classless_clean_clothing_and_self", 75 ],
[ "spell_scroll_classless_easy_sleep_spell", 45 ],
[ "spell_scroll_classless_restore_crystal_mana", 35 ],
[ "spell_scroll_disruption_bolt", 50 ],
[ "spell_scroll_shocking_lash", 50 ],
[ "spell_scroll_electric_arts", 50 ],
Expand Down
9 changes: 9 additions & 0 deletions data/mods/Magiclysm/items/spell_scrolls.json
Original file line number Diff line number Diff line change
Expand Up @@ -2094,5 +2094,14 @@
"name": { "str": "Scroll of Faerie Fire", "str_pl": "Scrolls of Faerie Fire" },
"description": "Limn the target in a soft green or blue light. Great at parties.",
"use_action": { "type": "learn_spell", "spells": [ "magus_light_target" ] }
},
{
"type": "BOOK",
"copy-from": "spell_scroll",
"id": "spell_scroll_classless_restore_crystal_mana",
"//": "Classless spell",
"name": { "str": "Scroll of Mana Extraction", "str_pl": "Scrolls of Mana Extraction" },
"description": "Turn crystallized mana back into mana you can use. Doing that repeatedly is a great way to make huge quatities of mana vanish into the Aethereum.",
"use_action": { "type": "learn_spell", "spells": [ "classless_restore_crystal_mana" ] }
}
]
7 changes: 4 additions & 3 deletions data/mods/Magiclysm/items/spellbooks.json
Original file line number Diff line number Diff line change
Expand Up @@ -379,7 +379,7 @@
"category": "manuals",
"name": { "str": "The Utility of Mana as an Energy Source", "str_pl": "copies of The Utility of Mana as an Energy Source" },
"description": "This book details spells that use your mana to recover various physiological effects.",
"//": "1 technomancer, 2 animist, 1 druid, 1 earthshaper spell",
"//": "1 classless, 1 technomancer, 2 animist, 1 druid, 1 earthshaper spell",
"weight": "728 g",
"volume": "3 L",
"price": "50 USD",
Expand All @@ -390,6 +390,7 @@
"use_action": {
"type": "learn_spell",
"spells": [
"classless_restore_crystal_mana",
"recover_mana",
"recover_bionic_power",
"recover_pain",
Expand Down Expand Up @@ -1010,7 +1011,7 @@
"type": "BOOK",
"category": "manuals",
"name": { "str": "The Limitations of the Mana Economy", "str_pl": "copies of The Limitations of the Mana Economy" },
"//": "1 Classless spell",
"//": "2 Classless spells",
"description": "A study of the inherent non-scalability of magical solutions to problems, touching on the difficulty of producing crystallized mana in the quantities needed for industrial use, the long time period necessary for magical materials like orichalcum, mithril, or crimsonite to reach reliability, the way that earthshaping and druidism specifically require wilderness for some of their spells, and the way that an average mage exhausts their mana pool within fifteen minutes of working on any major project without extensive study and training.",
"weight": "1728 g",
"volume": "3 L",
Expand All @@ -1019,7 +1020,7 @@
"looks_like": "cookbook",
"symbol": "?",
"color": "white",
"use_action": { "type": "learn_spell", "spells": [ "crystallize_mana" ] }
"use_action": { "type": "learn_spell", "spells": [ "classless_restore_crystal_mana", "crystallize_mana" ] }
},
{
"id": "special_effects_spellbook",
Expand Down
6 changes: 6 additions & 0 deletions data/mods/Magiclysm/requirements/spell_components.json
Original file line number Diff line number Diff line change
Expand Up @@ -294,5 +294,11 @@
"//": "Lens, chisel, and mana focus for the Zoom Lens spell",
"qualities": [ { "id": "CHISEL", "level": 3 }, { "id": "MANA_FOCUS", "level": 1 } ],
"components": [ [ [ "lens", 1 ] ] ]
},
{
"id": "spell_components_restore_crystal_mana",
"type": "requirement",
"//": "Crystallized mana for the Mana Extraction spell",
"components": [ [ [ "crystallized_mana", 5 ] ] ]
}
]

0 comments on commit 9ed7edb

Please sign in to comment.