Skip to content

Commit aefd0fa

Browse files
[Xedra Evolved] Moroi rework (#82541)
* Initial commit * More moroi updates * Add fear gaze * Fix tough moroi * Kick tests * Update data/mods/Xedra_Evolved/monsters/bloodsuckers.json --------- Co-authored-by: Maleclypse <[email protected]>
1 parent 5aecb5d commit aefd0fa

File tree

8 files changed

+351
-54
lines changed

8 files changed

+351
-54
lines changed

data/mods/Xedra_Evolved/effects/effects_monster_only.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
{
33
"type": "effect_type",
44
"id": "effect_vampire_monster_strength",
5-
"//": "No enchantment to actually increase monsters damage so we have to use this as a condition for an attack",
5+
"//": "No enchantment to actually increase monsters' damage so we have to use this as a condition for an attack",
66
"name": [ "Vigor Mortis" ],
77
"desc": [ "" ],
88
"show_in_info": true
@@ -27,8 +27,8 @@
2727
"incoming_damage_mod": [
2828
{ "type": "bash", "multiply": -0.35 },
2929
{ "type": "stab", "multiply": -0.2 },
30-
{ "type": "cut", "add": -0.25 },
31-
{ "type": "bullet", "add": -0.5 }
30+
{ "type": "cut", "multiply": -0.25 },
31+
{ "type": "bullet", "multiply": -0.5 }
3232
]
3333
}
3434
]

data/mods/Xedra_Evolved/mapgen/nested/vampires.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
"object": {
66
"place_monster": [
77
{ "monster": "mon_vampire_strigoi", "x": 12, "y": 12, "spawn_data": { "patrol": [ { "x": 12, "y": 12 } ] } },
8-
{ "monster": "mon_vampire_moroi", "x": 4, "y": 4, "repeat": [ 6, 10 ] }
8+
{ "group": "GROUP_VAMPIRE_MOROI_TYPES", "x": 4, "y": 4, "repeat": [ 6, 10 ] }
99
]
1010
}
1111
},
@@ -32,7 +32,7 @@
3232
],
3333
"place_monster": [
3434
{ "monster": "mon_vampire_strigoi", "x": [ 0, 4 ], "y": [ 0, 4 ], "chance": 8 },
35-
{ "monster": "mon_vampire_moroi", "x": [ 0, 4 ], "y": [ 0, 4 ], "chance": 16 }
35+
{ "group": "GROUP_VAMPIRE_MOROI_TYPES", "x": [ 0, 4 ], "y": [ 0, 4 ], "chance": 16 }
3636
]
3737
}
3838
},

