From 23d151568da7125cb49c609e7826b003b01fbef1 Mon Sep 17 00:00:00 2001 From: Maleclypse <54345792+Maleclypse@users.noreply.github.com> Date: Thu, 6 Jun 2024 11:14:49 -0500 Subject: [PATCH 01/23] JSONize yugg gene sting --- data/json/ammo_effects.json | 5 + data/json/items/ammo/barb.json | 20 ++ data/json/items/ammo_types.json | 6 + .../monster_special_attacks/monster_gun.json | 35 +++ data/json/monster_special_attacks/spells.json | 282 ++++++++++++++++++ data/json/monsters/nether.json | 10 +- src/monattack.cpp | 21 -- src/monattack.h | 1 - src/monstergenerator.cpp | 1 - 9 files changed, 357 insertions(+), 24 deletions(-) diff --git a/data/json/ammo_effects.json b/data/json/ammo_effects.json index 079515e28b464..8122eb6701d8a 100644 --- a/data/json/ammo_effects.json +++ b/data/json/ammo_effects.json @@ -38,6 +38,11 @@ "type": "ammo_effect", "//": "Heavily stuns the target. Hardcoded" }, + { + "id": "GENE_STING", + "type": "ammo_effect", + "spell_data": { "id": "spell_gene_sting" } + }, { "id": "DRAW_AS_LINE", "type": "ammo_effect", diff --git a/data/json/items/ammo/barb.json b/data/json/items/ammo/barb.json index 04cb31719c8c4..6212b75448dd0 100644 --- a/data/json/items/ammo/barb.json +++ b/data/json/items/ammo/barb.json @@ -18,5 +18,25 @@ "show_stats": true, "effects": [ "PARALYZEPOISON" ], "melee_damage": { "bash": 6, "cut": 2 } + }, + { + "type": "AMMO", + "id": "gene_sting_barb", + "price": "4 USD", + "name": { "str": "gene sting barb" }, + "symbol": "=", + "color": "cyan", + "description": "Tiny droplets of cyan venom trickle out of the sponge-like tissue of this sharp barb.", + "material": [ "bone" ], + "volume": "250 ml", + "weight": "37 g", + "ammo_type": "barb", + "damage": { "damage_type": "stab", "amount": 5, "armor_penetration": 5 }, + "dispersion": 120, + "loudness": 0, + "count": 10, + "show_stats": true, + "effects": [ "GENE_STING" ], + "melee_damage": { "bash": 6, "cut": 2 } } ] diff --git a/data/json/items/ammo_types.json b/data/json/items/ammo_types.json index 9a0d870ee8340..6a4464e27b54d 100644 --- a/data/json/items/ammo_types.json +++ b/data/json/items/ammo_types.json @@ -71,6 +71,12 @@ "name": "barb", "default": "barb_paralysis" }, + { + "type": "ammunition_type", + "id": "gene_sting", + "name": "yugg stinger", + "default": "gene_sting_barb" + }, { "type": "ammunition_type", "id": "BB", diff --git a/data/json/monster_special_attacks/monster_gun.json b/data/json/monster_special_attacks/monster_gun.json index 3e9f85abaacac..1e7f613dfaa21 100644 --- a/data/json/monster_special_attacks/monster_gun.json +++ b/data/json/monster_special_attacks/monster_gun.json @@ -99,6 +99,41 @@ "durability": 8, "melee_damage": { "bash": 2 } }, + { + "id": "gene_sting", + "type": "GUN", + "symbol": "%", + "color": "red", + "name": { "str": "barb launching organ" }, + "description": "A mutated organ capable of launching bony barbs at great speed.", + "material": [ "hflesh" ], + "flags": [ + "PRIMITIVE_RANGED_WEAPON", + "GENE_STING" + "PSEUDO", + "NEVER_JAMS", + "NONCONDUCTIVE", + "NO_REPAIR", + "WATERPROOF_GUN", + "NO_SALVAGE", + "NO_UNLOAD", + "RELOAD_AND_SHOOT" + ], + "skill": "pistol", + "ammo": [ "barb" ], + "clip_size": 1, + "weight": "540 g", + "volume": "750 ml", + "longest_side": "25 cm", + "to_hit": 1, + "reload_noise_volume": 2, + "loudness": 2, + "range": 12, + "dispersion": 100, + "durability": 8, + "pocket_data": [ { "pocket_type": "MAGAZINE", "rigid": true, "ammo_restriction": { "gene_sting_barb": 1 } } ], + "melee_damage": { "bash": 2 } + }, { "id": "feral_human_thrown_rock", "type": "GUN", diff --git a/data/json/monster_special_attacks/spells.json b/data/json/monster_special_attacks/spells.json index f34bf6bca9368..55bebc7023f07 100644 --- a/data/json/monster_special_attacks/spells.json +++ b/data/json/monster_special_attacks/spells.json @@ -586,6 +586,288 @@ "min_field_intensity": 1, "max_field_intensity": 2 }, + { + "type": "SPELL", + "id": "spell_gene_sting", + "name": { "str": "Gene Sting" }, + "description": "Yugg attack which causes random mutation.", + "copy-from": "base_portal", + "min_damage": 1, + "max_damage": 1, + "effect_str": "EOC_gene_sting_selector" + }, + { + "type": "effect_on_condition", + "id": "EOC_gene_sting_selector", + "condition": "u_is_character", + "effect": [ + { "u_message": "The Yugg's barb injects you with something!", "type": "bad" }, + { + "weighted_list_eocs": [ + [ "EOC_gene_sting_chimera", 6 ], + [ "EOC_gene_sting_insect", 2 ], + [ "EOC_gene_sting_alpha", 1 ], + [ "EOC_gene_sting_ursine", 2 ], + [ "EOC_gene_sting_chiropteran", 2 ], + [ "EOC_gene_sting_medical", 1 ], + [ "EOC_gene_sting_bird", 2 ], + [ "EOC_gene_sting_lupine", 2 ], + [ "EOC_gene_sting_slime", 1 ], + [ "EOC_gene_sting_rat", 2 ], + [ "EOC_gene_sting_plant", 2 ], + [ "EOC_gene_sting_raptor", 1 ], + [ "EOC_gene_sting_batrachian", 2 ], + [ "EOC_gene_sting_mouse", 2 ], + [ "EOC_gene_sting_elfa", 1 ], + [ "EOC_gene_sting_cepholapod", 2 ], + [ "EOC_gene_sting_fish", 2 ], + [ "EOC_gene_sting_gastropod", 2 ], + [ "EOC_gene_sting_rabbit", 2 ], + [ "EOC_gene_sting_human", 2 ], + [ "EOC_gene_sting_beast", 2 ], + [ "EOC_gene_sting_feline", 2 ], + [ "EOC_gene_sting_cattle", 2 ], + [ "EOC_gene_sting_lizard", 2 ], + [ "EOC_gene_sting_troglobite", 2 ], + [ "EOC_gene_sting_crustacean", 2 ] + ] + } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_gene_sting_chimera", + "condition": "u_is_character", + "effect": [ + { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, + { "u_mutate_category": "CHIMERA", "use_vitamins": false } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_gene_sting_insect", + "condition": "u_is_character", + "effect": [ + { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, + { "u_mutate_category": "INSECT", "use_vitamins": false } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_gene_sting_alpha", + "condition": "u_is_character", + "effect": [ + { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, + { "u_mutate_category": "ALPHA", "use_vitamins": false } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_gene_sting_ursine", + "condition": "u_is_character", + "effect": [ + { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, + { "u_mutate_category": "URSINE", "use_vitamins": false } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_gene_sting_chiropteran", + "condition": "u_is_character", + "effect": [ + { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, + { "u_mutate_category": "CHIROPTERAN", "use_vitamins": false } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_gene_sting_medical", + "condition": "u_is_character", + "effect": [ + { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, + { "u_mutate_category": "MEDICAL", "use_vitamins": false } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_gene_sting_lupine", + "condition": "u_is_character", + "effect": [ + { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, + { "u_mutate_category": "LUPINE", "use_vitamins": false } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_gene_sting_bird", + "condition": "u_is_character", + "effect": [ + { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, + { "u_mutate_category": "BIRD", "use_vitamins": false } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_gene_sting_slime", + "condition": "u_is_character", + "effect": [ + { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, + { "u_mutate_category": "SLIME", "use_vitamins": false } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_gene_sting_rat", + "condition": "u_is_character", + "effect": [ + { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, + { "u_mutate_category": "RAT", "use_vitamins": false } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_gene_sting_plant", + "condition": "u_is_character", + "effect": [ + { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, + { "u_mutate_category": "PLANT", "use_vitamins": false } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_gene_sting_raptor", + "condition": "u_is_character", + "effect": [ + { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, + { "u_mutate_category": "RAPTOR", "use_vitamins": false } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_gene_sting_batrachian", + "condition": "u_is_character", + "effect": [ + { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, + { "u_mutate_category": "BATRACHIAN", "use_vitamins": false } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_gene_sting_elfa", + "condition": "u_is_character", + "effect": [ + { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, + { "u_mutate_category": "ELFA", "use_vitamins": false } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_gene_sting_mouse", + "condition": "u_is_character", + "effect": [ + { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, + { "u_mutate_category": "MOUSE", "use_vitamins": false } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_gene_sting_cepholapod", + "condition": "u_is_character", + "effect": [ + { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, + { "u_mutate_category": "CEPHALOPOD", "use_vitamins": false } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_gene_sting_gastropod", + "condition": "u_is_character", + "effect": [ + { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, + { "u_mutate_category": "GASTROPOD", "use_vitamins": false } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_gene_sting_fish", + "condition": "u_is_character", + "effect": [ + { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, + { "u_mutate_category": "FISH", "use_vitamins": false } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_gene_sting_rabbit", + "condition": "u_is_character", + "effect": [ + { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, + { "u_mutate_category": "RABBIT", "use_vitamins": false } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_gene_sting_human", + "condition": "u_is_character", + "effect": [ + { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, + { "u_mutate_category": "HUMAN", "use_vitamins": false } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_gene_sting_beast", + "condition": "u_is_character", + "effect": [ + { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, + { "u_mutate_category": "BEAST", "use_vitamins": false } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_gene_sting_feline", + "condition": "u_is_character", + "effect": [ + { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, + { "u_mutate_category": "FELINE", "use_vitamins": false } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_gene_sting_cattle", + "condition": "u_is_character", + "effect": [ + { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, + { "u_mutate_category": "CATTLE", "use_vitamins": false } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_gene_sting_lizard", + "condition": "u_is_character", + "effect": [ + { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, + { "u_mutate_category": "LIZARD", "use_vitamins": false } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_gene_sting_troglobite", + "condition": "u_is_character", + "effect": [ + { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, + { "u_mutate_category": "TROGLOBITE", "use_vitamins": false } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_gene_sting_crustacean", + "condition": "u_is_character", + "effect": [ + { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, + { "u_mutate_category": "CRUSTACEAN", "use_vitamins": false } + ] + }, { "type": "SPELL", "id": "base_portal", diff --git a/data/json/monsters/nether.json b/data/json/monsters/nether.json index 93826b17f1f60..0e074a86a9eb2 100644 --- a/data/json/monsters/nether.json +++ b/data/json/monsters/nether.json @@ -1428,7 +1428,15 @@ "families": [ "prof_wp_netherium_abomination" ], "weakpoint_sets": [ "wps_netherium_abomination" ], "harvest": "meatslug", - "special_attacks": [ [ "GENE_STING", 20 ] ], + "special_attacks": [ + { + "type": "gun", + "cooldown": 2, + "gun_type": "gene_sting", + "ranges": [ [ 2, 24, "DEFAULT" ] ], + "description": "The impaler launches a viscous barb!" + } + ], "flags": [ "SEES", "SMELLS", "HEARS", "HAS_MIND", "BASHES", "DESTROYS", "POISON", "VENOM", "NO_BREATHE", "DIGS" ], "armor": { "bash": 6, "electric": 3 } }, diff --git a/src/monattack.cpp b/src/monattack.cpp index 57c539ba8919d..85a1d0d14119c 100644 --- a/src/monattack.cpp +++ b/src/monattack.cpp @@ -2745,27 +2745,6 @@ bool mattack::dogthing( monster *z ) return false; } -bool mattack::gene_sting( monster *z ) -{ - const float range = 7.0f; - Creature *target = sting_get_target( z, range ); - if( target == nullptr || !( target->is_avatar() || target->is_npc() ) ) { - return false; - } - - z->mod_moves( -to_moves( 1_seconds ) * 1.5 ); - - damage_instance dam = damage_instance(); - dam.add_damage( damage_stab, 6, 10, 0.6, 1 ); - bool hit = sting_shoot( z, target, dam, range ); - if( hit ) { - //Add checks if previous NPC/player conditions are removed - dynamic_cast( target )->mutate(); - } - - return true; -} - bool mattack::para_sting( monster *z ) { const float range = 4.0f; diff --git a/src/monattack.h b/src/monattack.h index ed5cfe5211416..5c8926f693686 100644 --- a/src/monattack.h +++ b/src/monattack.h @@ -57,7 +57,6 @@ bool jackson( monster *z ); bool dance( monster *z ); bool dogthing( monster *z ); bool vortex( monster *z ); -bool gene_sting( monster *z ); bool para_sting( monster *z ); bool triffid_growth( monster *z ); bool stare( monster *z ); diff --git a/src/monstergenerator.cpp b/src/monstergenerator.cpp index 33d76471a0693..e293c9b0f97d5 100644 --- a/src/monstergenerator.cpp +++ b/src/monstergenerator.cpp @@ -628,7 +628,6 @@ void MonsterGenerator::init_attack() add_hardcoded_attack( "JACKSON", mattack::jackson ); add_hardcoded_attack( "DANCE", mattack::dance ); add_hardcoded_attack( "DOGTHING", mattack::dogthing ); - add_hardcoded_attack( "GENE_STING", mattack::gene_sting ); add_hardcoded_attack( "PARA_STING", mattack::para_sting ); add_hardcoded_attack( "TRIFFID_GROWTH", mattack::triffid_growth ); add_hardcoded_attack( "PHOTOGRAPH", mattack::photograph ); From a32179be4c5f7c90e28374fe0b3ee1a55a709d9a Mon Sep 17 00:00:00 2001 From: Maleclypse <54345792+Maleclypse@users.noreply.github.com> Date: Thu, 6 Jun 2024 11:23:39 -0500 Subject: [PATCH 02/23] Update data/json/monster_special_attacks/monster_gun.json --- data/json/monster_special_attacks/monster_gun.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data/json/monster_special_attacks/monster_gun.json b/data/json/monster_special_attacks/monster_gun.json index 1e7f613dfaa21..f5904bf1aab8f 100644 --- a/data/json/monster_special_attacks/monster_gun.json +++ b/data/json/monster_special_attacks/monster_gun.json @@ -109,7 +109,7 @@ "material": [ "hflesh" ], "flags": [ "PRIMITIVE_RANGED_WEAPON", - "GENE_STING" + "GENE_STING", "PSEUDO", "NEVER_JAMS", "NONCONDUCTIVE", From 9c64493905d6f756a5ad72bb246f379f41255d29 Mon Sep 17 00:00:00 2001 From: Maleclypse <54345792+Maleclypse@users.noreply.github.com> Date: Thu, 6 Jun 2024 11:57:53 -0500 Subject: [PATCH 03/23] Update generic_guns_validator.py --- tools/json_tools/generic_guns_validator.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tools/json_tools/generic_guns_validator.py b/tools/json_tools/generic_guns_validator.py index 4c7be5268f89c..342077522f1b7 100755 --- a/tools/json_tools/generic_guns_validator.py +++ b/tools/json_tools/generic_guns_validator.py @@ -25,6 +25,7 @@ 'chemical_spray', 'fishspear', 'flammable', + 'gene_sting', 'm235', # Rocket 'metal_rail', 'nail', From 01e661280bb22f0750646a05c8dbb08928c18653 Mon Sep 17 00:00:00 2001 From: Maleclypse <54345792+Maleclypse@users.noreply.github.com> Date: Thu, 6 Jun 2024 12:12:27 -0500 Subject: [PATCH 04/23] Apply suggestions from code review --- data/json/items/ammo_types.json | 2 +- data/json/monster_special_attacks/monster_gun.json | 4 ++-- data/json/monsters/nether.json | 4 ++-- tools/json_tools/generic_guns_validator.py | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/data/json/items/ammo_types.json b/data/json/items/ammo_types.json index 6a4464e27b54d..d25357be216fe 100644 --- a/data/json/items/ammo_types.json +++ b/data/json/items/ammo_types.json @@ -73,7 +73,7 @@ }, { "type": "ammunition_type", - "id": "gene_sting", + "id": "gene_sting_barb", "name": "yugg stinger", "default": "gene_sting_barb" }, diff --git a/data/json/monster_special_attacks/monster_gun.json b/data/json/monster_special_attacks/monster_gun.json index f5904bf1aab8f..c7520e3911db9 100644 --- a/data/json/monster_special_attacks/monster_gun.json +++ b/data/json/monster_special_attacks/monster_gun.json @@ -100,7 +100,7 @@ "melee_damage": { "bash": 2 } }, { - "id": "gene_sting", + "id": "gene_sting_launcher", "type": "GUN", "symbol": "%", "color": "red", @@ -120,7 +120,7 @@ "RELOAD_AND_SHOOT" ], "skill": "pistol", - "ammo": [ "barb" ], + "ammo": [ "gene_sting_barb" ], "clip_size": 1, "weight": "540 g", "volume": "750 ml", diff --git a/data/json/monsters/nether.json b/data/json/monsters/nether.json index 0e074a86a9eb2..ab5366dd0d2b2 100644 --- a/data/json/monsters/nether.json +++ b/data/json/monsters/nether.json @@ -1432,9 +1432,9 @@ { "type": "gun", "cooldown": 2, - "gun_type": "gene_sting", + "gun_type": "gene_sting_launcher", "ranges": [ [ 2, 24, "DEFAULT" ] ], - "description": "The impaler launches a viscous barb!" + "description": "The yugg launches a viscous barb!" } ], "flags": [ "SEES", "SMELLS", "HEARS", "HAS_MIND", "BASHES", "DESTROYS", "POISON", "VENOM", "NO_BREATHE", "DIGS" ], diff --git a/tools/json_tools/generic_guns_validator.py b/tools/json_tools/generic_guns_validator.py index 342077522f1b7..b18d25ee710fa 100755 --- a/tools/json_tools/generic_guns_validator.py +++ b/tools/json_tools/generic_guns_validator.py @@ -25,7 +25,7 @@ 'chemical_spray', 'fishspear', 'flammable', - 'gene_sting', + 'gene_sting_barb', 'm235', # Rocket 'metal_rail', 'nail', From 495114ac897771762e3dadf3ca93743cf4f70d5c Mon Sep 17 00:00:00 2001 From: Maleclypse <54345792+Maleclypse@users.noreply.github.com> Date: Thu, 6 Jun 2024 13:24:39 -0500 Subject: [PATCH 05/23] Apply suggestions from code review --- data/json/ammo_effects.json | 5 --- data/json/items/ammo/barb.json | 20 ----------- data/json/items/ammo_types.json | 6 ---- .../monster_special_attacks/monster_gun.json | 35 ------------------- data/json/monsters/nether.json | 10 +----- 5 files changed, 1 insertion(+), 75 deletions(-) diff --git a/data/json/ammo_effects.json b/data/json/ammo_effects.json index 8122eb6701d8a..079515e28b464 100644 --- a/data/json/ammo_effects.json +++ b/data/json/ammo_effects.json @@ -38,11 +38,6 @@ "type": "ammo_effect", "//": "Heavily stuns the target. Hardcoded" }, - { - "id": "GENE_STING", - "type": "ammo_effect", - "spell_data": { "id": "spell_gene_sting" } - }, { "id": "DRAW_AS_LINE", "type": "ammo_effect", diff --git a/data/json/items/ammo/barb.json b/data/json/items/ammo/barb.json index 6212b75448dd0..04cb31719c8c4 100644 --- a/data/json/items/ammo/barb.json +++ b/data/json/items/ammo/barb.json @@ -18,25 +18,5 @@ "show_stats": true, "effects": [ "PARALYZEPOISON" ], "melee_damage": { "bash": 6, "cut": 2 } - }, - { - "type": "AMMO", - "id": "gene_sting_barb", - "price": "4 USD", - "name": { "str": "gene sting barb" }, - "symbol": "=", - "color": "cyan", - "description": "Tiny droplets of cyan venom trickle out of the sponge-like tissue of this sharp barb.", - "material": [ "bone" ], - "volume": "250 ml", - "weight": "37 g", - "ammo_type": "barb", - "damage": { "damage_type": "stab", "amount": 5, "armor_penetration": 5 }, - "dispersion": 120, - "loudness": 0, - "count": 10, - "show_stats": true, - "effects": [ "GENE_STING" ], - "melee_damage": { "bash": 6, "cut": 2 } } ] diff --git a/data/json/items/ammo_types.json b/data/json/items/ammo_types.json index d25357be216fe..9a0d870ee8340 100644 --- a/data/json/items/ammo_types.json +++ b/data/json/items/ammo_types.json @@ -71,12 +71,6 @@ "name": "barb", "default": "barb_paralysis" }, - { - "type": "ammunition_type", - "id": "gene_sting_barb", - "name": "yugg stinger", - "default": "gene_sting_barb" - }, { "type": "ammunition_type", "id": "BB", diff --git a/data/json/monster_special_attacks/monster_gun.json b/data/json/monster_special_attacks/monster_gun.json index c7520e3911db9..3e9f85abaacac 100644 --- a/data/json/monster_special_attacks/monster_gun.json +++ b/data/json/monster_special_attacks/monster_gun.json @@ -99,41 +99,6 @@ "durability": 8, "melee_damage": { "bash": 2 } }, - { - "id": "gene_sting_launcher", - "type": "GUN", - "symbol": "%", - "color": "red", - "name": { "str": "barb launching organ" }, - "description": "A mutated organ capable of launching bony barbs at great speed.", - "material": [ "hflesh" ], - "flags": [ - "PRIMITIVE_RANGED_WEAPON", - "GENE_STING", - "PSEUDO", - "NEVER_JAMS", - "NONCONDUCTIVE", - "NO_REPAIR", - "WATERPROOF_GUN", - "NO_SALVAGE", - "NO_UNLOAD", - "RELOAD_AND_SHOOT" - ], - "skill": "pistol", - "ammo": [ "gene_sting_barb" ], - "clip_size": 1, - "weight": "540 g", - "volume": "750 ml", - "longest_side": "25 cm", - "to_hit": 1, - "reload_noise_volume": 2, - "loudness": 2, - "range": 12, - "dispersion": 100, - "durability": 8, - "pocket_data": [ { "pocket_type": "MAGAZINE", "rigid": true, "ammo_restriction": { "gene_sting_barb": 1 } } ], - "melee_damage": { "bash": 2 } - }, { "id": "feral_human_thrown_rock", "type": "GUN", diff --git a/data/json/monsters/nether.json b/data/json/monsters/nether.json index ab5366dd0d2b2..adcba077882d9 100644 --- a/data/json/monsters/nether.json +++ b/data/json/monsters/nether.json @@ -1428,15 +1428,7 @@ "families": [ "prof_wp_netherium_abomination" ], "weakpoint_sets": [ "wps_netherium_abomination" ], "harvest": "meatslug", - "special_attacks": [ - { - "type": "gun", - "cooldown": 2, - "gun_type": "gene_sting_launcher", - "ranges": [ [ 2, 24, "DEFAULT" ] ], - "description": "The yugg launches a viscous barb!" - } - ], + "special_attacks": [ { "type": "spell", "spell_data": { "id": "spell_gene_sting", "min_level": 5 }, "cooldown": 560 } ], "flags": [ "SEES", "SMELLS", "HEARS", "HAS_MIND", "BASHES", "DESTROYS", "POISON", "VENOM", "NO_BREATHE", "DIGS" ], "armor": { "bash": 6, "electric": 3 } }, From 608f94f2a46b2914630602fb4fe9214985f51388 Mon Sep 17 00:00:00 2001 From: Maleclypse <54345792+Maleclypse@users.noreply.github.com> Date: Thu, 6 Jun 2024 13:24:58 -0500 Subject: [PATCH 06/23] Update tools/json_tools/generic_guns_validator.py --- tools/json_tools/generic_guns_validator.py | 1 - 1 file changed, 1 deletion(-) diff --git a/tools/json_tools/generic_guns_validator.py b/tools/json_tools/generic_guns_validator.py index b18d25ee710fa..4c7be5268f89c 100755 --- a/tools/json_tools/generic_guns_validator.py +++ b/tools/json_tools/generic_guns_validator.py @@ -25,7 +25,6 @@ 'chemical_spray', 'fishspear', 'flammable', - 'gene_sting_barb', 'm235', # Rocket 'metal_rail', 'nail', From 543d2c29cd56b864a5e7820047fb7ffd354a6891 Mon Sep 17 00:00:00 2001 From: Maleclypse <54345792+Maleclypse@users.noreply.github.com> Date: Thu, 6 Jun 2024 13:28:43 -0500 Subject: [PATCH 07/23] Apply suggestions from code review --- data/json/monster_special_attacks/spells.json | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/data/json/monster_special_attacks/spells.json b/data/json/monster_special_attacks/spells.json index 55bebc7023f07..aa0de411d0830 100644 --- a/data/json/monster_special_attacks/spells.json +++ b/data/json/monster_special_attacks/spells.json @@ -591,7 +591,17 @@ "id": "spell_gene_sting", "name": { "str": "Gene Sting" }, "description": "Yugg attack which causes random mutation.", - "copy-from": "base_portal", + "effect": "attack", + "shape": "blast", + "valid_targets": [ "hostile" ], + "min_range": 2, + "max_range": 24, + "range_increment": 0.5, + "energy_source": "MANA", + "base_energy_cost": 250, + "base_casting_time": 85, + "final_casting_time": 85, + "sound_description": "ssszziiipp" "min_damage": 1, "max_damage": 1, "effect_str": "EOC_gene_sting_selector" From 047539647f120fdfdbdb4254cb752a74cf3b7c0b Mon Sep 17 00:00:00 2001 From: Maleclypse <54345792+Maleclypse@users.noreply.github.com> Date: Thu, 6 Jun 2024 13:30:15 -0500 Subject: [PATCH 08/23] Update data/json/monster_special_attacks/spells.json --- data/json/monster_special_attacks/spells.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data/json/monster_special_attacks/spells.json b/data/json/monster_special_attacks/spells.json index aa0de411d0830..c2eadf42acde0 100644 --- a/data/json/monster_special_attacks/spells.json +++ b/data/json/monster_special_attacks/spells.json @@ -601,7 +601,7 @@ "base_energy_cost": 250, "base_casting_time": 85, "final_casting_time": 85, - "sound_description": "ssszziiipp" + "sound_description": "ssszziiipp", "min_damage": 1, "max_damage": 1, "effect_str": "EOC_gene_sting_selector" From 50466db36b1d6bd624706ce9bdf847f72af462ab Mon Sep 17 00:00:00 2001 From: Maleclypse <54345792+Maleclypse@users.noreply.github.com> Date: Thu, 6 Jun 2024 13:32:27 -0500 Subject: [PATCH 09/23] Update data/json/monsters/nether.json --- data/json/monsters/nether.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data/json/monsters/nether.json b/data/json/monsters/nether.json index adcba077882d9..6d6e69cae7db9 100644 --- a/data/json/monsters/nether.json +++ b/data/json/monsters/nether.json @@ -1428,7 +1428,7 @@ "families": [ "prof_wp_netherium_abomination" ], "weakpoint_sets": [ "wps_netherium_abomination" ], "harvest": "meatslug", - "special_attacks": [ { "type": "spell", "spell_data": { "id": "spell_gene_sting", "min_level": 5 }, "cooldown": 560 } ], + "special_attacks": [ { "type": "spell", "spell_data": { "id": "spell_gene_sting", "min_level": 1 }, "cooldown": 60 } ], "flags": [ "SEES", "SMELLS", "HEARS", "HAS_MIND", "BASHES", "DESTROYS", "POISON", "VENOM", "NO_BREATHE", "DIGS" ], "armor": { "bash": 6, "electric": 3 } }, From d06248ddd64b4e3b5f19ada9f41d7abfb1209fcf Mon Sep 17 00:00:00 2001 From: Maleclypse <54345792+Maleclypse@users.noreply.github.com> Date: Thu, 6 Jun 2024 13:43:46 -0500 Subject: [PATCH 10/23] Apply suggestions from code review --- data/json/monster_special_attacks/spells.json | 2 +- data/json/monsters/nether.json | 21 ++++++++++++++++++- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/data/json/monster_special_attacks/spells.json b/data/json/monster_special_attacks/spells.json index c2eadf42acde0..39ffd190e9824 100644 --- a/data/json/monster_special_attacks/spells.json +++ b/data/json/monster_special_attacks/spells.json @@ -604,7 +604,7 @@ "sound_description": "ssszziiipp", "min_damage": 1, "max_damage": 1, - "effect_str": "EOC_gene_sting_selector" + "extra_effects": [ { "id": "spell_gene_sting_selector" } ] }, { "type": "effect_on_condition", diff --git a/data/json/monsters/nether.json b/data/json/monsters/nether.json index 6d6e69cae7db9..1822455fe3602 100644 --- a/data/json/monsters/nether.json +++ b/data/json/monsters/nether.json @@ -1428,7 +1428,26 @@ "families": [ "prof_wp_netherium_abomination" ], "weakpoint_sets": [ "wps_netherium_abomination" ], "harvest": "meatslug", - "special_attacks": [ { "type": "spell", "spell_data": { "id": "spell_gene_sting", "min_level": 1 }, "cooldown": 60 } ], + "special_attacks": [ + { + "type": "monster_attack", + "attack_type": "melee", + "id": "spell_gene_sting", + "cooldown": 10, + "move_cost": 100, + "range": 8, + "damage_max_instance": [ { "damage_type": "biological", "amount": 10 } ], + "effects": [ { "id": "bleed", "duration": 60, "chance": 33, "intensity": , "affect_hit_bp": true } ], + "dodgeable": true, + "blockable": true, + "hit_dmg_u": "%1$s slings it's tail forward and your %2$s is impacted by a venomous barb!", + "hit_dmg_npc": "%1$s slings it's tail forward and 's %2$s is impacted by a venomous barb!", + "miss_msg_u": "%1$s slings it's tail forward and you narrowly avoid a venomous barb!", + "miss_msg_npc": "%1$s slings it's tail forward and narrowly avoids a venomous barb!", + "no_dmg_msg_u": "%1$s slings it's tail forward and your %2$s is hit by a venomous barb, but it does no damage.", + "no_dmg_msg_npc": "%1$s slings it's tail forward and 's %2$s is hit by a venomous barb, but it does no damage." + } + ], "flags": [ "SEES", "SMELLS", "HEARS", "HAS_MIND", "BASHES", "DESTROYS", "POISON", "VENOM", "NO_BREATHE", "DIGS" ], "armor": { "bash": 6, "electric": 3 } }, From 48c50584fb7f100150e16b826dcd6db85f5bcd28 Mon Sep 17 00:00:00 2001 From: Maleclypse <54345792+Maleclypse@users.noreply.github.com> Date: Thu, 6 Jun 2024 15:11:47 -0500 Subject: [PATCH 11/23] Update data/json/monster_special_attacks/spells.json Co-authored-by: Anton Simakov <67688115+GuardianDll@users.noreply.github.com> --- data/json/monster_special_attacks/spells.json | 290 ++---------------- 1 file changed, 28 insertions(+), 262 deletions(-) diff --git a/data/json/monster_special_attacks/spells.json b/data/json/monster_special_attacks/spells.json index 39ffd190e9824..19f838ca9994c 100644 --- a/data/json/monster_special_attacks/spells.json +++ b/data/json/monster_special_attacks/spells.json @@ -608,276 +608,42 @@ }, { "type": "effect_on_condition", - "id": "EOC_gene_sting_selector", + "id": "EOC_sting_selector", "condition": "u_is_character", "effect": [ { "u_message": "The Yugg's barb injects you with something!", "type": "bad" }, + { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, { "weighted_list_eocs": [ - [ "EOC_gene_sting_chimera", 6 ], - [ "EOC_gene_sting_insect", 2 ], - [ "EOC_gene_sting_alpha", 1 ], - [ "EOC_gene_sting_ursine", 2 ], - [ "EOC_gene_sting_chiropteran", 2 ], - [ "EOC_gene_sting_medical", 1 ], - [ "EOC_gene_sting_bird", 2 ], - [ "EOC_gene_sting_lupine", 2 ], - [ "EOC_gene_sting_slime", 1 ], - [ "EOC_gene_sting_rat", 2 ], - [ "EOC_gene_sting_plant", 2 ], - [ "EOC_gene_sting_raptor", 1 ], - [ "EOC_gene_sting_batrachian", 2 ], - [ "EOC_gene_sting_mouse", 2 ], - [ "EOC_gene_sting_elfa", 1 ], - [ "EOC_gene_sting_cepholapod", 2 ], - [ "EOC_gene_sting_fish", 2 ], - [ "EOC_gene_sting_gastropod", 2 ], - [ "EOC_gene_sting_rabbit", 2 ], - [ "EOC_gene_sting_human", 2 ], - [ "EOC_gene_sting_beast", 2 ], - [ "EOC_gene_sting_feline", 2 ], - [ "EOC_gene_sting_cattle", 2 ], - [ "EOC_gene_sting_lizard", 2 ], - [ "EOC_gene_sting_troglobite", 2 ], - [ "EOC_gene_sting_crustacean", 2 ] + [ { "id": "sting_insect", "effect": { "u_mutate_category": "CHIMERA", "use_vitamins": false } }, 6 ], + [ { "id": "sting_alpha", "effect": { "u_mutate_category": "CHIMERA", "use_vitamins": false } }, 2 ], + [ { "id": "sting_ursine", "effect": { "u_mutate_category": "INSECT", "use_vitamins": false } }, 1 ], + [ { "id": "sting_chiropteran", "effect": { "u_mutate_category": "ALPHA", "use_vitamins": false } }, 2 ], + [ { "id": "sting_medical", "effect": { "u_mutate_category": "URSINE", "use_vitamins": false } }, 2 ], + [ { "id": "sting_bird", "effect": { "u_mutate_category": "CHIROPTERAN", "use_vitamins": false } }, 1 ], + [ { "id": "sting_lupine", "effect": { "u_mutate_category": "MEDICAL", "use_vitamins": false } }, 2 ], + [ { "id": "sting_slime", "effect": { "u_mutate_category": "LUPINE", "use_vitamins": false } }, 2 ], + [ { "id": "sting_rat", "effect": { "u_mutate_category": "BIRD", "use_vitamins": false } }, 1 ], + [ { "id": "sting_plant", "effect": { "u_mutate_category": "SLIME", "use_vitamins": false } }, 2 ], + [ { "id": "sting_raptor", "effect": { "u_mutate_category": "RAT", "use_vitamins": false } }, 2 ], + [ { "id": "sting_batrachian", "effect": { "u_mutate_category": "PLANT", "use_vitamins": false } }, 1 ], + [ { "id": "sting_mouse", "effect": { "u_mutate_category": "RAPTOR", "use_vitamins": false } }, 2 ], + [ { "id": "sting_elfa", "effect": { "u_mutate_category": "BATRACHIAN", "use_vitamins": false } }, 2 ], + [ { "id": "sting_cepholapod", "effect": { "u_mutate_category": "ELFA", "use_vitamins": false } }, 1 ], + [ { "id": "sting_fish", "effect": { "u_mutate_category": "MOUSE", "use_vitamins": false } }, 2 ], + [ { "id": "sting_gastropod", "effect": { "u_mutate_category": "CEPHALOPOD", "use_vitamins": false } }, 1 ], + [ { "id": "sting_rabbit", "effect": { "u_mutate_category": "GASTROPOD", "use_vitamins": false } }, 2 ], + [ { "id": "sting_human", "effect": { "u_mutate_category": "FISH", "use_vitamins": false } }, 2 ], + [ { "id": "sting_beast", "effect": { "u_mutate_category": "RABBIT", "use_vitamins": false } }, 2 ], + [ { "id": "sting_feline", "effect": { "u_mutate_category": "HUMAN", "use_vitamins": false } }, 2 ], + [ { "id": "sting_cattle", "effect": { "u_mutate_category": "BEAST", "use_vitamins": false } }, 2 ], + [ { "id": "sting_lizard", "effect": { "u_mutate_category": "FELINE", "use_vitamins": false } }, 2 ], + [ { "id": "sting_troglobite", "effect": { "u_mutate_category": "CATTLE", "use_vitamins": false } }, 2 ], + [ { "id": "sting_crustacean", "effect": { "u_mutate_category": "LIZARD", "use_vitamins": false } }, 2 ] ] } ] - }, - { - "type": "effect_on_condition", - "id": "EOC_gene_sting_chimera", - "condition": "u_is_character", - "effect": [ - { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, - { "u_mutate_category": "CHIMERA", "use_vitamins": false } - ] - }, - { - "type": "effect_on_condition", - "id": "EOC_gene_sting_insect", - "condition": "u_is_character", - "effect": [ - { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, - { "u_mutate_category": "INSECT", "use_vitamins": false } - ] - }, - { - "type": "effect_on_condition", - "id": "EOC_gene_sting_alpha", - "condition": "u_is_character", - "effect": [ - { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, - { "u_mutate_category": "ALPHA", "use_vitamins": false } - ] - }, - { - "type": "effect_on_condition", - "id": "EOC_gene_sting_ursine", - "condition": "u_is_character", - "effect": [ - { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, - { "u_mutate_category": "URSINE", "use_vitamins": false } - ] - }, - { - "type": "effect_on_condition", - "id": "EOC_gene_sting_chiropteran", - "condition": "u_is_character", - "effect": [ - { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, - { "u_mutate_category": "CHIROPTERAN", "use_vitamins": false } - ] - }, - { - "type": "effect_on_condition", - "id": "EOC_gene_sting_medical", - "condition": "u_is_character", - "effect": [ - { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, - { "u_mutate_category": "MEDICAL", "use_vitamins": false } - ] - }, - { - "type": "effect_on_condition", - "id": "EOC_gene_sting_lupine", - "condition": "u_is_character", - "effect": [ - { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, - { "u_mutate_category": "LUPINE", "use_vitamins": false } - ] - }, - { - "type": "effect_on_condition", - "id": "EOC_gene_sting_bird", - "condition": "u_is_character", - "effect": [ - { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, - { "u_mutate_category": "BIRD", "use_vitamins": false } - ] - }, - { - "type": "effect_on_condition", - "id": "EOC_gene_sting_slime", - "condition": "u_is_character", - "effect": [ - { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, - { "u_mutate_category": "SLIME", "use_vitamins": false } - ] - }, - { - "type": "effect_on_condition", - "id": "EOC_gene_sting_rat", - "condition": "u_is_character", - "effect": [ - { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, - { "u_mutate_category": "RAT", "use_vitamins": false } - ] - }, - { - "type": "effect_on_condition", - "id": "EOC_gene_sting_plant", - "condition": "u_is_character", - "effect": [ - { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, - { "u_mutate_category": "PLANT", "use_vitamins": false } - ] - }, - { - "type": "effect_on_condition", - "id": "EOC_gene_sting_raptor", - "condition": "u_is_character", - "effect": [ - { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, - { "u_mutate_category": "RAPTOR", "use_vitamins": false } - ] - }, - { - "type": "effect_on_condition", - "id": "EOC_gene_sting_batrachian", - "condition": "u_is_character", - "effect": [ - { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, - { "u_mutate_category": "BATRACHIAN", "use_vitamins": false } - ] - }, - { - "type": "effect_on_condition", - "id": "EOC_gene_sting_elfa", - "condition": "u_is_character", - "effect": [ - { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, - { "u_mutate_category": "ELFA", "use_vitamins": false } - ] - }, - { - "type": "effect_on_condition", - "id": "EOC_gene_sting_mouse", - "condition": "u_is_character", - "effect": [ - { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, - { "u_mutate_category": "MOUSE", "use_vitamins": false } - ] - }, - { - "type": "effect_on_condition", - "id": "EOC_gene_sting_cepholapod", - "condition": "u_is_character", - "effect": [ - { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, - { "u_mutate_category": "CEPHALOPOD", "use_vitamins": false } - ] - }, - { - "type": "effect_on_condition", - "id": "EOC_gene_sting_gastropod", - "condition": "u_is_character", - "effect": [ - { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, - { "u_mutate_category": "GASTROPOD", "use_vitamins": false } - ] - }, - { - "type": "effect_on_condition", - "id": "EOC_gene_sting_fish", - "condition": "u_is_character", - "effect": [ - { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, - { "u_mutate_category": "FISH", "use_vitamins": false } - ] - }, - { - "type": "effect_on_condition", - "id": "EOC_gene_sting_rabbit", - "condition": "u_is_character", - "effect": [ - { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, - { "u_mutate_category": "RABBIT", "use_vitamins": false } - ] - }, - { - "type": "effect_on_condition", - "id": "EOC_gene_sting_human", - "condition": "u_is_character", - "effect": [ - { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, - { "u_mutate_category": "HUMAN", "use_vitamins": false } - ] - }, - { - "type": "effect_on_condition", - "id": "EOC_gene_sting_beast", - "condition": "u_is_character", - "effect": [ - { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, - { "u_mutate_category": "BEAST", "use_vitamins": false } - ] - }, - { - "type": "effect_on_condition", - "id": "EOC_gene_sting_feline", - "condition": "u_is_character", - "effect": [ - { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, - { "u_mutate_category": "FELINE", "use_vitamins": false } - ] - }, - { - "type": "effect_on_condition", - "id": "EOC_gene_sting_cattle", - "condition": "u_is_character", - "effect": [ - { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, - { "u_mutate_category": "CATTLE", "use_vitamins": false } - ] - }, - { - "type": "effect_on_condition", - "id": "EOC_gene_sting_lizard", - "condition": "u_is_character", - "effect": [ - { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, - { "u_mutate_category": "LIZARD", "use_vitamins": false } - ] - }, - { - "type": "effect_on_condition", - "id": "EOC_gene_sting_troglobite", - "condition": "u_is_character", - "effect": [ - { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, - { "u_mutate_category": "TROGLOBITE", "use_vitamins": false } - ] - }, - { - "type": "effect_on_condition", - "id": "EOC_gene_sting_crustacean", - "condition": "u_is_character", - "effect": [ - { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, - { "u_mutate_category": "CRUSTACEAN", "use_vitamins": false } - ] - }, + } { "type": "SPELL", "id": "base_portal", From c94fbece92218303c7abedc4a188c8877e9cd130 Mon Sep 17 00:00:00 2001 From: Maleclypse <54345792+Maleclypse@users.noreply.github.com> Date: Thu, 6 Jun 2024 21:01:45 -0500 Subject: [PATCH 12/23] Update nether.json --- data/json/monsters/nether.json | 21 +-------------------- 1 file changed, 1 insertion(+), 20 deletions(-) diff --git a/data/json/monsters/nether.json b/data/json/monsters/nether.json index 1822455fe3602..adcba077882d9 100644 --- a/data/json/monsters/nether.json +++ b/data/json/monsters/nether.json @@ -1428,26 +1428,7 @@ "families": [ "prof_wp_netherium_abomination" ], "weakpoint_sets": [ "wps_netherium_abomination" ], "harvest": "meatslug", - "special_attacks": [ - { - "type": "monster_attack", - "attack_type": "melee", - "id": "spell_gene_sting", - "cooldown": 10, - "move_cost": 100, - "range": 8, - "damage_max_instance": [ { "damage_type": "biological", "amount": 10 } ], - "effects": [ { "id": "bleed", "duration": 60, "chance": 33, "intensity": , "affect_hit_bp": true } ], - "dodgeable": true, - "blockable": true, - "hit_dmg_u": "%1$s slings it's tail forward and your %2$s is impacted by a venomous barb!", - "hit_dmg_npc": "%1$s slings it's tail forward and 's %2$s is impacted by a venomous barb!", - "miss_msg_u": "%1$s slings it's tail forward and you narrowly avoid a venomous barb!", - "miss_msg_npc": "%1$s slings it's tail forward and narrowly avoids a venomous barb!", - "no_dmg_msg_u": "%1$s slings it's tail forward and your %2$s is hit by a venomous barb, but it does no damage.", - "no_dmg_msg_npc": "%1$s slings it's tail forward and 's %2$s is hit by a venomous barb, but it does no damage." - } - ], + "special_attacks": [ { "type": "spell", "spell_data": { "id": "spell_gene_sting", "min_level": 5 }, "cooldown": 560 } ], "flags": [ "SEES", "SMELLS", "HEARS", "HAS_MIND", "BASHES", "DESTROYS", "POISON", "VENOM", "NO_BREATHE", "DIGS" ], "armor": { "bash": 6, "electric": 3 } }, From 55181066d440249def49d3f28d1f65f7bc14a162 Mon Sep 17 00:00:00 2001 From: Maleclypse <54345792+Maleclypse@users.noreply.github.com> Date: Thu, 6 Jun 2024 21:02:21 -0500 Subject: [PATCH 13/23] Apply suggestions from code review Co-authored-by: Anton Simakov <67688115+GuardianDll@users.noreply.github.com> --- data/json/monster_special_attacks/spells.json | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/data/json/monster_special_attacks/spells.json b/data/json/monster_special_attacks/spells.json index 19f838ca9994c..3614725a17e3a 100644 --- a/data/json/monster_special_attacks/spells.json +++ b/data/json/monster_special_attacks/spells.json @@ -594,13 +594,8 @@ "effect": "attack", "shape": "blast", "valid_targets": [ "hostile" ], - "min_range": 2, + "min_range": 24, "max_range": 24, - "range_increment": 0.5, - "energy_source": "MANA", - "base_energy_cost": 250, - "base_casting_time": 85, - "final_casting_time": 85, "sound_description": "ssszziiipp", "min_damage": 1, "max_damage": 1, From 51a5f4b73ac31762c6ee11fd2ceb4a4eb54c7931 Mon Sep 17 00:00:00 2001 From: Maleclypse <54345792+Maleclypse@users.noreply.github.com> Date: Thu, 6 Jun 2024 21:03:04 -0500 Subject: [PATCH 14/23] Update data/json/monster_special_attacks/spells.json --- data/json/monster_special_attacks/spells.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data/json/monster_special_attacks/spells.json b/data/json/monster_special_attacks/spells.json index 3614725a17e3a..9646cdaa260e2 100644 --- a/data/json/monster_special_attacks/spells.json +++ b/data/json/monster_special_attacks/spells.json @@ -638,7 +638,7 @@ ] } ] - } + }, { "type": "SPELL", "id": "base_portal", From 535d6bb445dd3153816e73d4428efcf8f7fd35a9 Mon Sep 17 00:00:00 2001 From: Maleclypse <54345792+Maleclypse@users.noreply.github.com> Date: Thu, 6 Jun 2024 21:40:05 -0500 Subject: [PATCH 15/23] fix --- data/json/monster_special_attacks/spells.json | 13 +++++++++++++ data/json/monsters/nether.json | 2 +- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/data/json/monster_special_attacks/spells.json b/data/json/monster_special_attacks/spells.json index 9646cdaa260e2..0029a83e42235 100644 --- a/data/json/monster_special_attacks/spells.json +++ b/data/json/monster_special_attacks/spells.json @@ -601,6 +601,19 @@ "max_damage": 1, "extra_effects": [ { "id": "spell_gene_sting_selector" } ] }, + { + "id": "spell_gene_sting_selector", + "type": "SPELL", + "name": "Gene Sting Selector", + "description": "The spell fires the EOC for the yugg gene sting. It's a bug if you have it.", + "message": "", + "valid_targets": [ "hostile" ], + "flags": [ "NO_FAIL", "SILENT", "NO_HANDS", "NO_LEGS" ], + "effect": "effect_on_condition", + "effect_str": "EOC_sting_selector", + "shape": "blast", + "max_level": 1 + }, { "type": "effect_on_condition", "id": "EOC_sting_selector", diff --git a/data/json/monsters/nether.json b/data/json/monsters/nether.json index adcba077882d9..87c0e415dfb70 100644 --- a/data/json/monsters/nether.json +++ b/data/json/monsters/nether.json @@ -1428,7 +1428,7 @@ "families": [ "prof_wp_netherium_abomination" ], "weakpoint_sets": [ "wps_netherium_abomination" ], "harvest": "meatslug", - "special_attacks": [ { "type": "spell", "spell_data": { "id": "spell_gene_sting", "min_level": 5 }, "cooldown": 560 } ], + "special_attacks": [ { "type": "spell", "spell_data": { "id": "spell_gene_sting", "min_level": 5 }, "cooldown": 160 } ], "flags": [ "SEES", "SMELLS", "HEARS", "HAS_MIND", "BASHES", "DESTROYS", "POISON", "VENOM", "NO_BREATHE", "DIGS" ], "armor": { "bash": 6, "electric": 3 } }, From d8f38a371b26b69fb154fc961e4480b6e02da45b Mon Sep 17 00:00:00 2001 From: Maleclypse <54345792+Maleclypse@users.noreply.github.com> Date: Thu, 6 Jun 2024 21:43:28 -0500 Subject: [PATCH 16/23] Update data/json/monster_special_attacks/spells.json --- data/json/monster_special_attacks/spells.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data/json/monster_special_attacks/spells.json b/data/json/monster_special_attacks/spells.json index 0029a83e42235..2d7417dce955c 100644 --- a/data/json/monster_special_attacks/spells.json +++ b/data/json/monster_special_attacks/spells.json @@ -623,7 +623,7 @@ { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, { "weighted_list_eocs": [ - [ { "id": "sting_insect", "effect": { "u_mutate_category": "CHIMERA", "use_vitamins": false } }, 6 ], + [ { "id": "sting_chimera", "effect": { "u_mutate_category": "CHIMERA", "use_vitamins": false } }, 6 ], [ { "id": "sting_alpha", "effect": { "u_mutate_category": "CHIMERA", "use_vitamins": false } }, 2 ], [ { "id": "sting_ursine", "effect": { "u_mutate_category": "INSECT", "use_vitamins": false } }, 1 ], [ { "id": "sting_chiropteran", "effect": { "u_mutate_category": "ALPHA", "use_vitamins": false } }, 2 ], From 76aec00ae46b3c99c3cc5d597507931cadc043da Mon Sep 17 00:00:00 2001 From: Maleclypse <54345792+Maleclypse@users.noreply.github.com> Date: Fri, 7 Jun 2024 21:56:52 -0500 Subject: [PATCH 17/23] Update spells.json --- data/json/monster_special_attacks/spells.json | 52 ++++++++++--------- 1 file changed, 27 insertions(+), 25 deletions(-) diff --git a/data/json/monster_special_attacks/spells.json b/data/json/monster_special_attacks/spells.json index 0029a83e42235..ece96d3938438 100644 --- a/data/json/monster_special_attacks/spells.json +++ b/data/json/monster_special_attacks/spells.json @@ -614,6 +614,7 @@ "shape": "blast", "max_level": 1 }, + { "type": "effect_on_condition", "id": "EOC_sting_selector", @@ -623,31 +624,32 @@ { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, { "weighted_list_eocs": [ - [ { "id": "sting_insect", "effect": { "u_mutate_category": "CHIMERA", "use_vitamins": false } }, 6 ], - [ { "id": "sting_alpha", "effect": { "u_mutate_category": "CHIMERA", "use_vitamins": false } }, 2 ], - [ { "id": "sting_ursine", "effect": { "u_mutate_category": "INSECT", "use_vitamins": false } }, 1 ], - [ { "id": "sting_chiropteran", "effect": { "u_mutate_category": "ALPHA", "use_vitamins": false } }, 2 ], - [ { "id": "sting_medical", "effect": { "u_mutate_category": "URSINE", "use_vitamins": false } }, 2 ], - [ { "id": "sting_bird", "effect": { "u_mutate_category": "CHIROPTERAN", "use_vitamins": false } }, 1 ], - [ { "id": "sting_lupine", "effect": { "u_mutate_category": "MEDICAL", "use_vitamins": false } }, 2 ], - [ { "id": "sting_slime", "effect": { "u_mutate_category": "LUPINE", "use_vitamins": false } }, 2 ], - [ { "id": "sting_rat", "effect": { "u_mutate_category": "BIRD", "use_vitamins": false } }, 1 ], - [ { "id": "sting_plant", "effect": { "u_mutate_category": "SLIME", "use_vitamins": false } }, 2 ], - [ { "id": "sting_raptor", "effect": { "u_mutate_category": "RAT", "use_vitamins": false } }, 2 ], - [ { "id": "sting_batrachian", "effect": { "u_mutate_category": "PLANT", "use_vitamins": false } }, 1 ], - [ { "id": "sting_mouse", "effect": { "u_mutate_category": "RAPTOR", "use_vitamins": false } }, 2 ], - [ { "id": "sting_elfa", "effect": { "u_mutate_category": "BATRACHIAN", "use_vitamins": false } }, 2 ], - [ { "id": "sting_cepholapod", "effect": { "u_mutate_category": "ELFA", "use_vitamins": false } }, 1 ], - [ { "id": "sting_fish", "effect": { "u_mutate_category": "MOUSE", "use_vitamins": false } }, 2 ], - [ { "id": "sting_gastropod", "effect": { "u_mutate_category": "CEPHALOPOD", "use_vitamins": false } }, 1 ], - [ { "id": "sting_rabbit", "effect": { "u_mutate_category": "GASTROPOD", "use_vitamins": false } }, 2 ], - [ { "id": "sting_human", "effect": { "u_mutate_category": "FISH", "use_vitamins": false } }, 2 ], - [ { "id": "sting_beast", "effect": { "u_mutate_category": "RABBIT", "use_vitamins": false } }, 2 ], - [ { "id": "sting_feline", "effect": { "u_mutate_category": "HUMAN", "use_vitamins": false } }, 2 ], - [ { "id": "sting_cattle", "effect": { "u_mutate_category": "BEAST", "use_vitamins": false } }, 2 ], - [ { "id": "sting_lizard", "effect": { "u_mutate_category": "FELINE", "use_vitamins": false } }, 2 ], - [ { "id": "sting_troglobite", "effect": { "u_mutate_category": "CATTLE", "use_vitamins": false } }, 2 ], - [ { "id": "sting_crustacean", "effect": { "u_mutate_category": "LIZARD", "use_vitamins": false } }, 2 ] + [ { "id": "sting_chimera", "effect": { "u_mutate_category": "CHIMERA", "use_vitamins": false } }, 6 ], + [ { "id": "sting_insect", "effect": { "u_mutate_category": "INSECT", "use_vitamins": false } }, 2 ], + [ { "id": "sting_alpha", "effect": { "u_mutate_category": "ALPHA", "use_vitamins": false } }, 1 ], + [ { "id": "sting_ursine", "effect": { "u_mutate_category": "URSINE", "use_vitamins": false } }, 2 ], + [ { "id": "sting_chiropteran", "effect": { "u_mutate_category": "CHIROPTERAN", "use_vitamins": false } }, 2 ], + [ { "id": "sting_bird", "effect": { "u_mutate_category": "BIRD", "use_vitamins": false } }, 2 ], + [ { "id": "sting_medical", "effect": { "u_mutate_category": "MEDICAL", "use_vitamins": false } }, 1 ], + [ { "id": "sting_lupine", "effect": { "u_mutate_category": "LUPINE", "use_vitamins": false } }, 2 ], + [ { "id": "sting_rat", "effect": { "u_mutate_category": "RAT", "use_vitamins": false } }, 2 ], + [ { "id": "sting_slime", "effect": { "u_mutate_category": "SLIME", "use_vitamins": false } }, 1 ], + [ { "id": "sting_plant", "effect": { "u_mutate_category": "PLANT", "use_vitamins": false } }, 2 ], + [ { "id": "sting_batrachian", "effect": { "u_mutate_category": "BATRACHIAN", "use_vitamins": false } }, 2 ], + [ { "id": "sting_raptor", "effect": { "u_mutate_category": "RAPTOR", "use_vitamins": false } }, 1 ], + [ { "id": "sting_mouse", "effect": { "u_mutate_category": "MOUSE", "use_vitamins": false } }, 2 ], + [ { "id": "sting_cephalopod", "effect": { "u_mutate_category": "CEPHALOPOD", "use_vitamins": false } }, 2 ], + [ { "id": "sting_elfa", "effect": { "u_mutate_category": "ELFA", "use_vitamins": false } }, 1 ], + [ { "id": "sting_fish", "effect": { "u_mutate_category": "FISH", "use_vitamins": false } }, 2 ], + [ { "id": "sting_human", "effect": { "u_mutate_category": "HUMAN", "use_vitamins": false } }, 1 ], + [ { "id": "sting_rabbit", "effect": { "u_mutate_category": "RABBIT", "use_vitamins": false } }, 2 ], + [ { "id": "sting_gastropod", "effect": { "u_mutate_category": "GASTROPOD", "use_vitamins": false } }, 2 ], + [ { "id": "sting_beast", "effect": { "u_mutate_category": "BEAST", "use_vitamins": false } }, 2 ], + [ { "id": "sting_feline", "effect": { "u_mutate_category": "FELINE", "use_vitamins": false } }, 2 ], + [ { "id": "sting_cattle", "effect": { "u_mutate_category": "CATTLE", "use_vitamins": false } }, 2 ], + [ { "id": "sting_lizard", "effect": { "u_mutate_category": "LIZARD", "use_vitamins": false } }, 2 ], + [ { "id": "sting_troglobite", "effect": { "u_mutate_category": "TROGLOBITE", "use_vitamins": false } }, 2 ], + [ { "id": "sting_crustacean", "effect": { "u_mutate_category": "CRUSTACEAN", "use_vitamins": false } }, 2 ] ] } ] From 59b002efd0f35b79848fc4d8949b8553342ad6fd Mon Sep 17 00:00:00 2001 From: Maleclypse <54345792+Maleclypse@users.noreply.github.com> Date: Tue, 11 Jun 2024 23:34:18 -0500 Subject: [PATCH 18/23] Update data/json/monster_special_attacks/spells.json --- data/json/monster_special_attacks/spells.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/data/json/monster_special_attacks/spells.json b/data/json/monster_special_attacks/spells.json index 99734e7759846..3ebb25ba43051 100644 --- a/data/json/monster_special_attacks/spells.json +++ b/data/json/monster_special_attacks/spells.json @@ -618,7 +618,8 @@ "type": "effect_on_condition", "id": "EOC_random_mutate", "condition": "u_is_character", - "effect": [ { "u_mutate": "random_category", "snippet": true, "use_vitamins": false } ] + "effect": [ { "set_string_var": "", "target_var": { "context_val": "dart_mutation_category" }, "parse_tags": true }, +{ "u_mutate_category": { "context_val": "dart_mutation_category" } } ] }, { "type": "snippet", From d0345273b795242295af4fd522d275951bb79ca2 Mon Sep 17 00:00:00 2001 From: Maleclypse <54345792+Maleclypse@users.noreply.github.com> Date: Tue, 11 Jun 2024 23:39:23 -0500 Subject: [PATCH 19/23] Apply suggestions from code review --- data/json/monster_special_attacks/spells.json | 20 +++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/data/json/monster_special_attacks/spells.json b/data/json/monster_special_attacks/spells.json index 3ebb25ba43051..dd949665d372c 100644 --- a/data/json/monster_special_attacks/spells.json +++ b/data/json/monster_special_attacks/spells.json @@ -622,8 +622,24 @@ { "u_mutate_category": { "context_val": "dart_mutation_category" } } ] }, { - "type": "snippet", - "id": "random_category", + "type": "snippet_category", + "id": "", + { "id": "CHIMERA" }, + { "id": "ALPHA" }, + { "id": "BEAST" }, + { "id": "BATRACHIAN" }, + { "id": "INSECT" }, + { "id": "MEDICAL" }, + { "id": "RAPTOR" }, + { "id": "LIZARD" }, + { "id": "SLIME" }, + { "id": "PLANT" }, + { "id": "ELFA" }, + { "id": "RAT" }, + { "id": "MOUSE" }, + { "id": "CATTLE" }, + { "id": "RABBIT" }, + { "id": "CHIROPTERAN" } } From c09e31945d8d1598925dab28ebbbe08828601c2d Mon Sep 17 00:00:00 2001 From: Maleclypse <54345792+Maleclypse@users.noreply.github.com> Date: Wed, 12 Jun 2024 18:35:07 -0500 Subject: [PATCH 20/23] Update data/json/monster_special_attacks/spells.json --- data/json/monster_special_attacks/spells.json | 20 ++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/data/json/monster_special_attacks/spells.json b/data/json/monster_special_attacks/spells.json index dd949665d372c..7f319b3e9cfff 100644 --- a/data/json/monster_special_attacks/spells.json +++ b/data/json/monster_special_attacks/spells.json @@ -619,7 +619,25 @@ "id": "EOC_random_mutate", "condition": "u_is_character", "effect": [ { "set_string_var": "", "target_var": { "context_val": "dart_mutation_category" }, "parse_tags": true }, -{ "u_mutate_category": { "context_val": "dart_mutation_category" } } ] +{ "u_mutate_category": { "context_val": "dart_mutation_category" } } ], +"snippet_category": [ +{ "id": "CHIMERA" }, + { "id": "ALPHA" }, + { "id": "BEAST" }, + { "id": "BATRACHIAN" }, + { "id": "INSECT" }, + { "id": "MEDICAL" }, + { "id": "RAPTOR" }, + { "id": "LIZARD" }, + { "id": "SLIME" }, + { "id": "PLANT" }, + { "id": "ELFA" }, + { "id": "RAT" }, + { "id": "MOUSE" }, + { "id": "CATTLE" }, + { "id": "RABBIT" }, + { "id": "CHIROPTERAN" } + ] }, { "type": "snippet_category", From 753546de6f5ef91b0f78aa9357b26ae768fff546 Mon Sep 17 00:00:00 2001 From: Anton Simakov <67688115+GuardianDll@users.noreply.github.com> Date: Thu, 13 Jun 2024 09:31:24 +0200 Subject: [PATCH 21/23] Update data/json/monster_special_attacks/spells.json --- data/json/monster_special_attacks/spells.json | 109 +++++------------- 1 file changed, 32 insertions(+), 77 deletions(-) diff --git a/data/json/monster_special_attacks/spells.json b/data/json/monster_special_attacks/spells.json index 7f319b3e9cfff..e15d4f5b631a3 100644 --- a/data/json/monster_special_attacks/spells.json +++ b/data/json/monster_special_attacks/spells.json @@ -618,86 +618,41 @@ "type": "effect_on_condition", "id": "EOC_random_mutate", "condition": "u_is_character", - "effect": [ { "set_string_var": "", "target_var": { "context_val": "dart_mutation_category" }, "parse_tags": true }, -{ "u_mutate_category": { "context_val": "dart_mutation_category" } } ], -"snippet_category": [ -{ "id": "CHIMERA" }, - { "id": "ALPHA" }, - { "id": "BEAST" }, - { "id": "BATRACHIAN" }, - { "id": "INSECT" }, - { "id": "MEDICAL" }, - { "id": "RAPTOR" }, - { "id": "LIZARD" }, - { "id": "SLIME" }, - { "id": "PLANT" }, - { "id": "ELFA" }, - { "id": "RAT" }, - { "id": "MOUSE" }, - { "id": "CATTLE" }, - { "id": "RABBIT" }, - { "id": "CHIROPTERAN" } + "effect": [ + { "set_string_var": "", "target_var": { "context_val": "dart_mutation_category" }, "parse_tags": true }, + { "u_mutate_category": { "context_val": "dart_mutation_category" }, "use_vitamins": false } ] }, { - "type": "snippet_category", - "id": "", - { "id": "CHIMERA" }, - { "id": "ALPHA" }, - { "id": "BEAST" }, - { "id": "BATRACHIAN" }, - { "id": "INSECT" }, - { "id": "MEDICAL" }, - { "id": "RAPTOR" }, - { "id": "LIZARD" }, - { "id": "SLIME" }, - { "id": "PLANT" }, - { "id": "ELFA" }, - { "id": "RAT" }, - { "id": "MOUSE" }, - { "id": "CATTLE" }, - { "id": "RABBIT" }, - { "id": "CHIROPTERAN" } - - - } - { - "type": "effect_on_condition", - "id": "EOC_sting_selector", - "condition": "u_is_character", - "effect": [ - { "u_message": "The Yugg's barb injects you with something!", "type": "bad" }, - { "u_message": "Mutation rips through your body changing you in improbable ways!", "type": "bad" }, - { - "weighted_list_eocs": [ - [ { "id": "sting_chimera", "effect": { "u_mutate_category": "CHIMERA", "use_vitamins": false } }, 6 ], - [ { "id": "sting_insect", "effect": { "u_mutate_category": "INSECT", "use_vitamins": false } }, 2 ], - [ { "id": "sting_alpha", "effect": { "u_mutate_category": "ALPHA", "use_vitamins": false } }, 1 ], - [ { "id": "sting_ursine", "effect": { "u_mutate_category": "URSINE", "use_vitamins": false } }, 2 ], - [ { "id": "sting_chiropteran", "effect": { "u_mutate_category": "CHIROPTERAN", "use_vitamins": false } }, 2 ], - [ { "id": "sting_bird", "effect": { "u_mutate_category": "BIRD", "use_vitamins": false } }, 2 ], - [ { "id": "sting_medical", "effect": { "u_mutate_category": "MEDICAL", "use_vitamins": false } }, 1 ], - [ { "id": "sting_lupine", "effect": { "u_mutate_category": "LUPINE", "use_vitamins": false } }, 2 ], - [ { "id": "sting_rat", "effect": { "u_mutate_category": "RAT", "use_vitamins": false } }, 2 ], - [ { "id": "sting_slime", "effect": { "u_mutate_category": "SLIME", "use_vitamins": false } }, 1 ], - [ { "id": "sting_plant", "effect": { "u_mutate_category": "PLANT", "use_vitamins": false } }, 2 ], - [ { "id": "sting_batrachian", "effect": { "u_mutate_category": "BATRACHIAN", "use_vitamins": false } }, 2 ], - [ { "id": "sting_raptor", "effect": { "u_mutate_category": "RAPTOR", "use_vitamins": false } }, 1 ], - [ { "id": "sting_mouse", "effect": { "u_mutate_category": "MOUSE", "use_vitamins": false } }, 2 ], - [ { "id": "sting_cephalopod", "effect": { "u_mutate_category": "CEPHALOPOD", "use_vitamins": false } }, 2 ], - [ { "id": "sting_elfa", "effect": { "u_mutate_category": "ELFA", "use_vitamins": false } }, 1 ], - [ { "id": "sting_fish", "effect": { "u_mutate_category": "FISH", "use_vitamins": false } }, 2 ], - [ { "id": "sting_human", "effect": { "u_mutate_category": "HUMAN", "use_vitamins": false } }, 1 ], - [ { "id": "sting_rabbit", "effect": { "u_mutate_category": "RABBIT", "use_vitamins": false } }, 2 ], - [ { "id": "sting_gastropod", "effect": { "u_mutate_category": "GASTROPOD", "use_vitamins": false } }, 2 ], - [ { "id": "sting_beast", "effect": { "u_mutate_category": "BEAST", "use_vitamins": false } }, 2 ], - [ { "id": "sting_feline", "effect": { "u_mutate_category": "FELINE", "use_vitamins": false } }, 2 ], - [ { "id": "sting_cattle", "effect": { "u_mutate_category": "CATTLE", "use_vitamins": false } }, 2 ], - [ { "id": "sting_lizard", "effect": { "u_mutate_category": "LIZARD", "use_vitamins": false } }, 2 ], - [ { "id": "sting_troglobite", "effect": { "u_mutate_category": "TROGLOBITE", "use_vitamins": false } }, 2 ], - [ { "id": "sting_crustacean", "effect": { "u_mutate_category": "CRUSTACEAN", "use_vitamins": false } }, 2 ] - ] - } + "type": "snippet", + "category": "", + "text": [ + { "text": "CHIMERA", "weight": 6 }, + { "text": "INSECT", "weight": 2 }, + { "text": "ALPHA", "weight": 1 }, + { "text": "URSINE", "weight": 2 }, + { "text": "CHIROPTERAN", "weight": 2 }, + { "text": "BIRD", "weight": 2 }, + { "text": "MEDICAL", "weight": 1 }, + { "text": "LUPINE", "weight": 2 }, + { "text": "RAT", "weight": 2 }, + { "text": "SLIME", "weight": 1 }, + { "text": "PLANT", "weight": 2 }, + { "text": "BATRACHIAN", "weight": 2 }, + { "text": "RAPTOR", "weight": 1 }, + { "text": "MOUSE", "weight": 2 }, + { "text": "CEPHALOPOD", "weight": 2 }, + { "text": "ELFA", "weight": 1 }, + { "text": "FISH", "weight": 2 }, + { "text": "HUMAN", "weight": 1 }, + { "text": "RABBIT", "weight": 2 }, + { "text": "GASTROPOD", "weight": 2 }, + { "text": "BEAST", "weight": 1 }, + { "text": "FELINE", "weight": 1 }, + { "text": "CATTLE", "weight": 1 }, + { "text": "LIZARD", "weight": 1 }, + { "text": "TROGLOBITE", "weight": 1 }, + { "text": "CRUSTACEAN", "weight": 1 } ] }, { From 483783948148b7619edd5316bd37081612bef25d Mon Sep 17 00:00:00 2001 From: Maleclypse <54345792+Maleclypse@users.noreply.github.com> Date: Sat, 15 Jun 2024 00:19:29 -0500 Subject: [PATCH 22/23] Update spells.json --- data/json/monster_special_attacks/spells.json | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/data/json/monster_special_attacks/spells.json b/data/json/monster_special_attacks/spells.json index e15d4f5b631a3..1c672121f4733 100644 --- a/data/json/monster_special_attacks/spells.json +++ b/data/json/monster_special_attacks/spells.json @@ -597,8 +597,9 @@ "min_range": 24, "max_range": 24, "sound_description": "ssszziiipp", - "min_damage": 1, - "max_damage": 1, + "damage_type": "biological", + "min_damage": 5, + "max_damage": 17, "extra_effects": [ { "id": "spell_gene_sting_selector" } ] }, { @@ -610,7 +611,7 @@ "valid_targets": [ "hostile" ], "flags": [ "NO_FAIL", "SILENT", "NO_HANDS", "NO_LEGS" ], "effect": "effect_on_condition", - "effect_str": "EOC_sting_selector", + "effect_str": "EOC_random_mutate", "shape": "blast", "max_level": 1 }, From 4f3d7c5cc0888a68af1804c10ef498d1e644ec06 Mon Sep 17 00:00:00 2001 From: Maleclypse <54345792+Maleclypse@users.noreply.github.com> Date: Sat, 15 Jun 2024 12:30:26 -0500 Subject: [PATCH 23/23] Stop Mutation Selector from firing --- src/mutation.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mutation.cpp b/src/mutation.cpp index fd3d3a3fdf4c1..1041a7a5dfe72 100644 --- a/src/mutation.cpp +++ b/src/mutation.cpp @@ -1317,7 +1317,7 @@ void Character::mutate_category( const mutation_category_id &cat, const bool use } add_msg_debug( debugmode::DF_MUTATION, "mutate_category: mutate_towards category %s", cat.c_str() ); - if( select_mutation || mutation_selector( valid, cat, use_vitamins ) ) { + if( select_mutation && mutation_selector( valid, cat, use_vitamins ) ) { // Stop if mutation properly handled by mutation selector return; }