Skip to content

Commit

Permalink
[Magiclysm] Lot of different stuff (#62703)
Browse files Browse the repository at this point in the history
* Some fixes

* Move soulfire EoC to enchantment, same as all another ench

* small tweaks and boosts of Earth Elemental attunement

* small tweaks and boosts of Earth Elemental attunement

* remove unnecessary parts in teravolt_explosion

* Gaias chosen stuff

* Grammar

* add throwing knifes to knifeshot spell

* replace holy sword and holy armor effect with different, conditional powered enchantments

* no message

* added comment to stormcaller spell

* Added conditional lumination instead of flat

* Apply suggestions from code review

* Add a cool pocket for alchemist, to compensate its shitness

* Added CONSTRUCTED SWORDS to kelvinist's swords
  • Loading branch information
GuardianDll authored Mar 14, 2023
1 parent cb64435 commit d4f3815
Show file tree
Hide file tree
Showing 14 changed files with 387 additions and 107 deletions.
36 changes: 30 additions & 6 deletions data/mods/Magiclysm/Spells/attunements/Earth_Elemental.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
"name": "Quake",
"description": "Cause a localized earthquake, knocking down enemies and overturning the earth.",
"valid_targets": [ "hostile", "ground" ],
"flags": [ "LOUD", "NO_PROJECTILE", "MUST_HAVE_CLASS_TO_LEARN" ],
"flags": [ "LOUD", "NO_HANDS", "NO_PROJECTILE", "MUST_HAVE_CLASS_TO_LEARN", "IGNORE_WALLS" ],
"effect": "attack",
"shape": "blast",
"effect_str": "downed",
Expand All @@ -26,24 +26,44 @@
"difficulty": 4,
"max_level": 35,
"base_casting_time": 150,
"final_casting_time": 0,
"casting_time_increment": -5,
"sound_description": "a deep rumbling",
"sound_id": "earth_spell",
"sound_variant": "strong",
"energy_source": "MANA",
"extra_effects": [ { "id": "quake_transform" } ]
"extra_effects": [ { "id": "quake_transform" }, { "id": "quake_shake" } ]
},
{
"id": "quake_transform",
"type": "SPELL",
"name": "Quake Transform",
"description": "Causes rubble to be spawned occasionally.",
"valid_targets": [ "hostile", "ground" ],
"flags": [ "SILENT", "MUST_HAVE_CLASS_TO_LEARN" ],
"flags": [ "SILENT", "NO_EXPLOSION_SFX", "IGNORE_WALLS" ],
"effect": "ter_transform",
"effect_str": "quake_transform",
"shape": "blast",
"min_damage": 12,
"max_damage": 12,
"min_damage": 30,
"max_damage": 200,
"damage_increment": 5,
"min_aoe": 0,
"max_aoe": 35,
"aoe_increment": 1,
"max_level": 35
},
{
"id": "quake_shake",
"type": "SPELL",
"name": "Quake Earthquake",
"description": "Destroy furniture and terrain nearby.",
"valid_targets": [ "hostile", "ground" ],
"flags": [ "SILENT", "NO_EXPLOSION_SFX", "IGNORE_WALLS" ],
"effect": "bash",
"shape": "blast",
"min_damage": 30,
"max_damage": 200,
"damage_increment": 5,
"min_aoe": 0,
"max_aoe": 35,
"aoe_increment": 1,
Expand All @@ -55,7 +75,7 @@
"name": "Rock Blast",
"description": "Fire three large rocks at an enemy, causing blunt damage and knocking it back.",
"valid_targets": [ "hostile" ],
"flags": [ "SOMATIC", "NO_LEGS", "MUST_HAVE_CLASS_TO_LEARN" ],
"flags": [ "NO_HANDS", "NO_LEGS", "MUST_HAVE_CLASS_TO_LEARN" ],
"effect": "attack",
"shape": "blast",
"max_level": 35,
Expand All @@ -72,12 +92,15 @@
"damage_type": "bash",
"base_energy_cost": 5000,
"base_casting_time": 200,
"final_casting_time": 50,
"casting_time_increment": -5,
"extra_effects": [ { "id": "single_rock_blast" }, { "id": "single_rock_blast" }, { "id": "rock_blast_push" } ]
},
{
"id": "single_rock_blast",
"name": "Single Rock Blast",
"type": "SPELL",
"flags": [ "NO_EXPLOSION_SFX" ],
"description": "A single portion of the rock blast spell.",
"valid_targets": [ "hostile" ],
"effect": "attack",
Expand All @@ -96,6 +119,7 @@
"type": "SPELL",
"description": "The push portion of the rock blast spell.",
"valid_targets": [ "hostile" ],
"flags": [ "NO_EXPLOSION_SFX" ],
"effect": "directed_push",
"shape": "blast",
"max_level": 35,
Expand Down
87 changes: 86 additions & 1 deletion data/mods/Magiclysm/Spells/attunements/Gaias_Chosen.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,97 @@
"base_casting_time": 60000,
"base_energy_cost": 800,
"energy_source": "MANA",
"components": "spell_components_samsara",
"difficulty": 8,
"min_damage": -20,
"max_damage": -200,
"damage_increment": -4.5,
"max_level": 40,
"flags": [ "SOMATIC", "VERBAL", "CONCENTRATE", "LOUD" ]
},
{
"id": "dust_reborn",
"type": "SPELL",
"name": "Dust Reborn",
"description": "Create a cast of your own body and soul, hidden inside the earth's lines. When times come, and your body will be close to destruction, you can abandon it, transferring your consciousness into undamaged one. But it has the huge price, and for body immortality you pay with temporary body weakness.",
"valid_targets": [ "self" ],
"effect": "effect_on_condition",
"effect_str": "EOC_DUST_REBORN_INITIAL",
"shape": "blast",
"base_casting_time": 2160000,
"base_energy_cost": 1000,
"energy_source": "MANA",
"flags": [ "SOMATIC", "VERBAL", "CONCENTRATE", "MUST_HAVE_CLASS_TO_LEARN" ],
"spell_class": "GAIAS_CHOSEN",
"difficulty": 0,
"max_level": 0
},
{
"id": "terra_armor",
"type": "SPELL",
"name": "Terra Armor",
"description": "Cover yourself in dense, invisible energy of Earth. Higher level increase your defence abilities.",
"valid_targets": [ "self" ],
"effect": "attack",
"effect_str": "effect_terra_armor",
"shape": "blast",
"base_casting_time": 550,
"base_energy_cost": 750,
"min_duration": 50000,
"max_duration": 1800000,
"duration_increment": 50000,
"difficulty": 7,
"max_level": 35,
"flags": [ "SOMATIC" ],
"spell_class": "GAIAS_CHOSEN",
"energy_source": "MANA"
},
{
"id": "effect_terra_armor",
"type": "effect_type",
"name": [ "Terra Armor" ],
"desc": [ "Your body is covered in dense, ethereal shell, that protect you." ],
"remove_message": "Your lost your terra shell.",
"enchantments": [
{
"values": [
{
"value": "ARMOR_ACID",
"add": { "arithmetic": [ { "u_val": "spell_level", "spell": "terra_armor" }, "*", { "const": -3 } ] }
},
{
"value": "ARMOR_BASH",
"add": { "arithmetic": [ { "u_val": "spell_level", "spell": "terra_armor" }, "*", { "const": -3 } ] }
},
{
"value": "ARMOR_BIO",
"add": { "arithmetic": [ { "u_val": "spell_level", "spell": "terra_armor" }, "*", { "const": -3 } ] }
},
{
"value": "ARMOR_BULLET",
"add": { "arithmetic": [ { "u_val": "spell_level", "spell": "terra_armor" }, "*", { "const": -3 } ] }
},
{
"value": "ARMOR_COLD",
"add": { "arithmetic": [ { "u_val": "spell_level", "spell": "terra_armor" }, "*", { "const": -3 } ] }
},
{
"value": "ARMOR_CUT",
"add": { "arithmetic": [ { "u_val": "spell_level", "spell": "terra_armor" }, "*", { "const": -3 } ] }
},
{
"value": "ARMOR_ELEC",
"add": { "arithmetic": [ { "u_val": "spell_level", "spell": "terra_armor" }, "*", { "const": -3 } ] }
},
{
"value": "ARMOR_HEAT",
"add": { "arithmetic": [ { "u_val": "spell_level", "spell": "terra_armor" }, "*", { "const": -3 } ] }
},
{
"value": "ARMOR_STAB",
"add": { "arithmetic": [ { "u_val": "spell_level", "spell": "terra_armor" }, "*", { "const": -3 } ] }
}
]
}
]
}
]
1 change: 1 addition & 0 deletions data/mods/Magiclysm/Spells/attunements/Stormcaller.json
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@
"base_energy_cost": 400,
"energy_increment": -17.5,
"final_energy_cost": 225,
"//": "it is intended to have min_damage 0 - the attunement is given on lvl 5, which round the amount of monsters to 1 and make smooth progression afterwards",
"min_damage": 0,
"max_damage": 4,
"damage_increment": 0.1,
Expand Down
4 changes: 2 additions & 2 deletions data/mods/Magiclysm/Spells/kelvinist.json
Original file line number Diff line number Diff line change
Expand Up @@ -357,7 +357,7 @@
"id": "frost_armor",
"type": "SPELL",
"name": "Frost Armor",
"description": "Covers you in a thin layer of magical ice to protect you from harm.",
"description": "Covers you in a thin layer of magical ice to attack the enemies nearby.",
"valid_targets": [ "self" ],
"flags": [ "NO_LEGS", "CONCENTRATE", "VERBAL", "SOMATIC" ],
"effect": "spawn_item",
Expand All @@ -379,7 +379,7 @@
"id": "frost_armor_plus",
"type": "SPELL",
"name": "Enhanced Frost Armor",
"description": "Covers you in a thin layer of magical ice to protect you from harm.",
"description": "Covers you in a thin layer of magical ice to attack the enemies nearby.",
"valid_targets": [ "self" ],
"flags": [ "NO_LEGS", "VERBAL", "SOMATIC" ],
"effect": "spawn_item",
Expand Down
10 changes: 5 additions & 5 deletions data/mods/Magiclysm/Spells/technomancer.json
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@
{
"id": "holy_blade",
"type": "SPELL",
"name": "Holy Blade",
"name": "Mage Blade",
"description": "This blade of light will cut through any evil it makes contact with!",
"valid_targets": [ "self" ],
"flags": [ "VERBAL", "NO_LEGS", "CONCENTRATE" ],
Expand All @@ -76,7 +76,7 @@
{
"id": "holy_blade_plus",
"type": "SPELL",
"name": "Enhanced Holy Blade",
"name": "Enhanced Mage Blade",
"description": "This blade of light will cut through any evil it makes contact with! Now you know this spell like the back of your hand, and start to design your own version.",
"valid_targets": [ "self" ],
"flags": [ "VERBAL", "NO_LEGS" ],
Expand All @@ -100,7 +100,7 @@
{
"id": "spirit_armor",
"type": "SPELL",
"name": "Spiritual Armor",
"name": "Mage Armor",
"description": "Evil will not make it through your defenses if your faith is strong enough!",
"valid_targets": [ "self" ],
"flags": [ "VERBAL", "NO_LEGS", "CONCENTRATE", "SOMATIC" ],
Expand All @@ -125,7 +125,7 @@
{
"id": "spirit_armor_plus",
"type": "SPELL",
"name": "Enhanced Spiritual Armor",
"name": "Enhanced Mage Armor",
"description": "Evil will not make it through your defenses if your faith is strong enough! Now you know this spell like the back of your hand, and start to design your own version.",
"valid_targets": [ "self" ],
"flags": [ "VERBAL", "NO_LEGS", "SOMATIC" ],
Expand Down Expand Up @@ -586,7 +586,7 @@
"name": "Knifeshot",
"description": "This spell generates a magnetic field around a knife, before launching it at high speed.",
"valid_targets": [ "hostile", "ally" ],
"flags": [ "CONCENTRATE", "SILENT", "SOMATIC" ],
"flags": [ "CONCENTRATE", "SILENT", "SOMATIC", "NO_HANDS" ],
"components": "spell_components_knifeshot",
"effect": "attack",
"shape": "blast",
Expand Down
13 changes: 13 additions & 0 deletions data/mods/Magiclysm/enchantments/Earth_Elemental.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
[
{
"type": "enchantment",
"id": "EARTH_ELEMENTAL",
"condition": "ALWAYS",
"values": [
{ "value": "ARMOR_CUT", "add": -15 },
{ "value": "STRENGTH", "add": 5 },
{ "value": "MAX_STAMINA", "multiply": 3 },
{ "value": "REGEN_STAMINA", "multiply": 3 }
]
}
]
95 changes: 93 additions & 2 deletions data/mods/Magiclysm/enchantments/Gaias_Chosen.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,7 @@
"valid_targets": [ "hostile" ],
"damage_type": "cut",
"min_range": 1,
"max_range": 1,
"extra_effects": [ { "id": "AEA_PAIN", "hit_self": true } ]
"max_range": 1
},
{
"type": "enchantment",
Expand All @@ -27,5 +26,97 @@
"npc_message": "%1$s's thorny brambles bite into their attacker."
}
]
},
{
"type": "mutation",
"id": "DUST_REBORN",
"name": { "str": "Split" },
"description": "Your body and soul were split in half, and part of it were left inside the ley-line, connected with your main body with tiniest, ethereal thread. In danger situation, you will abandon your main body and turn back into copy, with all knowledge and skills you have.",
"points": 0,
"valid": false,
"purifiable": false
},
{
"type": "effect_on_condition",
"id": "EOC_DUST_REBORN_INITIAL",
"effect": [
{ "u_location_variable": { "u_val": "dust_reborn_teleport" }, "min_radius": 0, "max_radius": 0 },
{ "u_add_effect": "effect_dust_reborn", "duration": "30 days" },
{ "u_add_trait": "DUST_REBORN", "duration": "30 days" },
{ "u_message": "Part of your body and soul were divorced.", "type": "neutral" }
]
},
{
"id": "effect_dust_reborn",
"type": "effect_type",
"name": [ "Divided" ],
"desc": [ "Your body was split before, which makes you really fragile, but allow you to accept more mana than before." ],
"remove_message": "Your body turns back to normal state.",
"enchantments": [ { "values": [ { "value": "MAX_HP", "multiply": -0.7 }, { "value": "MAX_MANA", "multiply": 0.3 } ] } ]
},
{
"id": "EOC_DUST_REBORN",
"type": "effect_on_condition",
"eoc_type": "PREVENT_DEATH",
"condition": { "u_has_trait": "DUST_REBORN" },
"effect": [
{ "u_add_effect": "incorporeal", "duration": 1 },
{ "u_add_effect": "downed", "duration": 1 },
{ "u_set_hp": 999, "only_increase": true },
{ "u_spawn_item": "corpse_painful" },
{ "queue_eocs": "EOC_DUST_REBORN_2", "time_in_future": "1 seconds" },
{
"u_message": "You feel an insane pain, as your soul is pulled off, out of your body. Second later, your mind were pulled somewhere else, in the place you visit before."
}
]
},
{
"id": "EOC_DUST_REBORN_2",
"type": "effect_on_condition",
"//": "This is two step EoC to make incorporeal effect trigger properly - without it you do not drop your items properly. Also remove all mutagen from your body, empty your fat (because its a backup body, contain not much of calories.)",
"condition": { "u_has_trait": "DUST_REBORN" },
"effect": [
{ "u_teleport": { "u_val": "dust_reborn_teleport" } },
{ "u_lose_trait": "DUST_REBORN" },
{ "arithmetic": [ { "u_val": "pain" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "stored_kcal" }, "=", { "const": 15000 } ] },
{ "arithmetic": [ { "u_val": "thirst" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "bad_food" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "blood" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "calcium" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "instability" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "iron" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagen" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagen_alpha" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagen_batrachian" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagen_beast" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagen_bird" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagen_cattle" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagen_cephalopod" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagen_chelator" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagen_chimera" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagen_elfa" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagen_feline" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagen_fish" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagen_gastropod" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagen_human" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagen_insect" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagen_lizard" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagen_lupine" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagen_medical" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagen_mouse" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagen_plant" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagen_rabbit" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagen_raptor" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagen_rat" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagen_slime" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagen_spider" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagen_troglobite" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagen_ursine" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutagenic_slurry" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "mutant_toxin" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "redcells" }, "=", { "const": 0 } ] },
{ "arithmetic": [ { "u_val": "vitamin", "name": "vitC" }, "=", { "const": 0 } ] }
]
}
]
Loading

0 comments on commit d4f3815

Please sign in to comment.