Skip to content

Commit 7853857

Browse files
[Magiclysm] Rework mi-go Nethermancer (#82954)
* Initial commit * Kick tests
1 parent 5bf0e20 commit 7853857

File tree

4 files changed

+75
-45
lines changed

4 files changed

+75
-45
lines changed

data/mods/Magiclysm/Spells/alien_mages.json

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,23 @@
111111
"max_duration": 30000,
112112
"duration_increment": 1350
113113
},
114+
{
115+
"id": "migo_nether_shield_monster",
116+
"type": "SPELL",
117+
"name": { "str": "Mi-go Nether Shield", "//~": "NO_I18N" },
118+
"description": {
119+
"str": "Shield yourself from Nether damage, and secondarily from bullets, if you're a mi-go Nethermancer.",
120+
"//~": "NO_I18N"
121+
},
122+
"valid_targets": [ "self" ],
123+
"effect": "attack",
124+
"effect_str": "effect_migo_nether_shield_monster",
125+
"shape": "blast",
126+
"flags": [ "SILENT", "NO_PROJECTILE" ],
127+
"max_level": 25,
128+
"min_duration": 5000,
129+
"max_duration": 5000
130+
},
114131
{
115132
"id": "triffid_brambles_arc",
116133
"type": "SPELL",

data/mods/Magiclysm/effects/effects.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2065,7 +2065,8 @@
20652065
"effect_feral_technomancer_bless",
20662066
"enchant_windrun_monster",
20672067
"effect_feral_animist_guardian_spirit",
2068-
"effect_feral_animist_inner_voice"
2068+
"effect_feral_animist_inner_voice",
2069+
"effect_migo_nether_shield_monster"
20692070
]
20702071
},
20712072
{
@@ -2222,6 +2223,7 @@
22222223
"enchant_windrun_monster",
22232224
"effect_feral_animist_guardian_spirit",
22242225
"effect_feral_animist_inner_voice",
2226+
"effect_migo_nether_shield_monster",
22252227
"effect_feral_druid_thornskin"
22262228
]
22272229
},

data/mods/Magiclysm/effects/effects_monster.json

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,11 @@
11
[
2+
{
3+
"id": "effect_monster_no_double_cast",
4+
"type": "effect_type",
5+
"//": "Hidden effect, used for cooldown manipulations",
6+
"name": [ "" ],
7+
"desc": [ "" ]
8+
},
29
{
310
"id": "effect_demon_spider_speed",
411
"type": "effect_type",
@@ -44,5 +51,16 @@
4451
"rating": "good",
4552
"max_duration": "12 hours",
4653
"show_in_info": true
54+
},
55+
{
56+
"id": "effect_migo_nether_shield_monster",
57+
"type": "effect_type",
58+
"name": [ "Nether Shell" ],
59+
"desc": [ "You are surrounded by a shield that blocks nether damage, and also a bit of bullet damage." ],
60+
"rating": "good",
61+
"max_duration": "12 hours",
62+
"show_in_info": true,
63+
"enchantments": [ { "incoming_damage_mod": [ { "type": "nether", "multiply": -1 }, { "type": "bullet", "multiply": -0.8 } ] } ],
64+
"base_mods": { "dodge_mod": [ 1 ] }
4765
}
4866
]

data/mods/Magiclysm/monsters/mi-go.json

