From 67026ae08dace80cdf8f3e0ce6b8587970a56dad Mon Sep 17 00:00:00 2001 From: Karol1223 <68503002+Karol1223@users.noreply.github.com> Date: Sun, 28 Jul 2024 20:18:57 +0200 Subject: [PATCH] Obsolete Dire Wolves (#75241) * destroy the direwolves * work with balance tests more * further * Update monsters.json * Update GAME_BALANCE.md --- data/json/monsters/mutant_mammal.json | 47 ------------------- data/mods/Backrooms/monstergroups.json | 1 - data/mods/Magiclysm/monsters/goblin.json | 2 +- .../Megafauna/monstergroups/wilderness.json | 9 ---- .../Megafauna/monsters/fauna_blacklist.json | 1 - .../monsters/monster_overrides_tameable.json | 7 --- data/mods/TEST_DATA/monsters.json | 13 +++++ .../blacklists/default_blacklist.json | 1 - .../Xedra_Evolved/spells/vampire_spells.json | 1 - doc/GAME_BALANCE.md | 2 +- tests/ranged_balance_test.cpp | 28 +++++------ 11 files changed, 29 insertions(+), 83 deletions(-) diff --git a/data/json/monsters/mutant_mammal.json b/data/json/monsters/mutant_mammal.json index 896bcfcba14b0..17ff8f5148687 100644 --- a/data/json/monsters/mutant_mammal.json +++ b/data/json/monsters/mutant_mammal.json @@ -162,53 +162,6 @@ "harvest": "mutant_mammal_fur", "extend": { "flags": [ "NO_BREED", "BADVENOM" ] } }, - { - "id": "mon_wolf_mutant_huge", - "type": "MONSTER", - "name": { "str": "dire wolf", "str_pl": "dire wolves" }, - "description": "This wolf has grown to terrifying proportions, rivalling a small car. Its teeth give steak knives a run for their money, and it definitely doesn't look friendly.", - "default_faction": "wolf", - "bodytype": "dog", - "categories": [ "WILDLIFE" ], - "species": [ "MAMMAL" ], - "volume": "600000 ml", - "weight": "600000 g", - "hp": 300, - "speed": 150, - "material": [ "flesh" ], - "symbol": "W", - "color": "light_gray", - "looks_like": "mon_wolf", - "aggression": 50, - "morale": 70, - "melee_skill": 8, - "melee_dice": 3, - "melee_dice_sides": 12, - "melee_damage": [ { "damage_type": "cut", "amount": 12 } ], - "dodge": 2, - "bleed_rate": 60, - "vision_day": 50, - "vision_night": 5, - "stomach_size": 1500, - "harvest": "mutant_mammal_large_fur", - "dissect": "dissect_lupine_sample_large", - "weakpoint_sets": [ "wps_animal_quadruped" ], - "families": [ "prof_intro_biology", "prof_physiology", "prof_wp_canine" ], - "path_settings": { "max_dist": 10 }, - "special_attacks": [ - { - "type": "bite", - "cooldown": 5, - "damage_max_instance": [ { "damage_type": "stab", "amount": 15, "armor_penetration": 10 } ] - }, - [ "EAT_FOOD", 60 ] - ], - "burn_into": "mon_dog_scorched_hulk", - "anger_triggers": [ "STALK", "FRIEND_ATTACKED", "FRIEND_DIED", "PLAYER_WEAK", "PLAYER_CLOSE" ], - "zombify_into": "mon_meat_cocoon_large", - "flags": [ "SEES", "HEARS", "SMELLS", "ANIMAL", "PATH_AVOID_DANGER", "WARM", "KEENNOSE", "EATS" ], - "armor": { "bash": 8, "cut": 10, "electric": 1 } - }, { "id": "mon_deer_mutant_spider", "type": "MONSTER", diff --git a/data/mods/Backrooms/monstergroups.json b/data/mods/Backrooms/monstergroups.json index 5fc21be3902d5..1629dd487c8d0 100644 --- a/data/mods/Backrooms/monstergroups.json +++ b/data/mods/Backrooms/monstergroups.json @@ -15,7 +15,6 @@ { "monster": "mon_bear", "weight": 4, "cost_multiplier": 1, "pack_size": [ 1, 1 ] }, { "monster": "mon_moose", "weight": 4, "cost_multiplier": 1, "pack_size": [ 1, 1 ] }, { "monster": "mon_wolf", "weight": 4, "cost_multiplier": 1, "pack_size": [ 1, 1 ] }, - { "monster": "mon_wolf_mutant_huge", "weight": 1, "cost_multiplier": 1, "pack_size": [ 1, 1 ] }, { "monster": "mon_coyote", "weight": 4, "cost_multiplier": 1, "pack_size": [ 1, 1 ] }, { "monster": "mon_duck", "weight": 4, "cost_multiplier": 1, "pack_size": [ 1, 1 ] }, { "monster": "mon_goose_canadian", "weight": 4, "cost_multiplier": 1, "pack_size": [ 1, 1 ] }, diff --git a/data/mods/Magiclysm/monsters/goblin.json b/data/mods/Magiclysm/monsters/goblin.json index 3b8c8376293fb..8ed4faf56784e 100644 --- a/data/mods/Magiclysm/monsters/goblin.json +++ b/data/mods/Magiclysm/monsters/goblin.json @@ -224,7 +224,7 @@ "material": [ "flesh" ], "symbol": "W", "color": "light_gray", - "looks_like": "mon_wolf_mutant_huge", + "looks_like": "mon_wolf", "scents_tracked": [ "sc_human", "sc_fetid" ], "aggression": 20, "morale": 70, diff --git a/data/mods/Megafauna/monstergroups/wilderness.json b/data/mods/Megafauna/monstergroups/wilderness.json index fd22f9ffc6305..c3560441caab3 100644 --- a/data/mods/Megafauna/monstergroups/wilderness.json +++ b/data/mods/Megafauna/monstergroups/wilderness.json @@ -306,15 +306,6 @@ "pack_size": [ 2, 5 ], "conditions": [ "NIGHT" ] }, - { "monster": "mon_wolf_mutant_huge", "weight": 1, "cost_multiplier": 0, "starts": "21 days" }, - { - "monster": "mon_wolf_mutant_huge", - "weight": 2, - "cost_multiplier": 0, - "starts": "21 days", - "pack_size": [ 1, 2 ], - "conditions": [ "NIGHT" ] - }, { "monster": "mon_coyote", "weight": 1, "cost_multiplier": 2, "pack_size": [ 1, 6 ] }, { "monster": "mon_coyote", "weight": 2, "cost_multiplier": 2, "pack_size": [ 1, 6 ], "conditions": [ "NIGHT" ] }, { "monster": "mon_coyote", "weight": 1, "cost_multiplier": 2, "ends": "3 days", "pack_size": [ 1, 6 ] }, diff --git a/data/mods/Megafauna/monsters/fauna_blacklist.json b/data/mods/Megafauna/monsters/fauna_blacklist.json index 5458c39781ee2..f0ed7b17985ab 100644 --- a/data/mods/Megafauna/monsters/fauna_blacklist.json +++ b/data/mods/Megafauna/monsters/fauna_blacklist.json @@ -2,7 +2,6 @@ { "type": "MONSTER_BLACKLIST", "monsters": [ - "mon_wolf_mutant_huge", "mon_beaver_mutant_huge", "mon_horse", "mon_boar_wild_piglet", diff --git a/data/mods/MindOverMatter/monsters/monster_overrides_tameable.json b/data/mods/MindOverMatter/monsters/monster_overrides_tameable.json index 62edb18a15ba0..e5d6fae72024a 100644 --- a/data/mods/MindOverMatter/monsters/monster_overrides_tameable.json +++ b/data/mods/MindOverMatter/monsters/monster_overrides_tameable.json @@ -195,13 +195,6 @@ "name": { "str": "wolf puppy", "str_pl": "wolf puppies" }, "extend": { "flags": [ "CANPLAY" ] } }, - { - "id": "mon_wolf_mutant_huge", - "type": "MONSTER", - "copy-from": "mon_wolf_mutant_huge", - "name": { "str": "dire wolf", "str_pl": "dire wolves" }, - "extend": { "flags": [ "CANPLAY", "PET_MOUNTABLE" ] } - }, { "id": "mon_reindeer", "type": "MONSTER", diff --git a/data/mods/TEST_DATA/monsters.json b/data/mods/TEST_DATA/monsters.json index f7f9da4376688..502b4ef58accb 100644 --- a/data/mods/TEST_DATA/monsters.json +++ b/data/mods/TEST_DATA/monsters.json @@ -414,5 +414,18 @@ "description": "This shoggoth is for testing purposes only.", "copy-from": "mon_shoggoth", "delete": { "special_attacks": [ "SPLIT" ] } + }, + { + "id": "mon_test_shotgun_0_bullet", + "type": "MONSTER", + "name": { "str": "chonky thing with 0 ballistic armor" }, + "description": "Used to replace the now-obsoleted dire wolf in the shotgun damage test.", + "copy-from": "mon_cow", + "volume": "600 L", + "weight": "600 kg", + "hp": 300, + "dodge": 2, + "bleed_rate": 60, + "armor": { "bash": 8, "cut": 10, "electric": 1 } } ] diff --git a/data/mods/TropiCataclysm/blacklists/default_blacklist.json b/data/mods/TropiCataclysm/blacklists/default_blacklist.json index 4c77d49a0e146..cd9d288603db3 100644 --- a/data/mods/TropiCataclysm/blacklists/default_blacklist.json +++ b/data/mods/TropiCataclysm/blacklists/default_blacklist.json @@ -114,7 +114,6 @@ "mon_beaver_mutant_avian", "mon_coyote_mutant_shark", "mon_coyote_mutant_venom", - "mon_wolf_mutant_huge", "mon_tusked_moose_calf", "mon_tusked_moose", "mon_zoose_brute", diff --git a/data/mods/Xedra_Evolved/spells/vampire_spells.json b/data/mods/Xedra_Evolved/spells/vampire_spells.json index 5fec4d4760567..e0c5552081c08 100644 --- a/data/mods/Xedra_Evolved/spells/vampire_spells.json +++ b/data/mods/Xedra_Evolved/spells/vampire_spells.json @@ -171,7 +171,6 @@ }, "targeted_monster_ids": [ "mon_wolf", - "mon_wolf_mutant_huge", "mon_wolf_pup", "mon_coyote", "mon_coyote_mutant_shark", diff --git a/doc/GAME_BALANCE.md b/doc/GAME_BALANCE.md index 5d813be9c4769..b0934f5f36843 100644 --- a/doc/GAME_BALANCE.md +++ b/doc/GAME_BALANCE.md @@ -81,7 +81,7 @@ High damage: 6 (highest day one threat; feral human, mi-go ) Superhuman damage: 8 (deadly endgame threat; hulk, wild boar, Exodii quadruped ) -Maximum dice size for balance purposes: 12 (hardest possible hitter; dire wolf ) +Maximum dice size for balance purposes: 12 (hardest possible hitter; hunting horror ) This is how hard the monster hits. diff --git a/tests/ranged_balance_test.cpp b/tests/ranged_balance_test.cpp index 2d624603d5d87..b88145c2f02c0 100644 --- a/tests/ranged_balance_test.cpp +++ b/tests/ranged_balance_test.cpp @@ -489,9 +489,9 @@ TEST_CASE( "shot_features", "[gun]" "[slow]" ) // Unarmored target // Minor damage at range. // More serious damage at close range. - shoot_monster( "shotgun_s", {}, "shot_bird", 5, 20, "mon_wolf_mutant_huge" ); + shoot_monster( "shotgun_s", {}, "shot_bird", 5, 20, "mon_test_shotgun_0_bullet" ); // Grevious damage at point blank. - shoot_monster( "shotgun_s", {}, "shot_bird", 1, 62, "mon_wolf_mutant_huge" ); + shoot_monster( "shotgun_s", {}, "shot_bird", 1, 62, "mon_test_shotgun_0_bullet" ); // Triviallly armored target (armor_bullet: 1) // Can rarely if ever inflict damage at range. @@ -518,13 +518,13 @@ TEST_CASE( "shot_features", "[gun]" "[slow]" ) // BUCKSHOT // Unarmored target - shoot_monster( "shotgun_s", {}, "shot_00", 18, 72, "mon_wolf_mutant_huge" ); + shoot_monster( "shotgun_s", {}, "shot_00", 18, 72, "mon_test_shotgun_0_bullet" ); // Heavy damage at range. - shoot_monster( "shotgun_s", {}, "shot_00", 12, 107, "mon_wolf_mutant_huge" ); + shoot_monster( "shotgun_s", {}, "shot_00", 12, 107, "mon_test_shotgun_0_bullet" ); // More damage at close range. - shoot_monster( "shotgun_s", {}, "shot_00", 5, 165, "mon_wolf_mutant_huge" ); + shoot_monster( "shotgun_s", {}, "shot_00", 5, 165, "mon_test_shotgun_0_bullet" ); // Extreme damage at point blank range. - shoot_monster( "shotgun_s", {}, "shot_00", 1, 75, "mon_wolf_mutant_huge" ); + shoot_monster( "shotgun_s", {}, "shot_00", 1, 75, "mon_test_shotgun_0_bullet" ); // Lightly armored target (armor_bullet: 5) // Outcomes for lightly armored enemies are very similar. @@ -546,11 +546,11 @@ TEST_CASE( "shot_features_with_choke", "[gun]" "[slow]" ) // Unarmored target // This test result is difficult to converge // After more attempts, the average value is about 7 - // shoot_monster( "shotgun_s", { "choke" }, "shot_bird", 18, 7, "mon_wolf_mutant_huge" ); - shoot_monster( "shotgun_s", {"choke"}, "shot_bird", 12, 15, "mon_wolf_mutant_huge" ); - shoot_monster( "shotgun_s", { "choke" }, "shot_bird", 5, 20, "mon_wolf_mutant_huge" ); + // shoot_monster( "shotgun_s", { "choke" }, "shot_bird", 18, 7, "mon_test_shotgun_0_bullet" ); + shoot_monster( "shotgun_s", {"choke"}, "shot_bird", 12, 15, "mon_test_shotgun_0_bullet" ); + shoot_monster( "shotgun_s", { "choke" }, "shot_bird", 5, 20, "mon_test_shotgun_0_bullet" ); // All the results of tests at point blank are abonormal - shoot_monster( "shotgun_s", { "choke" }, "shot_bird", 1, 62, "mon_wolf_mutant_huge" ); + shoot_monster( "shotgun_s", { "choke" }, "shot_bird", 1, 62, "mon_test_shotgun_0_bullet" ); // Triviallly armored target (armor_bullet: 1) shoot_monster( "shotgun_s", { "choke" }, "shot_bird", 1, 62, "mon_zombie_tough" ); @@ -559,10 +559,10 @@ TEST_CASE( "shot_features_with_choke", "[gun]" "[slow]" ) shoot_monster( "shotgun_s", { "choke" }, "shot_bird", 1, 61, "mon_zombie_brute" ); // Unarmored target - shoot_monster( "shotgun_s", { "choke" }, "shot_00", 18, 95, "mon_wolf_mutant_huge" ); - shoot_monster( "shotgun_s", { "choke" }, "shot_00", 12, 131, "mon_wolf_mutant_huge" ); - 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" ); + shoot_monster( "shotgun_s", { "choke" }, "shot_00", 18, 95, "mon_test_shotgun_0_bullet" ); + shoot_monster( "shotgun_s", { "choke" }, "shot_00", 12, 131, "mon_test_shotgun_0_bullet" ); + shoot_monster( "shotgun_s", { "choke" }, "shot_00", 5, 165, "mon_test_shotgun_0_bullet" ); + shoot_monster( "shotgun_s", { "choke" }, "shot_00", 1, 75, "mon_test_shotgun_0_bullet" ); // Triviallly armored target (armor_bullet: 1) shoot_monster( "shotgun_s", { "choke" }, "shot_00", 18, 32, "mon_zombie_tough" ); shoot_monster( "shotgun_s", { "choke" }, "shot_00", 12, 61, "mon_zombie_tough" );