data/mods/Xedra_Evolved/mod_interactions/innawood/monstergroups/monstergroups_new.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@
3535
"monsters": [
3636
{ "monster": "mon_renfield", "weight": 200 },
3737
{ "monster": "mon_renfield", "weight": 50, "pack_size": [ 1, 3 ] },
38-
{ "monster": "mon_vampire_moroi", "weight": 35 },
38+
{ "group": "GROUP_VAMPIRE_MOROI_TYPES", "weight": 35 },
3939
{ "monster": "mon_vampire_strigoi", "weight": 25 },
4040
{ "monster": "mon_vampire_strigoi", "weight": 5, "pack_size": [ 2, 4 ] },
4141
{ "monster": "xe_mon_bat", "weight": 100, "pack_size": [ 2, 4 ] },

data/mods/Xedra_Evolved/monsters/bloodsuckers.json

Lines changed: 247 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,8 @@
2929
"bleed_rate": 80,
3030
"vision_day": 45,
3131
"vision_night": 15,
32+
"regenerates": 0,
33+
"regeneration_modifiers": [ [ "star_vampire_blood_drank", 2 ] ],
3234
"harvest": "vampire",
3335
"path_settings": { "max_dist": 5 },
3436
"grab_strength": 30,
@@ -132,6 +134,7 @@
132134
"condition": "npc_is_character",
133135
"effect": [
134136
{ "math": [ "_vampire_amount_drained", "=", "400 + rand(100)" ] },
137+
{ "u_add_effect": "star_vampire_blood_drank", "duration": 30 },
135138
{
136139
"if": { "npc_has_flag": "BLEEDSLOW2" },
137140
"then": [
@@ -179,50 +182,256 @@
179182
}
180183
},
181184
{
182-
"id": "mon_vampire_moroi",
185+
"id": "mon_vampire_moroi_fast",
186+
"looks_like": "mon_vampire_moroi",
183187
"type": "MONSTER",
188+
"copy-from": "mon_vampire_generic",
184189
"name": { "str_sp": "moroi" },
185-
"description": "This creature looks more aware than most of the ferals you have seen and in fact you might even suspect them of being normal if it weren't for the dried blood caked around their mouth and down the front of their clothes. The light glints against what look to be sharp fangs in their mouth.",
186-
"default_faction": "vampire",
187-
"bodytype": "human",
188-
"species": [ "VAMPIRE", "HUMAN" ],
189-
"volume": "62500 ml",
190-
"weight": "81500 g",
191-
"hp": 90,
190+
"description": "This creature looks more aware than most of the ferals you have seen and in fact you might even suspect them of being normal if it weren't for the dried blood caked around their mouth and down the front of their clothes. The light glints against what look to be sharp fangs in their mouth. They move with inhuman speed and fluidity.",
191+
"speed": 95,
192+
"melee_skill": 4,
193+
"melee_dice": 2,
194+
"melee_dice_sides": 4,
195+
"melee_damage": [ { "damage_type": "cut", "amount": 5 } ],
196+
"extend": {
197+
"special_attacks": [
198+
{
199+
"id": "bite_humanoid",
200+
"cooldown": 10,
201+
"damage_max_instance": [ { "damage_type": "stab", "amount": 10, "armor_multiplier": 0.2 } ],
202+
"eoc": [ "EOC_VAMPIRE_DRINK_BLOOD" ]
203+
},
204+
{
205+
"type": "monster_attack",
206+
"attack_type": "melee",
207+
"id": "moroi_vampire_blood_driven_speed_buff",
208+
"cooldown": 60,
209+
"move_cost": 10,
210+
"range": 10,
211+
"damage_max_instance": [ { "damage_type": "bash", "amount": 0 } ],
212+
"self_effects_always": [ { "id": "effect_vampire_monster_speed", "duration": [ 25, 45 ] } ],
213+
"condition": { "not": { "u_has_effect": "effect_vampire_monster_speed" } },
214+
"hit_dmg_u": "%1$s moves with inhuman speed.",
215+
"hit_dmg_npc": "%1$s moves with inhuman speed.",
216+
"miss_msg_u": "",
217+
"miss_msg_npc": "",
218+
"no_dmg_msg_u": "%1$s moves with inhuman speed.",
219+
"no_dmg_msg_npc": "%1$s moves with inhuman speed.",
220+
"dodgeable": false,
221+
"uncanny_dodgeable": false,
222+
"blockable": false
223+
},
224+
{
225+
"type": "monster_attack",
226+
"attack_type": "melee",
227+
"id": "moroi_vampire_sanguine_agility_buff",
228+
"cooldown": 45,
229+
"move_cost": 10,
230+
"range": 10,
231+
"damage_max_instance": [ { "damage_type": "bash", "amount": 0 } ],
232+
"self_effects_always": [ { "id": "effect_vampire_monster_agility", "duration": [ 25, 45 ] } ],
233+
"condition": { "not": { "u_has_effect": "effect_vampire_monster_agility" } },
234+
"hit_dmg_u": "%1$s begins moving with inhuman agility.",
235+
"hit_dmg_npc": "%1$s begins moving with inhuman agility.",
236+
"miss_msg_u": "",
237+
"miss_msg_npc": "",
238+
"no_dmg_msg_u": "%1$s begins moving with inhuman agility.",
239+
"no_dmg_msg_npc": "%1$s begins moving with inhuman agility.",
240+
"dodgeable": false,
241+
"uncanny_dodgeable": false,
242+
"blockable": false
243+
}
244+
]
245+
},
246+
"death_drops": "default_moroi_death_drops"
247+
},
248+
{
249+
"id": "mon_vampire_moroi_tough",
250+
"looks_like": "mon_vampire_moroi",
251+
"type": "MONSTER",
252+
"copy-from": "mon_vampire_generic",
253+
"name": { "str_sp": "moroi" },
254+
"description": "This creature looks more aware than most of the ferals you have seen and in fact you might even suspect them of being normal if it weren't for the dried blood caked around their mouth and down the front of their clothes. The light glints against what look to be sharp fangs in their mouth. Their skin has a waxen appearance and their muscles bulge oddly.",
255+
"hp": 145,
256+
"melee_skill": 4,
257+
"melee_dice": 2,
258+
"melee_dice_sides": 4,
259+
"melee_damage": [ { "damage_type": "cut", "amount": 5 } ],
260+
"extend": {
261+
"special_attacks": [
262+
{
263+
"id": "bite_humanoid",
264+
"cooldown": 10,
265+
"damage_max_instance": [ { "damage_type": "stab", "amount": 10, "armor_multiplier": 0.2 } ],
266+
"eoc": [ "EOC_VAMPIRE_DRINK_BLOOD" ]
267+
},
268+
{
269+
"type": "monster_attack",
270+
"attack_type": "melee",
271+
"id": "moroi_vampire_vigor_mortis_buff",
272+
"cooldown": 30,
273+
"move_cost": 10,
274+
"range": 10,
275+
"damage_max_instance": [ { "damage_type": "bash", "amount": 0 } ],
276+
"self_effects_always": [ { "id": "effect_vampire_monster_strength", "duration": [ 25, 45 ] } ],
277+
"condition": { "not": { "u_has_effect": "effect_vampire_monster_strength" } },
278+
"hit_dmg_u": "%1$s flexes their fingers with an audible crack.",
279+
"hit_dmg_npc": "%1$s flexes their fingers with an audible crack.",
280+
"miss_msg_u": "",
281+
"miss_msg_npc": "",
282+
"no_dmg_msg_u": "%1$s flexes their fingers with an audible crack.",
283+
"no_dmg_msg_npc": "%1$s flexes their fingers with an audible crack.",
284+
"dodgeable": false,
285+
"uncanny_dodgeable": false,
286+
"blockable": false
287+
},
288+
{
289+
"type": "monster_attack",
290+
"attack_type": "melee",
291+
"id": "moroi_vampire_sanguine_resilience_buff",
292+
"cooldown": 35,
293+
"move_cost": 10,
294+
"range": 10,
295+
"damage_max_instance": [ { "damage_type": "bash", "amount": 0 } ],
296+
"self_effects_always": [ { "id": "effect_vampire_monster_resilience", "duration": [ 25, 45 ] } ],
297+
"condition": { "not": { "u_has_effect": "effect_vampire_monster_resilience" } },
298+
"hit_dmg_u": "%1$s' s skin takes on a waxen sheen.",
299+
"hit_dmg_npc": "%1$s' s skin takes on a waxen sheen.",
300+
"miss_msg_u": "",
301+
"miss_msg_npc": "",
302+
"no_dmg_msg_u": "%1$s's skin takes on a waxen sheen.",
303+
"no_dmg_msg_npc": "%1$s' s skin takes on a waxen sheen.",
304+
"dodgeable": false,
305+
"uncanny_dodgeable": false,
306+
"blockable": false
307+
},
308+
{
309+
"id": "smash",
310+
"move_cost": 130,
311+
"cooldown": 8,
312+
"min_mul": 0.8,
313+
"throw_strength": 40,
314+
"condition": { "u_has_effect": "effect_vampire_monster_strength" }
315+
},
316+
{
317+
"id": "bio_op_takedown",
318+
"cooldown": 10,
319+
"condition": { "u_has_effect": "effect_vampire_monster_strength" }
320+
}
321+
]
322+
},
323+
"death_drops": "default_moroi_death_drops"
324+
},
325+
{
326+
"id": "mon_vampire_moroi_animalistic",
327+
"looks_like": "mon_vampire_moroi",
328+
"type": "MONSTER",
329+
"copy-from": "mon_vampire_generic",
330+
"name": { "str_sp": "moroi" },
331+
"description": "This creature looks more aware than most of the ferals you have seen and in fact you might even suspect them of being normal if it weren't for the dried blood caked around their mouth and down the front of their clothes. There is a red light in their eyes, and they hunch over almost as though they want to drop to all fours.",
192332
"speed": 80,
193-
"material": [ "flesh" ],
194-
"symbol": "M",
195-
"color": "brown",
196-
"aggression": 100,
197-
"morale": 100,
198-
"melee_skill": 3,
333+
"melee_skill": 4,
199334
"melee_dice": 2,
200335
"melee_dice_sides": 4,
336+
"vision_night": 25,
201337
"melee_damage": [ { "damage_type": "cut", "amount": 5 } ],
202-
"dodge": 3,
203-
"regenerates_in_dark": true,
204-
"weakpoints": [
205-
{ "name": "the head", "is_head": true, "armor_mult": { "physical": 0.5 }, "coverage": 3 },
206-
{ "name": "the eye", "is_head": true, "armor_mult": { "physical": 0 }, "coverage": 1 }
207-
],
208-
"families": [ "prof_wp_demihuman" ],
209-
"bleed_rate": 80,
210-
"vision_day": 45,
211-
"vision_night": 15,
212-
"harvest": "vampire",
213-
"path_settings": { "max_dist": 5 },
214-
"grab_strength": 20,
215-
"special_attacks": [
216-
{
217-
"id": "bite_humanoid",
218-
"cooldown": 10,
219-
"damage_max_instance": [ { "damage_type": "stab", "amount": 10, "armor_multiplier": 0.2 } ]
220-
},
221-
{ "id": "grab", "cooldown": 7 }
222-
],
223-
"death_drops": "default_moroi_death_drops",
224-
"flags": [ "SEES", "HEARS", "SMELLS", "HAS_MIND", "GRABS", "WARM", "BASHES", "REVIVES", "PUSH_MON" ],
225-
"armor": { "bash": 15, "cut": 5, "bullet": 14, "electric": 6 }
338+
"extend": {
339+
"special_attacks": [
340+
{
341+
"id": "bite_humanoid",
342+
"cooldown": 10,
343+
"damage_max_instance": [ { "damage_type": "stab", "amount": 10, "armor_multiplier": 0.2 } ],
344+
"eoc": [ "EOC_VAMPIRE_DRINK_BLOOD" ]
345+
},
346+
{
347+
"type": "monster_attack",
348+
"attack_type": "melee",
349+
"id": "moroi_vampire_sanguine_resilience_buff",
350+
"cooldown": 35,
351+
"move_cost": 10,
352+
"range": 10,
353+
"damage_max_instance": [ { "damage_type": "bash", "amount": 0 } ],
354+
"self_effects_always": [ { "id": "effect_vampire_monster_resilience", "duration": [ 25, 45 ] } ],
355+
"condition": { "not": { "u_has_effect": "effect_vampire_monster_resilience" } },
356+
"hit_dmg_u": "",
357+
"hit_dmg_npc": "",
358+
"miss_msg_u": "",
359+
"miss_msg_npc": "",
360+
"no_dmg_msg_u": "%1$s' s skin takes on a waxen sheen.",
361+
"no_dmg_msg_npc": "%1$s' s skin takes on a waxen sheen.",
362+
"dodgeable": false,
363+
"uncanny_dodgeable": false,
364+
"blockable": false
365+
},
366+
{
367+
"id": "scratch",
368+
"move_cost": 90,
369+
"damage_max_instance": [ { "damage_type": "cut", "amount": 11 } ],
370+
"cooldown": 3,
371+
"min_mul": 1,
372+
"max_mul": 2
373+
},
374+
{
375+
"type": "spell",
376+
"spell_data": { "id": "mon_vampire_fear_gaze", "min_level": 1 },
377+
"cooldown": 20,
378+
"condition": {
379+
"and": [
380+
{ "or": [ "npc_is_character", { "npc_has_species": "FERAL" } ] },
381+
{ "not": { "npc_has_effect": "effect_vampire_fear_gazed" } }
382+
]
383+
},
384+
"monster_message": "%1$s bares their fangs and hisses at %3$s!"
385+
}
386+
]
387+
},
388+
"death_drops": "default_moroi_death_drops"
389+
},
390+
{
391+
"id": "mon_vampire_moroi_stealthy",
392+
"looks_like": "mon_vampire_moroi",
393+
"type": "MONSTER",
394+
"copy-from": "mon_vampire_generic",
395+
"name": { "str_sp": "moroi" },
396+
"description": "This creature looks more aware than most of the ferals you have seen and in fact you might even suspect them of being normal if it weren't for the dried blood caked around their mouth and down the front of their clothes. You have to stare straight at them for your eyes to register that they're there.",
397+
"speed": 80,
398+
"melee_skill": 4,
399+
"melee_dice": 2,
400+
"melee_dice_sides": 4,
401+
"vision_night": 25,
402+
"melee_damage": [ { "damage_type": "cut", "amount": 5 } ],
403+
"extend": {
404+
"special_attacks": [
405+
{
406+
"id": "bite_humanoid",
407+
"cooldown": 10,
408+
"damage_max_instance": [ { "damage_type": "stab", "amount": 10, "armor_multiplier": 0.2 } ],
409+
"eoc": [ "EOC_VAMPIRE_DRINK_BLOOD" ]
410+
},
411+
{
412+
"type": "monster_attack",
413+
"attack_type": "melee",
414+
"id": "moroi_vampire_sanguine_agility_buff",
415+
"cooldown": 45,
416+
"move_cost": 10,
417+
"range": 10,
418+
"damage_max_instance": [ { "damage_type": "bash", "amount": 0 } ],
419+
"self_effects_always": [ { "id": "effect_vampire_monster_agility", "duration": [ 25, 45 ] } ],
420+
"condition": { "not": { "u_has_effect": "effect_vampire_monster_agility" } },
421+
"hit_dmg_u": "%1$s begins moving with inhuman agility.",
422+
"hit_dmg_npc": "%1$s begins moving with inhuman agility.",
423+
"miss_msg_u": "",
424+
"miss_msg_npc": "",
425+
"no_dmg_msg_u": "%1$s begins moving with inhuman agility.",
426+
"no_dmg_msg_npc": "%1$s begins moving with inhuman agility.",
427+
"dodgeable": false,
428+
"uncanny_dodgeable": false,
429+
"blockable": false
430+
}
431+
],
432+
"flags": [ "NIGHT_INVISIBILITY", "SILENTMOVES" ]
433+
},
434+
"death_drops": "default_moroi_death_drops"
226435
},
227436
{
228437
"id": "mon_vampire_strigoi",

data/mods/Xedra_Evolved/monsters/monster_spells.json

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -664,5 +664,32 @@
664664
"effect_str": "EOC_XE_STRANGE_EVENT_BROWNIE_CONVERSATION",
665665
"shape": "blast",
666666
"min_range": 10
667+
},
668+
{
669+
"type": "SPELL",
670+
"id": "mon_vampire_fear_gaze",
671+
"name": { "str": "Vampire Fear Gaze", "//~": "NO_I18N" },
672+
"description": { "str": "When a vampire uses its fear gaze on you. Bluh!.", "//~": "NO_I18N" },
673+
"flags": [ "NO_HANDS", "NO_LEGS", "MUST_HAVE_CLASS_TO_LEARN", "RANDOM_DURATION" ],
674+
"valid_targets": [ "hostile" ],
675+
"max_level": 1,
676+
"effect": "effect_on_condition",
677+
"effect_str": "EOC_XE_VAMPIRE_MONSTER_FEAR_GAZE",
678+
"shape": "blast",
679+
"min_range": 6
680+
},
681+
{
682+
"type": "effect_on_condition",
683+
"id": "EOC_XE_VAMPIRE_MONSTER_FEAR_GAZE",
684+
"effect": [
685+
{ "u_add_effect": "effect_vampire_fear_gazed", "duration": 300 },
686+
{
687+
"if": { "not": { "u_has_flag": "MAGIAL_MIND_PROTECTION" } },
688+
"then": [
689+
{ "u_add_effect": "stunned", "duration": [ 2, 5 ] },
690+
{ "u_message": "You freeze like a frightened rabbit!", "type": "bad" }
691+
]
692+
}
693+
]
667694
}
668695
]

0 commit comments

Comments
 (0)