Lines changed: 37 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -85,36 +85,12 @@
8585
},
8686
{
8787
"id": "mon_mi_go_nethermancer",
88+
"copy-from": "mon_mi_go_scout",
89+
"looks_like": "mon_mi_go",
8890
"type": "MONSTER",
8991
"name": { "str": "mi-go nethermancer" },
9092
"description": "An alien creature of uncertain origin. Its shapeless pink body bears numerous sets of paired appendages of unknown function, and a pair of ribbed, membranous wings which seem to be quite useless. Its odd, vaguely pyramid-shaped head bristles with numerous wavering antennae, and it moves with an uncanny fluidity on its many legs. Its carapace is covered in regular patterns which occasionally shift as you look at them before settling into a new configuration.",
91-
"default_faction": "mi-go",
92-
"bodytype": "migo",
93-
"species": [ "MIGO" ],
94-
"looks_like": "mon_mi_go",
95-
"volume": "92500 ml",
96-
"weight": "110 kg",
97-
"hp": 160,
98-
"speed": 120,
99-
"diff": 35,
100-
"material": [ "mi-go_flesh" ],
101-
"symbol": "&",
102-
"color": "red",
103-
"aggression": 20,
104-
"morale": 30,
105-
"melee_skill": 7,
106-
"melee_dice": 4,
107-
"melee_dice_sides": 6,
108-
"melee_damage": [ { "damage_type": "cut", "amount": 8 } ],
10993
"dodge": 4,
110-
"bleed_rate": 75,
111-
"vision_day": 50,
112-
"vision_night": 20,
113-
"harvest": "mi-go",
114-
"weakpoint_sets": [ "wps_mi-go", "wps_natural_armor" ],
115-
"families": [ "prof_wp_mi-go_basic", "prof_wp_mi-go_advanced", "prof_wp_nat_armored" ],
116-
"path_settings": { "max_dist": 50, "allow_open_doors": true, "avoid_traps": true, "avoid_sharp": true },
117-
"scents_ignored": [ "sc_fetid" ],
11894
"special_attacks": [
11995
[ "PARROT", 100 ],
12096
{ "id": "scratch", "damage_max_instance": [ { "damage_type": "cut", "amount": 12, "armor_multiplier": 0.4 } ] },
@@ -142,6 +118,40 @@
142118
"condition": { "not": { "u_has_flag": "NO_SPELLCASTING" } },
143119
"monster_message": "%1$s's numerous antennae weave in a complicated pattern."
144120
},
121+
{
122+
"id": "migo_nethermancer_nether_shield",
123+
"type": "spell",
124+
"spell_data": { "id": "migo_nether_shield_monster", "hit_self": true, "min_level": 10 },
125+
"cooldown": 60,
126+
"condition": {
127+
"and": [ { "not": { "u_has_effect": "effect_migo_nether_shield_monster" } }, { "not": { "u_has_flag": "NO_SPELLCASTING" } } ]
128+
},
129+
"monster_message": "%1$s's numerous antennae sync their movements for a brief moment."
130+
},
131+
{
132+
"type": "monster_attack",
133+
"attack_type": "melee",
134+
"id": "migo_nethermancer_nether_shield_initial",
135+
"//": "fake attack, allowing the mi-go to put up Nether Shield immediately",
136+
"cooldown": 1,
137+
"move_cost": 80,
138+
"dodgeable": false,
139+
"blockable": false,
140+
"uncanny_dodgeable": false,
141+
"range": 50,
142+
"self_effects_always": [
143+
{ "id": "effect_migo_nether_shield_monster", "duration": 50 },
144+
{ "id": "effect_monster_no_double_cast", "duration": 8000 }
145+
],
146+
"effects_require_dmg": false,
147+
"condition": { "not": { "u_has_effect": "effect_monster_no_double_cast" } },
148+
"hit_dmg_u": "%1$s's numerous antennae sync their movements for a brief moment.",
149+
"hit_dmg_npc": "%1$s's numerous antennae sync their movements for a brief moment.",
150+
"miss_msg_u": "%1$s's numerous antennae sync their movements for a brief moment.",
151+
"miss_msg_npc": "%1$s's numerous antennae sync their movements for a brief moment.",
152+
"no_dmg_msg_u": "%1$s's numerous antennae sync their movements for a brief moment.",
153+
"no_dmg_msg_npc": "%1$s's numerous antennae sync their movements for a brief moment."
154+
},
145155
{
146156
"id": "migo_nethermancer_dispel",
147157
"type": "spell",
@@ -151,23 +161,6 @@
151161
"monster_message": "%1$s numerous antennae point directly at %3$s."
152162
}
153163
],
154-
"flags": [
155-
"SEES",
156-
"SMELLS",
157-
"HEARS",
158-
"HAS_MIND",
159-
"WARM",
160-
"BASHES",
161-
"POISON",
162-
"NO_BREATHE",
163-
"MAGIC_USER",
164-
"ARTHROPOD_BLOOD",
165-
"PATH_AVOID_DANGER",
166-
"CAN_OPEN_DOORS",
167-
"PRIORITIZE_TARGETS",
168-
"CORNERED_FIGHTER"
169-
],
170-
"//": "Armor value assumes some kind of space-warping protective spell to defend against bullets (no way to single out arrows from spears etc or I'd add those too)",
171-
"armor": { "bash": 5, "cut": 13, "bullet": 80, "electric": 3 }
164+
"extend": { "flags": [ "MAGIC_USER", "CORNERED_FIGHTER" ] }
172165
}
173166
]

0 commit comments

Comments
 (0)