Skip to content

Commit

Permalink
[Xedra Evolved] More Salamander and Ierde powers (#72104)
Browse files Browse the repository at this point in the history
* Initial commit

* Add Form of the Solid Earth

* Firebird updates
  • Loading branch information
Standing-Storm authored Mar 3, 2024
1 parent 8565ed9 commit 6f0de23
Showing 10 changed files with 297 additions and 4 deletions.
9 changes: 9 additions & 0 deletions data/mods/Xedra_Evolved/effects/effects.json
Original file line number Diff line number Diff line change
@@ -865,6 +865,15 @@
"limb_score_mods": [ { "limb_score": "breathing", "modifier": 0.6 } ],
"flags": [ "EFFECT_LIMB_SCORE_MOD" ]
},
{
"type": "effect_type",
"id": "effect_ierde_slow_enemies",
"name": [ "Lithic Rigidity " ],
"desc": [ "It's very hard for you to move." ],
"remove_message": "It's easier for you to move again.",
"show_in_info": true,
"enchantments": [ { "values": [ { "value": "SPEED", "multiply": -0.3 } ] } ]
},
{
"type": "effect_type",
"id": "effect_ierde_no_mind_problems",
44 changes: 44 additions & 0 deletions data/mods/Xedra_Evolved/monsters/elementals.json
Original file line number Diff line number Diff line change
@@ -512,6 +512,50 @@
"dissect": "dissect_salamander_single",
"emit_fields": [ { "emit_id": "emit_smoke_plume", "delay": "1 s" } ]
},
{
"id": "mon_salamander_firebird",
"type": "MONSTER",
"name": { "str": "firebird" },
"description": "A bird flitting through the air, glowing brightly. Its outline is obscured by the flames that ripple along its wings and body.",
"default_faction": "salamander",
"bodytype": "bird",
"categories": [ "WILDLIFE" ],
"species": [ "BIRD" ],
"volume": "4 L",
"weight": "3500 g",
"hp": 12,
"speed": 160,
"material": [ "fae_flesh" ],
"symbol": "v",
"color": "red",
"aggression": 100,
"morale": 90,
"melee_skill": 1,
"melee_dice": 1,
"melee_dice_sides": 1,
"melee_damage": [ { "damage_type": "heat", "amount": 3 } ],
"dodge": 6,
"luminance": 100,
"weakpoint_sets": [ "wps_alien_biology" ],
"families": [ "prof_alien_biology" ],
"harvest": "fae_flying",
"dissect": "dissect_salamander_single",
"special_attacks": [
{
"id": "mon_salamander_firebird_death_explosion",
"type": "spell",
"spell_data": { "id": "mon_firebird_explosion", "min_level": 0 },
"cooldown": 1,
"monster_message": "The firebird lets out a cry and explodes in a burst of flames!"
}
],
"death_function": {
"effect": { "id": "mon_firebird_explosion", "hit_self": true },
"message": "The %s bursts into flames!",
"corpse_type": "NO_CORPSE"
},
"flags": [ "SEES", "HEARS", "SMELLS", "ANIMAL", "PATH_AVOID_DANGER_1", "FLIES", "WARM", "FIREY", "SWARMS" ]
},
{
"id": "mon_elemental_saraph",
"type": "MONSTER",
38 changes: 38 additions & 0 deletions data/mods/Xedra_Evolved/monsters/monster_spells.json
Original file line number Diff line number Diff line change
@@ -126,5 +126,43 @@
"max_range": 20,
"min_duration": 3000,
"max_duration": 18000
},
{
"id": "mon_firebird_explosion",
"type": "SPELL",
"name": { "str": "Firebird Explosion" },
"valid_targets": [ "hostile", "ground" ],
"description": "A fireball caused by a zealous firebird.",
"flags": [ "RANDOM_DAMAGE", "RANDOM_AOE" ],
"effect": "attack",
"extra_effects": [ { "id": "mon_firebird_explosion_self", "hit_self": true } ],
"damage_type": "heat",
"shape": "blast",
"min_aoe": 2,
"max_aoe": 5,
"min_damage": 50,
"max_damage": 120,
"min_range": 1,
"max_range": 1,
"field_id": "fd_fire",
"field_chance": 2,
"min_field_intensity": 1,
"max_field_intensity": 2
},
{
"id": "mon_firebird_explosion_self",
"type": "SPELL",
"name": { "str": "Firebird Explosion Self" },
"valid_targets": [ "self" ],
"description": "A fireball caused by a zealous firebird that consumes itself. Damage type pure to actually hurt them since they're immune to heat.",
"effect": "attack",
"damage_type": "pure",
"shape": "blast",
"min_damage": 500,
"max_damage": 500,
"field_id": "fd_fire",
"field_chance": 1,
"min_field_intensity": 3,
"max_field_intensity": 3
}
]
23 changes: 23 additions & 0 deletions data/mods/Xedra_Evolved/mutations/paraclesians/ierde_eocs.json
Original file line number Diff line number Diff line change
@@ -378,5 +378,28 @@
"type": "effect_on_condition",
"id": "EOC_RESHAPE_EARTH_STONE_TO_DIRT",
"effect": [ { "u_cast_spell": { "id": "ierde_reshape_the_stone_to_dirt" }, "targeted": true } ]
},
{
"type": "effect_on_condition",
"id": "EOC_IERDE_STONE_FORM_ON",
"effect": [
{ "u_add_trait": "IERDE_STONE_FORM_TRAITS" },
{ "u_message": "Your body stiffens as your flesh turns to stone and your joints to earth.", "type": "good" }
]
},
{
"type": "effect_on_condition",
"id": "EOC_IERDE_STONE_FORM_PER_TURN",
"condition": { "math": [ "u_val('mana')", ">=", "3" ] },
"effect": [ { "math": [ "u_val('mana')", "-=", "1" ] } ],
"false_effect": [
{ "u_message": "You do not have enough mana to maintain your earthen body!", "type": "bad" },
{ "u_lose_trait": "IERDE_STONE_FORM_TRAITS" }
]
},
{
"type": "effect_on_condition",
"id": "EOC_IERDE_STONE_FORM_OFF",
"effect": [ { "u_lose_trait": "IERDE_STONE_FORM_TRAITS" } ]
}
]
Original file line number Diff line number Diff line change
@@ -6,6 +6,21 @@
"condition": "ALWAYS",
"ench_effects": [ { "effect": "effect_ierde_no_mind_problems", "intensity": 1 } ]
},
{
"type": "enchantment",
"id": "ench_ierde_stone_form",
"has": "HELD",
"condition": "ALWAYS",
"skills": [ { "value": "dodge", "multiply": -1 } ],
"values": [
{ "value": "ATTACK_SPEED", "multiply": 2 },
{ "value": "MOVE_COST", "multiply": 1 },
{ "value": "BONUS_DODGE", "multiply": -1 },
{ "value": "FOOTSTEP_NOISE", "multiply": 4 },
{ "value": "ARMOR_CUT", "multiply": -0.66 },
{ "value": "ARMOR_BASH", "multiply": -0.5 }
]
},
{
"id": "ierde_stomp_ground_smash_spell",
"type": "SPELL",
@@ -295,6 +310,35 @@
},
"max_aoe": 15
},
{
"id": "ierde_slow_enemies_spell",
"type": "SPELL",
"name": "Rigidity of Stone",
"description": "Infuse your enemies with the rigidity of stone, slowing their movements.",
"teachable": false,
"valid_targets": [ "ground", "hostile" ],
"spell_class": "IERDE",
"skill": "deduction",
"flags": [ "SILENT", "VERBAL", "SOMATIC", "RANDOM_DURATION", "NO_LEGS", "NO_EXPLOSION_SFX" ],
"difficulty": 6,
"max_level": { "math": [ "str_to_level(1)" ] },
"effect": "attack",
"effect_str": "effect_ierde_slow_enemies",
"shape": "blast",
"min_aoe": { "math": [ "( (u_spell_level('ierde_slow_enemies_spell') * 0.3) + 0) * (scaling_factor(u_val('strength') ) )" ] },
"max_aoe": { "math": [ "( (u_spell_level('ierde_slow_enemies_spell') * 0.3) + 0) * (scaling_factor(u_val('strength') ) )" ] },
"min_range": { "math": [ "( (u_spell_level('ierde_slow_enemies_spell') * 0.9) + 2) * (scaling_factor(u_val('strength') ) )" ] },
"max_range": { "math": [ "( (u_spell_level('ierde_slow_enemies_spell') * 0.9) + 2) * (scaling_factor(u_val('strength') ) )" ] },
"min_duration": { "math": [ "( (u_spell_level('ierde_slow_enemies_spell') * 150) + 300) * (scaling_factor(u_val('strength') ) )" ] },
"max_duration": { "math": [ "( (u_spell_level('ierde_slow_enemies_spell') * 350) + 1000) * (scaling_factor(u_val('strength') ) )" ] },
"energy_source": "MANA",
"base_energy_cost": 350,
"final_energy_cost": 250,
"energy_increment": -4,
"base_casting_time": 150,
"final_casting_time": 75,
"casting_time_increment": -4
},
{
"id": "ierde_earthen_shield_spell",
"type": "SPELL",
Original file line number Diff line number Diff line change
@@ -108,7 +108,7 @@
"points": 3,
"visibility": 0,
"ugliness": 0,
"description": "Upon gaining this ability the Ierde gains the ability to rest and recover energy as though sleeping, while underground. Activate to to begin the vigil.",
"description": "Upon gaining this ability the Ierde gains the ability to, while underground, rest and recover energy as though sleeping. Activate to to begin the vigil.",
"prereqs": [ "IERDE_EYES" ],
"category": [ "IERDE" ],
"activated_is_setup": false,
@@ -122,7 +122,7 @@
"points": 3,
"visibility": 0,
"ugliness": 0,
"description": "Upon gaining this ability the Ierde gains the ability to sense the movements of nearby creatures, as long as the Ierde maintains contact with natural earth or stone, or is underground.",
"description": "Upon gaining this ability the Ierde gains the ability to sense the movements of nearby creatures, as long as they maintains contact with natural earth or stone, or are underground.",
"prereqs": [ "IERDE_EYES" ],
"prereqs2": [ "IERDE_EARS" ],
"category": [ "IERDE" ],
@@ -179,6 +179,18 @@
"prereqs": [ "IERDE_RESHAPE_THE_EARTH" ],
"spells_learned": [ [ "ierde_create_pits_spell", 1 ] ]
},
{
"type": "mutation",
"id": "IERDE_SLOW_ENEMIES",
"name": { "str": "Rigidity of Stone" },
"points": 4,
"visibility": 0,
"ugliness": 0,
"description": "Upon gaining this ability the Ierde may infuse the rigidity of stone into their enemies, slowing their movements.",
"category": [ "IERDE" ],
"prereqs": [ "IERDE_RESHAPE_THE_EARTH" ],
"spells_learned": [ [ "ierde_slow_enemies_spell", 1 ] ]
},
{
"type": "mutation",
"id": "IERDE_RESHAPE_THE_EARTH",
@@ -555,5 +567,32 @@
"category": [ "IERDE" ],
"threshreq": [ "THRESH_IERDE" ],
"enchantments": [ "ench_ierde_no_mind_problems" ]
},
{
"type": "mutation",
"id": "IERDE_STONE_FORM",
"name": { "str": "Form of the Solid Earth" },
"points": 8,
"description": "The Ierde may transform into rock and earth. They become incredibly resilient and nearly immune to some forms of damage, but will be much, much slower.",
"prereqs": [ "IERDE_NO_KNOCKBACK" ],
"prereqs2": [ "IERDE_FEEL_NO_PAIN" ],
"category": [ "IERDE" ],
"threshreq": [ "THRESH_IERDE" ],
"active": true,
"activated_is_setup": true,
"activated_eocs": [ "EOC_IERDE_STONE_FORM_ON" ],
"processed_eocs": [ "EOC_IERDE_STONE_FORM_PER_TURN" ],
"deactivated_eocs": [ "EOC_IERDE_STONE_FORM_OFF" ]
},
{
"type": "mutation",
"id": "IERDE_STONE_FORM_TRAITS",
"name": { "str": "Earthen Form" },
"description": "You are a mass of stone and earth. You are incredibly resilient, but you are extremely slow.",
"points": 10,
"valid": false,
"enchantments": [ "ench_ierde_stone_form" ],
"override_look": { "id": "mon_stonegolem", "tile_category": "monster" },
"flags": [ "ACID_IMMUNE", "BIO_IMMUNE", "COLD_IMMUNE", "STAB_IMMUNE", "BULLET_IMMUNE" ]
}
]
Original file line number Diff line number Diff line change
@@ -13,6 +13,7 @@
"IERDE_CREATE_PITS",
"IERDE_KNOCKBACK_PUNCH",
"IERDE_RESHAPE_THE_EARTH",
"IERDE_SLOW_ENEMIES",
"IERDE_EARTH_SHIELD",
"IERDE_SUMMON_EARTH_ELEMENTAL",
"IERDE_CULTIVATE_GOBLIN_FRUIT",
@@ -57,6 +58,7 @@
{ "math": [ "u_spell_level('ierde_knockback_punch_spell')", "<", "str_to_level(1)" ] },
{ "math": [ "u_spell_level('ierde_iron_armor_spell')", "<", "per_to_level(1)" ] },
{ "math": [ "u_spell_level('ierde_reshape_the_earth_spell')", "<", "per_to_level(1)" ] },
{ "math": [ "u_spell_level('ierde_slow_enemies_spell')", "<", "str_to_level(1)" ] },
{ "math": [ "u_spell_level('ierde_earthen_shield_spell')", "<", "str_to_level(1)" ] },
{ "math": [ "u_spell_level('ierde_summon_earth_spirit')", "<", "35" ] },
{ "math": [ "u_spell_level('ierde_cultivate_goblin_fruit')", "<", "str_to_level(1)" ] },
@@ -70,6 +72,7 @@
[ "EOC_LEVELER_IERDE_KNOCKBACK_PUNCH", 9 ],
[ "EOC_LEVELER_IERDE_IRON_ARMOR", 6 ],
[ "EOC_LEVELER_IERDE_RESHAPE_THE_EARTH", 7 ],
[ "EOC_LEVELER_IERDE_SLOW_ENEMIES", 5 ],
[ "EOC_LEVELER_IERDE_EARTHEN_SHIELD", 3 ],
[ "EOC_LEVELER_IERDE_SUMMON_EARTH_SPIRIT", 8 ],
[ "EOC_LEVELER_IERDE_CULTIVATE_GOBLIN_FRUIT", 3 ],
@@ -167,6 +170,24 @@
],
"false_effect": [ { "run_eocs": "EOC_IERDE_SPELL_EXPERIENCE_INCREASER_SELECTOR" } ]
},
{
"type": "effect_on_condition",
"id": "EOC_LEVELER_IERDE_SLOW_ENEMIES",
"condition": {
"and": [
{ "math": [ "u_spell_level('ierde_slow_enemies_spell')", ">=", "0" ] },
{ "math": [ "u_spell_level('ierde_slow_enemies_spell')", "<", "str_to_level(1)" ] }
]
},
"effect": [
{
"u_message": "Your time spent surrounded by the living earth has increased your facility with your fae magicks.",
"type": "good"
},
{ "math": [ "u_spell_exp('ierde_slow_enemies_spell')", "+=", "paraclesian_passive_spell_exp(1)" ] }
],
"false_effect": [ { "run_eocs": "EOC_IERDE_SPELL_EXPERIENCE_INCREASER_SELECTOR" } ]
},
{
"type": "effect_on_condition",
"id": "EOC_LEVELER_IERDE_EARTHEN_SHIELD",
Original file line number Diff line number Diff line change
@@ -344,6 +344,35 @@
"max_duration": 1080000,
"duration_increment": 36000
},
{
"id": "salamander_summon_firebird_spell",
"type": "SPELL",
"name": "Flame of the Firebird",
"description": "Summon a delicate bird made of pure flame. The bird will last only a few moments, but if it sees an enemy it will eager dive upon them and erupt into a fireball.",
"flags": [ "SOMATIC", "VERBAL" ],
"valid_targets": [ "ground", "hostile" ],
"skill": "deduction",
"teachable": false,
"spell_class": "SALAMANDER",
"max_level": { "math": [ "per_to_level(1)" ] },
"difficulty": 4,
"effect": "summon",
"effect_str": "mon_salamander_firebird",
"shape": "blast",
"min_damage": 1,
"max_damage": 1,
"min_range": { "math": [ "( (u_spell_level('salamander_summon_firebird_spell') * 1) + 2) * scaling_factor(u_val('perception') )" ] },
"max_range": { "math": [ "( (u_spell_level('salamander_summon_firebird_spell') * 1) + 2) * scaling_factor(u_val('perception') )" ] },
"min_duration": 3000,
"max_duration": 3000,
"energy_source": "MANA",
"base_energy_cost": 400,
"final_energy_cost": 250,
"energy_increment": -5,
"base_casting_time": 300,
"final_casting_time": 75,
"casting_time_increment": -10
},
{
"id": "salamander_fire_breath",
"type": "SPELL",
Loading

0 comments on commit 6f0de23

Please sign in to comment.