diff --git a/data/json/monster_weakpoints/generic_weakpoints.json b/data/json/monster_weakpoints/generic_weakpoints.json index 21e23c94caa0e..09a393dc58529 100644 --- a/data/json/monster_weakpoints/generic_weakpoints.json +++ b/data/json/monster_weakpoints/generic_weakpoints.json @@ -59,6 +59,37 @@ } ] }, + { + "type": "weakpoint_set", + "id": "wps_metal_shell_armor", + "//": "Similar to wps_bone_armor for rust plated and rust shelled zombies.", + "weakpoints": [ + { + "id": "gap", + "name": "a small fissure between the metal plates", + "coverage": 5, + "difficulty": { "melee": 4, "ranged": 5 }, + "coverage_mult": { "broad": 0.5 }, + "armor_mult": { "all": 0.35 } + }, + { + "id": "joint", + "name": "an exposed joint unprotected by the metal plates", + "coverage": 10, + "difficulty": { "melee": 3, "ranged": 7 }, + "coverage_mult": { "ranged": 0.25 }, + "armor_mult": { "all": 0.15 } + }, + { + "id": "hard_point", + "name": "a strong, rigid chunk of metal", + "armor_mult": { "all": 1.4 }, + "crit_mult": { "all": 0.75 }, + "coverage_mult": { "melee": 0.75 }, + "coverage": 3 + } + ] + }, { "type": "weakpoint_set", "id": "wps_eyes_big", diff --git a/data/json/monstergroups/zombie_upgrades.json b/data/json/monstergroups/zombie_upgrades.json index 1bb541962f54c..c380f3dd4ed6f 100644 --- a/data/json/monstergroups/zombie_upgrades.json +++ b/data/json/monstergroups/zombie_upgrades.json @@ -218,5 +218,15 @@ { "monster": "mon_skeleton_master", "weight": 60, "cost_multiplier": 2 }, { "monster": "mon_skeleton_necro", "weight": 60, "cost_multiplier": 2 } ] + }, + { + "name": "GROUP_ZOMBIE_MINER_UPGRADE", + "type": "monstergroup", + "monsters": [ + { "monster": "mon_zombie_miner" }, + { "monster": "mon_zombie_shady", "weight": 150 }, + { "monster": "mon_zombie_rust", "weight": 110 }, + { "monster": "mon_zombie_tough", "weight": 60 } + ] } ] diff --git a/data/json/monsters/fish.json b/data/json/monsters/fish.json index c6d407dd69ffb..0430ab4bb9b14 100644 --- a/data/json/monsters/fish.json +++ b/data/json/monsters/fish.json @@ -1004,7 +1004,7 @@ "harvest": "mutant_shellfish", "dissect": "dissect_crustacean_small", "weakpoint_sets": [ "wps_arthropod" ], - "families": [ "prof_intro_biology", "prof_wp_nat_armored" ], + "families": [ "prof_intro_biology", "prof_wp_nat_armored", "prof_wp_basic_bug" ], "special_attacks": [ [ "SHRIEK_ALERT", 6 ], [ "SHRIEK_STUN", 1 ] ], "anger_triggers": [ "PLAYER_CLOSE", "FRIEND_DIED", "FRIEND_ATTACKED", "HURT" ], "fear_triggers": [ "FIRE" ], diff --git a/data/json/monsters/fungus_zombie.json b/data/json/monsters/fungus_zombie.json index 49c39637e97d3..7aeac9bd2ddde 100644 --- a/data/json/monsters/fungus_zombie.json +++ b/data/json/monsters/fungus_zombie.json @@ -266,7 +266,7 @@ "id": "mon_fungal_wretch", "type": "MONSTER", "name": { "str": "fungal wretch", "str_pl": "fungal wretches" }, - "description": "This severely deformed child lies on its back, its ribs exposed to the sky. With its limbs contorted in ways only possible through a lack of bones, the child’s ribcage stretches far beyond the boundaries of human biology, appearing akin to a bony hive coated in quivering fungal matter. Spoors occasionally waft from its hollowed interior, and, periodically, you can catch sight of weakened movement staring within the abomination’s guts.", + "description": "This severely deformed child lies on its back, its ribs exposed to the sky. With its limbs contorted in ways only possible through a lack of bones, the child’s ribcage stretches far beyond the boundaries of human biology, appearing akin to a bony hive coated in quivering fungal matter. Spores occasionally waft from its hollowed interior, and, periodically, you can catch sight of weak movement within the abomination’s guts.", "default_faction": "fungus", "bodytype": "blob", "species": [ "FUNGUS" ], @@ -294,7 +294,7 @@ "type": "spell", "spell_data": { "id": "wretch_fungal_raptor_spawn", "hit_self": true }, "cooldown": 50, - "monster_message": "Through a plume of fungal spores, a small beast struggles to take wing from the wretch’s abdomen!" + "monster_message": "Through a plume of fungal spores, a small beast struggles to take flight from the wretch’s abdomen!" } ], "death_drops": { "subtype": "collection", "groups": [ [ "default_zombie_children_clothes", 100 ], [ "child_items", 65 ] ] }, diff --git a/data/json/monsters/zed-animal.json b/data/json/monsters/zed-animal.json index 391fa7451c365..77240d503a211 100644 --- a/data/json/monsters/zed-animal.json +++ b/data/json/monsters/zed-animal.json @@ -680,6 +680,7 @@ "armor_bash": 8, "armor_cut": 2, "armor_bullet": 1, + "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_biochemistry" ], "vision_night": 7, "harvest": "zombie_acid", "path_settings": { "max_dist": 5 }, diff --git a/data/json/monsters/zed-classic.json b/data/json/monsters/zed-classic.json index b222575edae93..c0d5c95b0ac9a 100644 --- a/data/json/monsters/zed-classic.json +++ b/data/json/monsters/zed-classic.json @@ -24,7 +24,7 @@ "armor_cut": 8, "armor_bullet": 6, "armor_elec": 1, - "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_body_armor" ], + "weakpoint_sets": [ "wps_humanoid_body", "wps_natural_armor" ], "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_wp_nat_armored" ], "harvest": "zombie", "special_attacks": [ { "type": "bite", "cooldown": 5 } ], @@ -258,7 +258,7 @@ "armor_bullet": 3, "armor_elec": 5, "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_gasmask" ], - "families": [ "prof_intro_biology", "prof_wp_zombie" ], + "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_wp_syn_armored" ], "weakpoints": [ { "name": "a tear in its hazmat suit", diff --git a/data/json/monsters/zed-pupating.json b/data/json/monsters/zed-pupating.json index 3d2d739e7d579..95d9c7c2ce674 100644 --- a/data/json/monsters/zed-pupating.json +++ b/data/json/monsters/zed-pupating.json @@ -120,6 +120,8 @@ "armor_cut": 10, "armor_bullet": 10, "armor_elec": 6, + "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_head_small" ], + "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_wp_hulk" ], "vision_day": 83, "vision_night": 4, "harvest": "zombie", @@ -172,6 +174,8 @@ "armor_cut": 10, "armor_bullet": 10, "armor_elec": 6, + "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_head_small" ], + "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_wp_hulk" ], "vision_day": 83, "vision_night": 4, "harvest": "zombie", diff --git a/data/json/monsters/zed-winged.json b/data/json/monsters/zed-winged.json index 9f5db3d0de5d9..8276823a185d2 100644 --- a/data/json/monsters/zed-winged.json +++ b/data/json/monsters/zed-winged.json @@ -154,6 +154,8 @@ "melee_dice_sides": 3, "melee_damage": [ { "damage_type": "cut", "amount": 4 } ], "dodge": 3, + "weakpoint_sets": [ "wps_arthropod_hymenoptera", "wps_arthropod_flying" ], + "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_wp_flying" ], "vision_night": 5, "harvest": "zombie", "special_attacks": [ { "id": "impale", "damage_max_instance": [ { "damage_type": "stab", "amount": 15, "armor_multiplier": 0.6 } ] } ], @@ -215,6 +217,7 @@ "description": "This small, winged predator darts through the air on three thinly-haired wings that look like stretched human hands. A jagged spike with a pulsing electrical glow juts out from the point where the wings meet.", "melee_damage": [ { "damage_type": "electric", "amount": 8 } ], "luminance": 8, + "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_electromagnetics" ], "special_attacks": [ [ "SHOCKSTORM", 25 ], { "id": "impale", "damage_max_instance": [ { "damage_type": "stab", "amount": 15, "armor_multiplier": 0.6 } ] } diff --git a/data/json/monsters/zed_acid.json b/data/json/monsters/zed_acid.json index cb4025efc448b..ca6db90e8a37b 100644 --- a/data/json/monsters/zed_acid.json +++ b/data/json/monsters/zed_acid.json @@ -54,7 +54,7 @@ "id": "mon_zombie_corrosive", "type": "MONSTER", "name": { "str": "corrosive zombie" }, - "description": "This zombie has swollen to immense proportions, but still manages to hold itself together with semi-congealed acid all over its bloated body. It moves clumsily, but spits from a large reserve of acid with uncanny accuracy.", + "description": "This zombie has swollen to immense proportions, but still manages to hold itself together with semi-congealed acid all over its bloated, leathery body. It moves clumsily, but spits from a large reserve of acid with uncanny accuracy.", "default_faction": "zombie", "bodytype": "human", "species": [ "ZOMBIE", "HUMAN" ], @@ -80,7 +80,7 @@ "bleed_rate": 50, "vision_night": 3, "weakpoint_sets": [ "wps_humanoid_body", "wps_natural_armor" ], - "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_biochemistry" ], + "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_biochemistry", "prof_wp_nat_armored" ], "harvest": "zombie_acid", "special_attacks": [ { @@ -144,7 +144,7 @@ "dodge": 1, "bleed_rate": 50, "vision_night": 3, - "weakpoint_sets": [ "wps_humanoid_body" ], + "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_head_big" ], "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_biochemistry" ], "harvest": "zombie_acid", "special_attacks": [ [ "ACID", 20 ] ], diff --git a/data/json/monsters/zed_amalgamation.json b/data/json/monsters/zed_amalgamation.json index 7844cd5f8a33d..4d8ea797bab38 100644 --- a/data/json/monsters/zed_amalgamation.json +++ b/data/json/monsters/zed_amalgamation.json @@ -30,6 +30,7 @@ "default_faction": "zombie", "volume": "75 L", "weight": "75 kg", + "families": [ "prof_intro_biology", "prof_wp_amalgamation" ], "hp": 100, "speed": 100, "upgrades": { "age_grow": 1, "into_group": "GROUP_COCOON_SMALL", "multiple_spawns": true, "spawn_range": 5 }, @@ -109,7 +110,7 @@ "aggression": 100, "morale": 100, "weakpoint_sets": [ "wps_amalgamation_base" ], - "families": [ "prof_wp_amalgamation" ], + "families": [ "prof_intro_biology", "prof_wp_amalgamation" ], "harvest": "zombie_amalgamation", "//": "TODO: When effects/spells can mess with path settings + flags move smartness to the effect of dedicated coordinatiors", "path_settings": { "avoid_sharp": true, "avoid_traps": true, "max_dist": 400 }, @@ -208,7 +209,11 @@ { "id": "acid_charge" } ], "harvest": "zombie_amalgamation_acid", - "extend": { "flags": [ "ACIDPROOF", "ACID_BLOOD" ], "weakpoint_sets": [ "wps_amalgamation_acid" ] } + "extend": { + "flags": [ "ACIDPROOF", "ACID_BLOOD" ], + "families": [ "prof_biochemistry" ], + "weakpoint_sets": [ "wps_amalgamation_acid" ] + } }, { "type": "MONSTER", @@ -282,7 +287,11 @@ "special_when_hit": [ "ZAPBACK", 100 ], "death_function": { "effect": { "id": "death_shock_blast", "hit_self": true } }, "harvest": "zombie_amalgamation_electric", - "extend": { "flags": [ "ELECTRIC" ], "weakpoint_sets": [ "wps_amalgamation_armor", "wps_amalgamation_electric" ] } + "extend": { + "flags": [ "ELECTRIC" ], + "families": [ "prof_electromagnetics" ], + "weakpoint_sets": [ "wps_amalgamation_armor", "wps_amalgamation_electric" ] + } }, { "type": "MONSTER", @@ -328,6 +337,9 @@ "armor_acid": 12, "armor_elec": 12, "vision_night": 8, - "extend": { "weakpoint_sets": [ "wps_amalgamation_armor", "wps_amalgamation_mandible", "wps_amalgamation_tail" ] } + "extend": { + "weakpoint_sets": [ "wps_amalgamation_armor", "wps_amalgamation_mandible", "wps_amalgamation_tail" ], + "families": [ "prof_wp_nat_armored" ] + } } ] diff --git a/data/json/monsters/zed_burned.json b/data/json/monsters/zed_burned.json index fe75c479d985a..d3e83a9623ce0 100644 --- a/data/json/monsters/zed_burned.json +++ b/data/json/monsters/zed_burned.json @@ -3,7 +3,7 @@ "id": "mon_zombie_child_scorched", "type": "MONSTER", "name": { "str": "zombie kinderling" }, - "description": "A tiny charred body, jumping and kicked and flailing around in a mockery of playground exercise. It does not need a face for you to feel bad about killing it.", + "description": "A tiny charred body, jumping and kicking and flailing around in a mockery of playground exercise. It does not need a face for you to feel bad about killing it.", "default_faction": "zombie", "bodytype": "human", "species": [ "ZOMBIE", "HUMAN" ], @@ -53,7 +53,7 @@ "id": "mon_zombie_fiend", "type": "MONSTER", "name": { "str": "fiend" }, - "description": "A charred zombie covered with bony plates, spikes and protrusions. Moves stiffly, but swiftly.", + "description": "A charred zombie covered with bony plates, spikes, and protrusions. Moves stiffly, but swiftly.", "default_faction": "zombie", "bodytype": "human", "species": [ "ZOMBIE", "HUMAN" ], @@ -78,7 +78,7 @@ "armor_fire": 15, "armor_elec": 3, "weakpoint_sets": [ "wps_humanoid_body", "wps_bone_armor" ], - "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_burn_care" ], + "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_wp_skeleton", "prof_burn_care" ], "bleed_rate": 0, "vision_day": 10, "vision_night": 3, @@ -115,7 +115,7 @@ "armor_acid": 3, "armor_fire": 15, "armor_elec": 3, - "weakpoint_sets": [ "wps_humanoid_body" ], + "weakpoint_sets": [ "wps_humanoid_body", "wps_natural_armor" ], "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_burn_care" ], "bleed_rate": 0, "vision_day": 10, diff --git a/data/json/monsters/zed_children.json b/data/json/monsters/zed_children.json index 066c114086628..30a078667e739 100644 --- a/data/json/monsters/zed_children.json +++ b/data/json/monsters/zed_children.json @@ -99,7 +99,7 @@ "melee_damage": [ { "damage_type": "cut", "amount": 1 } ], "armor_elec": 1, "dodge": 1, - "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_child_body", "wps_humanoid_head_big" ], + "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_child_body", "wps_humanoid_head_big", "wps_eyes_big" ], "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_wp_child" ], "bleed_rate": 50, "vision_day": 10, @@ -285,6 +285,7 @@ "melee_damage": [ { "damage_type": "cut", "amount": 0 } ], "armor_elec": 1, "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_child_body", "wps_humanoid_head_big" ], + "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_wp_child" ], "vision_day": 20, "vision_night": 3, "bleed_rate": 0, diff --git a/data/json/monsters/zed_command.json b/data/json/monsters/zed_command.json index 612529ff021bd..3f785033fc133 100644 --- a/data/json/monsters/zed_command.json +++ b/data/json/monsters/zed_command.json @@ -3,7 +3,7 @@ "id": "mon_skeleton_master", "type": "MONSTER", "name": { "str": "skeletal master" }, - "description": "A strange zombie covered in bone plates from face to toe. Despite the added weight on its body its movements are coordinated, almost as if capable of analyzing your movements.", + "description": "A strange zombie covered in bone plates from face to toe. Despite the added weight on its body, its movements are coordinated, almost as if capable of analyzing your movements.", "default_faction": "zombie", "bodytype": "human", "species": [ "ZOMBIE", "HUMAN" ], @@ -60,7 +60,7 @@ "id": "mon_skeleton_necro", "type": "MONSTER", "name": { "str": "zombie lich", "str_pl": "zombie liches" }, - "description": "A twisted visage of the human body decked in bone from head to toe. Its vague shape reminiscent of some tabletop monster, it walks and watches your actions with a cold and calculating demeanor.", + "description": "A twisted visage of the human body decked in bone from head to toe. Its vague shape is reminiscent of some tabletop monster, and it walks and watches your actions with a cold and calculating demeanor.", "default_faction": "zombie", "bodytype": "human", "species": [ "ZOMBIE", "HUMAN" ], diff --git a/data/json/monsters/zed_explosive.json b/data/json/monsters/zed_explosive.json index f9ec2afd4897e..4aab828e4d3d7 100644 --- a/data/json/monsters/zed_explosive.json +++ b/data/json/monsters/zed_explosive.json @@ -22,6 +22,8 @@ "melee_dice_sides": 4, "melee_damage": [ { "damage_type": "cut", "amount": 0 } ], "armor_elec": 2, + "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_head_small" ], + "families": [ "prof_intro_biology", "prof_wp_zombie" ], "vision_night": 3, "harvest": "exempt", "special_attacks": [ [ "BOOMER", 20 ], [ "scratch", 20 ] ], @@ -72,6 +74,8 @@ "armor_cut": 5, "armor_bullet": 4, "armor_elec": 3, + "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_head_small" ], + "families": [ "prof_intro_biology", "prof_wp_zombie" ], "bleed_rate": 50, "vision_night": 3, "harvest": "zombie", @@ -123,6 +127,8 @@ "melee_dice_sides": 4, "melee_damage": [ { "damage_type": "cut", "amount": 0 } ], "armor_elec": 1, + "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_head_small" ], + "families": [ "prof_intro_biology", "prof_wp_zombie" ], "vision_night": 3, "luminance": 8, "harvest": "exempt", @@ -153,8 +159,8 @@ "bodytype": "human", "species": [ "ZOMBIE", "HUMAN" ], "diff": 5, - "volume": "62500 ml", - "weight": "81500 g", + "volume": "92500 ml", + "weight": "120 kg", "hp": 15, "speed": 80, "material": [ "flesh" ], @@ -167,6 +173,8 @@ "melee_dice_sides": 4, "melee_damage": [ { "damage_type": "cut", "amount": 0 } ], "armor_elec": 1, + "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_head_small" ], + "families": [ "prof_intro_biology", "prof_wp_zombie" ], "vision_night": 3, "harvest": "exempt", "emit_fields": [ { "emit_id": "emit_toxic_leak", "delay": "1 s" } ], @@ -185,8 +193,8 @@ "bodytype": "human", "species": [ "ZOMBIE", "HUMAN" ], "diff": 10, - "volume": "62500 ml", - "weight": "81500 g", + "volume": "92500 ml", + "weight": "120 kg", "hp": 40, "speed": 70, "material": [ "flesh" ], @@ -199,6 +207,8 @@ "melee_dice_sides": 4, "melee_damage": [ { "damage_type": "cut", "amount": 0 } ], "armor_elec": 1, + "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_head_small" ], + "families": [ "prof_intro_biology", "prof_wp_zombie" ], "vision_night": 3, "harvest": "exempt", "emit_fields": [ { "emit_id": "emit_relax_gas_leak", "delay": "1 s" } ], @@ -217,8 +227,8 @@ "bodytype": "human", "species": [ "ZOMBIE", "HUMAN" ], "diff": 9, - "volume": "62500 ml", - "weight": "81500 g", + "volume": "92500 ml", + "weight": "120 kg", "hp": 45, "speed": 60, "material": [ "flesh" ], @@ -231,6 +241,8 @@ "melee_dice_sides": 4, "melee_damage": [ { "damage_type": "cut", "amount": 0 } ], "armor_elec": 1, + "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_head_small" ], + "families": [ "prof_intro_biology", "prof_wp_zombie" ], "vision_night": 2, "harvest": "exempt", "emit_fields": [ { "emit_id": "emit_tear_gas_leak", "delay": "1 s" } ], @@ -263,6 +275,8 @@ "armor_cut": 5, "armor_bullet": 5, "armor_elec": 2, + "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_head_small" ], + "families": [ "prof_intro_biology", "prof_wp_zombie" ], "vision_night": 5, "harvest": "zombie_meatslug", "emit_fields": [ { "emit_id": "emit_sludge_puddle", "delay": "1 s" } ], @@ -309,7 +323,7 @@ "species": [ "ZOMBIE", "HUMAN" ], "diff": 9, "volume": "98 L", - "weight": "85 kg", + "weight": "135 kg", "hp": 150, "speed": 95, "material": [ "flesh" ], @@ -322,6 +336,8 @@ "armor_cut": 5, "armor_bullet": 5, "armor_elec": 2, + "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_head_small" ], + "families": [ "prof_intro_biology", "prof_wp_zombie" ], "vision_night": 2, "harvest": "zombie_meatslug", "special_attacks": [ diff --git a/data/json/monsters/zed_ferrous.json b/data/json/monsters/zed_ferrous.json index fde73abfb6930..5c37bc28f6168 100644 --- a/data/json/monsters/zed_ferrous.json +++ b/data/json/monsters/zed_ferrous.json @@ -58,7 +58,7 @@ "armor_cut": 8, "armor_bullet": 8, "armor_stab": 8, - "weakpoint_sets": [ "wps_humanoid_body", "wps_natural_armor" ], + "weakpoint_sets": [ "wps_humanoid_body", "wps_metal_shell_armor" ], "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_wp_nat_armored" ], "bleed_rate": 50, "vision_night": 3, @@ -109,7 +109,7 @@ "armor_cut": 15, "armor_bullet": 15, "armor_stab": 15, - "weakpoint_sets": [ "wps_humanoid_body", "wps_natural_armor" ], + "weakpoint_sets": [ "wps_humanoid_body", "wps_metal_shell_armor" ], "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_wp_nat_armored" ], "bleed_rate": 0, "vision_night": 3, diff --git a/data/json/monsters/zed_fusion.json b/data/json/monsters/zed_fusion.json index beb2a7229e8d8..c64152a7883db 100644 --- a/data/json/monsters/zed_fusion.json +++ b/data/json/monsters/zed_fusion.json @@ -22,6 +22,7 @@ "dodge": 1, "armor_bash": 8, "armor_elec": 2, + "families": [ "prof_intro_biology" ], "harvest": "zombie_leather", "fear_triggers": [ "HURT", "FIRE" ], "flags": [ "SEES", "HEARS", "WARM", "BASHES", "GROUP_BASH", "POISON", "HUMAN" ] @@ -53,6 +54,7 @@ "armor_cut": 5, "armor_bullet": 4, "armor_elec": 3, + "families": [ "prof_intro_biology", "prof_wp_zombie" ], "vision_night": 3, "harvest": "zombie", "special_attacks": [ [ "GRAB", 7 ], [ "scratch", 20 ], [ "ZOMBIE_FUSE", 80 ] ], @@ -106,6 +108,7 @@ "armor_bullet": 40, "armor_fire": 80, "armor_elec": 6, + "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_wp_syn_armored" ], "bleed_rate": 0, "vision_night": 10, "special_attacks": [ @@ -175,6 +178,7 @@ "armor_cut": 20, "armor_bullet": 16, "armor_elec": 5, + "families": [ "prof_intro_biology", "prof_wp_zombie" ], "bleed_rate": 0, "harvest": "exempt", "special_attacks": [ [ "FLESH_TENDRIL", 1 ] ], @@ -204,6 +208,7 @@ "melee_dice_sides": 4, "melee_damage": [ { "damage_type": "cut", "amount": 0 } ], "armor_elec": 1, + "families": [ "prof_intro_biology", "prof_wp_zombie" ], "vision_night": 3, "harvest": "exempt", "special_attacks": [ [ "SUICIDE", 20 ] ], @@ -239,6 +244,7 @@ "armor_cut": 6, "armor_bullet": 5, "armor_elec": 1, + "families": [ "prof_intro_biology", "prof_wp_zombie" ], "bleed_rate": 50, "vision_night": 50, "harvest": "exempt", @@ -274,6 +280,7 @@ "armor_cut": 6, "armor_bullet": 5, "armor_elec": 1, + "families": [ "prof_intro_biology", "prof_wp_zombie" ], "bleed_rate": 50, "harvest": "exempt", "starting_ammo": { "barb_paralysis": 100 }, @@ -317,6 +324,7 @@ "armor_cut": 10, "armor_bullet": 10, "armor_elec": 2, + "families": [ "prof_intro_biology", "prof_wp_zombie" ], "bleed_rate": 50, "vision_day": 1, "special_attacks": [ { "type": "leap", "cooldown": 5, "max_range": 3, "allow_no_target": true }, [ "scratch", 5 ] ], @@ -349,6 +357,7 @@ "armor_cut": 10, "armor_bullet": 6, "armor_elec": 2, + "families": [ "prof_intro_biology", "prof_wp_zombie" ], "bleed_rate": 50, "vision_day": 2, "vision_night": 2, @@ -379,6 +388,7 @@ "armor_cut": 25, "armor_bullet": 20, "armor_elec": 5, + "families": [ "prof_intro_biology", "prof_wp_zombie" ], "bleed_rate": 50, "harvest": "exempt", "flags": [ "SEES", "HEARS", "IMMOBILE", "WARM", "POISON", "IMMOBILE", "NO_BREATHE", "FILTHY" ] @@ -405,6 +415,7 @@ "armor_cut": 15, "armor_bullet": 10, "armor_elec": 6, + "families": [ "prof_intro_biology", "prof_wp_zombie" ], "bleed_rate": 0, "harvest": "exempt", "flags": [ "SEES", "HEARS", "IMMOBILE", "WARM", "POISON", "IMMOBILE", "NO_BREATHE", "FILTHY" ] diff --git a/data/json/monsters/zed_lab.json b/data/json/monsters/zed_lab.json index 1fdd1bd4e92b9..83c4ff03a3ed1 100644 --- a/data/json/monsters/zed_lab.json +++ b/data/json/monsters/zed_lab.json @@ -78,11 +78,7 @@ "armor_bullet": 4, "armor_stab": 4, "armor_elec": 2, - "weakpoints": [ - { "name": "the leg", "armor_mult": { "physical": 0 }, "coverage": 18 }, - { "name": "the arm", "armor_mult": { "physical": 0 }, "coverage": 9 }, - { "name": "the head", "armor_mult": { "physical": 0 }, "coverage": 4 } - ], + "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_body_armor" ], "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_wp_syn_armored" ], "vision_day": 30, "vision_night": 3, @@ -127,7 +123,7 @@ { "name": "the face", "armor_mult": { "physical": 0 }, "coverage": 2 }, { "name": "a gap in the armor", "armor_mult": { "physical": 0 }, "coverage": 1 } ], - "families": [ "prof_intro_biology", "prof_wp_zombie" ], + "families": [ "prof_intro_biology", "prof_wp_demihuman" ], "vision_day": 20, "vision_night": 3, "luminance": 8, @@ -164,7 +160,7 @@ { "name": "the eye", "armor_mult": { "physical": 0 }, "coverage": 1 }, { "name": "a gap in the armor", "armor_mult": { "physical": 0 }, "coverage": 3 } ], - "families": [ "prof_intro_biology", "prof_wp_zombie" ], + "families": [ "prof_intro_biology", "prof_wp_demihuman", "prof_wp_skeleton" ], "bleed_rate": 50, "vision_night": 5, "luminance": 16, diff --git a/data/json/monsters/zed_misc.json b/data/json/monsters/zed_misc.json index de46774c11af8..11348c1d7b404 100644 --- a/data/json/monsters/zed_misc.json +++ b/data/json/monsters/zed_misc.json @@ -24,6 +24,7 @@ "armor_cut": 2, "armor_bullet": 1, "armor_elec": 2, + "families": [ "prof_intro_biology", "prof_wp_zombie" ], "bleed_rate": 0, "vision_night": 7, "harvest": "zombie", @@ -115,6 +116,7 @@ "armor_cut": 2, "armor_bullet": 1, "armor_elec": 2, + "families": [ "prof_intro_biology", "prof_wp_zombie" ], "bleed_rate": 0, "vision_night": 7, "harvest": "zombie", @@ -280,7 +282,7 @@ "vision_day": 2, "vision_night": 2, "weakpoint_sets": [ "wps_humanoid_body_headless" ], - "families": [ "prof_intro_biology", "prof_wp_zombie" ], + "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_wp_hulk" ], "harvest": "zombie", "special_attacks": [ [ "GRAB", 7 ], [ "scratch", 20 ] ], "death_drops": "default_zombie_death_drops", @@ -328,10 +330,7 @@ "armor_cut": 6, "armor_bullet": 5, "armor_elec": 2, - "weakpoints": [ - { "name": "the head", "armor_mult": { "physical": 0.5 }, "coverage": 3 }, - { "name": "the eye", "armor_mult": { "physical": 0 }, "coverage": 1 } - ], + "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_head_small" ], "families": [ "prof_intro_biology", "prof_wp_zombie" ], "bleed_rate": 50, "vision_night": 4, @@ -386,10 +385,7 @@ "armor_bullet": 8, "armor_stab": 8, "armor_elec": 2, - "weakpoints": [ - { "name": "the head", "armor_mult": { "physical": 0.5 }, "coverage": 3 }, - { "name": "the eye", "armor_mult": { "physical": 0 }, "coverage": 1 } - ], + "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_head_small" ], "families": [ "prof_intro_biology", "prof_wp_zombie" ], "bleed_rate": 50, "vision_night": 3, @@ -447,10 +443,7 @@ "armor_cut": 5, "armor_bullet": 4, "armor_elec": 2, - "weakpoints": [ - { "name": "the head", "armor_mult": { "physical": 0.5 }, "coverage": 3 }, - { "name": "the eye", "armor_mult": { "physical": 0 }, "coverage": 1 } - ], + "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_head_small" ], "families": [ "prof_intro_biology", "prof_wp_zombie" ], "bleed_rate": 0, "vision_day": 5, @@ -558,10 +551,8 @@ "armor_cut": 15, "armor_bullet": 15, "armor_elec": 6, - "weakpoints": [ - { "name": "the head", "armor_mult": { "physical": 0.5 }, "coverage": 3 }, - { "name": "the eye", "armor_mult": { "physical": 0 }, "coverage": 1 } - ], + "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_head_small" ], + "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_wp_hulk" ], "vision_day": 50, "vision_night": 8, "harvest": "zombie", @@ -718,10 +709,7 @@ "armor_bullet": 10, "armor_stab": 10, "armor_elec": 1, - "weakpoints": [ - { "name": "the head", "armor_mult": { "physical": 0.5 }, "coverage": 3 }, - { "name": "the eye", "armor_mult": { "physical": 0 }, "coverage": 1 } - ], + "weakpoint_sets": [ "wps_humanoid_body" ], "bleed_rate": 0, "vision_day": 30, "vision_night": 3, @@ -761,10 +749,7 @@ "armor_cut": 12, "armor_bullet": 10, "armor_elec": 5, - "weakpoints": [ - { "name": "the head", "armor_mult": { "physical": 0.5 }, "coverage": 3 }, - { "name": "the eye", "armor_mult": { "physical": 0 }, "coverage": 1 } - ], + "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_head_small" ], "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_wp_hulk" ], "bleed_rate": 0, "vision_day": 83, @@ -935,10 +920,7 @@ "armor_cut": 2, "armor_bullet": 2, "armor_elec": 3, - "weakpoints": [ - { "name": "the head", "armor_mult": { "physical": 0.5 }, "coverage": 3 }, - { "name": "the eye", "armor_mult": { "physical": 0 }, "coverage": 1 } - ], + "weakpoint_sets": [ "wps_humanoid_body" ], "families": [ "prof_intro_biology", "prof_wp_zombie" ], "bleed_rate": 0, "vision_day": 50, @@ -1380,6 +1362,8 @@ "dodge": 4, "armor_fire": 5, "armor_elec": 1, + "weakpoint_sets": [ "wps_humanoid_body" ], + "families": [ "prof_intro_biology", "prof_wp_zombie" ], "bleed_rate": 50, "vision_day": 50, "vision_night": 3, @@ -1430,10 +1414,7 @@ "armor_stab": 8, "armor_bullet": 10, "armor_elec": 2, - "weakpoints": [ - { "name": "the head", "armor_mult": { "physical": 0.5 }, "coverage": 3 }, - { "name": "the eye", "armor_mult": { "physical": 0 }, "coverage": 1 } - ], + "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_head_small" ], "families": [ "prof_intro_biology", "prof_wp_zombie" ], "bleed_rate": 50, "dodge": 7, @@ -1577,10 +1558,7 @@ "armor_cut": 2, "armor_bullet": 2, "armor_elec": 3, - "weakpoints": [ - { "name": "the face", "armor_mult": { "physical": 0 }, "coverage": 3 }, - { "name": "the eye", "armor_mult": { "physical": 0 }, "coverage": 1 } - ], + "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_open_helmet" ], "families": [ "prof_intro_biology", "prof_wp_zombie" ], "vision_day": 15, "vision_night": 2, @@ -1619,16 +1597,14 @@ "armor_cut": 2, "armor_bullet": 2, "armor_elec": 1, - "weakpoints": [ - { "name": "the face", "armor_mult": { "physical": 0 }, "coverage": 3 }, - { "name": "the eye", "armor_mult": { "physical": 0 }, "coverage": 1 } - ], + "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_open_helmet" ], "families": [ "prof_intro_biology", "prof_wp_zombie" ], "vision_day": 15, "vision_night": 2, "harvest": "zombie", "special_attacks": [ { "type": "bite", "cooldown": 20 } ], "death_drops": "mon_zombie_miner_death_drops", + "upgrades": { "half_life": 35, "into_group": "GROUP_ZOMBIE_MINER_UPGRADE" }, "flags": [ "SEES", "HEARS", "WARM", "BASHES", "GROUP_BASH", "POISON", "NO_BREATHE", "REVIVES", "FILTHY" ] }, { @@ -1657,10 +1633,7 @@ "armor_cut": 4, "armor_bullet": 3, "armor_elec": 1, - "weakpoints": [ - { "name": "the head", "armor_mult": { "physical": 0.5 }, "coverage": 3 }, - { "name": "the eye", "armor_mult": { "physical": 0 }, "coverage": 1 } - ], + "weakpoint_sets": [ "wps_humanoid_body" ], "families": [ "prof_intro_biology", "prof_wp_zombie" ], "bleed_rate": 50, "vision_night": 5, @@ -1714,8 +1687,6 @@ "armor_bullet": 1, "armor_elec": 1, "//1": "The torn fursuit offers slightly more protection.", - "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_body_armor" ], - "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_wp_nat_armored" ], "harvest": "zombie", "special_attacks": [ { "type": "bite", "cooldown": 5 } ], "death_drops": { "subtype": "collection", "groups": [ [ "default_zombie_clothes", 100 ], [ "zombie_fursuits", 100 ] ] }, diff --git a/data/json/monsters/zed_radiation.json b/data/json/monsters/zed_radiation.json index c3835b2df268b..0e5fdb8269247 100644 --- a/data/json/monsters/zed_radiation.json +++ b/data/json/monsters/zed_radiation.json @@ -25,6 +25,8 @@ "armor_cut": 6, "armor_bullet": 5, "armor_elec": 3, + "weakpoint_sets": [ "wps_humanoid_body" ], + "families": [ "prof_intro_biology", "prof_wp_zombie" ], "bleed_rate": 0, "vision_day": 50, "vision_night": 3, @@ -63,6 +65,8 @@ "armor_cut": 4, "armor_bullet": 3, "armor_elec": 2, + "weakpoint_sets": [ "wps_humanoid_body" ], + "families": [ "prof_intro_biology", "prof_wp_zombie" ], "bleed_rate": 50, "vision_day": 50, "vision_night": 3, @@ -97,6 +101,8 @@ "armor_cut": 5, "armor_bullet": 4, "armor_elec": 2, + "weakpoint_sets": [ "wps_humanoid_body" ], + "families": [ "prof_intro_biology", "prof_wp_zombie" ], "bleed_rate": 50, "vision_day": 50, "vision_night": 3, @@ -132,6 +138,8 @@ "armor_cut": 6, "armor_bullet": 5, "armor_elec": 2, + "weakpoint_sets": [ "wps_humanoid_body" ], + "families": [ "prof_intro_biology", "prof_wp_zombie" ], "bleed_rate": 50, "vision_day": 50, "vision_night": 3, @@ -167,6 +175,8 @@ "armor_cut": 8, "armor_bullet": 6, "armor_elec": 2, + "weakpoint_sets": [ "wps_humanoid_body" ], + "families": [ "prof_intro_biology", "prof_wp_zombie" ], "bleed_rate": 50, "vision_day": 50, "vision_night": 3, diff --git a/data/json/monsters/zed_soldiers.json b/data/json/monsters/zed_soldiers.json index 16060f0c6fe4e..b25bdf30f9403 100644 --- a/data/json/monsters/zed_soldiers.json +++ b/data/json/monsters/zed_soldiers.json @@ -220,7 +220,7 @@ "armor_cut": 30, "armor_bullet": 24, "armor_elec": 3, - "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_body_armor", "wps_humanoid_open_helmet" ], + "weakpoint_sets": [ "wps_humanoid_body", "wps_natural_armor", "wps_humanoid_open_helmet" ], "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_wp_syn_armored", "prof_wp_nat_armored" ], "bleed_rate": 50, "vision_day": 30, @@ -263,7 +263,7 @@ "armor_cut": 50, "armor_bullet": 40, "armor_elec": 6, - "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_body_armor", "wps_humanoid_open_helmet" ], + "weakpoint_sets": [ "wps_humanoid_body", "wps_natural_armor", "wps_humanoid_open_helmet" ], "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_wp_syn_armored", "prof_wp_nat_armored", "prof_wp_hulk" ], "bleed_rate": 0, "vision_day": 50, @@ -306,24 +306,27 @@ "armor_cut": 5, "armor_bullet": 4, "armor_elec": 2, - "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_body_armor", "wps_humanoid_full_helmet" ], - "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_wp_syn_armored" ], + "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_full_helmet" ], + "families": [ "prof_intro_biology", "prof_wp_zombie" ], "vision_day": 35, "vision_night": 5, "harvest": "zombie", "special_attacks": [ { "type": "bite", "cooldown": 5 }, [ "GRAB", 7 ], [ "scratch", 20 ] ], "death_drops": "mon_zombie_military_pilot_death_drops", "burn_into": "mon_zombie_scorched", - "flags": [ "SEES", "HEARS", "WARM", "BASHES", "GROUP_BASH", "POISON", "NO_BREATHE", "REVIVES", "PUSH_MON", "NOHEAD", "FILTHY" ] + "flags": [ "SEES", "HEARS", "WARM", "BASHES", "GROUP_BASH", "POISON", "NO_BREATHE", "REVIVES", "PUSH_MON", "FILTHY" ] }, { "id": "mon_zombie_milbase_personnel", "type": "MONSTER", "name": { "str": "uniformed zombie" }, "description": "This undead soldier is adorned in standard military fatigues. It carries itself rather steadily for a zombie.", + "armor_bash": 2, + "armor_cut": 2, + "armor_bullet": 2, + "weakpoint_sets": [ "wps_humanoid_body" ], "copy-from": "mon_zombie_military_pilot", "looks_like": "mon_zombie", - "delete": { "flags": [ "NOHEAD" ] }, "upgrades": { "half_life": 32, "into_group": "GROUP_ZOMBIE_UPGRADE" }, "death_drops": "mon_zombie_milbase_personnel_death_drops" }, @@ -334,11 +337,6 @@ "description": "Still dressed in the ragged remains of deep blue naval fatigues, it’s clear that this walking corpse was once a sailor of some description. The US Navy’s insignia is embroidered on the shredded sleeve and shoulder of its bloodied jacket, the dead crewman’s battered cap is beaten into the remains of its fractured skull and its inky black eyes are scanning the area around it as dark ooze drips from its limply hanging maw.", "copy-from": "mon_zombie_milbase_personnel", "looks_like": "mon_zombie_soldier", - "armor_bash": 2, - "armor_cut": 2, - "armor_bullet": 2, - "weakpoint_sets": [ "wps_humanoid_body" ], - "families": [ "prof_intro_biology", "prof_wp_zombie" ], "//": "no provision for body armour or helmets in either the weak point set or dissection set, as Navy sailors aren’t normally dressed in military combat gear whilst shipside.", "death_drops": "mon_zombie_sailor_death_drops" }, @@ -353,7 +351,7 @@ { "id": "mon_zombie_marine", "type": "MONSTER", - "name": { "str": "zombie Marine" }, + "name": { "str": "zombie marine" }, "description": "Dressed head to toe in naval combat equipment and with Marine insignia embroidered on its gear, this lurching corpse still retains its physical fitness in death. From underneath its helmet, its inky black eyes scan the area around it.", "default_faction": "zombie", "bodytype": "human", diff --git a/data/json/monsters/zed_survivor.json b/data/json/monsters/zed_survivor.json index 6554797d0ae78..02fef2755477f 100644 --- a/data/json/monsters/zed_survivor.json +++ b/data/json/monsters/zed_survivor.json @@ -26,7 +26,7 @@ "armor_acid": 4, "armor_elec": 2, "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_light_armor", "wps_humanoid_open_helmet" ], - "families": [ "prof_intro_biology", "prof_wp_zombie" ], + "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_wp_syn_armored" ], "vision_day": 50, "vision_night": 3, "harvest": "zombie", @@ -54,7 +54,6 @@ "armor_bullet": 20, "armor_elec": 4, "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_body_armor", "wps_humanoid_full_helmet" ], - "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_wp_syn_armored" ], "vision_night": 6, "death_drops": "mon_zombie_survivor_elite_death_drops" } diff --git a/data/json/proficiencies/weakpoints.json b/data/json/proficiencies/weakpoints.json index 87fddb5af3d26..19cc472fafd3d 100644 --- a/data/json/proficiencies/weakpoints.json +++ b/data/json/proficiencies/weakpoints.json @@ -71,7 +71,7 @@ "id": "prof_wp_nat_armored", "category": "prof_weakpoint", "name": { "str": "Natural Armors" }, - "description": "You're somewhat familiar with naturally armored creatures. You're able to find openings in certain kinds of hardened shells.", + "description": "You're somewhat familiar with naturally armored creatures. You're able to find openings in certain kinds of hardened shells and thick hides.", "can_learn": true, "time_to_learn": "8 h", "default_weakpoint_bonus": 4, @@ -199,8 +199,8 @@ "type": "proficiency", "id": "prof_wp_hulk", "category": "prof_weakpoint", - "name": { "str": "Large Humanoids" }, - "description": "You have some practice in fighting large hulking humanoids. You're better at reaching certain weak points.", + "name": { "str": "Giant Humanoids" }, + "description": "You have some practice in fighting large, hulking humanoids. You're better at reaching certain weak points.", "can_learn": true, "time_to_learn": "6 h", "required_proficiencies": [ "prof_intro_biology" ], diff --git a/tests/ranged_balance_test.cpp b/tests/ranged_balance_test.cpp index 68513f289ee2a..25d5084959773 100644 --- a/tests/ranged_balance_test.cpp +++ b/tests/ranged_balance_test.cpp @@ -495,16 +495,16 @@ TEST_CASE( "shot_features", "[gun]" "[slow]" ) // Can't hurt at range // Can't hurt at close range. // Serioualy injure at point blank. - shoot_monster( "shotgun_s", {}, "shot_bird", 1, 57, "mon_zombie_brute" ); + shoot_monster( "shotgun_s", {}, "shot_bird", 1, 61, "mon_zombie_brute" ); // TODO: can't harm heavily armored enemies at point blank // Heavily Armored target (armor_bullet: 36) // Can't hurt at range, - shoot_monster( "shotgun_s", {}, "shot_bird", 12, 0, "mon_skeleton_hulk" ); + shoot_monster( "shotgun_s", {}, "shot_bird", 12, 3, "mon_skeleton_hulk" ); // Can't hurt at close range. - shoot_monster( "shotgun_s", {}, "shot_bird", 5, 1, "mon_skeleton_hulk" ); + shoot_monster( "shotgun_s", {}, "shot_bird", 5, 6, "mon_skeleton_hulk" ); // Barely injure at point blank. - shoot_monster( "shotgun_s", {}, "shot_bird", 1, 25, "mon_skeleton_hulk" ); + shoot_monster( "shotgun_s", {}, "shot_bird", 1, 31, "mon_skeleton_hulk" ); // TODO: can't harm heavily armored enemies even at point blank. // BUCKSHOT @@ -519,16 +519,16 @@ TEST_CASE( "shot_features", "[gun]" "[slow]" ) // Lightly armored target (armor_bullet: 5) // Outcomes for lightly armored enemies are very similar. - shoot_monster( "shotgun_s", {}, "shot_00", 18, 41, "mon_boomer_glutton" ); - shoot_monster( "shotgun_s", {}, "shot_00", 12, 63, "mon_boomer_glutton" ); - shoot_monster( "shotgun_s", {}, "shot_00", 5, 103, "mon_boomer_glutton" ); - shoot_monster( "shotgun_s", {}, "shot_00", 1, 69, "mon_boomer_glutton" ); + shoot_monster( "shotgun_s", {}, "shot_00", 18, 33, "mon_zombie_brute" ); + shoot_monster( "shotgun_s", {}, "shot_00", 12, 57, "mon_zombie_brute" ); + shoot_monster( "shotgun_s", {}, "shot_00", 5, 116, "mon_zombie_brute" ); + shoot_monster( "shotgun_s", {}, "shot_00", 1, 73, "mon_zombie_brute" ); // Armored target (armor_bullet: 10) - shoot_monster( "shotgun_s", {}, "shot_00", 18, 26, "mon_hulk_pupa_decoy" ); - shoot_monster( "shotgun_s", {}, "shot_00", 12, 38, "mon_hulk_pupa_decoy" ); - shoot_monster( "shotgun_s", {}, "shot_00", 5, 53, "mon_hulk_pupa_decoy" ); - shoot_monster( "shotgun_s", {}, "shot_00", 1, 63, "mon_hulk_pupa_decoy" ); + shoot_monster( "shotgun_s", {}, "shot_00", 18, 8, "mon_smoker_brute" ); + shoot_monster( "shotgun_s", {}, "shot_00", 12, 18, "mon_smoker_brute" ); + shoot_monster( "shotgun_s", {}, "shot_00", 5, 62, "mon_smoker_brute" ); + shoot_monster( "shotgun_s", {}, "shot_00", 1, 72, "mon_smoker_brute" ); } TEST_CASE( "shot_features_with_choke", "[gun]" "[slow]" ) @@ -544,10 +544,10 @@ TEST_CASE( "shot_features_with_choke", "[gun]" "[slow]" ) shoot_monster( "shotgun_s", { "choke" }, "shot_bird", 1, 62, "mon_wolf_mutant_huge" ); // Triviallly armored target (armor_bullet: 1) - shoot_monster( "shotgun_s", { "choke" }, "shot_bird", 1, 61, "mon_zombie_tough" ); + shoot_monster( "shotgun_s", { "choke" }, "shot_bird", 1, 62, "mon_zombie_tough" ); // Armored target (armor_bullet: 5) - shoot_monster( "shotgun_s", { "choke" }, "shot_bird", 1, 57, "mon_zombie_brute" ); + shoot_monster( "shotgun_s", { "choke" }, "shot_bird", 1, 61, "mon_zombie_brute" ); // Unarmored target shoot_monster( "shotgun_s", { "choke" }, "shot_00", 18, 111, "mon_wolf_mutant_huge" ); @@ -555,20 +555,20 @@ TEST_CASE( "shot_features_with_choke", "[gun]" "[slow]" ) shoot_monster( "shotgun_s", { "choke" }, "shot_00", 5, 165, "mon_wolf_mutant_huge" ); shoot_monster( "shotgun_s", { "choke" }, "shot_00", 1, 75, "mon_wolf_mutant_huge" ); // Triviallly armored target (armor_bullet: 1) - shoot_monster( "shotgun_s", { "choke" }, "shot_00", 18, 48, "mon_zombie_tough" ); - shoot_monster( "shotgun_s", { "choke" }, "shot_00", 12, 79, "mon_zombie_tough" ); - shoot_monster( "shotgun_s", { "choke" }, "shot_00", 5, 108, "mon_zombie_tough" ); - shoot_monster( "shotgun_s", { "choke" }, "shot_00", 1, 95, "mon_zombie_tough" ); + shoot_monster( "shotgun_s", { "choke" }, "shot_00", 18, 50, "mon_zombie_tough" ); + shoot_monster( "shotgun_s", { "choke" }, "shot_00", 12, 81, "mon_zombie_tough" ); + shoot_monster( "shotgun_s", { "choke" }, "shot_00", 5, 105, "mon_zombie_tough" ); + shoot_monster( "shotgun_s", { "choke" }, "shot_00", 1, 100, "mon_zombie_tough" ); // Armored target (armor_bullet: 5) - shoot_monster( "shotgun_s", { "choke" }, "shot_00", 18, 35, "mon_zombie_brute" ); - shoot_monster( "shotgun_s", { "choke" }, "shot_00", 12, 58, "mon_zombie_brute" ); - shoot_monster( "shotgun_s", { "choke" }, "shot_00", 5, 105, "mon_zombie_brute" ); - shoot_monster( "shotgun_s", { "choke" }, "shot_00", 1, 69, "mon_zombie_brute" ); + shoot_monster( "shotgun_s", { "choke" }, "shot_00", 18, 46, "mon_zombie_brute" ); + shoot_monster( "shotgun_s", { "choke" }, "shot_00", 12, 77, "mon_zombie_brute" ); + shoot_monster( "shotgun_s", { "choke" }, "shot_00", 5, 124, "mon_zombie_brute" ); + shoot_monster( "shotgun_s", { "choke" }, "shot_00", 1, 73, "mon_zombie_brute" ); // Armored target (armor_bullet: 10) - shoot_monster( "shotgun_s", { "choke" }, "shot_00", 18, 35, "mon_hulk_pupa_decoy" ); - shoot_monster( "shotgun_s", { "choke" }, "shot_00", 12, 45, "mon_hulk_pupa_decoy" ); - shoot_monster( "shotgun_s", { "choke" }, "shot_00", 5, 52, "mon_hulk_pupa_decoy" ); - shoot_monster( "shotgun_s", { "choke" }, "shot_00", 1, 63, "mon_hulk_pupa_decoy" ); + shoot_monster( "shotgun_s", { "choke" }, "shot_00", 18, 11, "mon_smoker_brute" ); + shoot_monster( "shotgun_s", { "choke" }, "shot_00", 12, 26, "mon_smoker_brute" ); + shoot_monster( "shotgun_s", { "choke" }, "shot_00", 5, 81, "mon_smoker_brute" ); + shoot_monster( "shotgun_s", { "choke" }, "shot_00", 1, 71, "mon_smoker_brute" ); } // Targeting graph tests