From 8032980aa138d2b59130544bf2a91b2ad7afd09b Mon Sep 17 00:00:00 2001 From: Alexey Kim Date: Mon, 20 Mar 2023 06:59:04 +0200 Subject: [PATCH 1/7] Remove 0.G obsoletions from json/items/migration.json --- .../Locations_MapExtras/Arsonist_stock.json | 2 +- .../Locations_MapExtras/locations.json | 2 +- .../locations_commercial.json | 2 +- .../locations_mapextras.json | 2 +- .../monster_drops_lairs.json | 4 +- .../Weapons_Mods_Ammo/arsenal/shot.json | 2 +- .../itemgroups/Weapons_Mods_Ammo/guns.json | 2 +- .../Weapons_Mods_Ammo/magazines.json | 4 +- data/json/itemgroups/shops_trades.json | 2 +- data/json/items/gunmod/mechanism.json | 2 +- data/json/items/migration.json | 1936 +---------------- data/json/monsterdrops/zombie_survivor.json | 4 +- data/json/npcs/NC_ARMY.json | 6 +- data/json/npcs/NC_ARSONIST.json | 2 +- data/json/npcs/NC_JUNK_SHOPKEEP.json | 2 +- data/json/npcs/NC_OPS.json | 2 +- data/json/npcs/items_generic.json | 2 +- .../surface_staff/Smokes/NPC_Smokes.json | 2 +- data/json/recipes/armor/torso.json | 16 +- data/json/recipes/food/canned.json | 11 +- .../json/recipes/recipe_medsandchemicals.json | 2 +- data/json/recipes/weapon/magazines.json | 5 +- data/json/recipes/weapon/mods.json | 1 - .../json/requirements/cooking_components.json | 7 - .../Aftershock/monsterdrops/monsterdrops.json | 4 +- .../Aftershock/recipes/deconstruction.json | 2 +- data/mods/Aftershock/recipes/recipes.json | 2 +- .../firearms/gg_firearms_migration.json | 1 - .../magazines/gg_magazines_migration.json | 2 - .../Generic_Guns/recipes/recipe_obsolete.json | 25 - data/mods/Magiclysm/recipes/weapons.json | 2 +- .../requirements/spell_components.json | 4 +- .../Military_Professions/npc/NC_ARMY.json | 6 +- .../mods/Military_Professions/npc/NC_OPS.json | 2 +- data/mods/Military_Professions/prof/army.json | 16 +- data/mods/No_Hope/item_groups.json | 4 +- .../monster_drops_lairs.json | 2 +- data/mods/Xedra_Evolved/recipes/vampire.json | 2 +- data/mods/innawood/recipes/recipe_food.json | 4 +- doc/ITEM_SPAWN.md | 4 +- tests/creature_test.cpp | 6 +- tools/json_tools/generic_guns_validator.py | 3 - 42 files changed, 94 insertions(+), 2019 deletions(-) diff --git a/data/json/itemgroups/Locations_MapExtras/Arsonist_stock.json b/data/json/itemgroups/Locations_MapExtras/Arsonist_stock.json index 69a8dfcb7926d..46040e2d0c22d 100644 --- a/data/json/itemgroups/Locations_MapExtras/Arsonist_stock.json +++ b/data/json/itemgroups/Locations_MapExtras/Arsonist_stock.json @@ -7,7 +7,7 @@ { "item": "molotov", "count": 5 }, { "item": "cotton_patchwork", "count": 25 }, { "item": "gasoline", "count": 1 }, - { "item": "improvised_pipebomb", "count": 25 }, + { "item": "pipebomb", "count": 25 }, { "item": "fuse", "count": 5 }, { "item": "FMCNote", "count": 3 }, { "item": "nail", "count": 5, "charges": [ 1, 100 ] }, diff --git a/data/json/itemgroups/Locations_MapExtras/locations.json b/data/json/itemgroups/Locations_MapExtras/locations.json index 99beb91a324c7..86463a30a7389 100644 --- a/data/json/itemgroups/Locations_MapExtras/locations.json +++ b/data/json/itemgroups/Locations_MapExtras/locations.json @@ -1226,7 +1226,7 @@ { "item": "matches", "prob": 60, "charges": [ 0, 20 ] }, { "item": "ref_matches", "prob": 60, "charges": [ 0, 32 ] }, [ "sewage", 60 ], - [ "improvised_pipebomb", 4 ], + [ "pipebomb", 4 ], { "item": "crack", "prob": 8, "charges": [ 1, 4 ] }, [ "crackpipe", 37 ], { "item": "lsd", "prob": 10, "charges": [ 1, 5 ] }, diff --git a/data/json/itemgroups/Locations_MapExtras/locations_commercial.json b/data/json/itemgroups/Locations_MapExtras/locations_commercial.json index b218a510e9720..f860eef348f8c 100644 --- a/data/json/itemgroups/Locations_MapExtras/locations_commercial.json +++ b/data/json/itemgroups/Locations_MapExtras/locations_commercial.json @@ -290,7 +290,7 @@ [ "deagle_44", 2 ], [ "lemat_revolver", 1 ], [ "m1911", 5 ], - [ "mn_ebr_kit", 1 ], + [ "mosin91_30", 1 ], [ "match_trigger", 3 ], [ "autoclave", 1 ], { "item": "geiger_off", "prob": 8, "charges": [ 0, 100 ] }, diff --git a/data/json/itemgroups/Locations_MapExtras/locations_mapextras.json b/data/json/itemgroups/Locations_MapExtras/locations_mapextras.json index 8f6e9b2db5b0c..7210717638bf6 100644 --- a/data/json/itemgroups/Locations_MapExtras/locations_mapextras.json +++ b/data/json/itemgroups/Locations_MapExtras/locations_mapextras.json @@ -97,7 +97,7 @@ { "item": "ref_matches", "prob": 60, "charges": [ 0, 32 ] }, [ "claw_bar", 3 ], [ "crowbar", 18 ], - [ "improvised_pipebomb", 4 ], + [ "pipebomb", 4 ], [ "grenade", 3 ], [ "grenade_inc", 1 ], [ "mininuke", 1 ], diff --git a/data/json/itemgroups/Monsters_Animals_Lairs/monster_drops_lairs.json b/data/json/itemgroups/Monsters_Animals_Lairs/monster_drops_lairs.json index 1ae0669b2dba5..3add10bd31516 100644 --- a/data/json/itemgroups/Monsters_Animals_Lairs/monster_drops_lairs.json +++ b/data/json/itemgroups/Monsters_Animals_Lairs/monster_drops_lairs.json @@ -74,7 +74,7 @@ { "item": "survivormap", "prob": 1 }, { "item": "miner_hat", "prob": 10 }, { "item": "honey_ant", "prob": 30 }, - { "item": "tool_small_primitive_fragmentation_device", "prob": 1 } + { "item": "homemade_bomb_act", "prob": 1 } ] }, { @@ -93,7 +93,7 @@ { "item": "survivormap", "prob": 1 }, { "item": "wetsuit", "prob": 10, "damage": [ 2, 4 ] }, { "item": "wetsuit_thick", "prob": 10, "damage": [ 2, 4 ] }, - { "item": "tool_small_primitive_fragmentation_device", "prob": 1 } + { "item": "homemade_bomb_act", "prob": 1 } ] }, { diff --git a/data/json/itemgroups/Weapons_Mods_Ammo/arsenal/shot.json b/data/json/itemgroups/Weapons_Mods_Ammo/arsenal/shot.json index 16ef3e3c2d5a3..4140a0140fbaa 100644 --- a/data/json/itemgroups/Weapons_Mods_Ammo/arsenal/shot.json +++ b/data/json/itemgroups/Weapons_Mods_Ammo/arsenal/shot.json @@ -29,7 +29,7 @@ "type": "item_group", "id": "milspec_arsenal_shot", "items": [ - { "item": "m1014", "prob": 100 }, + { "item": "mossberg_930", "variant": "m1014", "prob": 100 }, { "item": "mossberg_590", "prob": 70 }, { "item": "mossberg_500", "prob": 50 }, { "group": "nested_m26_mass_no_ammo", "prob": 30 } diff --git a/data/json/itemgroups/Weapons_Mods_Ammo/guns.json b/data/json/itemgroups/Weapons_Mods_Ammo/guns.json index 00d4712e71670..77521903e840b 100644 --- a/data/json/itemgroups/Weapons_Mods_Ammo/guns.json +++ b/data/json/itemgroups/Weapons_Mods_Ammo/guns.json @@ -675,7 +675,7 @@ "type": "item_group", "id": "guns_rifle_improvised", "//": "Makeshift or otherwise poor quality rifles.", - "items": [ { "item": "rifle_22", "prob": 60 }, { "item": "rifle_3006", "prob": 30 }, { "item": "rifle_9mm", "prob": 60 } ] + "items": [ { "item": "rifle_22", "prob": 60 }, { "item": "remington_700", "prob": 30 }, { "item": "rifle_9mm", "prob": 60 } ] }, { "type": "item_group", diff --git a/data/json/itemgroups/Weapons_Mods_Ammo/magazines.json b/data/json/itemgroups/Weapons_Mods_Ammo/magazines.json index 3f368a902c787..eb90d0756cb8f 100644 --- a/data/json/itemgroups/Weapons_Mods_Ammo/magazines.json +++ b/data/json/itemgroups/Weapons_Mods_Ammo/magazines.json @@ -160,8 +160,8 @@ [ "rugerlcpmag", 10 ], [ "sw22mag", 10 ], [ "p220_10_mag", 1 ], - [ "p226mag_15rd_357sig", 25 ], - [ "p320mag_14rd_357sig", 10 ], + [ "p226mag_12rd_357sig", 25 ], + [ "p320mag_13rd_357sig", 10 ], [ "bhp9mag_13rd", 2 ], [ "bhp9mag_15rd", 1 ], [ "ppq9mag_10rd", 4 ], diff --git a/data/json/itemgroups/shops_trades.json b/data/json/itemgroups/shops_trades.json index 2aacc4d09fbc1..18095659d4611 100644 --- a/data/json/itemgroups/shops_trades.json +++ b/data/json/itemgroups/shops_trades.json @@ -122,7 +122,7 @@ { "item": "glass_bowl", "prob": 65, "count": [ 1, 6 ] }, { "item": "malachite", "prob": 75, "count": [ 3, 15 ] }, { "item": "citrine", "prob": 75, "count": [ 3, 15 ] }, - { "item": "jar_glass", "prob": 60, "count": [ 1, 5 ] }, + { "item": "jar_glass_sealed", "prob": 60, "count": [ 1, 5 ] }, { "item": "glass", "prob": 60, "count": [ 1, 7 ] } ] }, diff --git a/data/json/items/gunmod/mechanism.json b/data/json/items/gunmod/mechanism.json index 13321e2231a2c..4449db09df44b 100644 --- a/data/json/items/gunmod/mechanism.json +++ b/data/json/items/gunmod/mechanism.json @@ -80,7 +80,7 @@ "symbol": ":", "color": "red", "location": "mechanism", - "mod_targets": [ "glock_19", "glock_17", "glock_22", "glock_31", "glock_21", "glock_20", "glock_40", "glock_29" ], + "mod_targets": [ "glock_19", "glock_17", "glock_22", "glock_31", "glock_21", "glock_20", "glock_29" ], "//": "Install time should be short as it is simply a replacement back plate, installed by slightly more than field stripping the gun.", "install_time": "5 m", "//durability_modifier": -1, diff --git a/data/json/items/migration.json b/data/json/items/migration.json index f858ac19eb1f2..9bf099e89d55e 100644 --- a/data/json/items/migration.json +++ b/data/json/items/migration.json @@ -1,1940 +1,20 @@ [ { - "id": "arrowhead", - "type": "MIGRATION", - "replace": "steel_chunk" - }, - { - "id": "arrowhead_plastic", - "type": "MIGRATION", - "replace": "plastic_chunk" - }, - { - "id": "shaft_wood", - "type": "MIGRATION", - "replace": "arrow_wood" - }, - { - "id": "shaft_wood_heavy", - "type": "MIGRATION", - "replace": "arrow_wood_heavy" - }, - { - "id": "shaft_metal", - "type": "MIGRATION", - "replace": "arrow_metal" - }, - { - "id": "arrow_fire_hardened", - "type": "MIGRATION", - "replace": "arrow_fire_hardened_fletched" - }, - { - "id": "arrow_field_point", - "type": "MIGRATION", - "replace": "arrow_field_point_fletched" - }, - { - "id": "arrow_small_game", - "type": "MIGRATION", - "replace": "arrow_small_game_fletched" - }, - { - "id": "arrow_heavy_fire_hardened", - "type": "MIGRATION", - "replace": "arrow_heavy_fire_hardened_fletched" - }, - { - "id": "arrow_heavy_field_point", - "type": "MIGRATION", - "replace": "arrow_heavy_field_point_fletched" - }, - { - "id": "arrow_metal_sharpened", - "type": "MIGRATION", - "replace": "arrow_metal_sharpened_fletched" - }, - { - "id": "shaft_plastic", - "type": "MIGRATION", - "replace": "arrow_plastic" - }, - { - "id": "40mm_acidbomb", - "type": "MIGRATION", - "replace": "40x46mm_m651" - }, - { - "id": "40mm_toxicgas", - "type": "MIGRATION", - "replace": "40x46mm_m651" - }, - { - "id": "8mm_bootleg_jsp", - "type": "MIGRATION", - "replace": "8mm_bootleg" - }, - { - "id": "adv_UPS_on", - "type": "MIGRATION", - "replace": "UPS_off" - }, - { - "id": "battery_truck", - "type": "MIGRATION", - "replace": "battery_car" - }, - { - "id": "bayonet", - "type": "MIGRATION", - "replace": "knife_combat" - }, - { - "id": "diamond_bayonet", - "type": "MIGRATION", - "replace": "knife_combat", - "flags": [ "DIAMOND" ] - }, - { - "id": "diamond_broadsword", - "type": "MIGRATION", - "replace": "broadsword", - "flags": [ "DIAMOND" ] - }, - { - "id": "diamond_katana", - "type": "MIGRATION", - "replace": "katana", - "flags": [ "DIAMOND" ] - }, - { - "id": "diamond_knife", - "type": "MIGRATION", - "replace": "knife_combat", - "flags": [ "DIAMOND" ] - }, - { - "id": "diamond_kukri", - "type": "MIGRATION", - "replace": "kukri", - "flags": [ "DIAMOND" ] - }, - { - "id": "diamond_machete", - "type": "MIGRATION", - "replace": "machete", - "flags": [ "DIAMOND" ] - }, - { - "id": "diamond_nodachi", - "type": "MIGRATION", - "replace": "nodachi", - "flags": [ "DIAMOND" ] - }, - { - "id": "diamond_pistol_bayonet", - "type": "MIGRATION", - "replace": "pistol_bayonet", - "flags": [ "DIAMOND" ] - }, - { - "id": "diamond_punch_dagger", - "type": "MIGRATION", - "replace": "punch_dagger", - "flags": [ "DIAMOND" ] - }, - { - "id": "diamond_rapier", - "type": "MIGRATION", - "replace": "rapier", - "flags": [ "DIAMOND" ] - }, - { - "id": "diamond_sword_bayonet", - "type": "MIGRATION", - "replace": "sword_bayonet", - "flags": [ "DIAMOND" ] - }, - { - "id": "diamond_wakizashi", - "type": "MIGRATION", - "replace": "wakizashi", - "flags": [ "DIAMOND" ] - }, - { - "id": "diamond_zweihander", - "type": "MIGRATION", - "replace": "zweihander", - "flags": [ "DIAMOND" ] - }, - { - "id": "fish_bait_bread", - "type": "MIGRATION", - "replace": "fish_bait" - }, - { - "id": "fish_bait_fish", - "type": "MIGRATION", - "replace": "fish_bait" - }, - { - "id": "fish_bait_meat", - "type": "MIGRATION", - "replace": "fish_bait" - }, - { - "id": "fish_bait_veggy", - "type": "MIGRATION", - "replace": "fish_bait" - }, - { - "id": "gold", - "type": "MIGRATION", - "replace": "gold_small", - "charges": 1930 - }, - { - "id": "gasfilter_l", - "type": "MIGRATION", - "replace": "gasfilter_m" - }, - { - "id": "jacqueshammer", - "type": "MIGRATION", - "replace": "jackhammer" - }, - { - "id": "dogfood_canned", - "type": "MIGRATION", - "replace": "can_medium", - "contents": [ { "id": "dogfood", "count": 1 } ] - }, - { - "id": "catfood_canned", - "type": "MIGRATION", - "replace": "can_food", - "contents": [ { "id": "catfood", "count": 1 } ] - }, - { - "id": "jar_V8", - "type": "MIGRATION", - "replace": "jar_glass_sealed", - "contents": [ { "id": "V8", "count": 2 } ] - }, - { - "id": "jar_apple_canned", - "type": "MIGRATION", - "replace": "jar_glass_sealed", - "contents": [ { "id": "apple_canned", "count": 4 } ] - }, - { - "id": "jar_broth", - "type": "MIGRATION", - "replace": "jar_glass_sealed", - "contents": [ { "id": "broth", "count": 2 } ] - }, - { - "id": "jar_broth_bone", - "type": "MIGRATION", - "replace": "jar_glass_sealed", - "contents": [ { "id": "broth_bone", "count": 2 } ] - }, - { - "id": "jar_broth_human", - "type": "MIGRATION", - "replace": "jar_glass_sealed", - "contents": [ { "id": "broth_bone", "count": 2 } ] - }, - { - "id": "jar_fish_canned", - "type": "MIGRATION", - "replace": "jar_glass_sealed", - "contents": [ { "id": "fish_canned", "count": 2 } ] - }, - { - "id": "jar_fish_pickled", - "type": "MIGRATION", - "replace": "jar_glass_sealed", - "contents": [ { "id": "fish_pickled", "count": 2 } ] - }, - { - "id": "jar_human_canned", - "type": "MIGRATION", - "replace": "jar_glass_sealed", - "contents": [ { "id": "meat_canned", "count": 2 } ] - }, - { - "id": "jar_human_pickled", - "type": "MIGRATION", - "replace": "jar_glass_sealed", - "contents": [ { "id": "meat_pickled", "count": 2 } ] - }, - { - "id": "jar_kompot", - "type": "MIGRATION", - "replace": "jar_3l_glass_sealed", - "contents": [ { "id": "kompot", "count": 12 } ] - }, - { - "id": "jar_meat_canned", - "type": "MIGRATION", - "replace": "jar_glass_sealed", - "contents": [ { "id": "meat_canned", "count": 2 } ] - }, - { - "id": "jar_meat_pickled", - "type": "MIGRATION", - "replace": "jar_glass_sealed", - "contents": [ { "id": "meat_pickled", "count": 2 } ] - }, - { - "id": "jar_soup_fish", - "type": "MIGRATION", - "replace": "jar_glass_sealed", - "contents": [ { "id": "soup_fish", "count": 2 } ] - }, - { - "id": "jar_soup_human", - "type": "MIGRATION", - "replace": "jar_glass_sealed", - "contents": [ { "id": "soup_meat", "count": 2 } ] - }, - { - "id": "jar_soup_meat", - "type": "MIGRATION", - "replace": "jar_glass_sealed", - "contents": [ { "id": "soup_meat", "count": 2 } ] - }, - { - "id": "jar_soup_mushroom", - "type": "MIGRATION", - "replace": "jar_glass_sealed", - "contents": [ { "id": "soup_mushroom", "count": 2 } ] - }, - { - "id": "jar_soup_veggy", - "type": "MIGRATION", - "replace": "jar_glass_sealed", - "contents": [ { "id": "soup_veggy", "count": 2 } ] - }, - { - "id": "jar_soup_woods", - "type": "MIGRATION", - "replace": "jar_glass_sealed", - "contents": [ { "id": "soup_woods", "count": 2 } ] - }, - { - "id": "jar_tomato_canned", - "type": "MIGRATION", - "replace": "jar_glass_sealed", - "contents": [ { "id": "can_tomato", "count": 4 } ] - }, - { - "id": "jar_veggy_canned", - "type": "MIGRATION", - "replace": "jar_glass_sealed", - "contents": [ { "id": "veggy_canned", "count": 2 } ] - }, - { - "id": "jar_veggy_pickled", - "type": "MIGRATION", - "replace": "jar_glass_sealed", - "contents": [ { "id": "veggy_pickled", "count": 2 } ] - }, - { - "id": "jar_eggs_pickled", - "type": "MIGRATION", - "replace": "jar_glass_sealed", - "contents": [ { "id": "pickled_egg", "count": 6 } ] - }, - { - "id": "jar_pickles_pickled", - "type": "MIGRATION", - "replace": "jar_glass_sealed", - "contents": [ { "id": "pickle", "count": 2 } ] - }, - { - "id": "jar_sauerkraut_pickled", - "type": "MIGRATION", - "replace": "jar_glass_sealed", - "contents": [ { "id": "sauerkraut", "count": 2 } ] - }, - { - "id": "m14a", - "type": "MIGRATION", - "replace": "m1a" - }, - { - "id": "metal_tank_small", - "type": "MIGRATION", - "replace": "jerrycan" - }, - { - "id": "plasma_engine", - "type": "MIGRATION", - "replace": "minireactor" - }, - { - "id": "reloaded_40mm_fletchette", - "type": "MIGRATION", - "replace": "40x53mm_m1001" - }, - { - "id": "reloaded_40mm_shot", - "type": "MIGRATION", - "replace": "40x46mm_m576" - }, - { - "id": "reloaded_signal_flare", - "type": "MIGRATION", - "replace": "signal_flare" - }, - { - "id": "reloaded_shot_he", - "type": "MIGRATION", - "replace": "shot_he" - }, - { - "id": "saiga_sawn", - "type": "MIGRATION", - "replace": "saiga_12", - "contents": [ { "id": "barrel_small", "count": 1 } ], - "sealed": false - }, - { - "id": "silver", - "type": "MIGRATION", - "replace": "silver_small", - "charges": 1608 - }, - { - "id": "shot_scrapslug", - "type": "MIGRATION", - "replace": "reloaded_shot_slug" - }, - { - "id": "UPS_on", - "type": "MIGRATION", - "replace": "UPS_off" - }, - { - "id": "v_curtain_item", - "type": "MIGRATION", - "replace": "sheet" - }, - { - "id": "pistol_pepperbox", - "type": "MIGRATION", - "replace": "colt_navy" - }, - { - "id": "pda", - "type": "MIGRATION", - "replace": "cell_phone" - }, - { - "id": "pda_flashlight", - "type": "MIGRATION", - "replace": "cell_phone" - }, - { - "id": "crude_brick", - "type": "MIGRATION", - "replace": "brick" - }, - { - "id": "jam_blueberries", - "type": "MIGRATION", - "replace": "jam_fruit" - }, - { - "id": "jam_strawberries", - "type": "MIGRATION", - "replace": "jam_fruit" - }, - { - "id": "acidbomb_act", - "type": "MIGRATION", - "replace": "acidbomb" - }, - { - "id": "technician_pants_blue", - "type": "MIGRATION", - "replace": "technician_pants_gray" - }, - { - "id": "technician_pants_ltblue", - "type": "MIGRATION", - "replace": "technician_pants_gray" - }, - { - "id": "technician_shirt_blue", - "type": "MIGRATION", - "replace": "technician_shirt_gray" - }, - { - "id": "technician_shirt_ltblue", - "type": "MIGRATION", - "replace": "technician_shirt_gray" - }, - { - "id": "1st_aid_survivor", - "type": "MIGRATION", - "replace": "1st_aid" - }, - { - "id": "mushroom_poison", - "type": "MIGRATION", - "replace": "mushroom" - }, - { - "id": "mushroom_magic", - "type": "MIGRATION", - "replace": "mushroom" - }, - { - "id": "seed_mushroom_poison", - "type": "MIGRATION", - "replace": "seed_mushroom" - }, - { - "id": "seed_mushroom_magic", - "type": "MIGRATION", - "replace": "seed_mushroom" - }, - { - "id": "lasagne_cooked", - "type": "MIGRATION", - "replace": "spaghetti_cooked" - }, - { - "id": "fish_vac", - "type": "MIGRATION", - "replace": "salted_fish" - }, - { - "id": "apple_vac", - "type": "MIGRATION", - "replace": "apple_sugar" - }, - { - "id": "hflesh_vac", - "type": "MIGRATION", - "replace": "meat_salted" - }, - { - "id": "meat_vac", - "type": "MIGRATION", - "replace": "meat_salted" - }, - { - "id": "veggy_vac", - "type": "MIGRATION", - "replace": "veggy_salted" - }, - { - "id": "bag_fish_vac", - "type": "MIGRATION", - "replace": "salted_fish" - }, - { - "id": "bag_apple_vac", - "type": "MIGRATION", - "replace": "apple_sugar" - }, - { - "id": "bag_hflesh_vac", - "type": "MIGRATION", - "replace": "meat_salted" - }, - { - "id": "bag_meat_vac", - "type": "MIGRATION", - "replace": "meat_salted" - }, - { - "id": "bag_veggy_vac", - "type": "MIGRATION", - "replace": "veggy_salted" - }, - { - "id": "potato_irradiated", - "type": "MIGRATION", - "replace": "irradiated_potato" - }, - { - "id": "potato_raw", - "type": "MIGRATION", - "replace": "potato" - }, - { - "id": "dry_hflesh", - "type": "MIGRATION", - "replace": "dry_meat" - }, - { - "id": "rehydrated_hflesh", - "type": "MIGRATION", - "replace": "rehydrated_meat" - }, - { - "id": "human_haggis", - "type": "MIGRATION", - "replace": "haggis" - }, - { - "id": "hfleshbologna", - "type": "MIGRATION", - "replace": "bologna" - }, - { - "id": "h_currywurst", - "type": "MIGRATION", - "replace": "currywurst" - }, - { - "id": "mannwurstgravy", - "type": "MIGRATION", - "replace": "sausagegravy" - }, - { - "id": "hflesh_aspic", - "type": "MIGRATION", - "replace": "meat_aspic" - }, - { - "id": "hflesh_pemmican", - "type": "MIGRATION", - "replace": "pemmican" - }, - { - "id": "sandwich_human", - "type": "MIGRATION", - "replace": "sandwich_t" - }, - { - "id": "sandwich_dudeluxe", - "type": "MIGRATION", - "replace": "sandwich_deluxe" - }, - { - "id": "hobo_helper", - "type": "MIGRATION", - "replace": "macaroni_helper" - }, - { - "id": "chili_human", - "type": "MIGRATION", - "replace": "chili" - }, - { - "id": "pie_human", - "type": "MIGRATION", - "replace": "pie_meat" - }, - { - "id": "pizza_human", - "type": "MIGRATION", - "replace": "pizza_meat" - }, - { - "id": "human_canned", - "type": "MIGRATION", - "replace": "meat_canned" - }, - { - "id": "hflesh_salted", - "type": "MIGRATION", - "replace": "meat_salted" - }, - { - "id": "spaghetti_human", - "type": "MIGRATION", - "replace": "spaghetti_bolognese" - }, - { - "id": "luigilasagne", - "type": "MIGRATION", - "replace": "lasagne" - }, - { - "id": "cheeseburgerhuman", - "type": "MIGRATION", - "replace": "cheeseburger" - }, - { - "id": "bobburger", - "type": "MIGRATION", - "replace": "hamburger" - }, - { - "id": "manwich", - "type": "MIGRATION", - "replace": "sloppyjoe" - }, - { - "id": "tiotaco", - "type": "MIGRATION", - "replace": "taco" - }, - { - "id": "mannwurst_raw", - "type": "MIGRATION", - "replace": "sausage_raw" - }, - { - "id": "mannwurst_cooked", - "type": "MIGRATION", - "replace": "sausage_cooked" - }, - { - "id": "mann_bratwurst", - "type": "MIGRATION", - "replace": "bratwurst_sausage" - }, - { - "id": "human_pickled", - "type": "MIGRATION", - "replace": "meat_pickled" - }, - { - "id": "human_smoked", - "type": "MIGRATION", - "replace": "meat_smoked" - }, - { - "id": "jerky_human", - "type": "MIGRATION", - "replace": "jerky" - }, - { - "id": "hflesh_drink", - "type": "MIGRATION", - "replace": "protein_drink" - }, - { - "id": "hflesh_powder", - "type": "MIGRATION", - "replace": "protein_powder" - }, - { - "id": "hflesh_shake", - "type": "MIGRATION", - "replace": "protein_shake" - }, - { - "id": "hflesh_shake_fortified", - "type": "MIGRATION", - "replace": "protein_shake_fortified" - }, - { - "id": "broth_human", - "type": "MIGRATION", - "replace": "broth_bone" - }, - { - "id": "soup_human", - "type": "MIGRATION", - "replace": "soup_meat" - }, - { - "id": "nachoshf", - "type": "MIGRATION", - "replace": "nachosm" - }, - { - "id": "nachoshc", - "type": "MIGRATION", - "replace": "nachosmc" - }, - { - "id": "chilidogs_human", - "type": "MIGRATION", - "replace": "chilidogs" - }, - { - "id": "mannwurst", - "type": "MIGRATION", - "replace": "sausage" - }, - { - "id": "lightstrip_dead", - "type": "MIGRATION", - "replace": "lightstrip_inactive" - }, - { - "id": "smg_9mm_mag", - "type": "MIGRATION", - "replace": "survivor9mm_mag" - }, - { - "id": "battery_atomic", - "type": "MIGRATION", - "replace": "light_atomic_battery_cell" - }, - { - "id": "battery_compartment", - "type": "MIGRATION", - "replace": "magazine_battery_heavy_mod" - }, - { - "id": "dry_mushroom_magic", - "type": "MIGRATION", - "replace": "dry_mushroom", - "flags": [ "HIDDEN_HALLU" ] - }, - { - "id": "hk_ucp", - "type": "MIGRATION", - "replace": "hk_mp7" - }, - { - "id": "rechargable_battery", - "type": "MIGRATION", - "replace": "heavy_battery_cell" - }, - { - "id": "hd_battery", - "type": "MIGRATION", - "replace": "heavy_plus_battery_cell" - }, - { - "id": "frozen_burrito", - "type": "MIGRATION", - "replace": "junk_burrito" - }, - { - "id": "cooked_burrito", - "type": "MIGRATION", - "replace": "junk_burrito" - }, - { - "id": "10mm", - "type": "MIGRATION", - "replace": "10mm_fmj" - }, - { - "id": "reloaded_10mm", - "type": "MIGRATION", - "replace": "reloaded_10mm_fmj" - }, - { - "id": "armor_bio_carbon_filament", - "type": "MIGRATION", - "replace": "tinfoil_hat" - }, - { - "id": "locket", - "type": "MIGRATION", - "replace": "silver_locket" - }, - { - "id": "ring", - "type": "MIGRATION", - "replace": "gold_ring" - }, - { - "id": "necklace", - "type": "MIGRATION", - "replace": "silver_necklace" - }, - { - "id": "brooch", - "type": "MIGRATION", - "replace": "jade_brooch" - }, - { - "id": "skinny_tie", - "type": "MIGRATION", - "replace": "tie_skinny" - }, - { - "id": "270", - "type": "MIGRATION", - "replace": "270win_jsp" - }, - { - "id": "reloaded_270", - "type": "MIGRATION", - "replace": "reloaded_270win_jsp" - }, - { - "id": "afs_rolling_pin", - "type": "MIGRATION", - "replace": "rolling_pin" - }, - { - "id": "afs_welding_mask", - "type": "MIGRATION", - "replace": "welding_mask" - }, - { - "id": "afs_atomic_reading_light", - "type": "MIGRATION", - "replace": "atomic_light_off" - }, - { - "id": "afs_atomic_reading_light_on", - "type": "MIGRATION", - "replace": "atomic_light" - }, - { - "id": "afs_large_storage_battery", - "type": "MIGRATION", - "replace": "large_storage_battery" - }, - { - "id": "afs_daypack", - "type": "MIGRATION", - "replace": "daypack" - }, - { - "id": "afs_ski_jacket", - "type": "MIGRATION", - "replace": "ski_jacket" - }, - { - "id": "afs_cake", - "type": "MIGRATION", - "replace": "cake2" - }, - { - "id": "afs_fried_donut_holes", - "type": "MIGRATION", - "replace": "donut_holes" - }, - { - "id": "afs_welding_mask_makeshift", - "type": "MIGRATION", - "replace": "welding_mask_crude" - }, - { - "id": "smg_38", - "type": "MIGRATION", - "replace": "smg_45" - }, - { - "id": "smg_38_mag", - "type": "MIGRATION", - "replace": "smg_45_mag" - }, - { - "id": "smg_22", - "type": "MIGRATION", - "replace": "smg_9mm" - }, - { - "id": "smg_22_mag", - "type": "MIGRATION", - "replace": "survivor9mm_mag" - }, - { - "id": "magbandolier", - "type": "MIGRATION", - "replace": "chestrig" - }, - { - "id": "surv_levershotgun", - "type": "MIGRATION", - "replace": "winchester_1887" - }, - { - "id": "l_def_12", - "type": "MIGRATION", - "replace": "tavor_12" - }, - { - "id": "abzats", - "type": "MIGRATION", - "replace": "bigun" - }, - { - "id": "taurus_38", - "type": "MIGRATION", - "replace": "taurus_spectrum" - }, - { - "id": "taurus38mag", - "type": "MIGRATION", - "replace": "taurus_spectrum_mag" - }, - { - "id": "40mm_beanbag", - "type": "MIGRATION", - "replace": "40x46mm_m1006" - }, - { - "id": "40mm_concussive", - "type": "MIGRATION", - "replace": "40x46mm_m433" - }, - { - "id": "40mm_flechette", - "type": "MIGRATION", - "replace": "40x53mm_m1001" - }, - { - "id": "magnesium_tablet", - "type": "MIGRATION", - "replace": "melatonin_tablet" - }, - { - "id": "40mm_frag", - "type": "MIGRATION", - "replace": "40x46mm_m433" - }, - { - "id": "40mm_shot", - "type": "MIGRATION", - "replace": "40x46mm_m576" - }, - { - "id": "40mm_teargas", - "type": "MIGRATION", - "replace": "40x46mm_m651" - }, - { - "id": "riding_saddle", - "type": "MIGRATION", - "replace": "horse_tack" - }, - { - "id": "ballistic_vest", - "type": "MIGRATION", - "replace": "ballistic_vest_esapi" - }, - { - "id": "ballistic_vest_empty", - "type": "MIGRATION", - "replace": "ballistic_vest_esapi" - }, - { - "id": "hand_vice", - "type": "MIGRATION", - "replace": "clamp" - }, - { - "id": "angular_grinder", - "type": "MIGRATION", - "replace": "angle_grinder" - }, - { - "id": "40mm_casing", - "type": "MIGRATION", - "replace": "40x46mm_m118_casing" - }, - { - "id": [ "360_200_mag", "360_400_mag" ], - "type": "MIGRATION", - "replace": "a180mag" - }, - { - "id": "rm360_carbine", - "type": "MIGRATION", - "replace": "american_180" - }, - { - "id": "lead_stabilizer", - "type": "MIGRATION", - "replace": "stabilizer" - }, - { - "id": "lead_barrel_small", - "type": "MIGRATION", - "replace": "barrel_small" - }, - { - "id": "lead_red_dot_sight", - "type": "MIGRATION", - "replace": "red_dot_sight" - }, - { - "id": "lead_rifle_scope", - "type": "MIGRATION", - "replace": "rifle_scope" - }, - { - "id": "lead_acog_scope", - "type": "MIGRATION", - "replace": "acog_scope" - }, - { - "id": "lead_holo_sight", - "type": "MIGRATION", - "replace": "holo_sight" - }, - { - "id": "lead_laser_sight", - "type": "MIGRATION", - "replace": "rail_laser_sight" - }, - { - "id": "lead_grip", - "type": "MIGRATION", - "replace": "offset_sight_rail" - }, - { - "id": "lead_bipod", - "type": "MIGRATION", - "replace": "bipod" - }, - { - "id": "lead_u_shotgun", - "type": "MIGRATION", - "replace": "masterkey" - }, - { - "id": "lead_glm", - "type": "MIGRATION", - "replace": "m320_mod" - }, - { - "id": "l_sp_9mm", - "type": "MIGRATION", - "replace": "glock_17" - }, - { - "id": "l_mp_9mm", - "type": "MIGRATION", - "replace": "glock_18c" - }, - { - "id": "lw21mag", - "type": "MIGRATION", - "replace": "glockbigmag" - }, - { - "id": "l_lookout_9mm", - "type": "MIGRATION", - "replace": "sw_619" - }, - { - "id": "9mm_speedloader7", - "type": "MIGRATION", - "replace": "38_speedloader" - }, - { - "id": [ "l_HFPack", "l_long_45" ], - "type": "MIGRATION", - "replace": "colt_lightning" - }, - { - "id": [ "l_sp_45", "l_mp_45" ], - "type": "MIGRATION", - "replace": "m1911-460" - }, - { - "id": "l_enforcer_45", - "type": "MIGRATION", - "replace": "sw629" - }, - { - "id": "460_speedloader6", - "type": "MIGRATION", - "replace": "44_speedloader6" - }, - { - "id": [ "mosin91_30_ebr", "mn_ebr_kit", "mn_classic_kit" ], - "type": "MIGRATION", - "replace": "mosin91_30" - }, - { - "id": "mosin44_ebr", - "type": "MIGRATION", - "replace": "mosin44" - }, - { - "id": [ "l_base_223", "l_car_223", "l_car_223_kit", "l_mbr_223", "l_mbr_223_kit" ], - "type": "MIGRATION", - "replace": "m27_assault_rifle" - }, - { - "id": [ "l_lmg_223", "l_lmg_223_kit" ], - "type": "MIGRATION", - "replace": "m249" - }, - { - "id": [ "l_dsr_223", "l_dsr_223_kit" ], - "type": "MIGRATION", - "replace": "m27_assault_rifle" - }, - { - "id": "browning_a5", - "type": "MIGRATION", - "replace": "remington_870", - "variant": "browning_a5" - }, - { - "id": "90two", - "type": "MIGRATION", - "replace": "m9", - "variant": "90two" - }, - { - "id": "remington_1100", - "type": "MIGRATION", - "replace": "remington_870", - "variant": "remington_1100" - }, - { - "id": "mossberg_500_security", - "type": "MIGRATION", - "replace": "mossberg_500", - "variant": "mossberg_500_security" - }, - { - "id": "m1014", - "type": "MIGRATION", - "replace": "mossberg_930", - "variant": "m1014" - }, - { - "id": "SPAS_12", - "type": "MIGRATION", - "replace": "mossberg_590", - "variant": "SPAS_12" - }, - { - "id": "acr", - "type": "MIGRATION", - "replace": "m16_auto_rifle", - "variant": "acr" - }, - { - "id": "nato_assault_rifle", - "from_variant": "acr", - "type": "MIGRATION", - "replace": "m16_auto_rifle", - "variant": "acr" - }, - { - "id": "h&k416a5", - "type": "MIGRATION", - "replace": "m27_assault_rifle", - "variant": "h&k416a5" - }, - { - "id": "nato_assault_rifle", - "from_variant": "h&k416a5", - "type": "MIGRATION", - "replace": "m27_assault_rifle", - "variant": "h&k416a5" - }, - { - "id": "m27iar", - "type": "MIGRATION", - "replace": "m27_assault_rifle", - "variant": "m27iar" - }, - { - "id": "nato_assault_rifle", - "from_variant": "m27iar", - "type": "MIGRATION", - "replace": "m27_assault_rifle", - "variant": "m27iar" - }, - { - "id": "m4a1", - "type": "MIGRATION", - "replace": "m4_carbine", - "variant": "m4a1" - }, - { - "id": "nato_assault_rifle", - "from_variant": "m4a1", - "type": "MIGRATION", - "replace": "m4_carbine", - "variant": "m4a1" - }, - { - "id": "m16a3", - "type": "MIGRATION", - "replace": "m16_auto_rifle", - "variant": "m16a3" - }, - { - "id": "nato_assault_rifle", - "from_variant": "m16a3", - "type": "MIGRATION", - "replace": "m16_auto_rifle", - "variant": "m16a3" - }, - { - "id": "nato_assault_rifle", - "from_variant": "scar_l", - "type": "MIGRATION", - "replace": "scar_l" - }, - { - "id": "m27_assault_rifle", - "from_variant": "scar_l", - "type": "MIGRATION", - "replace": "scar_l" - }, - { - "id": "m38dmr", - "type": "MIGRATION", - "replace": "m27_assault_rifle", - "variant": "m38dmr" - }, - { - "id": "nato_assault_rifle", - "from_variant": "m38dmr", - "type": "MIGRATION", - "replace": "m27_assault_rifle", - "variant": "m38dmr" - }, - { - "id": "m4_cqbr", - "type": "MIGRATION", - "replace": "m4_carbine", - "variant": "m4_cqbr" - }, - { - "id": "nato_assault_rifle", - "from_variant": "m4_cqbr", - "type": "MIGRATION", - "replace": "m4_carbine", - "variant": "m4_cqbr" - }, - { - "id": "sig552", - "type": "MIGRATION", - "replace": "sig_assault_rifle", - "variant": "sig553" - }, - { - "id": "glock_40", - "type": "MIGRATION", - "replace": "glock_20", - "variant": "glock_40" - }, - { - "id": "lw223bigmag", - "type": "MIGRATION", - "replace": "stanag50" - }, - { - "id": "lw223mag", - "type": "MIGRATION", - "replace": "stanag30" - }, - { - "id": "lw12mag", - "type": "MIGRATION", - "replace": "m1911mag" - }, - { - "id": "m1911_MEU", - "type": "MIGRATION", - "replace": "m1911", - "variant": "m1911_MEU" - }, - { - "id": "mk23", - "type": "MIGRATION", - "replace": "usp_45", - "variant": "mk23" - }, - { - "id": "solar_panel_v3", - "type": "MIGRATION", - "replace": "solar_panel_v2" - }, - { - "id": "q_solarpack", - "type": "MIGRATION", - "replace": "solarpack" - }, - { - "id": "q_solarpack_on", - "type": "MIGRATION", - "replace": "solarpack_on" - }, - { - "id": "bio_solar", - "type": "MIGRATION", - "replace": "potato" - }, - { - "id": "p320mag_14rd_357sig", - "type": "MIGRATION", - "replace": "p320mag_13rd_357sig" - }, - { - "id": "p226mag_15rd_357sig", - "type": "MIGRATION", - "replace": "p226mag_12rd_357sig" - }, - { - "id": "akmmag", - "type": "MIGRATION", - "replace": "akmag30" - }, - { - "id": "akmbigmag", - "type": "MIGRATION", - "replace": "akmag40" - }, - { - "id": "rm99_pistol", - "type": "MIGRATION", - "replace": "rm103a_pistol" - }, - { - "id": "8x40_speedloader5", - "type": "MIGRATION", - "replace": "8x40_10_mag" - }, - { - "id": "kevlar_plate", - "type": "MIGRATION", - "replace": "sheet_kevlar_layered" - }, - { - "id": "can_drink_unsealed", - "type": "MIGRATION", - "replace": "can_drink" - }, - { - "id": "can_food_unsealed", - "type": "MIGRATION", - "replace": "can_food" - }, - { - "id": "can_food_big_unsealed", - "type": "MIGRATION", - "replace": "can_food_big" - }, - { - "id": "cup_plastic_unsealed", - "type": "MIGRATION", - "replace": "cup_plastic" - }, - { - "id": "can_medium_unsealed", - "type": "MIGRATION", - "replace": "can_medium" - }, - { - "id": "carton_unsealed", - "type": "MIGRATION", - "replace": "carton_sealed" - }, - { - "id": "jar_3l_glass", - "type": "MIGRATION", - "replace": "jar_3l_glass_sealed" - }, - { - "id": "jar_glass", - "type": "MIGRATION", - "replace": "jar_glass_sealed" - }, - { - "id": "condiment_bottle_unsealed", - "type": "MIGRATION", - "replace": "condiment_bottle_sealed" - }, - { - "id": "acid", - "type": "MIGRATION", - "replace": "chem_sulphuric_acid" - }, - { - "id": "water_acid", - "type": "MIGRATION", - "replace": "chem_sulphuric_acid" - }, - { - "id": "water_acid_weak", - "type": "MIGRATION", - "replace": "chem_acetic_acid" - }, - { - "id": "four_winds_shotgun", - "type": "MIGRATION", - "replace": "slamfire_shotgun" - }, - { - "id": "rag_bloody", - "type": "MIGRATION", - "replace": "rag", - "flags": [ "FILTHY" ] - }, - { - "id": "bottle_plastic_sealed", - "type": "MIGRATION", - "replace": "bottle_plastic" - }, - { - "id": "jug_plastic_sealed", - "type": "MIGRATION", - "replace": "jug_plastic" - }, - { - "id": "surv_carbine_223", - "type": "MIGRATION", - "replace": "ar15" - }, - { - "id": "rifle_308", - "type": "MIGRATION", - "replace": "m1a" - }, - { - "id": "rifle_3006", - "type": "MIGRATION", - "replace": "remington_700" - }, - { - "id": "towel_soiled", - "type": "MIGRATION", - "replace": "towel", - "flags": [ "FILTHY" ] - }, - { - "id": "gloves_xlsurvivor", - "type": "MIGRATION", - "replace": "xl_gloves_survivor" - }, - { - "id": "adv_UPS_off", - "type": "MIGRATION", - "replace": "UPS_off" - }, - { - "id": "money_bundle", - "type": "MIGRATION", - "replace": "money_bundle_twenty" - }, - { - "id": "bootleg_grenade", - "type": "MIGRATION", - "replace": "military_explosive_small_grenade" - }, - { - "id": "bootleg_pipebomb", - "type": "MIGRATION", - "replace": "military_explosive_pipebomb" - }, - { - "id": "tool_small_bootleg_fragmentation_device", - "type": "MIGRATION", - "replace": "military_explosive_bomb" - }, - { - "id": "tool_bootleg_barrel_bomb", - "type": "MIGRATION", - "replace": "military_explosive_full_barrel_bomb" - }, - { - "id": "can_bomb", - "type": "MIGRATION", - "replace": "small_homemade_grenade" - }, - { - "id": "primitive_grenade", - "type": "MIGRATION", - "replace": "small_homemade_grenade" - }, - { - "id": "improvised_grenade", - "type": "MIGRATION", - "replace": "small_homemade_grenade" - }, - { - "id": "primitive_pipebomb", - "type": "MIGRATION", - "replace": "pipebomb" - }, - { - "id": "improvised_pipebomb", - "type": "MIGRATION", - "replace": "pipebomb" - }, - { - "id": "tool_small_primitive_fragmentation_device", - "type": "MIGRATION", - "replace": "homemade_bomb" - }, - { - "id": "tool_small_improvised_fragmentation_device", - "type": "MIGRATION", - "replace": "homemade_bomb" - }, - { - "id": "primitive_demolition_charge", - "type": "MIGRATION", - "replace": "homemade_demolition_charge" - }, - { - "id": "improvised_demolition_charge", - "type": "MIGRATION", - "replace": "homemade_demolition_charge" - }, - { - "id": "tool_improvised_barrel_bomb", - "type": "MIGRATION", - "replace": "full_barrel_bomb" - }, - { - "id": "lo_q_crude_oil", - "type": "MIGRATION", - "replace": "hi_q_distillate" - }, - { - "id": "hi_q_crude_oil", - "type": "MIGRATION", - "replace": "hi_q_distillate" - }, - { - "id": "lo_q_crude_oil_filtered", - "type": "MIGRATION", - "replace": "hi_q_distillate" - }, - { - "id": "hi_q_crude_oil_filtered", - "type": "MIGRATION", - "replace": "hi_q_distillate" - }, - { - "id": "lo_q_crude_oil_ethanol", - "type": "MIGRATION", - "replace": "hi_q_distillate" - }, - { - "id": "hi_q_crude_oil_ethanol", - "type": "MIGRATION", - "replace": "hi_q_distillate" - }, - { - "id": "lo_q_crude_oil_ethanol_filtered", - "type": "MIGRATION", - "replace": "hi_q_distillate" - }, - { - "id": "hi_q_crude_oil_ethanol_filtered", - "type": "MIGRATION", - "replace": "hi_q_distillate" - }, - { - "id": "hi_q_distillate_heads", - "type": "MIGRATION", - "replace": "hi_q_distillate" - }, - { - "id": "hi_q_distillate_tails", - "type": "MIGRATION", - "replace": "hi_q_distillate" - }, - { - "id": "hi_q_distillate_cart", - "type": "MIGRATION", - "replace": "hi_q_shatter" - }, - { - "id": "vac_oven_small_done", - "type": "MIGRATION", - "replace": "vac_oven_small" - }, - { - "id": "vac_oven_small_full", - "type": "MIGRATION", - "replace": "vac_oven_small" - }, - { - "id": "vac_oven_small_on", - "type": "MIGRATION", - "replace": "vac_oven_small" - }, - { - "id": "vac_pump_on", - "type": "MIGRATION", - "replace": "vac_pump" - }, - { - "id": "closed_loop_extractor_small_on", - "type": "MIGRATION", - "replace": "closed_loop_extractor_small" - }, - { - "id": "closed_loop_extractor_large_on", - "type": "MIGRATION", - "replace": "closed_loop_extractor_large" - }, - { - "id": "dab_pen", - "type": "MIGRATION", - "replace": "advanced_ecig" - }, - { - "id": "dab_pen_on", - "type": "MIGRATION", - "replace": "advanced_ecig" - }, - { - "id": "manual_computers", - "type": "MIGRATION", - "replace": "manual_computer" - }, - { - "id": "pistachio_unshelled", - "type": "MIGRATION", - "replace": "pistachio_shelled" - }, - { - "id": "almond_unshelled", - "type": "MIGRATION", - "replace": "almond_shelled" - }, - { - "id": "pecan_unshelled", - "type": "MIGRATION", - "replace": "pecan_shelled" - }, - { - "id": "peanut_unshelled", - "type": "MIGRATION", - "replace": "peanut_shelled" - }, - { - "id": "walnut_unshelled", - "type": "MIGRATION", - "replace": "walnut_shelled" - }, - { - "id": "chestnut_unshelled", - "type": "MIGRATION", - "replace": "chestnut_shelled" - }, - { - "id": "hazelnut_unshelled", - "type": "MIGRATION", - "replace": "hazelnut_shelled" - }, - { - "id": "hickory_nut_unshelled", - "type": "MIGRATION", - "replace": "hickory_nut_shelled" - }, - { - "id": "bthk_stock", - "type": "MIGRATION", - "replace": "adjustable_stock" - }, - { - "id": "folding_bthk_stock", - "type": "MIGRATION", - "replace": "high_end_folding_stock" - }, - { - "id": "sourdough_young", - "type": "MIGRATION", - "replace": "jar_glass_sealed", - "contents": [ { "id": "sourdough_young_uncovered", "count": 1 } ] - }, - { - "id": "sourdough_split", - "type": "MIGRATION", - "replace": "jar_glass_sealed", - "contents": [ { "id": "sourdough_split_uncovered", "count": 1 } ] - }, - { - "id": "sourdough_starter", - "type": "MIGRATION", - "replace": "jar_glass_sealed", - "contents": [ { "id": "sourdough_starter_uncovered", "count": 1 } ] - }, - { - "id": "folding_poncho_on", - "type": "MIGRATION", - "replace": "folding_poncho" - }, - { - "id": "emer_blanket_on", - "type": "MIGRATION", - "replace": "emer_blanket" - }, - { - "id": "tire_iron", - "type": "MIGRATION", - "replace": "lug_wrench" - }, - { - "id": "reptile_sample", - "type": "MIGRATION", - "replace": "lizard_sample" - }, - { - "id": "molerat_sample", - "type": "MIGRATION", - "replace": "troglobite_sample" - }, - { - "id": "bovine_sample", - "type": "MIGRATION", - "replace": "cattle_sample" - }, - { - "id": "snail_sample", - "type": "MIGRATION", - "replace": "gastropod_sample" - }, - { - "id": "frog_sample", - "type": "MIGRATION", - "replace": "batrachian_sample" - }, - { - "id": "rabbit_foot", - "type": "MIGRATION", - "replace": "rabbit_sample" - }, - { - "id": "slug_garden", - "type": "MIGRATION", - "replace": "snail_garden" - }, - { - "id": "rag", - "type": "MIGRATION", - "replace": "cotton_patchwork" - }, - { - "type": "MIGRATION", - "id": "ammonia", - "replace": "ammonia_hydroxide" - }, - { - "id": "canola", - "type": "MIGRATION", - "replace": "seed_canola" - }, - { - "id": "vaccine_shot", - "type": "MIGRATION", - "replace": "syringe" - }, - { - "id": "ammunition_box_9mm", - "type": "MIGRATION", - "replace": "ammunition_box_308" - }, - { - "id": "egg_trout", - "type": "MIGRATION", - "replace": "egg_fish" - }, - { - "id": "egg_steelhead_trout", - "type": "MIGRATION", - "replace": "egg_rainbow_trout" - }, - { - "id": "egg_coho_salmon", - "type": "MIGRATION", - "replace": "egg_fish" - }, - { - "id": "egg_chinook_salmon", - "type": "MIGRATION", - "replace": "egg_fish" - }, - { - "id": "egg_white_bass", - "type": "MIGRATION", - "replace": "egg_fish" - }, - { - "id": "egg_longear_sunfish", - "type": "MIGRATION", - "replace": "egg_fish" - }, - { - "id": "egg_redear_sunfish", - "type": "MIGRATION", - "replace": "egg_fish" - }, - { - "id": "veh_tracker", - "type": "MIGRATION", - "replace": "vehicle_dashboard" - }, - { - "id": "primitive_pipebomb_act", - "type": "MIGRATION", - "replace": "pipebomb_act" - }, - { - "id": "primitive_grenade_act", - "type": "MIGRATION", - "replace": "small_homemade_grenade_act" - }, - { - "id": "improvised_pipebomb_act", - "type": "MIGRATION", - "replace": "pipebomb_act" - }, - { - "id": "improvised_grenade_act", - "type": "MIGRATION", - "replace": "small_homemade_grenade_act" - }, - { - "id": "tool_improvised_barrel_bomb_act", - "type": "MIGRATION", - "replace": "full_barrel_bomb_act" - }, - { - "id": "can_bomb_act", - "type": "MIGRATION", - "replace": "small_homemade_grenade_act" - }, - { - "id": "bootleg_pipebomb_act", - "type": "MIGRATION", - "replace": "military_explosive_pipebomb_act" - }, - { - "id": "bootleg_grenade_act", - "type": "MIGRATION", - "replace": "military_explosive_small_grenade_act" - }, - { - "id": "tool_bootleg_barrel_bomb_act", - "type": "MIGRATION", - "replace": "military_explosive_full_barrel_bomb_act" - }, - { - "id": "primitive_demolition_charge_act", - "type": "MIGRATION", - "replace": "homemade_demolition_charge_act" - }, - { - "id": "tool_small_primitive_fragmentation_device_act", - "type": "MIGRATION", - "replace": "homemade_bomb_act" - }, - { - "id": "tool_small_improvised_fragmentation_device_act", - "type": "MIGRATION", - "replace": "homemade_bomb_act" - }, - { - "id": "tool_small_bootleg_fragmentation_device_act", + "id": "armor_bio_carbon_filament", "type": "MIGRATION", - "replace": "military_explosive_bomb_act" + "replace": "tinfoil_hat" }, { - "id": "improvised_demolition_charge_act", + "id": "nato_assault_rifle", + "from_variant": "scar_l", "type": "MIGRATION", - "replace": "homemade_demolition_charge_act" + "replace": "scar_l" }, { - "id": "bag_paper_powder_small", + "id": "m27_assault_rifle", + "from_variant": "scar_l", "type": "MIGRATION", - "replace": "bag_paper_powder" + "replace": "scar_l" }, { "id": "r_paint", diff --git a/data/json/monsterdrops/zombie_survivor.json b/data/json/monsterdrops/zombie_survivor.json index bf90b46709441..d2527b0c716a0 100644 --- a/data/json/monsterdrops/zombie_survivor.json +++ b/data/json/monsterdrops/zombie_survivor.json @@ -126,8 +126,8 @@ "items": [ [ "gasbomb_makeshift", 30 ], [ "molotov", 100 ], - [ "improvised_pipebomb", 30 ], - [ "can_bomb", 30 ], + [ "pipebomb", 30 ], + [ "small_homemade_grenade", 30 ], [ "40x46mm_hornets_nest_22lr", 5 ], [ "40x46mm_hornets_nest_410", 5 ] ] diff --git a/data/json/npcs/NC_ARMY.json b/data/json/npcs/NC_ARMY.json index 80d30e3ef176b..dbb271cea2ec5 100644 --- a/data/json/npcs/NC_ARMY.json +++ b/data/json/npcs/NC_ARMY.json @@ -161,7 +161,11 @@ "type": "item_group", "id": "NC_ARMY_rifle", "subtype": "distribution", - "entries": [ { "item": "m4a1", "prob": 50 }, { "item": "m14ebr", "prob": 35 }, { "item": "m249", "prob": 20 } ] + "entries": [ + { "item": "m4_carbine", "variant": "m4a1", "prob": 50 }, + { "item": "m14ebr", "prob": 35 }, + { "item": "m249", "prob": 20 } + ] }, { "type": "item_group", diff --git a/data/json/npcs/NC_ARSONIST.json b/data/json/npcs/NC_ARSONIST.json index 5e0622aaadfbc..878cf176a1d43 100644 --- a/data/json/npcs/NC_ARSONIST.json +++ b/data/json/npcs/NC_ARSONIST.json @@ -220,7 +220,7 @@ { "item": "trenchcoat", "prob": 25 }, { "item": "gloves_fingerless", "prob": 30 }, { "item": "mask_hockey", "prob": 20 }, - { "item": "improvised_pipebomb", "prob": 40 }, + { "item": "pipebomb", "prob": 40 }, { "item": "molotov", "prob": 100 }, { "item": "ref_lighter", "prob": 30, "charges-min": 0 }, { "item": "lighter", "prob": 30, "charges-min": 10 }, diff --git a/data/json/npcs/NC_JUNK_SHOPKEEP.json b/data/json/npcs/NC_JUNK_SHOPKEEP.json index 7942f1754be16..e1895d393c3ac 100644 --- a/data/json/npcs/NC_JUNK_SHOPKEEP.json +++ b/data/json/npcs/NC_JUNK_SHOPKEEP.json @@ -130,7 +130,7 @@ { "item": "remington_870", "prob": 10 }, { "item": "mossberg_500", "prob": 5 }, { "item": "shotgun_d", "prob": 5 }, - { "item": "improvised_pipebomb", "prob": 10 }, + { "item": "pipebomb", "prob": 10 }, { "item": "molotov", "prob": 10 }, { "item": "longbow", "prob": 5 }, { "item": "recurbow", "prob": 15 }, diff --git a/data/json/npcs/NC_OPS.json b/data/json/npcs/NC_OPS.json index c9c06649ea893..8454756ae754b 100644 --- a/data/json/npcs/NC_OPS.json +++ b/data/json/npcs/NC_OPS.json @@ -135,7 +135,7 @@ { "type": "item_group", "id": "NC_OPS_rifle", - "items": [ [ "m4a1", 50 ], [ "m14ebr", 35 ], [ "m249", 20 ], [ "h&k416a5", 50 ], [ "M24", 35 ] ] + "items": [ [ "m4_carbine", 50 ], [ "m14ebr", 35 ], [ "m249", 20 ], [ "m27_assault_rifle", 50 ], [ "M24", 35 ] ] }, { "type": "item_group", diff --git a/data/json/npcs/items_generic.json b/data/json/npcs/items_generic.json index 7f3c48799da39..9df27aa0e5006 100644 --- a/data/json/npcs/items_generic.json +++ b/data/json/npcs/items_generic.json @@ -877,7 +877,7 @@ [ "pipe", 4 ], [ "pipe_glass", 1 ], [ "pipe_tobacco", 1 ], - [ "improvised_pipebomb", 3 ], + [ "pipebomb", 3 ], [ "pistol_bayonet", 1 ], [ "pistol_grip", 1 ], [ "pistol_scope", 1 ], diff --git a/data/json/npcs/refugee_center/surface_staff/Smokes/NPC_Smokes.json b/data/json/npcs/refugee_center/surface_staff/Smokes/NPC_Smokes.json index 583f924f7cbd5..d56863c41d6cf 100644 --- a/data/json/npcs/refugee_center/surface_staff/Smokes/NPC_Smokes.json +++ b/data/json/npcs/refugee_center/surface_staff/Smokes/NPC_Smokes.json @@ -221,7 +221,7 @@ [ "remington_870", 10 ], [ "mossberg_500", 5 ], [ "shotgun_d", 5 ], - [ "improvised_pipebomb", 10 ], + [ "pipebomb", 10 ], [ "molotov", 10 ], [ "longbow", 5 ], [ "recurbow", 15 ], diff --git a/data/json/recipes/armor/torso.json b/data/json/recipes/armor/torso.json index c1684fbf1bd32..9d2e4e7c48cc9 100644 --- a/data/json/recipes/armor/torso.json +++ b/data/json/recipes/armor/torso.json @@ -1113,7 +1113,12 @@ [ "fanny", 1 ] ], [ [ "duct_tape", 150 ] ], - [ [ "kevlar", 1 ], [ "ballistic_vest_light", 1 ], [ "ballistic_vest_esapi", 1 ], [ "kevlar_plate", 16 ] ] + [ + [ "kevlar", 1 ], + [ "ballistic_vest_light", 1 ], + [ "ballistic_vest_esapi", 1 ], + [ "sheet_kevlar_layered", 16 ] + ] ], "proficiencies": [ { "proficiency": "prof_polymerworking" }, { "proficiency": "prof_closures_waterproofing" } ] }, @@ -1138,7 +1143,12 @@ [ "fanny", 1 ] ], [ [ "duct_tape", 113 ] ], - [ [ "kevlar", 1 ], [ "ballistic_vest_light", 1 ], [ "ballistic_vest_esapi", 1 ], [ "kevlar_plate", 12 ] ] + [ + [ "kevlar", 1 ], + [ "ballistic_vest_light", 1 ], + [ "ballistic_vest_esapi", 1 ], + [ "sheet_kevlar_layered", 12 ] + ] ] }, { @@ -1162,7 +1172,7 @@ [ "fanny", 1 ] ], [ [ "duct_tape", 225 ] ], - [ [ "kevlar", 2 ], [ "ballistic_vest_esapi", 2 ], [ "kevlar_plate", 32 ] ] + [ [ "kevlar", 2 ], [ "ballistic_vest_esapi", 2 ], [ "sheet_kevlar_layered", 32 ] ] ] }, { diff --git a/data/json/recipes/food/canned.json b/data/json/recipes/food/canned.json index 3937e9e7a0cd8..eb19a542300d9 100644 --- a/data/json/recipes/food/canned.json +++ b/data/json/recipes/food/canned.json @@ -19,7 +19,7 @@ "qualities": [ { "id": "CUT", "level": 2 }, { "id": "COOK", "level": 3 } ], "using": [ [ "canning_high_heat", 1, "LIST" ] ], "//1": "pressure canning is measured in 0.5 liter quantities, so 1u of canning_high_heat.", - "components": [ [ [ "jar_glass", 1 ] ], [ [ "meat_offal", 2, "LIST" ] ], [ [ "water_clean", 1 ] ] ] + "components": [ [ [ "jar_glass_sealed", 1 ] ], [ [ "meat_offal", 2, "LIST" ] ], [ [ "water_clean", 1 ] ] ] }, { "type": "recipe", @@ -891,7 +891,12 @@ "charges": 2, "using": [ [ "canning_low_heat", 1, "LIST" ] ], "//1": "waterbath canning is measured in 0.5 liter quantities, so 1u of canning_low_heat. Due to pickling, ordinarily pressure canned meat can be water bathed.", - "components": [ [ [ "salt", 10 ], [ "saline", 10 ] ], [ [ "jar_glass", 1 ] ], [ [ "meat_offal", 2, "LIST" ] ], [ [ "vinegar", 16 ] ] ] + "components": [ + [ [ "salt", 10 ], [ "saline", 10 ] ], + [ [ "jar_glass_sealed", 1 ] ], + [ [ "meat_offal", 2, "LIST" ] ], + [ [ "vinegar", 16 ] ] + ] }, { "result": "offal_pickled", @@ -913,7 +918,7 @@ "//1": "waterbath canning is measured in 0.5 liter quantities, so 6u of canning_low_heat. Due to pickling, ordinarily pressure canned meat can be water bathed.", "components": [ [ [ "salt", 60 ], [ "saline", 60 ] ], - [ [ "jar_3l_glass", 1 ] ], + [ [ "jar_3l_glass_sealed", 1 ] ], [ [ "meat_offal", 12, "LIST" ] ], [ [ "vinegar", 96 ] ] ] diff --git a/data/json/recipes/recipe_medsandchemicals.json b/data/json/recipes/recipe_medsandchemicals.json index 3984a270cb7f3..e18ab363955fd 100644 --- a/data/json/recipes/recipe_medsandchemicals.json +++ b/data/json/recipes/recipe_medsandchemicals.json @@ -472,7 +472,7 @@ "components": [ [ [ "iodine_crystal", 218 ] ], [ [ "chem_potassium_hydroxide", 600 ], [ "lye_potassium", 15 ] ], - [ [ "ammonia", 1 ] ] + [ [ "ammonia_hydroxide", 1 ] ] ] }, { diff --git a/data/json/recipes/weapon/magazines.json b/data/json/recipes/weapon/magazines.json index 6297b27915bd1..9655b1f69ee25 100644 --- a/data/json/recipes/weapon/magazines.json +++ b/data/json/recipes/weapon/magazines.json @@ -126,8 +126,7 @@ [ "m4_carbine", -1 ], [ "ar15", -1 ], [ "m249", -1 ], - [ "m16a4", -1 ], - [ "surv_carbine_223", -1 ] + [ "m16a4", -1 ] ], [ [ "small_repairkit", 10 ], [ "large_repairkit", 5 ] ] ], @@ -210,7 +209,7 @@ "skills_required": [ "gun", 1 ], "time": "20 m", "autolearn": true, - "tools": [ [ [ "hk_g3", -1 ], [ "rifle_308", -1 ] ], [ [ "small_repairkit", 10 ], [ "large_repairkit", 5 ] ] ], + "tools": [ [ [ "hk_g3", -1 ], [ "m1a", -1 ] ], [ [ "small_repairkit", 10 ], [ "large_repairkit", 5 ] ] ], "using": [ [ "308_casehead", 1 ] ], "qualities": [ { "id": "SAW_M", "level": 1 }, { "id": "HAMMER", "level": 1 }, { "id": "SCREW_FINE", "level": 1 } ], "components": [ [ [ "sheet_metal_small", 1 ] ], [ [ "spring", 1 ] ], [ [ "duct_tape", 40 ] ] ] diff --git a/data/json/recipes/weapon/mods.json b/data/json/recipes/weapon/mods.json index 510cc74249500..4aedff4c0d651 100644 --- a/data/json/recipes/weapon/mods.json +++ b/data/json/recipes/weapon/mods.json @@ -1069,7 +1069,6 @@ [ "glock_31", -1 ], [ "glock_21", -1 ], [ "glock_20", -1 ], - [ "glock_40", -1 ], [ "glock_29", -1 ] ], [ [ "small_repairkit", 40 ], [ "large_repairkit", 40 ] ] diff --git a/data/json/requirements/cooking_components.json b/data/json/requirements/cooking_components.json index 1d58e55e54f71..9652b11ced28e 100644 --- a/data/json/requirements/cooking_components.json +++ b/data/json/requirements/cooking_components.json @@ -153,21 +153,16 @@ "components": [ [ [ "egg_fish", 1 ], - [ "egg_trout", 1 ], [ "egg_brown_trout", 1 ], [ "egg_brook_trout", 1 ], [ "egg_lake_trout", 1 ], [ "egg_rainbow_trout", 1 ], - [ "egg_steelhead_trout", 1 ], [ "egg_salmon", 1 ], [ "egg_kokanee_salmon", 1 ], - [ "egg_chinook_salmon", 1 ], - [ "egg_coho_salmon", 1 ], [ "egg_whitefish", 1 ], [ "egg_lbass", 1 ], [ "egg_sbass", 1 ], [ "egg_pbass", 1 ], - [ "egg_white_bass", 1 ], [ "egg_perch", 1 ], [ "egg_walleye", 1 ], [ "egg_sunfish", 1 ], @@ -175,8 +170,6 @@ [ "egg_bluegill", 1 ], [ "egg_redbreast", 1 ], [ "egg_green_sunfish", 1 ], - [ "egg_longear_sunfish", 1 ], - [ "egg_redear_sunfish", 1 ], [ "egg_rock_bass", 1 ], [ "egg_calico_bass", 1 ], [ "egg_bullhead", 1 ], diff --git a/data/mods/Aftershock/monsterdrops/monsterdrops.json b/data/mods/Aftershock/monsterdrops/monsterdrops.json index 178e4667d4815..f1b6221bc5077 100644 --- a/data/mods/Aftershock/monsterdrops/monsterdrops.json +++ b/data/mods/Aftershock/monsterdrops/monsterdrops.json @@ -10,7 +10,7 @@ "id": "tripod", "items": [ { "item": "flamethrower", "prob": 1, "charges-min": 0, "charges-max": 3000 }, - [ "kevlar_plate", 10 ], + [ "sheet_kevlar_layered", 10 ], [ "ceramic_armor", 15 ], [ "alloy_plate", 10 ], [ "robot_controls", 3 ] @@ -46,7 +46,7 @@ { "item": "flamethrower", "prob": 1, "charges-min": 0, "charges-max": 3000 }, [ "556", 8 ], [ "alloy_plate", 10 ], - [ "kevlar_plate", 10 ], + [ "sheet_kevlar_layered", 10 ], [ "ceramic_armor", 10 ], [ "hard_plate", 30 ], [ "robot_controls", 5 ] diff --git a/data/mods/Aftershock/recipes/deconstruction.json b/data/mods/Aftershock/recipes/deconstruction.json index dc6772334bf6d..cd0dd09371f93 100644 --- a/data/mods/Aftershock/recipes/deconstruction.json +++ b/data/mods/Aftershock/recipes/deconstruction.json @@ -41,7 +41,7 @@ [ [ "gun_module", 3 ] ], [ [ "flamethrower", 1 ] ], [ [ "tazer", 1 ] ], - [ [ "m4a1", 1 ] ], + [ [ "m4_carbine", 1 ] ], [ [ "power_supply", 20 ] ], [ [ "storage_battery", 1 ] ], [ [ "plut_cell", 4 ] ], diff --git a/data/mods/Aftershock/recipes/recipes.json b/data/mods/Aftershock/recipes/recipes.json index 1bb7c2b0809ac..ad80cd1825474 100644 --- a/data/mods/Aftershock/recipes/recipes.json +++ b/data/mods/Aftershock/recipes/recipes.json @@ -227,7 +227,7 @@ [ [ "gun_module", 3 ] ], [ [ "flamethrower", 1 ] ], [ [ "tazer", 1 ] ], - [ [ "m4a1", 1 ] ], + [ [ "m4_carbine", 1 ] ], [ [ "power_supply", 20 ] ], [ [ "storage_battery", 1 ] ], [ [ "plut_cell", 4 ] ], diff --git a/data/mods/Generic_Guns/firearms/gg_firearms_migration.json b/data/mods/Generic_Guns/firearms/gg_firearms_migration.json index 2e9b2f0778431..eb34732425916 100644 --- a/data/mods/Generic_Guns/firearms/gg_firearms_migration.json +++ b/data/mods/Generic_Guns/firearms/gg_firearms_migration.json @@ -125,7 +125,6 @@ "glock_29", "glock_20", "glock_21", - "glock_40", "m1911_10", "witness_10", "p220_10", diff --git a/data/mods/Generic_Guns/magazines/gg_magazines_migration.json b/data/mods/Generic_Guns/magazines/gg_magazines_migration.json index 3be2f1a160bf1..e22f3db5237a6 100644 --- a/data/mods/Generic_Guns/magazines/gg_magazines_migration.json +++ b/data/mods/Generic_Guns/magazines/gg_magazines_migration.json @@ -12,9 +12,7 @@ "ppkmag", "sigp230mag", "p226mag_12rd_357sig", - "p226mag_15rd_357sig", "p320mag_13rd_357sig", - "p320mag_14rd_357sig", "kp3atmag", "fn1910mag", "rugerlcpmag", diff --git a/data/mods/Generic_Guns/recipes/recipe_obsolete.json b/data/mods/Generic_Guns/recipes/recipe_obsolete.json index 09861ec83c7f4..bbe18d9235e03 100644 --- a/data/mods/Generic_Guns/recipes/recipe_obsolete.json +++ b/data/mods/Generic_Guns/recipes/recipe_obsolete.json @@ -269,16 +269,6 @@ "result": "rifle_9mm", "obsolete": true }, - { - "type": "recipe", - "result": "rifle_308", - "obsolete": true - }, - { - "type": "recipe", - "result": "rifle_3006", - "obsolete": true - }, { "type": "recipe", "result": "rifle_40", @@ -304,26 +294,11 @@ "result": "rifle_38", "obsolete": true }, - { - "type": "recipe", - "result": "rifle_308", - "obsolete": true - }, { "type": "recipe", "result": "rifle_223", "obsolete": true }, - { - "type": "recipe", - "result": "surv_carbine_223", - "obsolete": true - }, - { - "type": "recipe", - "result": "rifle_3006", - "obsolete": true - }, { "type": "recipe", "result": "triple_launcher_simple", diff --git a/data/mods/Magiclysm/recipes/weapons.json b/data/mods/Magiclysm/recipes/weapons.json index fb9af23e8d716..caa3f6dd08e4d 100644 --- a/data/mods/Magiclysm/recipes/weapons.json +++ b/data/mods/Magiclysm/recipes/weapons.json @@ -273,7 +273,7 @@ "components": [ [ [ "rune_stormshaper_weapon", 1 ] ], [ [ "scrap_copper", 10 ], [ "copper", 1000 ] ], - [ [ "gold", 100 ] ], + [ [ "gold_small", 100 ] ], [ [ "cordage_short", 2, "LIST" ], [ "filament", 40, "LIST" ], [ "duct_tape", 40 ] ], [ [ "rune_stormshaper", 1 ] ] ] diff --git a/data/mods/Magiclysm/requirements/spell_components.json b/data/mods/Magiclysm/requirements/spell_components.json index e321a0fa7f88d..60e52363e14d3 100644 --- a/data/mods/Magiclysm/requirements/spell_components.json +++ b/data/mods/Magiclysm/requirements/spell_components.json @@ -70,13 +70,13 @@ "id": "spell_components_causticaura", "type": "requirement", "//": "Strong acids suitable for the Caustic Aura spell", - "components": [ [ [ "acid", 2 ], [ "chem_sulphuric_acid", 2 ], [ "chem_muriatic_acid", 2 ], [ "chem_nitric_acid", 2 ] ] ] + "components": [ [ [ "chem_sulphuric_acid", 2 ], [ "chem_muriatic_acid", 2 ], [ "chem_nitric_acid", 2 ] ] ] }, { "id": "spell_components_shardspray", "type": "requirement", "//": "A kilo of metal fragments suitable for the Shardspray spell", - "components": [ [ [ "scrap", 40 ], [ "copper", 500 ], [ "gold", 200 ], [ "silver", 333 ], [ "lead", 333 ] ] ] + "components": [ [ [ "scrap", 40 ], [ "copper", 500 ], [ "gold_small", 200 ], [ "silver_small", 333 ], [ "lead", 333 ] ] ] }, { "id": "spell_components_nova_flare", diff --git a/data/mods/Military_Professions/npc/NC_ARMY.json b/data/mods/Military_Professions/npc/NC_ARMY.json index 80d30e3ef176b..dbb271cea2ec5 100644 --- a/data/mods/Military_Professions/npc/NC_ARMY.json +++ b/data/mods/Military_Professions/npc/NC_ARMY.json @@ -161,7 +161,11 @@ "type": "item_group", "id": "NC_ARMY_rifle", "subtype": "distribution", - "entries": [ { "item": "m4a1", "prob": 50 }, { "item": "m14ebr", "prob": 35 }, { "item": "m249", "prob": 20 } ] + "entries": [ + { "item": "m4_carbine", "variant": "m4a1", "prob": 50 }, + { "item": "m14ebr", "prob": 35 }, + { "item": "m249", "prob": 20 } + ] }, { "type": "item_group", diff --git a/data/mods/Military_Professions/npc/NC_OPS.json b/data/mods/Military_Professions/npc/NC_OPS.json index c9c06649ea893..8454756ae754b 100644 --- a/data/mods/Military_Professions/npc/NC_OPS.json +++ b/data/mods/Military_Professions/npc/NC_OPS.json @@ -135,7 +135,7 @@ { "type": "item_group", "id": "NC_OPS_rifle", - "items": [ [ "m4a1", 50 ], [ "m14ebr", 35 ], [ "m249", 20 ], [ "h&k416a5", 50 ], [ "M24", 35 ] ] + "items": [ [ "m4_carbine", 50 ], [ "m14ebr", 35 ], [ "m249", 20 ], [ "m27_assault_rifle", 50 ], [ "M24", 35 ] ] }, { "type": "item_group", diff --git a/data/mods/Military_Professions/prof/army.json b/data/mods/Military_Professions/prof/army.json index 156768fd43dbe..b3505f5e59704 100644 --- a/data/mods/Military_Professions/prof/army.json +++ b/data/mods/Military_Professions/prof/army.json @@ -24,7 +24,13 @@ "ballistic_vest_esapi" ], "entries": [ - { "item": "m4a1", "ammo-item": "556", "charges": 30, "contents-item": [ "shoulder_strap", "acog_scope", "grip" ] }, + { + "item": "m4_carbine", + "variant": "m4a1", + "ammo-item": "556", + "charges": 30, + "contents-item": [ "shoulder_strap", "acog_scope", "grip" ] + }, { "item": "ear_plugs", "custom-flags": [ "no_auto_equip" ] }, { "item": "tacvest", "contents-group": "army_mags_m4" }, { "item": "knife_combat", "container-item": "sheath" }, @@ -129,7 +135,13 @@ "ballistic_vest_esapi" ], "entries": [ - { "item": "m4a1", "ammo-item": "556", "charges": 30, "contents-item": [ "shoulder_strap", "holo_sight", "m203" ] }, + { + "item": "m4_carbine", + "variant": "m4a1", + "ammo-item": "556", + "charges": 30, + "contents-item": [ "shoulder_strap", "holo_sight", "m203" ] + }, { "item": "ear_plugs", "custom-flags": [ "no_auto_equip" ] }, { "item": "tacvest", "contents-group": "army_mags_m4" }, { "item": "40x46mm_m433", "charges": 4, "container-item": "grenade_pouch" }, diff --git a/data/mods/No_Hope/item_groups.json b/data/mods/No_Hope/item_groups.json index 65acbcc91d18d..2b23eef52caa4 100644 --- a/data/mods/No_Hope/item_groups.json +++ b/data/mods/No_Hope/item_groups.json @@ -164,7 +164,7 @@ { "item": "flamethrower", "prob": 1, "charges-min": 0, "charges-max": 3000 }, [ "556", 8 ], [ "alloy_plate", 10 ], - [ "kevlar_plate", 10 ], + [ "sheet_kevlar_layered", 10 ], [ "ceramic_armor", 10 ], [ "hard_plate", 30 ], [ "robot_controls", 5 ] @@ -175,7 +175,7 @@ "id": "tripod", "items": [ { "item": "flamethrower", "prob": 1, "charges-min": 0, "charges-max": 3000 }, - [ "kevlar_plate", 10 ], + [ "sheet_kevlar_layered", 10 ], [ "ceramic_armor", 15 ], [ "alloy_plate", 10 ], [ "robot_controls", 3 ] diff --git a/data/mods/TropiCataclysm/itemgroups/Monsters_Animals_Lairs/monster_drops_lairs.json b/data/mods/TropiCataclysm/itemgroups/Monsters_Animals_Lairs/monster_drops_lairs.json index 354be3ea0351b..4977166da0f7f 100644 --- a/data/mods/TropiCataclysm/itemgroups/Monsters_Animals_Lairs/monster_drops_lairs.json +++ b/data/mods/TropiCataclysm/itemgroups/Monsters_Animals_Lairs/monster_drops_lairs.json @@ -55,7 +55,7 @@ { "item": "survivormap", "prob": 1 }, { "item": "miner_hat", "prob": 10 }, { "item": "honey_ant", "prob": 30 }, - { "item": "tool_small_primitive_fragmentation_device", "prob": 1 } + { "item": "homemade_bomb_act", "prob": 1 } ] }, { diff --git a/data/mods/Xedra_Evolved/recipes/vampire.json b/data/mods/Xedra_Evolved/recipes/vampire.json index 481e4f39c5ea6..f15c9e0a323e2 100644 --- a/data/mods/Xedra_Evolved/recipes/vampire.json +++ b/data/mods/Xedra_Evolved/recipes/vampire.json @@ -10,7 +10,7 @@ { "id": "SAW_M", "level": 1 } ], "tools": [ [ [ "surface_heat", 30, "LIST" ] ] ], - "components": [ [ [ "mercury", 1 ] ], [ [ "garlic", 4 ] ], [ [ "blood", 3 ] ], [ [ "silver", 1 ] ] ], + "components": [ [ [ "mercury", 1 ] ], [ [ "garlic", 4 ] ], [ [ "blood", 3 ] ], [ [ "silver_small", 1 ] ] ], "time": "30 m", "charges": 4, "skill_used": "cooking", diff --git a/data/mods/innawood/recipes/recipe_food.json b/data/mods/innawood/recipes/recipe_food.json index ac7512889cf18..ca81ab39510a9 100644 --- a/data/mods/innawood/recipes/recipe_food.json +++ b/data/mods/innawood/recipes/recipe_food.json @@ -557,7 +557,7 @@ "tools": [ [ [ "surface_heat", 20, "LIST" ] ] ], "components": [ [ [ "water", 1 ], [ "water_clean", 1 ], [ "salt_water", 1 ], [ "saline", 5 ] ], - [ [ "jar_glass", 1 ] ], + [ [ "jar_glass_sealed", 1 ] ], [ [ "meat_offal", 2, "LIST" ] ], [ [ "vinegar", 1 ] ] ] @@ -581,7 +581,7 @@ "tools": [ [ [ "surface_heat", 100, "LIST" ] ] ], "components": [ [ [ "water", 6 ], [ "water_clean", 6 ], [ "salt_water", 6 ], [ "saline", 30 ] ], - [ [ "jar_3l_glass", 1 ] ], + [ [ "jar_3l_glass_sealed", 1 ] ], [ [ "meat_offal", 12, "LIST" ] ], [ [ "vinegar", 6 ] ] ] diff --git a/doc/ITEM_SPAWN.md b/doc/ITEM_SPAWN.md index 2db543047f9a9..c5fddbf606045 100644 --- a/doc/ITEM_SPAWN.md +++ b/doc/ITEM_SPAWN.md @@ -194,7 +194,7 @@ Another example: The group "milk" spawns a container (taken from milk_containers "subtype": "distribution", "items": [ "bottle_plastic", "bottle_glass", "flask_glass", - "jar_glass", "jar_3l_glass", "flask_hip", "55gal_drum" + "jar_glass_sealed", "jar_3l_glass_sealed", "flask_hip", "55gal_drum" ] }, { @@ -220,7 +220,7 @@ Mods can add entries to item groups by specifying a group with the same id that "extend": { "items": [ "bottle_plastic", "bottle_glass", "flask_glass", - "jar_glass", "jar_3l_glass", "flask_hip", "55gal_drum" + "jar_glass_sealed", "jar_3l_glass_sealed", "flask_hip", "55gal_drum" ] } }, diff --git a/tests/creature_test.cpp b/tests/creature_test.cpp index 008248ac30287..f4102e2c5bfbb 100644 --- a/tests/creature_test.cpp +++ b/tests/creature_test.cpp @@ -17,7 +17,7 @@ static const json_character_flag json_flag_LIMB_LOWER( "LIMB_LOWER" ); static const json_character_flag json_flag_LIMB_UPPER( "LIMB_UPPER" ); -static const mtype_id mon_fish_trout( "mon_fish_trout" ); +static const mtype_id mon_fish_rainbow_trout( "mon_fish_rainbow_trout" ); static const mtype_id mon_zombie( "mon_zombie" ); static const mtype_id mon_zombie_cop( "mon_zombie_cop" ); @@ -131,6 +131,6 @@ TEST_CASE( "mtype_species_test", "[monster]" ) CHECK( mon_zombie->same_species( *mon_zombie_cop ) ); CHECK( mon_zombie_cop->same_species( *mon_zombie ) ); - CHECK_FALSE( mon_zombie->same_species( *mon_fish_trout ) ); - CHECK_FALSE( mon_fish_trout->same_species( *mon_zombie ) ); + CHECK_FALSE( mon_zombie->same_species( *mon_fish_rainbow_trout ) ); + CHECK_FALSE( mon_fish_rainbow_trout->same_species( *mon_zombie ) ); } diff --git a/tools/json_tools/generic_guns_validator.py b/tools/json_tools/generic_guns_validator.py index 63a7753752568..dc5456cb825bc 100755 --- a/tools/json_tools/generic_guns_validator.py +++ b/tools/json_tools/generic_guns_validator.py @@ -50,9 +50,6 @@ 'l_bak_223', 'pneumatic_shotgun', 'rifle_223', - 'rifle_3006', - 'rifle_308', - 'surv_carbine_223', 'feral_militia_gun', 'feral_jackboot_gun', 'feral_m9', From 3a92dda5711c4c6f057060f2cbb00f3ae10fd09f Mon Sep 17 00:00:00 2001 From: Alexey Kim Date: Mon, 20 Mar 2023 06:59:11 +0200 Subject: [PATCH 2/7] Remove 0.G obsoletions from json/obsolete.json --- data/json/itemgroups/Labs/lab_security.json | 3 +- .../Locations_MapExtras/locations.json | 4 +- .../Locations_MapExtras/mansion.json | 2 +- data/json/npcs/godco/classes.json | 1 - data/json/obsolete.json | 301 ------------------ data/json/recipes/armor/storage.json | 6 - .../Aftershock/itemgroups/bionics_groups.json | 46 ++- data/mods/DinoMod/items/itemgroups.json | 45 +++ data/mods/No_Hope/item_groups.json | 45 +++ .../classic_zombies/items/blacklists.json | 1 - 10 files changed, 136 insertions(+), 318 deletions(-) diff --git a/data/json/itemgroups/Labs/lab_security.json b/data/json/itemgroups/Labs/lab_security.json index 70c46c5b99e35..135b910107751 100644 --- a/data/json/itemgroups/Labs/lab_security.json +++ b/data/json/itemgroups/Labs/lab_security.json @@ -51,8 +51,7 @@ "entries": [ { "item": "UPS_off", "prob": 70 }, { "item": "heavy_battery_cell", "prob": 70 }, - { "item": "heavy_plus_battery_cell", "prob": 40 }, - { "item": "adv_UPS_off", "prob": 40 } + { "item": "heavy_plus_battery_cell", "prob": 40 } ] }, { diff --git a/data/json/itemgroups/Locations_MapExtras/locations.json b/data/json/itemgroups/Locations_MapExtras/locations.json index 86463a30a7389..a5fc01d104e48 100644 --- a/data/json/itemgroups/Locations_MapExtras/locations.json +++ b/data/json/itemgroups/Locations_MapExtras/locations.json @@ -1295,8 +1295,7 @@ [ "material_shrd_limestone", 40 ], [ "material_niter", 5 ], [ "chem_rdx", 5 ], - [ "chem_hmtd", 10 ], - [ "tool_anfo_charge", 2 ] + [ "chem_hmtd", 10 ] ] }, { @@ -1369,7 +1368,6 @@ { "group": "tools_toolbox", "prob": 1 }, [ "apron_leather", 5 ], [ "apron_cut_resistant", 10 ], - [ "tool_anfo_charge", 1 ], { "item": "remotevehcontrol", "prob": 10, "charges": [ 0, 100 ] } ] }, diff --git a/data/json/itemgroups/Locations_MapExtras/mansion.json b/data/json/itemgroups/Locations_MapExtras/mansion.json index 19e4f12af86cc..21a97b57aad9e 100644 --- a/data/json/itemgroups/Locations_MapExtras/mansion.json +++ b/data/json/itemgroups/Locations_MapExtras/mansion.json @@ -1331,7 +1331,7 @@ [ "glass", 20 ], { "group": "tobacco_products", "prob": 75 }, { "group": "cigar_box_opened", "prob": 50 }, - [ "money_bundle", 10 ], + [ "money_bundle_ten", 10 ], [ "pretzels", 5 ], [ "chips", 5 ], { "group": "wallet_stylish_full", "prob": 1 } diff --git a/data/json/npcs/godco/classes.json b/data/json/npcs/godco/classes.json index 50149720315e3..c98c82151c18b 100644 --- a/data/json/npcs/godco/classes.json +++ b/data/json/npcs/godco/classes.json @@ -1054,7 +1054,6 @@ [ "trappers_companion", 2 ], [ "textbook_traps", 8 ], [ "beartrap", 25 ], - [ "adv_UPS_off", 5 ], [ "bolt_steel", 15 ], [ "bolt_cf", 10 ], [ "hand_crossbow", 1 ], diff --git a/data/json/obsolete.json b/data/json/obsolete.json index a3502a056b827..49e1c9cfdeff8 100644 --- a/data/json/obsolete.json +++ b/data/json/obsolete.json @@ -32,151 +32,6 @@ ] } }, - { - "type": "item_group", - "id": "bionics_sci", - "subtype": "distribution", - "//": "High-tech bionics, handy for the harried researcher. They get access to classified toys too, but only stuff a scientist would have use for.", - "items": [ - [ "burnt_out_bionic", 60 ], - [ "bio_batteries", 30 ], - [ "bio_power_storage", 30 ], - [ "bio_metabolics", 5 ], - [ "bio_ethanol", 5 ], - [ "bio_ups", 10 ], - [ "bio_torsionratchet", 30 ], - [ "bio_tools", 10 ], - [ "bio_flashlight", 30 ], - [ "bio_lighter", 25 ], - [ "bio_magnet", 20 ], - [ "bio_memory", 15 ], - [ "bio_ears", 10 ], - [ "bio_sunglasses", 10 ], - [ "bio_eye_optic", 10 ], - [ "bio_eye_enhancer", 5 ], - [ "bio_dex_enhancer", 5 ], - [ "bio_int_enhancer", 10 ], - [ "bio_night_vision", 1 ], - [ "bio_infrared", 2 ], - [ "bio_synaptic_regen", 12 ], - [ "bio_gills", 5 ], - [ "bio_climate", 2 ], - [ "bio_heatsink", 2 ], - [ "bio_blood_filter", 10 ], - [ "bio_fingerhack", 2 ], - [ "bio_lockpick", 2 ], - [ "bio_surgical_razor", 8 ], - [ "bio_nanobots", 15 ], - [ "bio_blood_anal", 10 ], - [ "bio_geiger", 15 ], - [ "bio_radscrubber", 10 ], - [ "bio_watch", 40 ], - [ "bio_leukocyte", 15 ], - [ "bio_syringe", 2 ], - [ "bio_jointservo", 10 ], - [ "bio_soporific", 2 ] - ] - }, - { - "type": "MONSTER_FACTION", - "name": "cop_zombie", - "base_faction": "zombie" - }, - { - "type": "MONSTER_FACTION", - "name": "carp", - "base_faction": "fish" - }, - { - "type": "MONSTER_FACTION", - "name": "salmon", - "base_faction": "fish" - }, - { - "type": "MONSTER_FACTION", - "name": "otter", - "base_faction": "animal" - }, - { - "id": "vitA", - "type": "vitamin", - "vit_type": "vitamin", - "name": { "str": "Vitamin A" }, - "min": -8400, - "max": 3600, - "rate": "180 m", - "flags": [ "OBSOLETE" ] - }, - { - "id": "vitB", - "type": "vitamin", - "vit_type": "vitamin", - "name": { "str": "Vitamin B12" }, - "min": -5600, - "max": 2000, - "rate": "360 m", - "flags": [ "OBSOLETE" ] - }, - { - "id": "1st_aid", - "type": "GENERIC", - "category": "drugs", - "name": { "str": "first aid kit" }, - "description": "A typical universal first aid kit, one you'd see in a car or in a household. It contains a variety of common medical items stored in case of accidents and injuries. Disassemble to get its content.", - "weight": "1750 g", - "volume": "1250 ml", - "price": 3000, - "price_postapoc": 3000, - "material": [ "plastic" ], - "symbol": "!", - "color": "red", - "use_action": "DISASSEMBLE", - "flags": [ "NO_REPAIR", "OBSOLETE" ] - }, - { - "id": "tool_rdx_charge", - "type": "TOOL", - "category": "weapons", - "name": { "str": "RDX charge" }, - "description": "This is a metal keg, filled with 50 liters worth of RDX and scrap metal. Contains a core of primary explosive to ensure that the charge detonates completely and delivers its entire destructive power to everything in sight.", - "weight": "106600 g", - "volume": "50 L", - "price": 90000, - "to_hit": -5, - "bashing": 20, - "material": [ "steel", "plastic" ], - "symbol": "(", - "color": "red", - "explode_in_fire": true, - "explosion": { - "power": 6700, - "shrapnel": { "casing_mass": 50000, "fragment_mass": 0.1, "drop": "scrap", "recovery": 1 }, - "//": "Fire exposure would destroy most of the RDX before the HMTD core triggered, resulting in a far smaller blast (relatively speaking)." - }, - "flags": [ "RADIO_MODABLE", "RADIO_INVOKE_PROC", "BOMB", "OBSOLETE" ] - }, - { - "id": "tool_anfo_charge", - "type": "TOOL", - "category": "weapons", - "name": { "str": "ANFO charge" }, - "description": "This is a large metal keg filled with ANFO pellets and equipped with a dynamite primer. Use this item to light the fuse. You will then have twenty turns before it explodes and creates a large fireball.", - "weight": "77800 g", - "volume": "50 L", - "price": 75000, - "to_hit": -5, - "bashing": 12, - "material": [ "steel", "plastic" ], - "symbol": "*", - "color": "red", - "explode_in_fire": true, - "explosion": { - "power": 25000, - "//": "Fire would burn away/degrade some of the ANFO before the detonator would trigger.", - "shrapnel": 12600 - }, - "flags": [ "RADIO_MODABLE", "RADIO_INVOKE_PROC", "BOMB", "OBSOLETE" ] - }, { "type": "terrain", "id": "t_centrifuge", @@ -557,106 +412,6 @@ ] } }, - { - "type": "recipe", - "activity_level": "MODERATE_EXERCISE", - "result": "cable", - "category": "CC_ELECTRONIC", - "subcategory": "CSC_ELECTRONIC_COMPONENTS", - "skill_used": "fabrication", - "skills_required": [ "electronics", 2 ], - "difficulty": 5, - "time": "3 m", - "autolearn": true, - "charges": 1, - "qualities": [ - { "id": "ANVIL", "level": 1 }, - { "id": "HAMMER", "level": 2 }, - { "id": "CHISEL", "level": 3 }, - { "id": "CUT", "level": 1 } - ], - "tools": [ [ [ "tongs", -1 ] ], [ [ "swage", -1 ] ], [ [ "surface_heat", 1, "LIST" ], [ "forge", 1 ], [ "oxy_torch", 1 ] ] ], - "components": [ [ [ "copper", 1 ] ], [ [ "duct_tape", 1 ] ] ] - }, - { - "id": "adv_UPS_off", - "type": "TOOL", - "name": { "str": "advanced UPS", "str_pl": "advanced UPSes" }, - "description": "This is an advanced version of the unified power supply, or UPS. This device has been significantly redesigned to provide better efficiency as well as to consume plutonium fuel batteries rather than regular batteries. Sadly, its plutonium reactor can't be charged in UPS charging station.", - "weight": "453 g", - "volume": "2 L", - "price": 560000, - "price_postapoc": 3000, - "to_hit": -1, - "bashing": 8, - "material": [ "aluminum", "plastic" ], - "symbol": ";", - "color": "light_green", - "ammo": [ "battery" ], - "pocket_data": [ - { - "pocket_type": "MAGAZINE_WELL", - "holster": true, - "max_contains_volume": "20 L", - "max_contains_weight": "20 kg", - "item_restriction": [ "heavy_atomic_battery_cell" ] - } - ], - "flags": [ "IS_UPS", "OBSOLETE" ] - }, - { - "type": "GENERIC", - "id": "money_bundle", - "name": { "str": "money bundle" }, - "description": "A bundle holding many 20 dollar bills, pretty useless now though.", - "weight": "20 g", - "to_hit": -3, - "color": "green", - "symbol": ",", - "material": [ "paper" ], - "volume": "250 ml", - "price": 0, - "flags": [ "OBSOLETE" ] - }, - { - "id": "rifle_case_xs_soft_leather", - "type": "ARMOR", - "copy-from": "rifle_case_soft_leather", - "looks_like": "rifle_case_soft_leather", - "name": { "str": "long leather rifle case" }, - "description": "A long soft leather rifle case. Provides storage for long arms and rifles. Includes a small pocket, strap and handle.", - "flags": [ "WATER_FRIENDLY", "STURDY", "BELTED", "OVERSIZE", "UNDERSIZE", "OBSOLETE" ], - "price": 0 - }, - { - "type": "furniture", - "id": "f_compact_ASRG", - "name": "Compact Advanced Sterling Radioisotope Generator", - "looks_like": "f_compact_ASRG_containment", - "description": "This is a stirling generator originally designed by NASA, powered by plutonium-238. Without most of the military shielding only a thin metal layer remains and thus this is much closer to its original NASA incarnation. Since plutonium-238 mostly emits alpha radiation it is still basically safe but without its armor it's much more likely to be broken by something dangerous.", - "symbol": "0", - "color": "green", - "move_cost_mod": -1, - "coverage": 50, - "required_str": -1, - "examine_action": { "type": "appliance_convert", "furn_set": "f_null", "item": "compact_ASRG_containment" }, - "flags": [ "TRANSPARENT", "NOITEM", "SEALED", "REDUCE_SCENT", "PERMEABLE", "EASY_DECONSTRUCT" ], - "bash": { - "str_min": 20, - "str_max": 400, - "explosive": 100, - "sound": "metal screeching!", - "sound_fail": "clang!", - "furn_set": "f_reactor_meltdown", - "items": [ - { "item": "scrap", "count": [ 4, 16 ] }, - { "item": "steel_chunk", "count": [ 1, 6 ] }, - { "item": "plutonium", "charges": [ 0, 3 ] }, - { "item": "lead", "charges": [ 12, 18 ] } - ] - }, - "deconstruct": { "items": [ { "item": "compact_ASRG_containment", "count": 1 } ] } - }, { "type": "recipe", "activity_level": "BRISK_EXERCISE", @@ -950,47 +705,6 @@ "tools": [ [ [ "hotcut", -1 ] ] ], "components": [ [ [ "2x4", 3 ], [ "stick", 6 ] ], [ [ "fur", 3 ], [ "leather", 3 ] ] ] }, - { - "id": "ammunition_box_9mm", - "type": "GENERIC", - "copy-from": "ammunition_box_308", - "name": { "str": "small ammo box", "str_pl": "small ammo boxes" }, - "//": "100x9mm", - "flags": [ "COLLAPSE_CONTENTS", "OBSOLETE" ], - "volume": "175 ml", - "pocket_data": [ { "pocket_type": "CONTAINER", "rigid": true, "max_contains_volume": "170 ml", "max_contains_weight": "450 g" } ] - }, - { - "id": "bio_railgun", - "type": "bionic", - "name": { "str": "Railgun" }, - "description": "EM field generators in your arms double the range and damage of thrown iron and steel objects at a cost of 10 power per throw, causing them to leave a trail of electricity that can cause additional damage.", - "occupied_bodyparts": [ [ "arm_l", 5 ], [ "arm_r", 5 ], [ "hand_l", 1 ], [ "hand_r", 1 ] ], - "flags": [ "BIONIC_TOGGLED" ], - "act_cost": "1 kJ", - "react_cost": "100 J", - "trigger_cost": "10 kJ", - "time": "1 s" - }, - { - "id": "bio_railgun", - "copy-from": "bionic_general", - "type": "BIONIC_ITEM", - "name": { "str": "Railgun CBM" }, - "looks_like": "bio_int_enhancer", - "description": "EM field generators in the user's arms increase the range and damage of thrown magnetic objects at a cost of 1 bionic power per throw. They will create a trail of electricity that can cause additional damage.", - "price": 220000, - "weight": "1000 g", - "difficulty": 3, - "installation_data": "AID_bio_railgun" - }, - { - "id": "AID_bio_railgun", - "type": "GENERIC", - "copy-from": "AID_abstract", - "name": { "str_sp": "Railgun CBM installation data" }, - "description": "Precise step-by-step instructions and other required data for installation of Railgun CBM, stored on a data card of proprietary form-factor, designed to be used extensively by an Autodoc, and allowing bionic installation with minimal failure chance. Integrated security subroutine renders it unusable after installation." - }, { "id": "toolset_extended", "type": "TOOL", @@ -1003,21 +717,6 @@ "cutting": 1, "flags": [ "NO_UNWIELD", "BIONIC_WEAPON", "UNBREAKABLE_MELEE", "TRADER_AVOID" ] }, - { - "id": "UNARMED_WEAPON", - "type": "json_flag", - "//": "REMOVE After 0.G.", - "info": "This weapon can be used with unarmed fighting styles." - }, - { - "type": "mutation", - "id": "PORTAL_RESURRECTION", - "name": { "str": "Marked" }, - "description": "Sometimes when your mind wanders you can feel something inside yourself, deeper than any mere physical sensation. Your mind wants to call it a lifeline or a tendril or a leash. Whatever it is, something much bigger than you has an interest in your success.", - "points": 0, - "valid": false, - "purifiable": false - }, { "id": "lobotomizer", "type": "GENERIC", diff --git a/data/json/recipes/armor/storage.json b/data/json/recipes/armor/storage.json index d9463f433cbba..afa6f6c3cc4e7 100644 --- a/data/json/recipes/armor/storage.json +++ b/data/json/recipes/armor/storage.json @@ -2108,12 +2108,6 @@ ], "components": [ [ [ "strap_large", 1, "LIST" ] ] ] }, - { - "result": "rifle_case_xs_soft_leather", - "type": "recipe", - "copy-from": "rifle_case_soft_leather", - "time": "5 h" - }, { "result": "rifle_case_soft_2", "type": "recipe", diff --git a/data/mods/Aftershock/itemgroups/bionics_groups.json b/data/mods/Aftershock/itemgroups/bionics_groups.json index 254d6be04a98a..e937f4ea84067 100644 --- a/data/mods/Aftershock/itemgroups/bionics_groups.json +++ b/data/mods/Aftershock/itemgroups/bionics_groups.json @@ -98,10 +98,50 @@ } }, { - "id": "bionics_sci", "type": "item_group", - "copy-from": "bionics_sci", - "extend": { "items": [ [ "bn_bio_solar", 5 ] ] } + "id": "bionics_sci", + "subtype": "distribution", + "//": "High-tech bionics, handy for the harried researcher. They get access to classified toys too, but only stuff a scientist would have use for.", + "items": [ + [ "burnt_out_bionic", 60 ], + [ "bio_batteries", 30 ], + [ "bio_power_storage", 30 ], + [ "bio_metabolics", 5 ], + [ "bio_ethanol", 5 ], + [ "bio_ups", 10 ], + [ "bio_torsionratchet", 30 ], + [ "bio_tools", 10 ], + [ "bio_flashlight", 30 ], + [ "bio_lighter", 25 ], + [ "bio_magnet", 20 ], + [ "bio_memory", 15 ], + [ "bio_ears", 10 ], + [ "bio_sunglasses", 10 ], + [ "bio_eye_optic", 10 ], + [ "bio_eye_enhancer", 5 ], + [ "bio_dex_enhancer", 5 ], + [ "bio_int_enhancer", 10 ], + [ "bio_night_vision", 1 ], + [ "bio_infrared", 2 ], + [ "bio_synaptic_regen", 12 ], + [ "bio_gills", 5 ], + [ "bio_climate", 2 ], + [ "bio_heatsink", 2 ], + [ "bio_blood_filter", 10 ], + [ "bio_fingerhack", 2 ], + [ "bio_lockpick", 2 ], + [ "bio_surgical_razor", 8 ], + [ "bio_nanobots", 15 ], + [ "bio_blood_anal", 10 ], + [ "bio_geiger", 15 ], + [ "bio_radscrubber", 10 ], + [ "bio_watch", 40 ], + [ "bio_leukocyte", 15 ], + [ "bio_syringe", 2 ], + [ "bio_jointservo", 10 ], + [ "bio_soporific", 2 ], + [ "bn_bio_solar", 5 ] + ] }, { "id": "bionics_op", diff --git a/data/mods/DinoMod/items/itemgroups.json b/data/mods/DinoMod/items/itemgroups.json index 4552540a3fd82..1b673dda4ee42 100644 --- a/data/mods/DinoMod/items/itemgroups.json +++ b/data/mods/DinoMod/items/itemgroups.json @@ -165,6 +165,51 @@ { "item": "dino_carrier_wooden", "prob": 10 } ] }, + { + "type": "item_group", + "id": "bionics_sci", + "subtype": "distribution", + "//": "High-tech bionics, handy for the harried researcher. They get access to classified toys too, but only stuff a scientist would have use for.", + "items": [ + [ "burnt_out_bionic", 60 ], + [ "bio_batteries", 30 ], + [ "bio_power_storage", 30 ], + [ "bio_metabolics", 5 ], + [ "bio_ethanol", 5 ], + [ "bio_ups", 10 ], + [ "bio_torsionratchet", 30 ], + [ "bio_tools", 10 ], + [ "bio_flashlight", 30 ], + [ "bio_lighter", 25 ], + [ "bio_magnet", 20 ], + [ "bio_memory", 15 ], + [ "bio_ears", 10 ], + [ "bio_sunglasses", 10 ], + [ "bio_eye_optic", 10 ], + [ "bio_eye_enhancer", 5 ], + [ "bio_dex_enhancer", 5 ], + [ "bio_int_enhancer", 10 ], + [ "bio_night_vision", 1 ], + [ "bio_infrared", 2 ], + [ "bio_synaptic_regen", 12 ], + [ "bio_gills", 5 ], + [ "bio_climate", 2 ], + [ "bio_heatsink", 2 ], + [ "bio_blood_filter", 10 ], + [ "bio_fingerhack", 2 ], + [ "bio_lockpick", 2 ], + [ "bio_surgical_razor", 8 ], + [ "bio_nanobots", 15 ], + [ "bio_blood_anal", 10 ], + [ "bio_geiger", 15 ], + [ "bio_radscrubber", 10 ], + [ "bio_watch", 40 ], + [ "bio_leukocyte", 15 ], + [ "bio_syringe", 2 ], + [ "bio_jointservo", 10 ], + [ "bio_soporific", 2 ] + ] + }, { "type": "item_group", "id": "museum_armor_pet", diff --git a/data/mods/No_Hope/item_groups.json b/data/mods/No_Hope/item_groups.json index 2b23eef52caa4..3e2698078fada 100644 --- a/data/mods/No_Hope/item_groups.json +++ b/data/mods/No_Hope/item_groups.json @@ -281,6 +281,51 @@ ] } }, + { + "type": "item_group", + "id": "bionics_sci", + "subtype": "distribution", + "//": "High-tech bionics, handy for the harried researcher. They get access to classified toys too, but only stuff a scientist would have use for.", + "items": [ + [ "burnt_out_bionic", 60 ], + [ "bio_batteries", 30 ], + [ "bio_power_storage", 30 ], + [ "bio_metabolics", 5 ], + [ "bio_ethanol", 5 ], + [ "bio_ups", 10 ], + [ "bio_torsionratchet", 30 ], + [ "bio_tools", 10 ], + [ "bio_flashlight", 30 ], + [ "bio_lighter", 25 ], + [ "bio_magnet", 20 ], + [ "bio_memory", 15 ], + [ "bio_ears", 10 ], + [ "bio_sunglasses", 10 ], + [ "bio_eye_optic", 10 ], + [ "bio_eye_enhancer", 5 ], + [ "bio_dex_enhancer", 5 ], + [ "bio_int_enhancer", 10 ], + [ "bio_night_vision", 1 ], + [ "bio_infrared", 2 ], + [ "bio_synaptic_regen", 12 ], + [ "bio_gills", 5 ], + [ "bio_climate", 2 ], + [ "bio_heatsink", 2 ], + [ "bio_blood_filter", 10 ], + [ "bio_fingerhack", 2 ], + [ "bio_lockpick", 2 ], + [ "bio_surgical_razor", 8 ], + [ "bio_nanobots", 15 ], + [ "bio_blood_anal", 10 ], + [ "bio_geiger", 15 ], + [ "bio_radscrubber", 10 ], + [ "bio_watch", 40 ], + [ "bio_leukocyte", 15 ], + [ "bio_syringe", 2 ], + [ "bio_jointservo", 10 ], + [ "bio_soporific", 2 ] + ] + }, { "type": "item_group", "id": "bunker_basement_loot", diff --git a/data/mods/classic_zombies/items/blacklists.json b/data/mods/classic_zombies/items/blacklists.json index 8baf3bab5a6e1..332c09a082691 100644 --- a/data/mods/classic_zombies/items/blacklists.json +++ b/data/mods/classic_zombies/items/blacklists.json @@ -116,7 +116,6 @@ "bio_probability_travel", "bio_purifier", "bio_radscrubber", - "bio_railgun", "bio_razors", "bio_recycler", "bio_remote", From 1cf78f2f366164432ac47ec22aaa9095fedf0d34 Mon Sep 17 00:00:00 2001 From: Alexey Kim Date: Mon, 20 Mar 2023 06:59:18 +0200 Subject: [PATCH 3/7] Move mon_zombie_flamer out of base to Xedra and No Hope --- data/json/monsterdrops/feral_humans.json | 44 --------------- data/json/monsterdrops/zombie.json | 8 --- data/json/monstergroups/mammal.json | 1 - .../obsolete-0.G-monsters.json} | 3 +- data/json/speech.json | 36 ------------- data/mods/No_Hope/item_groups.json | 8 +++ data/mods/No_Hope/monsters.json | 49 ++++++++++++++++- .../itemgroups/monster_drops.json | 8 +++ .../Xedra_Evolved/monsters/bloodsuckers.json | 53 +++++++++++++++++++ 9 files changed, 117 insertions(+), 93 deletions(-) rename data/json/{monsters/obsolete.json => obsoletion/obsolete-0.G-monsters.json} (99%) diff --git a/data/json/monsterdrops/feral_humans.json b/data/json/monsterdrops/feral_humans.json index 672c506da2173..93f606219b67a 100644 --- a/data/json/monsterdrops/feral_humans.json +++ b/data/json/monsterdrops/feral_humans.json @@ -869,50 +869,6 @@ { "item": "cane", "damage": [ 1, 4 ], "prob": 100 } ] }, - { - "type": "item_group", - "subtype": "collection", - "id": "feral_granny", - "entries": [ - { - "distribution": [ - { "item": "transition_glasses_eye", "prob": 25, "damage": [ 1, 4 ] }, - { "item": "transition_glasses_reading", "prob": 25, "damage": [ 1, 4 ] }, - { "item": "transition_glasses_bifocal", "prob": 25, "damage": [ 1, 4 ] }, - { "item": "fancy_transition_glasses_eye", "prob": 25, "damage": [ 1, 4 ] } - ] - }, - { - "distribution": [ - { "item": "jersey", "damage": [ 1, 4 ], "prob": 5 }, - { "item": "linuxtshirt", "damage": [ 1, 4 ], "prob": 5 }, - { "item": "longshirt", "damage": [ 1, 4 ], "prob": 20 }, - { "item": "striped_shirt", "damage": [ 1, 4 ], "prob": 10 }, - { "item": "sweater", "damage": [ 1, 4 ], "prob": 20 }, - { "item": "sweatshirt", "damage": [ 1, 4 ], "prob": 20 }, - { "item": "tshirt", "damage": [ 1, 4 ], "prob": 10 }, - { "item": "polo_shirt", "damage": [ 1, 4 ], "prob": 10 } - ] - }, - { - "distribution": [ - { "item": "pants_checkered", "damage": [ 1, 4 ], "prob": 10 }, - { "item": "pants", "damage": [ 1, 4 ], "prob": 40 }, - { "item": "jeans", "damage": [ 1, 4 ], "prob": 20 }, - { "item": "flag_pants", "damage": [ 1, 4 ], "prob": 5 }, - { "item": "breeches", "damage": [ 1, 4 ], "prob": 25 } - ] - }, - { "item": "cane", "damage": [ 1, 4 ], "prob": 50 }, - { "item": "bra", "damage": [ 1, 4 ], "prob": 100 }, - { "item": "panties", "damage": [ 1, 4 ], "prob": 100 }, - { "item": "slippers", "damage": [ 1, 4 ], "prob": 100 }, - { "item": "cookies", "prob": 100 }, - { "group": "harddrugs", "prob": 10 }, - { "item": "dentures", "prob": 75 }, - { "item": "folded_wheelchair_generic", "damage": [ 1, 4 ], "prob": 100 } - ] - }, { "id": "feral_archaelogist_death_drops", "type": "item_group", diff --git a/data/json/monsterdrops/zombie.json b/data/json/monsterdrops/zombie.json index 5934d00bc3674..4e10a73e79599 100644 --- a/data/json/monsterdrops/zombie.json +++ b/data/json/monsterdrops/zombie.json @@ -73,14 +73,6 @@ { "group": "wallets", "damage": [ 1, 4 ] } ] }, - { - "type": "item_group", - "subtype": "collection", - "id": "mon_zombie_flamer", - "ammo": 50, - "magazine": 100, - "entries": [ { "item": "flamethrower", "charges-min": 0, "charges-max": 500 } ] - }, { "type": "item_group", "subtype": "collection", diff --git a/data/json/monstergroups/mammal.json b/data/json/monstergroups/mammal.json index 49057ba84a93d..b6360b52fd596 100644 --- a/data/json/monstergroups/mammal.json +++ b/data/json/monstergroups/mammal.json @@ -17,7 +17,6 @@ { "group": "GROUP_PET_DOGS", "weight": 90, "cost_multiplier": 0 }, { "monster": "mon_dog_mutant_mongrel", "weight": 7, "cost_multiplier": 0 }, { "monster": "mon_dog_incorporeal", "weight": 1, "cost_multiplier": 0 }, - { "monster": "mon_dog_telekenetic", "weight": 1, "cost_multiplier": 0 }, { "monster": "mon_dog_antimemetic", "weight": 1, "cost_multiplier": 0 } ] }, diff --git a/data/json/monsters/obsolete.json b/data/json/obsoletion/obsolete-0.G-monsters.json similarity index 99% rename from data/json/monsters/obsolete.json rename to data/json/obsoletion/obsolete-0.G-monsters.json index e751f3b20141e..4bad1d89263a4 100644 --- a/data/json/monsters/obsolete.json +++ b/data/json/obsoletion/obsolete-0.G-monsters.json @@ -193,7 +193,7 @@ "luminance": 8, "harvest": "zombie", "starting_ammo": { "pressurized_tank": 1000 }, - "death_drops": { "subtype": "collection", "groups": [ [ "mon_zombie_soldier_death_drops", 100 ], [ "mon_zombie_flamer", 100 ] ] }, + "death_drops": { "subtype": "collection", "groups": [ [ "mon_zombie_soldier_death_drops", 100 ] ] }, "death_function": { "effect": { "id": "death_fireball", "hit_self": true } }, "burn_into": "mon_zombie_scorched", "flags": [ @@ -309,7 +309,6 @@ "path_settings": { "max_dist": 30, "allow_climb_stairs": false, "allow_open_doors": true, "avoid_traps": true, "avoid_sharp": true }, "special_attacks": [ [ "PARROT", 15 ], [ "GRAB", 10 ], [ "SHRIEK", 70 ] ], "death_function": { "effect": { "id": "death_guilt", "min_level": 6 } }, - "death_drops": "feral_granny", "zombify_into": "mon_zombie_crawler", "fungalize_into": "mon_zombie_fungus", "anger_triggers": [ "FRIEND_DIED", "FRIEND_ATTACKED", "HURT" ], diff --git a/data/json/speech.json b/data/json/speech.json index 119a029789845..ef42d77ef1f66 100644 --- a/data/json/speech.json +++ b/data/json/speech.json @@ -2700,42 +2700,6 @@ "sound": "\"I'm 'bout to walk 15 miles both ways across yer ass!\"", "volume": 35 }, - { - "type": "speech", - "speaker": [ "mon_feral_granny" ], - "sound": "\"Do you want a cookie, honey?\"", - "volume": 20 - }, - { - "type": "speech", - "speaker": [ "mon_feral_granny" ], - "sound": "\"You're looking feverish. Let grandma make you some soup.\"", - "volume": 20 - }, - { - "type": "speech", - "speaker": [ "mon_feral_granny" ], - "sound": "\"The nice doctor told me he had invented an anti-aging powder!\"", - "volume": 20 - }, - { - "type": "speech", - "speaker": [ "mon_feral_granny" ], - "sound": "\"Are you here to bring me home?\"", - "volume": 20 - }, - { - "type": "speech", - "speaker": [ "mon_feral_granny" ], - "sound": "\"Give gramma some sugar!\"", - "volume": 20 - }, - { - "type": "speech", - "speaker": [ "mon_feral_granny" ], - "sound": "\"That's my purse! I don't know you!\"", - "volume": 20 - }, { "type": "speech", "speaker": [ "mon_zombie_brute_shocker", "mon_zombie_electric", "mon_zombie_nullfield", "mon_skeleton_electric" ], diff --git a/data/mods/No_Hope/item_groups.json b/data/mods/No_Hope/item_groups.json index 3e2698078fada..5a518c177ae43 100644 --- a/data/mods/No_Hope/item_groups.json +++ b/data/mods/No_Hope/item_groups.json @@ -326,6 +326,14 @@ [ "bio_soporific", 2 ] ] }, + { + "type": "item_group", + "subtype": "collection", + "id": "mon_zombie_flamer", + "ammo": 50, + "magazine": 100, + "entries": [ { "item": "flamethrower", "charges-min": 0, "charges-max": 500 } ] + }, { "type": "item_group", "id": "bunker_basement_loot", diff --git a/data/mods/No_Hope/monsters.json b/data/mods/No_Hope/monsters.json index 255d726f7f49d..e63720bb0ed3c 100644 --- a/data/mods/No_Hope/monsters.json +++ b/data/mods/No_Hope/monsters.json @@ -530,11 +530,56 @@ "type": "MONSTER", "name": { "str": "zombie burner" }, "description": "When bullets weren't enough to stop the end of the world, the military tried fire instead. Their failure is made manifest in this gas-masked husk, its black suit torn and ripped. Its flamethrower, dangling limply at its side, is attached to a tank of napalm strapped onto its back, which trickles its contents onto the ground.", - "copy-from": "mon_zombie_flamer", + "default_faction": "zombie", + "bodytype": "human", + "species": [ "ZOMBIE", "HUMAN" ], + "diff": 5, + "volume": "62500 ml", + "weight": "81500 g", + "hp": 100, + "speed": 70, + "material": [ "flesh" ], + "symbol": "Z", + "color": "white_red", + "aggression": 100, + "morale": 100, + "melee_skill": 5, + "melee_dice": 2, + "melee_dice_sides": 6, + "melee_damage": [ { "damage_type": "cut", "amount": 0 } ], + "dodge": 1, + "armor_bash": 12, + "armor_cut": 25, + "armor_bullet": 20, + "armor_elec": 4, + "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_body_armor", "wps_humanoid_open_helmet", "wps_humanoid_gasmask" ], + "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_wp_syn_armored" ], + "vision_day": 30, + "vision_night": 3, + "luminance": 8, + "harvest": "zombie", + "starting_ammo": { "pressurized_tank": 1000 }, "death_drops": { "subtype": "collection", "groups": [ [ "mon_zombie_soldier_death_drops_no_hope", 100 ], [ "mon_zombie_flamer", 100 ] ] - } + }, + "death_function": { "effect": { "id": "death_fireball", "hit_self": true } }, + "burn_into": "mon_zombie_scorched", + "flags": [ + "SEES", + "HEARS", + "SMELLS", + "STUMBLES", + "WARM", + "BASHES", + "GROUP_BASH", + "POISON", + "NO_BREATHE", + "REVIVES", + "PUSH_MON", + "DRIPS_NAPALM", + "FILTHY" + ] }, { "id": "mon_mech_recon", diff --git a/data/mods/Xedra_Evolved/itemgroups/monster_drops.json b/data/mods/Xedra_Evolved/itemgroups/monster_drops.json index 8d41eaf299520..c16eabb3ed67d 100644 --- a/data/mods/Xedra_Evolved/itemgroups/monster_drops.json +++ b/data/mods/Xedra_Evolved/itemgroups/monster_drops.json @@ -280,6 +280,14 @@ { "item": "fn57mag", "prob": 50, "ammo-item": "57mm_ss", "charges": [ 0, 15 ] } ] }, + { + "type": "item_group", + "subtype": "collection", + "id": "mon_zombie_flamer", + "ammo": 50, + "magazine": 100, + "entries": [ { "item": "flamethrower", "charges-min": 0, "charges-max": 500 } ] + }, { "id": "combat_cyborg_harvest", "type": "item_group", diff --git a/data/mods/Xedra_Evolved/monsters/bloodsuckers.json b/data/mods/Xedra_Evolved/monsters/bloodsuckers.json index 257457f271285..fa053ddfde429 100644 --- a/data/mods/Xedra_Evolved/monsters/bloodsuckers.json +++ b/data/mods/Xedra_Evolved/monsters/bloodsuckers.json @@ -339,6 +339,59 @@ ], "anger_triggers": [ "FRIEND_DIED", "FRIEND_ATTACKED", "HURT" ] }, + { + "id": "mon_zombie_flamer", + "type": "MONSTER", + "name": { "str": "zombie burner" }, + "description": "When bullets weren't enough to stop the end of the world, the military tried fire instead. Their failure is made manifest in this gas-masked husk, its black suit torn and ripped. Its flamethrower, dangling limply at its side, is attached to a tank of napalm strapped onto its back, which trickles its contents onto the ground.", + "default_faction": "zombie", + "bodytype": "human", + "species": [ "ZOMBIE", "HUMAN" ], + "diff": 5, + "volume": "62500 ml", + "weight": "81500 g", + "hp": 100, + "speed": 70, + "material": [ "flesh" ], + "symbol": "Z", + "color": "white_red", + "aggression": 100, + "morale": 100, + "melee_skill": 5, + "melee_dice": 2, + "melee_dice_sides": 6, + "melee_damage": [ { "damage_type": "cut", "amount": 0 } ], + "dodge": 1, + "armor_bash": 12, + "armor_cut": 25, + "armor_bullet": 20, + "armor_elec": 4, + "weakpoint_sets": [ "wps_humanoid_body", "wps_humanoid_body_armor", "wps_humanoid_open_helmet", "wps_humanoid_gasmask" ], + "families": [ "prof_intro_biology", "prof_wp_zombie", "prof_wp_syn_armored" ], + "vision_day": 30, + "vision_night": 3, + "luminance": 8, + "harvest": "zombie", + "starting_ammo": { "pressurized_tank": 1000 }, + "death_drops": { "subtype": "collection", "groups": [ [ "mon_zombie_soldier_death_drops", 100 ], [ "mon_zombie_flamer", 100 ] ] }, + "death_function": { "effect": { "id": "death_fireball", "hit_self": true } }, + "burn_into": "mon_zombie_scorched", + "flags": [ + "SEES", + "HEARS", + "SMELLS", + "STUMBLES", + "WARM", + "BASHES", + "GROUP_BASH", + "POISON", + "NO_BREATHE", + "REVIVES", + "PUSH_MON", + "DRIPS_NAPALM", + "FILTHY" + ] + }, { "id": "mon_renfield_bionic_monster", "type": "MONSTER", From 61503192af68b24aefad4173310af19b0c7f364e Mon Sep 17 00:00:00 2001 From: Alexey Kim Date: Mon, 20 Mar 2023 06:59:34 +0200 Subject: [PATCH 4/7] Remove 0.G obsoletions from data/json/items/obsolete.json --- data/json/items/obsolete.json | 1042 -------------------------- data/json/npcs/godco/classes.json | 2 +- data/json/vehicleparts/obsolete.json | 26 - 3 files changed, 1 insertion(+), 1069 deletions(-) delete mode 100644 data/json/vehicleparts/obsolete.json diff --git a/data/json/items/obsolete.json b/data/json/items/obsolete.json index c01d9bff92af5..8aa62cddfe91a 100644 --- a/data/json/items/obsolete.json +++ b/data/json/items/obsolete.json @@ -1,374 +1,4 @@ [ - { - "abstract": "mre_box", - "type": "GENERIC", - "symbol": ")", - "color": "brown", - "name": { "str": "MRE" }, - "category": "food", - "description": "A generic MRE box, you shouldn't see this.", - "price": 1500, - "price_postapoc": 1500, - "weight": "725 g", - "volume": "750 ml", - "material": [ "plastic" ], - "looks_like": "mre_beef_box", - "use_action": [ "DISASSEMBLE" ] - }, - { - "abstract": "mre_smallbox", - "type": "GENERIC", - "symbol": ")", - "color": "brown", - "name": { "str": "MRE small box", "str_pl": "MRE small boxes" }, - "category": "food", - "description": "A generic small MRE box, you shouldn't see this", - "price": 500, - "price_postapoc": 100, - "weight": "300 g", - "volume": "250 ml", - "material": [ "plastic" ], - "looks_like": "mre_beef_box", - "use_action": [ "DISASSEMBLE" ] - }, - { - "id": "mre_accessory", - "type": "GENERIC", - "copy-from": "mre_smallbox", - "name": { "str": "MRE - Accessory Pack", "str_pl": "MREs - Accessory Packs" }, - "description": "An MRE accessory pack containing a variety of utensils and drinks. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_accessory_pack" } - }, - { - "id": "mre_dessert", - "type": "GENERIC", - "copy-from": "mre_smallbox", - "name": { "str": "MRE - Dessert Pack", "str_pl": "MREs - Dessert Packs" }, - "description": "A sealed plastic bag containing an array of desserts. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_dessert_pack" } - }, - { - "id": "mre_chilibeans_box", - "type": "GENERIC", - "copy-from": "mre_box", - "name": { "str": "MRE - Chili & Beans", "str_pl": "MREs - Chili & Beans" }, - "description": "A 'Meal Ready to Eat' with a chili & beans entree and everything a vegetarian soldier needs. The contents will begin to rot once they're removed from this sealed bag. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_full_pack" } - }, - { - "id": "mre_bbqbeef_box", - "type": "GENERIC", - "copy-from": "mre_box", - "name": { "str": "MRE - BBQ Beef", "str_pl": "MREs - BBQ Beef" }, - "description": "A 'Meal Ready to Eat' with a BBQ beef entree and everything a hungry soldier needs. The contents will begin to rot once they're removed from this sealed bag. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_full_pack" } - }, - { - "id": "mre_chickennoodle_box", - "type": "GENERIC", - "copy-from": "mre_box", - "name": { "str": "MRE - Chicken & Noodles", "str_pl": "MREs - Chicken & Noodles" }, - "description": "A 'Meal Ready to Eat' with a chicken & noodles entree and everything a hungry soldier needs. The contents will begin to rot once they're removed from this sealed bag. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_full_pack" } - }, - { - "id": "mre_spaghetti_box", - "type": "GENERIC", - "copy-from": "mre_box", - "name": { "str": "MRE - Spaghetti", "str_pl": "MREs - Spaghetti" }, - "description": "A 'Meal Ready to Eat' with a spaghetti entree and everything a hungry soldier needs. The contents will begin to rot once they're removed from this sealed bag. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_full_pack" }, - "looks_like": "mre_veggy_box" - }, - { - "id": "mre_chicken_box", - "type": "GENERIC", - "copy-from": "mre_box", - "name": { "str": "MRE - Chicken Chunks", "str_pl": "MREs - Chicken Chunks" }, - "description": "A 'Meal Ready to Eat' with a chicken chunk entree and everything a hungry soldier needs. The contents will begin to rot once they're removed from this sealed bag. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_full_pack" } - }, - { - "id": "mre_beeftaco_box", - "type": "GENERIC", - "copy-from": "mre_box", - "name": { "str": "MRE - Beef Taco", "str_pl": "MREs - Beef Taco" }, - "description": "A 'Meal Ready to Eat' with a beef taco entree and everything a hungry soldier needs. The contents will begin to rot once they're removed from this sealed bag. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_full_pack" } - }, - { - "id": "mre_beef_box", - "type": "GENERIC", - "copy-from": "mre_box", - "name": { "str": "MRE - Beef Brisket", "str_pl": "MREs - Beef Brisket" }, - "description": "A 'Meal Ready to Eat' with a beef brisket entree and everything a hungry soldier needs. The contents will begin to rot once they're removed from this sealed bag. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_full_pack" } - }, - { - "id": "mre_meatball_box", - "type": "GENERIC", - "copy-from": "mre_box", - "name": { "str": "MRE - Meatballs & Marinara", "str_pl": "MREs - Meatballs & Marinara" }, - "description": "A 'Meal Ready to Eat' with a meatball entree and everything a hungry soldier needs. The contents will begin to rot once they're removed from this sealed bag. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_full_pack" } - }, - { - "id": "mre_beefstew_box", - "type": "GENERIC", - "copy-from": "mre_box", - "name": { "str": "MRE - Beef Stew", "str_pl": "MREs - Beef Stew" }, - "description": "A 'Meal Ready to Eat' with a beef stew entree and everything a hungry soldier needs. The contents will begin to rot once they're removed from this sealed bag. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_full_pack" } - }, - { - "id": "mre_chilimac_box", - "type": "GENERIC", - "copy-from": "mre_box", - "name": { "str": "MRE - Chili & Macaroni", "str_pl": "MREs - Chili & Macaroni" }, - "description": "A 'Meal Ready to Eat' with a chili & macaroni entree and everything a hungry soldier needs. The contents will begin to rot once they're removed from this sealed bag. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_full_pack" }, - "looks_like": "mre_veggy_box" - }, - { - "id": "mre_veggy_box", - "type": "GENERIC", - "copy-from": "mre_box", - "name": { "str": "MRE - Vegetarian Taco", "str_pl": "MREs - Vegetarian Taco" }, - "description": "A 'Meal Ready to Eat' with a vegetarian taco entree and everything a hungry soldier needs. The contents will begin to rot once they're removed from this sealed bag. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_full_pack" } - }, - { - "id": "mre_macaronimarinara_box", - "type": "GENERIC", - "copy-from": "mre_box", - "name": { "str": "MRE - Macaroni Marinara", "str_pl": "MREs - Macaroni Marinara" }, - "description": "A 'Meal Ready to Eat' with a macaroni marinara entree and everything a hungry soldier needs. The contents will begin to rot once they're removed from this sealed bag. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_full_pack" }, - "looks_like": "mre_veggy_box" - }, - { - "id": "mre_sfettuccine_box", - "type": "GENERIC", - "copy-from": "mre_box", - "name": { "str": "MRE - Spinach Fettuccine", "str_pl": "MREs - Spinach Fettuccine" }, - "description": "A 'Meal Ready to Eat' with a creamy spinach fettuccine entree and everything a vegetarian soldier needs. The contents will begin to rot once they're removed from this sealed bag. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_full_pack" }, - "looks_like": "mre_veggy_box" - }, - { - "id": "mre_ratatouille_box", - "type": "GENERIC", - "copy-from": "mre_box", - "name": { "str": "MRE - Ratatouille", "str_pl": "MREs - Ratatouille" }, - "description": "A 'Meal Ready to Eat' with a ratatouille entree and everything a vegetarian soldier needs. The contents will begin to rot once they're removed from this sealed bag. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_full_pack" }, - "looks_like": "mre_veggy_box" - }, - { - "id": "mre_cheesetort_box", - "type": "GENERIC", - "copy-from": "mre_box", - "name": { "str": "MRE - Cheese Tortellini", "str_pl": "MREs - Cheese Tortellini" }, - "description": "A 'Meal Ready to Eat' with a cheese tortellini entree and everything a hungry soldier needs. The contents will begin to rot once they're removed from this sealed bag. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_full_pack" }, - "looks_like": "mre_veggy_box" - }, - { - "id": "mre_mushroomfettuccine_box", - "type": "GENERIC", - "copy-from": "mre_box", - "name": { "str": "MRE - Mushroom Fettuccine", "str_pl": "MREs - Mushroom Fettuccine" }, - "description": "A 'Meal Ready to Eat' with a mushroom fettuccine entree and everything a hungry soldier needs. The contents will begin to rot once they're removed from this sealed bag. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_full_pack" }, - "looks_like": "mre_veggy_box" - }, - { - "id": "mre_mexicanchickenstew_box", - "type": "GENERIC", - "copy-from": "mre_box", - "name": { "str": "MRE - Mexican Chicken Stew", "str_pl": "MREs - Mexican Chicken Stew" }, - "description": "A 'Meal Ready to Eat' with a Mexican chicken stew entree and everything a hungry soldier needs. The contents will begin to rot once they're removed from this sealed bag. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_full_pack" }, - "looks_like": "mre_beef_box" - }, - { - "id": "mre_chickenburritobowl_box", - "type": "GENERIC", - "copy-from": "mre_box", - "name": { "str": "MRE - Chicken Burrito Bowl", "str_pl": "MREs - Chicken Burrito Bowl" }, - "description": "A 'Meal Ready to Eat' with a chicken burrito bowl entree and everything a hungry soldier needs. The contents will begin to rot once they're removed from this sealed bag. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_full_pack" } - }, - { - "id": "mre_maplesausage_box", - "type": "GENERIC", - "copy-from": "mre_box", - "name": { "str": "MRE - Maple Sausage", "str_pl": "MREs - Maple Sausage" }, - "description": "A 'Meal Ready to Eat' with a maple sausage entree and everything a hungry soldier needs. The contents will begin to rot once they're removed from this sealed bag. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_full_pack" } - }, - { - "id": "mre_ravioli_box", - "type": "GENERIC", - "copy-from": "mre_box", - "name": { "str": "MRE - Ravioli", "str_pl": "MREs - Ravioli" }, - "description": "A 'Meal Ready to Eat' with a ravioli entree and everything a hungry soldier needs. The contents will begin to rot once they're removed from this sealed bag. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_full_pack" } - }, - { - "id": "mre_pepperjackbeef_box", - "type": "GENERIC", - "copy-from": "mre_box", - "name": { "str": "MRE - Pepper Jack Beef", "str_pl": "MREs - Pepper Jack Beef" }, - "description": "A 'Meal Ready to Eat' with a pepper jack beef entree and everything a hungry soldier needs. The contents will begin to rot once they're removed from this sealed bag. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_full_pack" } - }, - { - "id": "mre_hashbrownbacon_box", - "type": "GENERIC", - "copy-from": "mre_box", - "name": { "str": "MRE - Hash Browns & Bacon", "str_pl": "MREs - Hash Browns & Bacon" }, - "description": "A 'Meal Ready to Eat' with a hash browns & bacon entree and everything a hungry soldier needs. The contents will begin to rot once they're removed from this sealed bag. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_full_pack" } - }, - { - "id": "mre_lemontuna_box", - "type": "GENERIC", - "copy-from": "mre_box", - "name": { "str": "MRE - Lemon Pepper Tuna", "str_pl": "MREs - Lemon Pepper Tuna" }, - "description": "A 'Meal Ready to Eat' with a lemon pepper tuna entree and everything a hungry soldier needs. The contents will begin to rot once they're removed from this sealed bag. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_full_pack" } - }, - { - "id": "mre_asianbeef_box", - "type": "GENERIC", - "copy-from": "mre_box", - "name": { "str": "MRE - Asian Beef & Vegetables", "str_pl": "MREs - Asian Beef & Vegetables" }, - "description": "A 'Meal Ready to Eat' with an Asian beef & vegetables entree and everything a hungry soldier needs. The contents will begin to rot once they're removed from this sealed bag. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_full_pack" } - }, - { - "id": "mre_chickenpesto_box", - "type": "GENERIC", - "copy-from": "mre_box", - "name": { "str": "MRE - Chicken Pesto & Pasta", "str_pl": "MREs - Chicken Pesto & Pasta" }, - "description": "A 'Meal Ready to Eat' with a chicken pesto entree and everything a hungry soldier needs. The contents will begin to rot once they're removed from this sealed bag. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_full_pack" } - }, - { - "id": "mre_southwestbeef_box", - "type": "GENERIC", - "copy-from": "mre_box", - "name": { "str": "MRE - Southwest Beef & Beans", "str_pl": "MREs - Southwest Beef & Beans" }, - "description": "A 'Meal Ready to Eat' with a southwest beef & beans entree and everything a hungry soldier needs. The contents will begin to rot once they're removed from this sealed bag. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_full_pack" } - }, - { - "id": "mre_hotdog_box", - "type": "GENERIC", - "copy-from": "mre_box", - "name": { "str": "MRE - Frankfurters & Beans", "str_pl": "MREs - Frankfurters & Beans" }, - "description": "A vintage MRE, still perfectly preserved and edible. The contents will begin to rot once they're removed from this sealed bag. Activate or disassemble it to get to its contents.", - "use_action": { "type": "unpack", "group": "mre_full_pack" }, - "price": 1000 - }, - { - "id": "inj_vitb", - "type": "COMESTIBLE", - "comestible_type": "MED", - "name": { "str": "injectable vitamin B" }, - "description": "Small vials of pale yellow liquid containing soluble vitamin B for injection.", - "weight": "40 g", - "volume": "250 ml", - "price": 150, - "price_postapoc": 500, - "charges": 2, - "stack_size": 10, - "symbol": "!", - "color": "magenta", - "flags": [ "NO_INGEST", "IRREPLACEABLE_CONSUMABLE" ], - "use_action": { "type": "consume_drug", "activation_message": "You inject some vitamin B.", "tools_needed": { "syringe": -1 } } - }, - { - "id": "aep_suit", - "type": "ARMOR", - "category": "armor", - "name": { "str": "AEP suit" }, - "description": "An armored environmental protection suit. Custom-built from a cleansuit and body armor, it provides excellent protection against both physical harm and ambient radiation.", - "weight": "7200 g", - "volume": "9 L", - "price": 140000, - "price_postapoc": 6000, - "material": [ "kevlar_layered", "plastic" ], - "symbol": "[", - "looks_like": "hazmat_suit", - "color": "light_red", - "armor": [ - { "covers": [ "torso" ], "coverage": 100, "encumbrance": [ 10, 15 ] }, - { "covers": [ "leg_l", "leg_r" ], "coverage": 100, "encumbrance": [ 10, 15 ] }, - { "covers": [ "arm_l", "arm_r" ], "coverage": 100, "encumbrance": [ 10, 10 ] } - ], - "pocket_data": [ - { - "pocket_type": "CONTAINER", - "max_contains_volume": "1 L", - "max_contains_weight": "3 kg", - "max_item_length": "18 cm", - "moves": 80 - }, - { - "pocket_type": "CONTAINER", - "max_contains_volume": "1 L", - "max_contains_weight": "3 kg", - "max_item_length": "18 cm", - "moves": 80 - }, - { - "pocket_type": "CONTAINER", - "max_contains_volume": "1 L", - "max_contains_weight": "3 kg", - "max_item_length": "18 cm", - "moves": 80 - }, - { - "pocket_type": "CONTAINER", - "max_contains_volume": "1 L", - "max_contains_weight": "3 kg", - "max_item_length": "18 cm", - "moves": 80 - } - ], - "warmth": 35, - "material_thickness": 7, - "environmental_protection": 9, - "flags": [ "VARSIZE", "WATERPROOF", "HOOD", "RAINPROOF", "STURDY", "RAD_RESIST", "OUTER" ] - }, - { - "id": "anbc_suit", - "type": "ARMOR", - "category": "armor", - "name": { "str": "ANBC suit" }, - "description": "An armored, impermeable full-body suit that functions as body armor, as well as protecting from nuclear, biological, and chemical hazards. It requires a separate gas mask for full protection.", - "weight": "8700 g", - "volume": "20 L", - "price": 400000, - "price_postapoc": 9000, - "material": [ "kevlar_layered", "plastic" ], - "symbol": "[", - "looks_like": "hazmat_suit", - "color": "light_red", - "warmth": 50, - "material_thickness": 7, - "environmental_protection": 20, - "flags": [ "VARSIZE", "WATERPROOF", "RAINPROOF", "GAS_PROOF", "STURDY", "RAD_PROOF", "ELECTRIC_IMMUNE", "OUTER" ], - "armor": [ - { - "encumbrance": 35, - "coverage": 100, - "covers": [ "head", "torso", "arm_l", "arm_r", "hand_l", "hand_r", "leg_l", "leg_r", "foot_l", "foot_r" ] - } - ] - }, { "type": "GENERIC", "id": "spidery_legs_big", @@ -382,131 +12,6 @@ "material": [ "steel" ], "category": "spare_parts" }, - { - "id": "rock_pot", - "type": "GENERIC", - "category": "tools", - "name": { "str": "stone pot" }, - "description": "A large stone, roughly hollowed out into a pot.", - "weight": "1500 g", - "volume": "2 L", - "price": 0, - "to_hit": -1, - "bashing": 4, - "material": [ "stone" ], - "symbol": ";", - "color": "dark_gray", - "pocket_data": [ - { - "max_contains_volume": "1500 ml", - "max_contains_weight": "3 kg", - "watertight": true, - "open_container": true, - "rigid": true - } - ], - "qualities": [ [ "COOK", 2 ], [ "BOIL", 1 ], [ "CONTAIN", 1 ] ], - "use_action": [ "HEAT_FOOD" ], - "flags": [ "ALLOWS_REMOTE_USE" ] - }, - { - "type": "AMMO", - "id": "chem_match_head_powder", - "category": "chems", - "price": 50, - "price_postapoc": 10, - "name": { "str_sp": "match head powder" }, - "symbol": "=", - "color": "light_red", - "description": "Some match head powder from match heads, similar to black gunpowder but a bit weaker. It can be used in crafting explosives and fuses when other, more suitable candidates are less available.", - "material": [ "powder" ], - "volume": "10 ml", - "weight": "2050 mg", - "bashing": 1, - "ammo_type": "components", - "container": "bag_plastic", - "count": 10 - }, - { - "id": "helmet_lobster", - "repairs_like": "xlkevlar", - "type": "ARMOR", - "category": "armor", - "name": { "str": "lobster helmet" }, - "description": "A heavy helmet that provides excellent protection from all sorts of damage. It has a tail coming off the back that provides protection to your neck.", - "weight": "1383 g", - "volume": "2 L", - "price": 28000, - "price_postapoc": 3000, - "to_hit": -1, - "bashing": 10, - "material": [ "kevlar_rigid", "plastic" ], - "symbol": "[", - "looks_like": "helmet_barbute", - "color": "light_gray", - "armor": [ - { "covers": [ "head" ], "coverage": 98, "encumbrance": 20 }, - { "covers": [ "eyes" ], "coverage": 65, "encumbrance": 0 }, - { "covers": [ "mouth" ], "coverage": 40, "encumbrance": 0 } - ], - "warmth": 20, - "material_thickness": 4, - "techniques": [ "WBLOCK_1" ], - "flags": [ "VARSIZE", "WATERPROOF", "STURDY" ] - }, - { - "id": "kevlar_chainmail_hauberk", - "type": "ARMOR", - "name": { "str": "Kevlar chainmail hauberk" }, - "description": "A fully customized chainmail outfit, leaving the head uncovered. The shirt, arms, and leggings have been modified with straps and combined with a kevlar gambeson to deal with uneven weight distribution, cold environments and to allow them to be used separately.", - "copy-from": "chainmail_hauberk", - "material": [ { "type": "steel", "portion": 5 }, { "type": "kevlar_layered", "portion": 3 }, { "type": "kevlar", "portion": 2 } ] - }, - { - "id": "xl_kevlar_chainmail_hauberk", - "type": "ARMOR", - "name": { "str": "XL Kevlar chainmail hauberk" }, - "copy-from": "kevlar_chainmail_hauberk", - "proportional": { "weight": 1.125, "volume": 1.13, "price": 1.25 }, - "extend": { "flags": [ "OVERSIZE" ] } - }, - { - "id": "kevlar_chainmail_hauberk_xs", - "type": "ARMOR", - "copy-from": "kevlar_chainmail_hauberk", - "looks_like": "kevlar_chainmail_hauberk", - "name": { "str": "XS kevlar chainmail hauberk" }, - "proportional": { "weight": 0.75, "volume": 0.75, "price": 0.5 }, - "flags": [ "UNDERSIZE" ] - }, - { - "id": "kevlar_chainmail_suit", - "type": "ARMOR", - "name": { "str": "Kevlar chainmail armor" }, - "description": "A fully customized chainmail suit. The shirt, arms, and leggings have been modified with straps and combined with a kevlar gambeson to deal with uneven weight distribution, cold environments and to allow them to be used separately.", - "copy-from": "chainmail_suit", - "material_thickness": 6, - "material": [ { "type": "steel", "portion": 5 }, { "type": "kevlar_layered", "portion": 3 }, { "type": "kevlar", "portion": 2 } ], - "armor": [ { "encumbrance": 20, "coverage": 95, "covers": [ "head", "torso", "leg_l", "leg_r", "arm_l", "arm_r" ] } ], - "flags": [ "VARSIZE", "STURDY", "OUTER", "NONCONDUCTIVE" ] - }, - { - "id": "xl_kevlar_chainmail_suit", - "type": "ARMOR", - "name": { "str": "XL Kevlar chainmail armor" }, - "copy-from": "kevlar_chainmail_suit", - "proportional": { "weight": 1.125, "volume": 1.13, "price": 1.25 }, - "extend": { "flags": [ "OVERSIZE" ] } - }, - { - "id": "kevlar_chainmail_suit_xs", - "type": "ARMOR", - "copy-from": "kevlar_chainmail_suit", - "looks_like": "kevlar_chainmail_suit", - "name": { "str": "XS kevlar chainmail armor" }, - "proportional": { "weight": 0.75, "volume": 0.75, "price": 0.5 }, - "flags": [ "VARSIZE", "STURDY", "OUTER", "NONCONDUCTIVE", "UNDERSIZE" ] - }, { "id": "chainmail_hauberk", "type": "ARMOR", @@ -533,23 +38,6 @@ } ] }, - { - "id": "xl_chainmail_hauberk", - "type": "ARMOR", - "name": { "str": "XL chainmail hauberk" }, - "copy-from": "chainmail_hauberk", - "proportional": { "weight": 1.125, "volume": 1.13, "price": 1.25 }, - "extend": { "flags": [ "OVERSIZE" ] } - }, - { - "id": "chainmail_hauberk_xs", - "type": "ARMOR", - "copy-from": "chainmail_hauberk", - "looks_like": "chainmail_hauberk", - "name": { "str": "XS chainmail hauberk" }, - "proportional": { "weight": 0.75, "volume": 0.75, "price": 0.5 }, - "extend": { "flags": [ "UNDERSIZE" ] } - }, { "id": "chainmail_suit", "type": "ARMOR", @@ -576,23 +64,6 @@ } ] }, - { - "id": "xl_chainmail_suit", - "type": "ARMOR", - "name": { "str": "XL chainmail armor" }, - "copy-from": "chainmail_suit", - "proportional": { "weight": 1.125, "volume": 1.13, "price": 1.25 }, - "extend": { "flags": [ "OVERSIZE" ] } - }, - { - "id": "chainmail_suit_xs", - "type": "ARMOR", - "copy-from": "chainmail_suit", - "looks_like": "chainmail_suit", - "name": { "str": "XS chainmail armor" }, - "proportional": { "weight": 0.75, "volume": 0.75, "price": 0.5 }, - "extend": { "flags": [ "UNDERSIZE" ] } - }, { "id": "armor_plate", "type": "ARMOR", @@ -615,23 +86,6 @@ "flags": [ "VARSIZE", "OUTER" ], "armor": [ { "encumbrance": 50, "coverage": 90, "covers": [ "torso", "leg_l", "leg_r", "arm_l", "arm_r" ] } ] }, - { - "id": "xl_armor_plate", - "type": "ARMOR", - "name": { "str": "XL ornamental plate armor" }, - "copy-from": "armor_plate", - "proportional": { "weight": 1.125, "volume": 1.13, "price": 1.25 }, - "flags": [ "VARSIZE", "OUTER", "OVERSIZE" ] - }, - { - "id": "xs_armor_plate", - "type": "ARMOR", - "copy-from": "armor_plate", - "looks_like": "armor_plate", - "name": { "str": "XS ornamental plate armor" }, - "proportional": { "weight": 0.75, "volume": 0.75, "price": 0.5 }, - "flags": [ "VARSIZE", "OUTER", "UNDERSIZE" ] - }, { "id": "armor_lightplate", "type": "ARMOR", @@ -697,25 +151,6 @@ } ] }, - { - "id": "xl_chainmail_hood", - "type": "ARMOR", - "copy-from": "chainmail_hood", - "name": { "str": "XL chainmail coif" }, - "description": "A customized chainmail hood. Can be worn comfortably under helmets. Comes in XL size.", - "proportional": { "weight": 1.25, "volume": 1.3, "price": 1.25 }, - "flags": [ "VARSIZE", "STURDY", "OVERSIZE" ] - }, - { - "id": "xs_chainmail_hood", - "type": "ARMOR", - "copy-from": "chainmail_hood", - "looks_like": "chainmail_hood", - "name": { "str": "XS chainmail coif" }, - "description": "A customized chainmail hood. Can be worn comfortably under helmets. Comes in XS size.", - "proportional": { "weight": 0.75, "volume": 0.75, "price": 0.5 }, - "flags": [ "VARSIZE", "STURDY", "UNDERSIZE" ] - }, { "id": "chainmail_vest", "type": "ARMOR", @@ -741,22 +176,6 @@ } ] }, - { - "id": "xl_chainmail_vest", - "type": "ARMOR", - "name": { "str": "XL chainmail vest" }, - "copy-from": "chainmail_vest", - "proportional": { "weight": 1.125, "volume": 1.13, "price": 1.25 }, - "extend": { "flags": [ "OVERSIZE" ] } - }, - { - "id": "xs_chainmail_vest", - "type": "ARMOR", - "copy-from": "chainmail_vest", - "name": { "str": "XS chainmail vest" }, - "proportional": { "weight": 0.75, "volume": 0.75, "price": 0.5 }, - "extend": { "flags": [ "UNDERSIZE" ] } - }, { "id": "chainmail_arms", "type": "ARMOR", @@ -783,26 +202,6 @@ } ] }, - { - "id": "xl_chainmail_arms", - "type": "ARMOR", - "name": { "str": "pair of XL chainmail sleeves", "str_pl": "pairs of XL chainmail sleeves" }, - "description": "Customized chainmail arms. Each sleeve has straps to connect them with each other. The lack of fingers makes them less cumbersome and allows them to be used with gloves. These are oversized.", - "weight": "3212 g", - "volume": "1050 ml", - "copy-from": "chainmail_arms", - "extend": { "flags": [ "OVERSIZE" ] } - }, - { - "id": "xs_chainmail_arms", - "type": "ARMOR", - "copy-from": "chainmail_arms", - "looks_like": "chainmail_arms", - "name": { "str": "pair of XS chainmail sleeves", "str_pl": "pairs of XS chainmail sleeves" }, - "description": "Customized chainmail arms. Each sleeve has straps to connect them with each other. The lack of fingers makes them less cumbersome and allows them to be used with gloves. These are undersized", - "proportional": { "weight": 0.75, "volume": 0.75, "price": 0.5 }, - "extend": { "flags": [ "UNDERSIZE" ] } - }, { "id": "chainmail_hands", "type": "ARMOR", @@ -828,23 +227,6 @@ } ] }, - { - "id": "xl_chainmail_hands", - "type": "ARMOR", - "name": { "str": "pair of XL chainmail gloves", "str_pl": "pairs of XL chainmail gloves" }, - "copy-from": "chainmail_hands", - "proportional": { "weight": 1.5, "volume": 1.5 }, - "extend": { "flags": [ "OVERSIZE" ] } - }, - { - "id": "xs_chainmail_hands", - "type": "ARMOR", - "copy-from": "chainmail_hands", - "looks_like": "chainmail_hands", - "name": { "str": "pair of XS chainmail gloves", "str_pl": "pairs of XS chainmail gloves" }, - "proportional": { "weight": 0.75, "volume": 0.75, "price": 0.5 }, - "extend": { "flags": [ "UNDERSIZE" ] } - }, { "id": "chainmail_legs", "type": "ARMOR", @@ -870,24 +252,6 @@ } ] }, - { - "id": "xl_chainmail_legs", - "type": "ARMOR", - "copy-from": "chainmail_legs", - "name": { "str": "XL chainmail leggings", "str_pl": "pairs of XL chainmail leggings" }, - "description": "Customized chainmail legs for the largest of transhumans. Their straps keep everything in place, and the lack of toes and heels allows them to work perfectly well with footwear.", - "proportional": { "weight": 1.25, "volume": 1.13, "price": 1.25 }, - "extend": { "flags": [ "OVERSIZE" ] } - }, - { - "id": "xs_chainmail_legs", - "type": "ARMOR", - "copy-from": "chainmail_legs", - "name": { "str": "XS chainmail leggings", "str_pl": "pairs of XS chainmail leggings" }, - "description": "Customized chainmail legs for the smallest of transhumans. Their straps keep everything in place, and the lack of toes and heels allows them to work perfectly well with footwear.", - "proportional": { "weight": 0.75, "volume": 0.75, "price": 0.5 }, - "extend": { "flags": [ "UNDERSIZE" ] } - }, { "id": "chainmail_feet", "type": "ARMOR", @@ -912,412 +276,6 @@ } ] }, - { - "id": "xl_chainmail_feet", - "type": "ARMOR", - "name": { "str": "pair of XL chainmail chausses", "str_pl": "pairs of XL chainmail chausses" }, - "copy-from": "chainmail_feet", - "proportional": { "weight": 2, "volume": 2 }, - "extend": { "flags": [ "OVERSIZE" ] } - }, - { - "id": "xs_chainmail_feet", - "type": "ARMOR", - "copy-from": "chainmail_feet", - "looks_like": "chainmail_feet", - "name": { "str": "pair of XS chainmail chausses", "str_pl": "pairs of XS chainmail chausses" }, - "proportional": { "weight": 0.75, "volume": 0.75, "price": 0.5 }, - "extend": { "flags": [ "UNDERSIZE" ] } - }, - { - "id": "armor_scavenger", - "type": "ARMOR", - "name": { "str": "scavenger gear" }, - "description": "A sturdy scavenger's outfit made from refitted pre-Cataclysm protective gear reinforced with soft armor panels. It has a lot of storage space.", - "weight": "7915 g", - "volume": "7500 ml", - "price": 180000, - "price_postapoc": 2000, - "to_hit": -3, - "material": [ "kevlar_layered", "nylon", "cotton" ], - "symbol": "[", - "looks_like": "armor_nomad", - "color": "green", - "armor": [ - { - "material": [ - { "type": "nylon", "covered_by_mat": 100, "thickness": 1.0 }, - { "type": "kevlar_layered", "covered_by_mat": 95, "thickness": 4.4 } - ], - "volume_encumber_modifier": 0.2, - "encumbrance": 15, - "coverage": 100, - "cover_vitals": 90, - "covers": [ "torso" ] - }, - { - "material": [ - { "type": "nylon", "covered_by_mat": 100, "thickness": 1.0 }, - { "type": "kevlar_layered", "covered_by_mat": 80, "thickness": 4.4 } - ], - "encumbrance": 15, - "volume_encumber_modifier": 0, - "coverage": 100, - "cover_vitals": 90, - "covers": [ "arm_l", "arm_r" ] - }, - { - "material": [ - { "type": "cotton", "covered_by_mat": 100, "thickness": 1.0 }, - { "type": "kevlar_layered", "covered_by_mat": 80, "thickness": 4.4 } - ], - "volume_encumber_modifier": 0.1, - "encumbrance": 10, - "coverage": 100, - "cover_vitals": 90, - "covers": [ "leg_l", "leg_r" ] - } - ], - "pocket_data": [ - { - "pocket_type": "CONTAINER", - "description": "Deep leg holster", - "holster": true, - "min_item_volume": "500 ml", - "max_contains_volume": "1500 ml", - "max_contains_weight": "5 kg", - "max_item_length": "45 cm", - "moves": 70 - }, - { - "magazine_well": "350 ml", - "description": "Small sheath", - "holster": true, - "max_contains_volume": "750 ml", - "max_contains_weight": "2 kg", - "max_item_length": "70 cm", - "moves": 20, - "flag_restriction": [ "SHEATH_KNIFE" ] - }, - { - "pocket_type": "CONTAINER", - "description": "Magazine pocket", - "max_item_length": "240 mm", - "max_contains_volume": "750 ml", - "max_contains_weight": "2 kg", - "moves": 40, - "flag_restriction": [ "MAG_COMPACT" ] - }, - { - "pocket_type": "CONTAINER", - "description": "Magazine pocket", - "max_item_length": "240 mm", - "max_contains_volume": "750 ml", - "max_contains_weight": "2 kg", - "moves": 40, - "flag_restriction": [ "MAG_COMPACT" ] - }, - { - "pocket_type": "CONTAINER", - "description": "Magazine pocket", - "max_item_length": "240 mm", - "max_contains_volume": "750 ml", - "max_contains_weight": "2 kg", - "moves": 40, - "flag_restriction": [ "MAG_COMPACT" ] - }, - { - "pocket_type": "CONTAINER", - "description": "Magazine pocket", - "max_item_length": "240 mm", - "max_contains_volume": "750 ml", - "max_contains_weight": "2 kg", - "moves": 40, - "flag_restriction": [ "MAG_COMPACT" ] - }, - { "pocket_type": "CONTAINER", "max_contains_volume": "8 L", "max_contains_weight": "16 kg", "moves": 150 }, - { "pocket_type": "CONTAINER", "max_contains_volume": "4 L", "max_contains_weight": "8 kg", "moves": 100 }, - { "pocket_type": "CONTAINER", "max_contains_volume": "4 L", "max_contains_weight": "8 kg", "moves": 100 }, - { "pocket_type": "CONTAINER", "max_contains_volume": "2 L", "max_contains_weight": "3 kg", "moves": 80 }, - { "pocket_type": "CONTAINER", "max_contains_volume": "1 L", "max_contains_weight": "2 kg", "moves": 80 }, - { "pocket_type": "CONTAINER", "max_contains_volume": "1 L", "max_contains_weight": "2 kg", "moves": 80 }, - { - "pocket_type": "CONTAINER", - "ablative": true, - "volume_encumber_modifier": 0, - "max_contains_volume": "1600 ml", - "max_contains_weight": "5 kg", - "moves": 200, - "description": "Pocket for front plate", - "flag_restriction": [ "ABLATIVE_LARGE" ] - }, - { - "pocket_type": "CONTAINER", - "ablative": true, - "volume_encumber_modifier": 0, - "max_contains_volume": "1600 ml", - "max_contains_weight": "5 kg", - "moves": 200, - "description": "Pocket for back plate", - "flag_restriction": [ "ABLATIVE_LARGE" ] - }, - { - "pocket_type": "CONTAINER", - "ablative": true, - "volume_encumber_modifier": 0, - "max_contains_volume": "800 ml", - "max_contains_weight": "2 kg", - "moves": 200, - "description": "Pocket for right side plate", - "flag_restriction": [ "ABLATIVE_MEDIUM" ] - }, - { - "pocket_type": "CONTAINER", - "ablative": true, - "volume_encumber_modifier": 0, - "max_contains_volume": "800 ml", - "max_contains_weight": "2 kg", - "moves": 200, - "description": "Pocket for left side plate", - "flag_restriction": [ "ABLATIVE_MEDIUM" ] - } - ], - "warmth": 40, - "material_thickness": 5, - "valid_mods": [ "steel_padded" ], - "environmental_protection": 2, - "flags": [ "VARSIZE", "POCKETS", "STURDY", "WATERPROOF", "OUTER", "BELTED" ] - }, - { - "id": "swat_armor", - "repairs_like": "survivor_suit", - "type": "ARMOR", - "category": "armor", - "name": { "str": "SWAT armor" }, - "//": "This is well within the pricing structure I found for ballistic vest, shins, and LBE. LEO gear ain't cheap.", - "description": "A suit of black armour plating covering the vital parts of the chest, arms, and legs. The word SWAT is emblazoned across the back.", - "weight": "2200 g", - "volume": "9 L", - "price": 285000, - "price_postapoc": 2500, - "to_hit": -3, - "material": [ "kevlar", "thermo_resin", "plastic" ], - "symbol": "[", - "longest_side": "40 cm", - "looks_like": "armor_riot", - "color": "dark_gray", - "armor": [ - { "covers": [ "torso" ], "coverage": 65, "encumbrance": [ 10, 17 ] }, - { "covers": [ "leg_l", "leg_r" ], "coverage": 65, "encumbrance": [ 10, 14 ] }, - { "covers": [ "arm_l", "arm_r" ], "coverage": 60, "encumbrance": [ 12, 12 ] } - ], - "pocket_data": [ - { "pocket_type": "CONTAINER", "max_contains_volume": "1 L", "max_contains_weight": "3 kg", "moves": 80 }, - { "pocket_type": "CONTAINER", "max_contains_volume": "1 L", "max_contains_weight": "3 kg", "moves": 80 }, - { "pocket_type": "CONTAINER", "max_contains_volume": "1500 ml", "max_contains_weight": "3 kg", "moves": 120 }, - { "pocket_type": "CONTAINER", "max_contains_volume": "1500 ml", "max_contains_weight": "3 kg", "moves": 120 } - ], - "warmth": 12, - "material_thickness": 5, - "environmental_protection": 1, - "flags": [ "POCKETS", "STURDY", "OUTER" ] - }, - { - "id": "dragonskinempty", - "repairs_like": "survivor_suit", - "type": "ARMOR", - "category": "armor", - "name": { "str": "lamellar Kevlar vest" }, - "description": "A lamellar Kevlar vest, there are intricately cut voids usually filled with stitched in ceramic disks, you could repair the stitching if needed", - "weight": "2060 g", - "volume": "4 L", - "price": 1900, - "price_postapoc": 2000, - "to_hit": -3, - "bashing": 6, - "material": [ "kevlar_layered" ], - "symbol": "[", - "looks_like": "dragonskin", - "color": "light_red", - "warmth": 10, - "material_thickness": 2, - "flags": [ "STURDY", "OUTER" ], - "armor": [ { "encumbrance": 6, "coverage": 25, "covers": [ "torso" ] } ] - }, - { - "type": "GENERIC", - "id": "ceramicdisks", - "category": "spare_parts", - "symbol": ",", - "color": "light_gray", - "name": { "str": "ceramic disk" }, - "description": "A set of small slightly elongated disks, made of high-grade ceramic. They remind you of scales.", - "price": 0, - "price_postapoc": 25, - "material": [ "ceramic" ], - "weight": "100 g", - "volume": "250 ml", - "bashing": 1, - "to_hit": -3 - }, - { - "type": "GENERIC", - "id": "data_card", - "symbol": ",", - "color": "white", - "name": { "str": "data card" }, - "description": "Some type of advanced data storage device. Useful for storing very large amounts of information. Didn't someone want this?", - "price": 10000, - "price_postapoc": 50, - "material": [ "plastic" ], - "weight": "18 g", - "volume": "1 ml", - "pocket_data": [ { "pocket_type": "SOFTWARE", "max_contains_volume": "1 L", "max_contains_weight": "1 kg" } ], - "to_hit": -3 - }, - { - "id": "mind_scan_robofac", - "type": "GENERIC", - "name": { "str_sp": "neural data" }, - "symbol": "#", - "container": "data_card", - "description": "Data stolen from a dead scientist memory banks. Is the owner of these thoughts still hidden here, amidst the unreadable data; or are these just a collection of the precious moments of someone's life?\n\nWhatever the case, the idea of perpetually keeping a part of you within a metallic pill makes you feel uncomfortable.", - "flags": [ "NO_DROP" ] - }, - { - "type": "GENERIC", - "id": "mind_splicer", - "symbol": "o", - "color": "white", - "name": { "str": "mind splicer kit" }, - "description": "Surgical forceps, cables and a modified smartphone inside a small plastic pouch. Assembled to steal the mind of some poor man, these are tools of the creepy high-tech sandman.", - "material": [ "plastic" ], - "price": 12500, - "price_postapoc": 500, - "volume": "1 L", - "weight": "600 g", - "flags": [ "TRADER_AVOID" ] - }, - { - "type": "GENERIC", - "id": "veh_tracker", - "name": { "str": "vehicle tracking device" }, - "description": "A vehicle tracking device. When installed on a vehicle it allows you track the vehicle.", - "weight": "400 g", - "color": "red", - "symbol": ";", - "material": [ "plastic", "aluminum" ], - "volume": "500 ml", - "bashing": 1, - "category": "veh_parts", - "price": 80000, - "price_postapoc": 750 - }, - { - "type": "ammunition_type", - "id": "metal_rail", - "name": "ferrous rail projectile", - "default": "steel_rail" - }, - { - "id": "rebar_rail", - "type": "AMMO", - "name": { "str": "rebar rail" }, - "description": "A short piece of ferromagnetic rebar which has been straightened and sharpened on one end. Could be used as a projectile by a sufficiently powerful electromagnetic weapon.", - "weight": "236 g", - "longest_side": "16 cm", - "volume": "300 ml", - "price": 1000, - "price_postapoc": 250, - "to_hit": -1, - "bashing": 5, - "cutting": 1, - "material": [ "steel" ], - "symbol": "=", - "color": "light_gray", - "count": 10, - "ammo_type": "metal_rail", - "range": 40, - "damage": { "damage_type": "stab", "amount": 70, "armor_penetration": 25 }, - "dispersion": 150, - "effects": [ "RECYCLED", "NON_FOULING" ] - }, - { - "id": "steel_rail", - "copy-from": "rebar_rail", - "type": "AMMO", - "name": { "str": "steel rail" }, - "description": "A short piece of steel which has been forged true and sharpened on one end. Could be used as a projectile by a sufficiently powerful electromagnetic weapon.", - "weight": "212 g", - "volume": "270 ml", - "price": 1500, - "price_postapoc": 500, - "bashing": 4, - "cutting": 2, - "material": [ "steel" ], - "color": "light_gray", - "dispersion": 0, - "effects": [ "NEVER_MISFIRES", "NON_FOULING" ], - "relative": { "range": 10, "damage": { "damage_type": "stab", "amount": -5, "armor_penetration": 15 } } - }, - { - "type": "AMMO", - "id": "unfinished_cac2", - "category": "spare_parts", - "price": 0, - "price_postapoc": 0, - "name": { "str_sp": "unfinished calcium carbide" }, - "symbol": "=", - "color": "white", - "description": "The incomplete process of converting coal and lime into calcium carbide. Useless in this state.", - "material": [ "stone" ], - "volume": "250 ml", - "weight": "300 g", - "ammo_type": "components" - }, - { - "type": "PET_ARMOR", - "id": "superalloy_harness_dog", - "copy-from": "kevlar_harness", - "color": "light_cyan", - "name": { "str": "superalloy tactical dog outfit" }, - "description": "A thin mesh interwoven with superalloy plates and pouches, for military working dogs. Covers from the dewlap to the croup, down to the elbows. You could put this on a friendly dog.", - "price": 130000, - "price_postapoc": 5000, - "material": [ "superalloy" ], - "weight": "3125 g", - "min_pet_vol": "20000 ml", - "pocket_data": [ - { - "pocket_type": "CONTAINER", - "max_contains_volume": "10 L", - "max_contains_weight": "20 kg", - "max_item_length": "80 cm", - "moves": 200 - }, - { - "pocket_type": "CONTAINER", - "max_contains_volume": "10 L", - "max_contains_weight": "20 kg", - "max_item_length": "80 cm", - "moves": 200 - }, - { - "pocket_type": "CONTAINER", - "max_contains_volume": "2500 ml", - "max_contains_weight": "5 kg", - "max_item_length": "30 cm", - "moves": 200 - }, - { - "pocket_type": "CONTAINER", - "max_contains_volume": "2500 ml", - "max_contains_weight": "5 kg", - "max_item_length": "30 cm", - "moves": 200 - } - ] - }, { "type": "COMESTIBLE", "id": "egg_lady_bug_giant", diff --git a/data/json/npcs/godco/classes.json b/data/json/npcs/godco/classes.json index c98c82151c18b..83b9f98793858 100644 --- a/data/json/npcs/godco/classes.json +++ b/data/json/npcs/godco/classes.json @@ -992,7 +992,7 @@ "type": "item_group", "id": "GODCO_tom_carried", "subtype": "collection", - "entries": [ { "group": "full_survival_kit" }, { "item": "mre_hotdog_box" } ] + "entries": [ { "group": "full_survival_kit" } ] }, { "type": "item_group", diff --git a/data/json/vehicleparts/obsolete.json b/data/json/vehicleparts/obsolete.json deleted file mode 100644 index 625be0ba462b8..0000000000000 --- a/data/json/vehicleparts/obsolete.json +++ /dev/null @@ -1,26 +0,0 @@ -[ - { - "type": "vehicle_part", - "id": "tracker", - "name": { "str": "tracking device" }, - "symbol": "*", - "categories": [ "other" ], - "color": "red", - "broken_symbol": "#", - "broken_color": "light_gray", - "damage_modifier": 10, - "durability": 20, - "description": "A small transmitter that lets you locate the vehicle on the map.", - "item": "veh_tracker", - "//": "10W GPS transponder like an XPC-TR", - "epower": "-10 W", - "folded_volume": "500 ml", - "requirements": { - "install": { "skills": [ [ "mechanics", 2 ] ], "time": "200 s", "using": [ [ "vehicle_screw", 1 ] ] }, - "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "200 s", "using": [ [ "vehicle_screw", 1 ] ] }, - "repair": { "skills": [ [ "mechanics", 2 ] ], "time": "20 s", "using": [ [ "adhesive", 1 ] ] } - }, - "flags": [ "TRACK", "UNMOUNT_ON_DAMAGE", "ENABLED_DRAINS_EPOWER" ], - "breaks_into": "ig_vp_device" - } -] From da65a44ffd632c909d28fc719b8d6d5dba65f961 Mon Sep 17 00:00:00 2001 From: Alexey Kim Date: Mon, 20 Mar 2023 06:59:26 +0200 Subject: [PATCH 5/7] Remove 0.G obsoletions; item groups, mutations, professions, charges --- data/json/bionics.json | 1 - data/json/itemgroups/obsolete.json | 3 - data/json/monstergroups/obsolete.json | 59 ----- data/json/mutations/migration.json | 48 ---- data/json/obsolete_terrains.json | 43 +--- data/json/obsoletion/charge_removal.json | 292 +---------------------- data/json/obsoletion/faults.json | 18 -- data/json/obsoletion/mutations.json | 25 -- data/json/obsoletion/obsolete_fake.json | 61 ----- data/json/obsoletion/professions.json | 49 ---- data/json/scenarios.json | 2 - 11 files changed, 2 insertions(+), 599 deletions(-) delete mode 100644 data/json/itemgroups/obsolete.json delete mode 100644 data/json/monstergroups/obsolete.json delete mode 100644 data/json/mutations/migration.json delete mode 100644 data/json/obsoletion/faults.json delete mode 100644 data/json/obsoletion/mutations.json delete mode 100644 data/json/obsoletion/obsolete_fake.json delete mode 100644 data/json/obsoletion/professions.json diff --git a/data/json/bionics.json b/data/json/bionics.json index 534ff6d316e29..45eb3b5054a86 100644 --- a/data/json/bionics.json +++ b/data/json/bionics.json @@ -217,7 +217,6 @@ "TOXICFLESH", "FRESHWATEROSMOSIS", "BIOLUM0", - "BIOLUM0_active", "BIOLUM1", "BIOLUM1_active", "BIOLUM2", diff --git a/data/json/itemgroups/obsolete.json b/data/json/itemgroups/obsolete.json deleted file mode 100644 index 3c5c1916ab7ab..0000000000000 --- a/data/json/itemgroups/obsolete.json +++ /dev/null @@ -1,3 +0,0 @@ -[ - -] diff --git a/data/json/monstergroups/obsolete.json b/data/json/monstergroups/obsolete.json deleted file mode 100644 index 8da2ddbd2f7a6..0000000000000 --- a/data/json/monstergroups/obsolete.json +++ /dev/null @@ -1,59 +0,0 @@ -[ - { - "type": "monstergroup", - "name": "GROUP_ZOMBIE_MID", - "default": "mon_zombie_tough", - "monsters": [ - { "monster": "mon_zombie_tough", "weight": 117 }, - { "monster": "mon_zombie", "weight": 10, "cost_multiplier": 10, "pack_size": [ 25, 30 ] }, - { "monster": "mon_zombie_fat", "weight": 75 }, - { "monster": "mon_zombie_fat", "weight": 3, "cost_multiplier": 3, "pack_size": [ 3, 5 ] }, - { "monster": "mon_zombie_tough", "weight": 75 }, - { "monster": "mon_zombie_anklebiter", "weight": 2 }, - { "monster": "mon_zombie_sproglodyte", "weight": 1 }, - { "monster": "mon_zombie_shriekling", "weight": 2 }, - { "monster": "mon_zombie_creepy", "weight": 1 }, - { "monster": "mon_zombie_snotgobbler", "weight": 1 }, - { "monster": "mon_zombie_waif", "weight": 1 }, - { "monster": "mon_zombie_child", "weight": 2 }, - { "monster": "mon_zombie_dog", "weight": 1, "cost_multiplier": 24, "pack_size": [ 8, 12 ] }, - { "monster": "mon_dog_skeleton", "weight": 10 }, - { "monster": "mon_dog_zombie_cop", "weight": 30, "cost_multiplier": 4 }, - { "monster": "mon_dog_zombie_rot", "weight": 30, "cost_multiplier": 3 }, - { "monster": "mon_zombie_soldier", "weight": 30, "cost_multiplier": 2 }, - { "monster": "mon_zombie_cop", "weight": 40, "cost_multiplier": 2 }, - { "monster": "mon_zombie_hazmat", "weight": 40, "cost_multiplier": 2 }, - { "monster": "mon_zombie_fireman", "weight": 40, "cost_multiplier": 2 }, - { "monster": "mon_zombie_grabber", "weight": 20, "cost_multiplier": 2 }, - { "monster": "mon_zombie_grappler", "weight": 30, "cost_multiplier": 7 }, - { "monster": "mon_zombie_hunter", "weight": 50, "cost_multiplier": 2 }, - { "monster": "mon_zombie_smoker", "weight": 30, "cost_multiplier": 2 }, - { "monster": "mon_zombie_shady", "weight": 30, "cost_multiplier": 2 }, - { "monster": "mon_zombie_gasbag", "weight": 10, "cost_multiplier": 2 }, - { "monster": "mon_zombie_gasbag", "weight": 10, "cost_multiplier": 5, "pack_size": [ 3, 5 ] }, - { "monster": "mon_zombie_swimmer", "weight": 30, "cost_multiplier": 2 }, - { "monster": "mon_zombie_shrieker", "weight": 30, "cost_multiplier": 2 }, - { "monster": "mon_zombie_spitter", "weight": 10, "cost_multiplier": 2 }, - { "monster": "mon_zombie_corrosive", "weight": 20, "cost_multiplier": 6 }, - { "monster": "mon_zombie_electric", "weight": 10, "cost_multiplier": 2 }, - { "monster": "mon_zombie_necro", "weight": 10, "cost_multiplier": 10 }, - { "monster": "mon_zombie_survivor", "weight": 20, "cost_multiplier": 5 }, - { "monster": "mon_boomer", "weight": 30, "cost_multiplier": 5 }, - { "monster": "mon_boomer_huge", "weight": 20, "cost_multiplier": 5 }, - { "monster": "mon_zombie_brute", "weight": 30, "cost_multiplier": 10 }, - { "monster": "mon_zombie_brute_ninja", "weight": 1, "cost_multiplier": 20 }, - { "monster": "mon_zombie_brute_grappler", "weight": 1, "cost_multiplier": 20 }, - { "monster": "mon_zombie_hulk", "weight": 10, "cost_multiplier": 25 }, - { "monster": "mon_skeleton_brute", "weight": 15, "cost_multiplier": 12 }, - { "monster": "mon_skeleton_hulk", "weight": 10, "cost_multiplier": 25 }, - { "monster": "mon_zombie_master", "weight": 10, "cost_multiplier": 15 }, - { "monster": "mon_beekeeper", "weight": 5 }, - { "monster": "mon_zombie_thorny", "weight": 10, "cost_multiplier": 10 }, - { "monster": "mon_zombie_technician", "weight": 10, "cost_multiplier": 6 }, - { "monster": "mon_zombie_brute_shocker", "weight": 10, "cost_multiplier": 20 }, - { "monster": "mon_zombie_hollow", "weight": 2, "cost_multiplier": 5 }, - { "monster": "mon_zombie_predator", "weight": 5, "cost_multiplier": 10 }, - { "monster": "mon_zombie_ears", "weight": 10, "cost_multiplier": 2 } - ] - } -] diff --git a/data/json/mutations/migration.json b/data/json/mutations/migration.json deleted file mode 100644 index 6f158757a7842..0000000000000 --- a/data/json/mutations/migration.json +++ /dev/null @@ -1,48 +0,0 @@ -[ - { - "type": "TRAIT_MIGRATION", - "id": "BIOLUM0_active", - "trait": "BIOLUM0" - }, - { - "type": "TRAIT_MIGRATION", - "id": "eye_blue", - "trait": "eye_color", - "variant": "blue" - }, - { - "type": "TRAIT_MIGRATION", - "id": "eye_brown", - "trait": "eye_color", - "variant": "brown" - }, - { - "type": "TRAIT_MIGRATION", - "id": "eye_hazel", - "trait": "eye_color", - "variant": "hazel" - }, - { - "type": "TRAIT_MIGRATION", - "id": "eye_amber", - "trait": "eye_color", - "variant": "amber" - }, - { - "type": "TRAIT_MIGRATION", - "id": "eye_gray", - "trait": "eye_color", - "variant": "gray" - }, - { - "type": "TRAIT_MIGRATION", - "id": "eye_green", - "trait": "eye_color", - "variant": "green" - }, - { - "type": "TRAIT_MIGRATION", - "id": "PARKOUR", - "proficiency": "prof_parkour" - } -] diff --git a/data/json/obsolete_terrains.json b/data/json/obsolete_terrains.json index fb6d9e8294ab6..72275975a3a34 100644 --- a/data/json/obsolete_terrains.json +++ b/data/json/obsolete_terrains.json @@ -1,47 +1,6 @@ [ { "type": "obsolete_terrain", - "terrains": [ - "triffid_grove", - "triffid_roots", - "triffid_finale", - "microlab_generic_hallway_start_north", - "microlab_generic_hallway_start_east", - "microlab_generic_hallway_start_south", - "microlab_generic_hallway_start_west", - "microlab_generic_hallway_north", - "microlab_generic_hallway_east", - "microlab_generic_hallway_south", - "microlab_generic_hallway_west", - "mine", - "mine_down", - "mine_entrance", - "mine_shaft", - "mine_finale", - "spiral", - "spiral_hub", - "anthill", - "acid_anthill", - "ants_food", - "ants_food", - "ants_larvae", - "ants_larvae_acid", - "ants_queen", - "ants_queen_acid", - "pond_forest", - "pond_forest_north", - "pond_forest_east", - "pond_forest_south", - "pond_forest_west", - "pond_swamp", - "pond_swamp_north", - "pond_swamp_east", - "pond_swamp_south", - "pond_swamp_west", - "temple_stairs", - "temple_finale", - "bunker_basement", - "hive" - ] + "terrains": [ "hive" ] } ] diff --git a/data/json/obsoletion/charge_removal.json b/data/json/obsoletion/charge_removal.json index f6cd7394b99bd..2db82f2c66009 100644 --- a/data/json/obsoletion/charge_removal.json +++ b/data/json/obsoletion/charge_removal.json @@ -2,38 +2,6 @@ { "type": "charge_migration_blacklist", "list": [ - "faux_fur", - "felt_patch", - "fur", - "leather", - "nomex", - "scrap_cotton", - "scrap_faux_fur", - "scrap_felt", - "scrap_fur", - "scrap_kevlar", - "scrap_leather", - "scrap_lycra", - "scrap_neoprene", - "scrap_nylon", - "scrap_nomex", - "sheet_cotton", - "sheet_cotton_patchwork", - "sheet_faux_fur", - "sheet_faux_fur_patchwork", - "sheet_felt", - "sheet_felt_patchwork", - "sheet_kevlar", - "sheet_lycra", - "sheet_lycra_patchwork", - "sheet_neoprene", - "sheet_neoprene_patchwork", - "sheet_nomex", - "sheet_nomex_patchwork", - "sheet_nylon", - "sheet_nylon_patchwork", - "napkin", - "cardboard", "adhesive_bandages", "alcohol_wipes", "bandages", @@ -48,265 +16,7 @@ }, { "type": "charge_removal_blacklist", - "list": [ - "22_casing_new", - "acidchitin_piece", - "acoustic_guitar", - "advanced_ecig", - "anesthetic_kit", - "bagpipes", - "banjo", - "battery_ups", - "black_pen", - "blue_pen", - "bone_flute", - "brick_kiln", - "butane_can", - "butane_tank", - "camera", - "camera_pro", - "candle", - "candle_lit", - "carver_off", - "cash_card", - "cell_phone", - "cell_phone_flashlight", - "chainsaw_off", - "chainsaw_on", - "char_forge", - "char_purifier", - "char_purifier_clay", - "char_smoker", - "charcoal_cooker", - "chitin_piece", - "circsaw_off", - "clarinet", - "coin_penny", - "coin_nickel", - "coin_dime", - "coin_quarter", - "coin_half_dollar", - "coin_dollar", - "combatsaw_off", - "combatsaw_on", - "con_mix", - "cordless_drill", - "creepy_doll", - "dab_pen", - "dab_pen_on", - "dehydrator", - "disc_golf", - "eink_tablet_pc", - "elec_hairtrimmer", - "elec_jackhammer", - "elec_shears", - "electric_lantern", - "electric_lantern_on", - "esbit_stove", - "escape_stone", - "extinguisher", - "faux_fur", - "felt_patch", - "fish_trap", - "flashlight", - "flashlight_on", - "flute", - "FlatCoin", - "FMCNote", - "food_processor", - "forge", - "frisbee", - "fur", - "game_watch", - "gasoline_cooker", - "gasoline_lantern", - "gasoline_lantern_on", - "geiger_off", - "geiger_on", - "glowstick", - "goggles_ir", - "goggles_ir_on", - "goggles_nv", - "goggles_nv_on", - "green_pen", - "guitar_electric", - "handflare", - "handflare_dead", - "handflare_lit", - "harmonica_holder", - "heavy_battery_cell", - "heavy_disposable_cell", - "heavy_flashlight", - "heavy_flashlight_on", - "heavy_minus_battery_cell", - "heavy_plus_battery_cell", - "hotplate", - "icon", - "inhaler", - "jackhammer", - "jackolantern", - "jackolantern_lit", - "laptop", - "large_repairkit", - "lawn_dart", - "leather", - "light_battery_cell", - "light_disposable_cell", - "light_minus_battery_cell", - "light_plus_battery_cell", - "lighter", - "lightstrip", - "lightstrip_inactive", - "loaded", - "mask_bunker", - "mask_filter", - "mask_fsurvivor", - "mask_fsurvivorxl", - "mask_gas", - "mask_gas_xl", - "mask_h20survivor", - "mask_h20survivorxl", - "mask_hsurvivor", - "mask_lsurvivor", - "mask_ski", - "mask_ski_loose", - "mask_survivor", - "mask_survivorxl", - "mask_wsurvivor", - "mask_wsurvivorxl", - "matches", - "medium_battery_cell", - "medium_minus_battery_cell", - "medium_plus_battery_cell", - "mess_kit", - "mil_mess_kit", - "miner_hat", - "miner_hat_on", - "minireactor", - "misc_repairkit", - "mp3", - "mp3_on", - "mspider_box", - "multi_cooker", - "needle_bone", - "needle_curved", - "needle_wood", - "noise_emitter", - "noise_emitter_on", - "nomex", - "oil_cooker", - "oil_lamp", - "oil_lamp_on", - "oxygen_tank", - "pen", - "pencil", - "permanent_marker", - "pipe", - "plastic_jack_o_lantern", - "popcan_stove", - "portable_game", - "powered_earmuffs", - "powered_earmuffs_on", - "pseudo_bio_picklock", - "rad_monitor", - "radio", - "radio_car", - "radio_car_on", - "radio_on", - "radiocontrol", - "reading_light", - "reading_light_on", - "rebreather", - "rebreather_xl", - "red_pen", - "ref_lighter", - "ref_lighter_on", - "reloaded_10mm", - "remotevehcontrol", - "RobofacCoin", - "rx11_stimpack", - "rx12_injector", - "saxophone", - "scuba_tank", - "scrap_cotton", - "scrap_faux_fur", - "scrap_felt", - "scrap_fur", - "scrap_kevlar", - "scrap_leather", - "scrap_lycra", - "scrap_neoprene", - "scrap_nylon", - "scrap_nomex", - "sewing_kit", - "shavingkit", - "sheet_cotton", - "sheet_cotton_patchwork", - "sheet_faux_fur", - "sheet_faux_fur_patchwork", - "sheet_felt", - "sheet_felt_patchwork", - "sheet_kevlar", - "sheet_lycra", - "sheet_lycra_patchwork", - "sheet_neoprene", - "sheet_neoprene_patchwork", - "sheet_nomex", - "sheet_nomex_patchwork", - "sheet_nylon", - "sheet_nylon_patchwork", - "signed_chit", - "sm_extinguisher", - "small_repairkit", - "small_scuba_tank", - "small_storage_battery", - "smart_lamp", - "smart_lamp_on", - "smart_phone", - "smart_phone_flashlight", - "smartphone_music", - "smoxygen_tank", - "soldering_iron", - "spray_can", - "survivor_light", - "survivor_light_on", - "survivor_mess_kit", - "survivor_shavingkit", - "syringe", - "tailors_kit", - "talking_doll", - "thermal_gloves", - "thermal_gloves_on", - "thermal_mask", - "thermal_mask_on", - "thermal_outfit", - "thermal_outfit_on", - "thermal_socks", - "thermal_socks_on", - "thermal_suit", - "thermal_suit_on", - "throwing_axe", - "throwing_knife", - "tinderbox", - "tinderbox_on", - "tool_rdx_sand_bomb_act", - "toolset_extended", - "trimmer_off", - "trimmer_on", - "trumpet", - "tuba", - "two_way_radio", - "ukulele", - "usb_drive", - "vac_sealer", - "vibrator", - "violin", - "violin_golden", - "water_purifier", - "wearable_light", - "wearable_light_on", - "welder" - ] + "list": [ ] }, { "type": "temperature_removal_blacklist", diff --git a/data/json/obsoletion/faults.json b/data/json/obsoletion/faults.json deleted file mode 100644 index ab57e017acec6..0000000000000 --- a/data/json/obsoletion/faults.json +++ /dev/null @@ -1,18 +0,0 @@ -[ - { - "id": "fault_engine_pump_water", - "type": "fault", - "name": { "str": "Faulty water pump" }, - "description": "Obsolete fault that does not do anything", - "mending_methods": [ - { - "id": "mend_fault_engine_pump_water_replace", - "name": "Replace faulty water pump", - "success_msg": "You replace the faulty water pump of the %s.", - "time": "0 m", - "skills": [ ], - "requirements": { } - } - ] - } -] diff --git a/data/json/obsoletion/mutations.json b/data/json/obsoletion/mutations.json deleted file mode 100644 index 2576d7e5dd152..0000000000000 --- a/data/json/obsoletion/mutations.json +++ /dev/null @@ -1,25 +0,0 @@ -[ - { - "type": "mutation", - "id": "BIOLUM0_active", - "name": { "str": "Reflex Photophore (on)" }, - "points": -1, - "description": "A photophore has grown from your head. You can't consciously control it, and it might start to shine in response to your emotions or your physiological state.", - "copy-from": "BIOLUM0", - "valid": false, - "triggers": [ - [ - { - "condition": { "compare_num": [ { "u_val": "morale" }, ">", { "const": 20 } ] }, - "msg_off": { "text": "Your glow fades.", "rating": "mixed" } - }, - { - "condition": { "compare_num": [ { "u_val": "hunger" }, ">", { "const": 110 } ] }, - "msg_off": { "text": "Your glow fades.", "rating": "mixed" } - } - ] - ], - "transform": { "target": "BIOLUM0", "msg_transform": "Your photophore stops glowing.", "active": false, "moves": 10 }, - "lumination": [ [ "head", 8 ] ] - } -] diff --git a/data/json/obsoletion/obsolete_fake.json b/data/json/obsoletion/obsolete_fake.json deleted file mode 100644 index cf0ebd0480676..0000000000000 --- a/data/json/obsoletion/obsolete_fake.json +++ /dev/null @@ -1,61 +0,0 @@ -[ - { - "//": "All these fake objects may be referenced by preexisting base camps and expansions, and so may have to remain for quite some time after their obsolescence during the 0.E cycle", - "id": "rock_forge_pseudo", - "type": "TOOL", - "name": { "str": "rock forge" }, - "copy-from": "char_forge", - "pocket_data": [ { "pocket_type": "MAGAZINE", "ammo_restriction": { "charcoal": 40000 } } ] - }, - { - "id": "pseudo_char_smoker", - "type": "TOOL", - "name": { "str": "smoking rack" }, - "description": "This is a crafting_pseudo_item if you have it something is wrong.", - "material": [ "steel" ], - "symbol": ";", - "color": "light_gray", - "ammo": [ "charcoal" ], - "pocket_data": [ { "pocket_type": "MAGAZINE", "ammo_restriction": { "charcoal": 2000 } } ], - "sub": "char_smoker", - "extend": { "flags": [ "ALLOWS_REMOTE_USE", "PSEUDO" ] } - }, - { - "id": "kiln_pseudo", - "type": "TOOL", - "name": { "str": "clay kiln" }, - "copy-from": "brick_kiln", - "sub": "brick_kiln", - "pocket_data": [ { "pocket_type": "MAGAZINE", "ammo_restriction": { "charcoal": 40000 } } ] - }, - { - "id": "arcfurnace", - "copy-from": "fake_item", - "type": "TOOL", - "name": { "str": "arc furnace" } - }, - { - "id": "fake_router_table", - "type": "TOOL", - "copy-from": "fake_power_tool", - "name": { "str": "router table" } - }, - { - "id": "fake_power_lathe", - "type": "TOOL", - "copy-from": "fake_power_tool", - "name": { "str": "power lathe" } - }, - { - "id": "butchery_rack_pseudo", - "type": "TOOL", - "name": { "str": "butchery rack pseudo item" }, - "description": "This is a pseudo item to represent the support of a tree or butchery rack with a hook.", - "weight": "1 g", - "volume": "1 ml", - "symbol": "[", - "color": "dark_gray", - "qualities": [ [ "SUSPENDING", 2 ], [ "ROPE", 2 ] ], - "extend": { "flags": [ "TRADER_AVOID" ] } - } -] diff --git a/data/json/obsoletion/professions.json b/data/json/obsoletion/professions.json deleted file mode 100644 index 758531f172476..0000000000000 --- a/data/json/obsoletion/professions.json +++ /dev/null @@ -1,49 +0,0 @@ -[ - { - "type": "profession", - "id": "mili_burner", - "name": "Military Corpse Disposal", - "description": "In response to the outbreak, you were dispatched to contain the infection by burning the corpses. With command consumed by the undead, your priorities have shifted to basic survival.", - "obsolete": true, - "points": 6, - "skills": [ - { "level": 3, "name": "gun" }, - { "level": 3, "name": "rifle" }, - { "level": 3, "name": "launcher" }, - { "level": 2, "name": "melee" }, - { "level": 2, "name": "pistol" }, - { "level": 2, "name": "survival" }, - { "level": 2, "name": "firstaid" }, - { "level": 2, "name": "stabbing" }, - { "level": 2, "name": "swimming" } - ], - "items": { - "both": { - "items": [ - "pants_army", - "socks", - "undershirt", - "boots_combat", - "wristwatch", - "gloves_tactical", - "helmet_army", - "jacket_army_modern", - "webbing_belt", - "chestpouch" - ], - "entries": [ - { "group": "charged_two_way_radio" }, - { "group": "full_gasmask" }, - { "item": "water_clean", "container-item": "canteen" }, - { "item": "ear_plugs", "custom-flags": [ "no_auto_equip" ] }, - { "item": "flamethrower", "ammo-item": "napalm", "charges": 3000, "custom-flags": [ "auto_wield" ] }, - { "item": "m17", "ammo-item": "9mm", "container-item": "holster", "charges": 17 }, - { "item": "p320mag_17rd_9x19mm", "ammo-item": "9mm", "charges": 17 }, - { "item": "knife_combat", "container-item": "sheath" } - ] - }, - "male": [ "boxer_shorts" ], - "female": [ "bra", "panties" ] - } - } -] diff --git a/data/json/scenarios.json b/data/json/scenarios.json index 90964ff7dee1e..8a9ffd43f137c 100644 --- a/data/json/scenarios.json +++ b/data/json/scenarios.json @@ -640,7 +640,6 @@ "mil_undercover", "mili_pilot", "mili_medic", - "mili_burner", "major-general", "nco", "combat-mechanic", @@ -685,7 +684,6 @@ "mil_undercover", "mili_pilot", "mili_medic", - "mili_burner", "hazmat_unit", "major-general", "nco", From 89618e22fbc4abd929d7858b9082db3cbe49a75b Mon Sep 17 00:00:00 2001 From: Alexey Kim Date: Mon, 20 Mar 2023 15:24:25 +0200 Subject: [PATCH 6/7] Consolidate most obsoletions under json/obsoletion --- data/json/obsolete.json | 343 ------------------ ...sed.json => obsolete-0.G-item_groups.json} | 0 .../obsolete-0.G-items.json} | 0 .../json/obsoletion/obsolete-0.G-recipes.json | 295 +++++++++++++++ data/json/obsoletion/obsolete_items.json | 52 +++ .../{ => obsoletion}/obsolete_terrains.json | 0 6 files changed, 347 insertions(+), 343 deletions(-) rename data/json/obsoletion/{obsolete-in-0.G-but-actually-used.json => obsolete-0.G-item_groups.json} (100%) rename data/json/{items/obsolete.json => obsoletion/obsolete-0.G-items.json} (100%) create mode 100644 data/json/obsoletion/obsolete-0.G-recipes.json create mode 100644 data/json/obsoletion/obsolete_items.json rename data/json/{ => obsoletion}/obsolete_terrains.json (100%) diff --git a/data/json/obsolete.json b/data/json/obsolete.json index 49e1c9cfdeff8..f5b5a4f6303a1 100644 --- a/data/json/obsolete.json +++ b/data/json/obsolete.json @@ -411,348 +411,5 @@ { "item": "scrap", "count": [ 3, 7 ] } ] } - }, - { - "type": "recipe", - "activity_level": "BRISK_EXERCISE", - "result": "rapier", - "category": "CC_WEAPON", - "subcategory": "CSC_WEAPON_PIERCING", - "skill_used": "fabrication", - "difficulty": 9, - "time": "7 h", - "book_learn": [ [ "textbook_weapwest", 8 ] ], - "proficiencies": [ - { "proficiency": "prof_metalworking" }, - { "proficiency": "prof_blacksmithing" }, - { "proficiency": "prof_bladesmith" } - ], - "using": [ [ "blacksmithing_standard", 8 ], [ "steel_standard", 2 ] ], - "qualities": [ { "id": "GRIND", "level": 2 } ], - "tools": [ [ [ "hotcut", -1 ] ] ], - "components": [ [ [ "2x4", 1 ], [ "stick", 2 ] ], [ [ "fur", 2 ], [ "leather", 2 ] ] ] - }, - { - "result": "cavalry_sabre", - "type": "recipe", - "activity_level": "BRISK_EXERCISE", - "category": "CC_WEAPON", - "subcategory": "CSC_WEAPON_CUTTING", - "skill_used": "fabrication", - "difficulty": 8, - "time": "420 m", - "book_learn": [ [ "textbook_weapwest", 7 ] ], - "proficiencies": [ - { "proficiency": "prof_metalworking" }, - { "proficiency": "prof_blacksmithing" }, - { "proficiency": "prof_bladesmith" }, - { "proficiency": "prof_carving", "time_multiplier": 1.2, "learning_time_multiplier": 0.2, "skill_penalty": 0 } - ], - "using": [ [ "forging_standard", 2 ], [ "steel_standard", 2 ] ], - "qualities": [ { "id": "ANVIL", "level": 3 }, { "id": "HAMMER", "level": 3 }, { "id": "GRIND", "level": 2 } ], - "tools": [ [ [ "tongs", -1 ] ], [ [ "hotcut", -1 ] ] ], - "components": [ [ [ "2x4", 1 ], [ "stick", 2 ] ], [ [ "fur", 2 ], [ "leather", 2 ] ] ] - }, - { - "type": "recipe", - "activity_level": "BRISK_EXERCISE", - "result": "arming_sword", - "category": "CC_WEAPON", - "subcategory": "CSC_WEAPON_CUTTING", - "skill_used": "fabrication", - "difficulty": 8, - "time": "8 h", - "book_learn": [ [ "textbook_weapwest", 7 ] ], - "proficiencies": [ - { "proficiency": "prof_metalworking" }, - { "proficiency": "prof_blacksmithing" }, - { "proficiency": "prof_bladesmith" }, - { "proficiency": "prof_carving", "time_multiplier": 1.2, "learning_time_multiplier": 0.2, "skill_penalty": 0 } - ], - "using": [ [ "blacksmithing_standard", 12 ], [ "steel_standard", 3 ] ], - "qualities": [ { "id": "GRIND", "level": 2 } ], - "tools": [ [ [ "hotcut", -1 ] ] ], - "components": [ [ [ "2x4", 1 ], [ "stick", 2 ] ], [ [ "fur", 1 ], [ "leather", 1 ] ] ] - }, - { - "type": "recipe", - "activity_level": "BRISK_EXERCISE", - "result": "broadsword", - "category": "CC_WEAPON", - "subcategory": "CSC_WEAPON_CUTTING", - "skill_used": "fabrication", - "difficulty": 8, - "time": "7 h", - "book_learn": [ [ "textbook_weapwest", 7 ] ], - "proficiencies": [ - { "proficiency": "prof_metalworking" }, - { "proficiency": "prof_blacksmithing" }, - { "proficiency": "prof_bladesmith" }, - { "proficiency": "prof_carving", "time_multiplier": 1.2, "learning_time_multiplier": 0.2, "skill_penalty": 0 } - ], - "using": [ [ "blacksmithing_standard", 12 ], [ "steel_standard", 3 ] ], - "qualities": [ { "id": "GRIND", "level": 2 } ], - "tools": [ [ [ "hotcut", -1 ] ] ], - "components": [ [ [ "2x4", 1 ], [ "stick", 2 ] ], [ [ "fur", 1 ], [ "leather", 1 ] ] ] - }, - { - "type": "recipe", - "activity_level": "BRISK_EXERCISE", - "result": "jian", - "category": "CC_WEAPON", - "subcategory": "CSC_WEAPON_CUTTING", - "skill_used": "fabrication", - "difficulty": 8, - "time": "8 h", - "book_learn": [ [ "textbook_armschina", 7 ] ], - "proficiencies": [ - { "proficiency": "prof_metalworking" }, - { "proficiency": "prof_blacksmithing" }, - { "proficiency": "prof_bladesmith" }, - { "proficiency": "prof_carving", "time_multiplier": 1.2, "learning_time_multiplier": 0.2, "skill_penalty": 0 } - ], - "using": [ [ "blacksmithing_standard", 12 ], [ "steel_standard", 3 ] ], - "qualities": [ { "id": "GRIND", "level": 2 } ], - "tools": [ [ [ "hotcut", -1 ] ] ], - "components": [ [ [ "filament", 100, "LIST" ] ], [ [ "2x4", 1 ], [ "stick", 2 ] ], [ [ "fur", 1 ], [ "leather", 1 ] ] ] - }, - { - "type": "recipe", - "activity_level": "BRISK_EXERCISE", - "result": "scimitar", - "category": "CC_WEAPON", - "subcategory": "CSC_WEAPON_CUTTING", - "skill_used": "fabrication", - "difficulty": 8, - "time": "7 h", - "book_learn": [ [ "textbook_armschina", 7 ] ], - "proficiencies": [ - { "proficiency": "prof_metalworking" }, - { "proficiency": "prof_blacksmithing" }, - { "proficiency": "prof_bladesmith" }, - { "proficiency": "prof_carving", "time_multiplier": 1.2, "learning_time_multiplier": 0.2, "skill_penalty": 0 } - ], - "using": [ [ "blacksmithing_standard", 12 ], [ "steel_standard", 3 ] ], - "qualities": [ { "id": "GRIND", "level": 2 } ], - "tools": [ [ [ "hotcut", -1 ] ] ], - "components": [ [ [ "2x4", 1 ], [ "stick", 2 ] ], [ [ "fur", 1 ], [ "leather", 1 ] ] ] - }, - { - "type": "recipe", - "activity_level": "BRISK_EXERCISE", - "result": "estoc", - "category": "CC_WEAPON", - "subcategory": "CSC_WEAPON_PIERCING", - "skill_used": "fabrication", - "difficulty": 8, - "time": "8 h 10 m", - "book_learn": [ [ "textbook_weapwest", 7 ] ], - "proficiencies": [ - { "proficiency": "prof_metalworking" }, - { "proficiency": "prof_blacksmithing" }, - { "proficiency": "prof_bladesmith" }, - { "proficiency": "prof_carving", "time_multiplier": 1.2, "learning_time_multiplier": 0.2, "skill_penalty": 0 } - ], - "using": [ [ "blacksmithing_standard", 16 ], [ "steel_standard", 4 ] ], - "qualities": [ { "id": "GRIND", "level": 2 } ], - "tools": [ [ [ "hotcut", -1 ] ] ], - "components": [ [ [ "2x4", 1 ], [ "stick", 2 ] ], [ [ "fur", 1 ], [ "leather", 1 ] ] ] - }, - { - "type": "recipe", - "activity_level": "BRISK_EXERCISE", - "result": "longsword", - "category": "CC_WEAPON", - "subcategory": "CSC_WEAPON_CUTTING", - "skill_used": "fabrication", - "difficulty": 8, - "time": "7 h", - "book_learn": [ [ "textbook_weapwest", 7 ] ], - "proficiencies": [ - { "proficiency": "prof_metalworking" }, - { "proficiency": "prof_blacksmithing" }, - { "proficiency": "prof_bladesmith" }, - { "proficiency": "prof_carving", "time_multiplier": 1.2, "learning_time_multiplier": 0.2, "skill_penalty": 0 } - ], - "using": [ [ "blacksmithing_standard", 16 ], [ "steel_standard", 4 ] ], - "qualities": [ { "id": "GRIND", "level": 2 } ], - "tools": [ [ [ "hotcut", -1 ] ] ], - "components": [ [ [ "2x4", 1 ], [ "stick", 2 ] ], [ [ "fur", 1 ], [ "leather", 1 ] ] ] - }, - { - "type": "recipe", - "activity_level": "BRISK_EXERCISE", - "result": "kriegsmesser", - "category": "CC_WEAPON", - "subcategory": "CSC_WEAPON_CUTTING", - "skill_used": "fabrication", - "difficulty": 6, - "time": "5 h", - "book_learn": [ [ "textbook_weapwest", 5 ] ], - "proficiencies": [ - { "proficiency": "prof_metalworking" }, - { "proficiency": "prof_blacksmithing" }, - { "proficiency": "prof_bladesmith" }, - { "proficiency": "prof_carving", "time_multiplier": 1.2, "learning_time_multiplier": 0.2, "skill_penalty": 0 } - ], - "using": [ [ "blacksmithing_standard", 10 ], [ "steel_standard", 3 ] ], - "qualities": [ { "id": "GRIND", "level": 2 } ], - "tools": [ [ [ "hotcut", -1 ] ] ], - "components": [ [ [ "2x4", 1 ], [ "stick", 2 ] ], [ [ "fur", 1 ], [ "leather", 1 ] ] ] - }, - { - "type": "recipe", - "activity_level": "BRISK_EXERCISE", - "result": "falx", - "category": "CC_WEAPON", - "subcategory": "CSC_WEAPON_CUTTING", - "skill_used": "fabrication", - "difficulty": 8, - "time": "7 h", - "book_learn": [ [ "textbook_weapwest", 6 ] ], - "proficiencies": [ - { "proficiency": "prof_metalworking" }, - { "proficiency": "prof_blacksmithing" }, - { "proficiency": "prof_bladesmith" }, - { "proficiency": "prof_carving", "time_multiplier": 1.2, "learning_time_multiplier": 0.2, "skill_penalty": 0 } - ], - "using": [ [ "blacksmithing_standard", 12 ], [ "steel_standard", 4 ] ], - "qualities": [ { "id": "GRIND", "level": 2 } ], - "tools": [ [ [ "hotcut", -1 ] ] ], - "components": [ [ [ "2x4", 1 ], [ "stick", 2 ] ], [ [ "fur", 1 ], [ "leather", 1 ] ] ] - }, - { - "type": "recipe", - "activity_level": "BRISK_EXERCISE", - "result": "zweihander", - "category": "CC_WEAPON", - "subcategory": "CSC_WEAPON_CUTTING", - "skill_used": "fabrication", - "difficulty": 9, - "time": "8 h", - "book_learn": [ [ "textbook_weapwest", 8 ], [ "scots_cookbook", 10 ] ], - "proficiencies": [ - { "proficiency": "prof_metalworking" }, - { "proficiency": "prof_blacksmithing" }, - { "proficiency": "prof_bladesmith" }, - { "proficiency": "prof_carving", "time_multiplier": 1.2, "learning_time_multiplier": 0.2, "skill_penalty": 0 } - ], - "using": [ [ "blacksmithing_standard", 16 ], [ "steel_standard", 4 ] ], - "qualities": [ { "id": "GRIND", "level": 2 } ], - "tools": [ [ [ "hotcut", -1 ] ] ], - "components": [ [ [ "2x4", 2 ], [ "stick", 4 ] ], [ [ "fur", 2 ], [ "leather", 2 ] ] ] - }, - { - "type": "recipe", - "activity_level": "BRISK_EXERCISE", - "result": "wakizashi", - "category": "CC_WEAPON", - "subcategory": "CSC_WEAPON_CUTTING", - "skill_used": "fabrication", - "difficulty": 8, - "time": "7 h", - "book_learn": [ [ "textbook_weapeast", 7 ] ], - "proficiencies": [ - { "proficiency": "prof_metalworking" }, - { "proficiency": "prof_blacksmithing" }, - { "proficiency": "prof_bladesmith" }, - { "proficiency": "prof_carving", "time_multiplier": 1.2, "learning_time_multiplier": 0.2, "skill_penalty": 0 } - ], - "using": [ [ "blacksmithing_standard", 8 ], [ "steel_standard", 2 ] ], - "qualities": [ { "id": "GRIND", "level": 2 } ], - "tools": [ [ [ "hotcut", -1 ] ] ], - "components": [ [ [ "2x4", 1 ], [ "stick", 2 ] ], [ [ "fur", 2 ], [ "leather", 2 ] ] ] - }, - { - "type": "recipe", - "activity_level": "BRISK_EXERCISE", - "result": "katana", - "category": "CC_WEAPON", - "subcategory": "CSC_WEAPON_CUTTING", - "skill_used": "fabrication", - "difficulty": 9, - "time": "8 h", - "book_learn": [ [ "textbook_weapeast", 8 ] ], - "proficiencies": [ - { "proficiency": "prof_metalworking" }, - { "proficiency": "prof_blacksmithing" }, - { "proficiency": "prof_bladesmith" }, - { "proficiency": "prof_carving", "time_multiplier": 1.2, "learning_time_multiplier": 0.2, "skill_penalty": 0 } - ], - "using": [ [ "blacksmithing_standard", 8 ], [ "steel_standard", 2 ] ], - "qualities": [ { "id": "GRIND", "level": 2 } ], - "tools": [ [ [ "hotcut", -1 ] ] ], - "components": [ [ [ "2x4", 2 ], [ "stick", 4 ] ], [ [ "fur", 2 ], [ "leather", 2 ] ] ] - }, - { - "type": "recipe", - "activity_level": "BRISK_EXERCISE", - "result": "nodachi", - "category": "CC_WEAPON", - "subcategory": "CSC_WEAPON_CUTTING", - "skill_used": "fabrication", - "difficulty": 10, - "time": "9 h 40 m", - "book_learn": [ [ "textbook_weapeast", 8 ] ], - "proficiencies": [ - { "proficiency": "prof_metalworking" }, - { "proficiency": "prof_blacksmithing" }, - { "proficiency": "prof_bladesmith" }, - { "proficiency": "prof_carving", "time_multiplier": 1.2, "learning_time_multiplier": 0.2, "skill_penalty": 0 } - ], - "using": [ [ "blacksmithing_standard", 20 ], [ "steel_standard", 5 ] ], - "qualities": [ { "id": "GRIND", "level": 2 } ], - "tools": [ [ [ "hotcut", -1 ] ] ], - "components": [ [ [ "2x4", 3 ], [ "stick", 6 ] ], [ [ "fur", 3 ], [ "leather", 3 ] ] ] - }, - { - "id": "toolset_extended", - "type": "TOOL", - "name": { "str": "extended multitool" }, - "description": "Your multitool, extended. Ready to do repair work.", - "symbol": "#", - "color": "white", - "weight": "226 g", - "bashing": 3, - "cutting": 1, - "flags": [ "NO_UNWIELD", "BIONIC_WEAPON", "UNBREAKABLE_MELEE", "TRADER_AVOID" ] - }, - { - "id": "lobotomizer", - "type": "GENERIC", - "category": "weapons", - "name": { "str": "lobotomizer" }, - "description": "A hand-forged collapsible tool with two axe heads and a sharp shovel-like tip on one end. It can be used as a shovel, or you could chop some zombies with it instead.", - "weight": "2722 g", - "volume": "1750 ml", - "price": 25000, - "price_postapoc": 1250, - "bashing": 18, - "cutting": 37, - "to_hit": { "grip": "none", "length": "long", "surface": "line", "balance": "neutral" }, - "material": [ "steel" ], - "symbol": "/", - "color": "dark_gray", - "qualities": [ [ "DIG", 2 ], [ "AXE", 1 ], [ "CUT", 1 ], [ "BUTCHER", -11 ], [ "COOK", 1 ] ], - "techniques": [ "WBLOCK_1", "BRUTAL", "SWEEP" ], - "flags": [ "NEEDS_UNFOLD", "BELT_CLIP", "SHEATH_AXE" ], - "weapon_category": [ "HOOKING_WEAPONRY" ] - }, - { - "id": "mold_plastic", - "type": "TOOL", - "name": { "str": "plastic mold" }, - "description": "A mold that can be used to form plastic chunks.", - "weight": "320 g", - "volume": "2500 ml", - "longest_side": "36 cm", - "price": 1000, - "price_postapoc": 50, - "to_hit": 1, - "bashing": 3, - "material": [ "plastic" ], - "symbol": ";", - "color": "light_blue", - "qualities": [ [ "CONTAIN", 1 ] ] } ] diff --git a/data/json/obsoletion/obsolete-in-0.G-but-actually-used.json b/data/json/obsoletion/obsolete-0.G-item_groups.json similarity index 100% rename from data/json/obsoletion/obsolete-in-0.G-but-actually-used.json rename to data/json/obsoletion/obsolete-0.G-item_groups.json diff --git a/data/json/items/obsolete.json b/data/json/obsoletion/obsolete-0.G-items.json similarity index 100% rename from data/json/items/obsolete.json rename to data/json/obsoletion/obsolete-0.G-items.json diff --git a/data/json/obsoletion/obsolete-0.G-recipes.json b/data/json/obsoletion/obsolete-0.G-recipes.json new file mode 100644 index 0000000000000..825f7b801716a --- /dev/null +++ b/data/json/obsoletion/obsolete-0.G-recipes.json @@ -0,0 +1,295 @@ +[ + { + "type": "recipe", + "activity_level": "BRISK_EXERCISE", + "result": "rapier", + "category": "CC_WEAPON", + "subcategory": "CSC_WEAPON_PIERCING", + "skill_used": "fabrication", + "difficulty": 9, + "time": "7 h", + "book_learn": [ [ "textbook_weapwest", 8 ] ], + "proficiencies": [ + { "proficiency": "prof_metalworking" }, + { "proficiency": "prof_blacksmithing" }, + { "proficiency": "prof_bladesmith" } + ], + "using": [ [ "blacksmithing_standard", 8 ], [ "steel_standard", 2 ] ], + "qualities": [ { "id": "GRIND", "level": 2 } ], + "tools": [ [ [ "hotcut", -1 ] ] ], + "components": [ [ [ "2x4", 1 ], [ "stick", 2 ] ], [ [ "fur", 2 ], [ "leather", 2 ] ] ] + }, + { + "result": "cavalry_sabre", + "type": "recipe", + "activity_level": "BRISK_EXERCISE", + "category": "CC_WEAPON", + "subcategory": "CSC_WEAPON_CUTTING", + "skill_used": "fabrication", + "difficulty": 8, + "time": "420 m", + "book_learn": [ [ "textbook_weapwest", 7 ] ], + "proficiencies": [ + { "proficiency": "prof_metalworking" }, + { "proficiency": "prof_blacksmithing" }, + { "proficiency": "prof_bladesmith" }, + { "proficiency": "prof_carving", "time_multiplier": 1.2, "learning_time_multiplier": 0.2, "skill_penalty": 0 } + ], + "using": [ [ "forging_standard", 2 ], [ "steel_standard", 2 ] ], + "qualities": [ { "id": "ANVIL", "level": 3 }, { "id": "HAMMER", "level": 3 }, { "id": "GRIND", "level": 2 } ], + "tools": [ [ [ "tongs", -1 ] ], [ [ "hotcut", -1 ] ] ], + "components": [ [ [ "2x4", 1 ], [ "stick", 2 ] ], [ [ "fur", 2 ], [ "leather", 2 ] ] ] + }, + { + "type": "recipe", + "activity_level": "BRISK_EXERCISE", + "result": "arming_sword", + "category": "CC_WEAPON", + "subcategory": "CSC_WEAPON_CUTTING", + "skill_used": "fabrication", + "difficulty": 8, + "time": "8 h", + "book_learn": [ [ "textbook_weapwest", 7 ] ], + "proficiencies": [ + { "proficiency": "prof_metalworking" }, + { "proficiency": "prof_blacksmithing" }, + { "proficiency": "prof_bladesmith" }, + { "proficiency": "prof_carving", "time_multiplier": 1.2, "learning_time_multiplier": 0.2, "skill_penalty": 0 } + ], + "using": [ [ "blacksmithing_standard", 12 ], [ "steel_standard", 3 ] ], + "qualities": [ { "id": "GRIND", "level": 2 } ], + "tools": [ [ [ "hotcut", -1 ] ] ], + "components": [ [ [ "2x4", 1 ], [ "stick", 2 ] ], [ [ "fur", 1 ], [ "leather", 1 ] ] ] + }, + { + "type": "recipe", + "activity_level": "BRISK_EXERCISE", + "result": "broadsword", + "category": "CC_WEAPON", + "subcategory": "CSC_WEAPON_CUTTING", + "skill_used": "fabrication", + "difficulty": 8, + "time": "7 h", + "book_learn": [ [ "textbook_weapwest", 7 ] ], + "proficiencies": [ + { "proficiency": "prof_metalworking" }, + { "proficiency": "prof_blacksmithing" }, + { "proficiency": "prof_bladesmith" }, + { "proficiency": "prof_carving", "time_multiplier": 1.2, "learning_time_multiplier": 0.2, "skill_penalty": 0 } + ], + "using": [ [ "blacksmithing_standard", 12 ], [ "steel_standard", 3 ] ], + "qualities": [ { "id": "GRIND", "level": 2 } ], + "tools": [ [ [ "hotcut", -1 ] ] ], + "components": [ [ [ "2x4", 1 ], [ "stick", 2 ] ], [ [ "fur", 1 ], [ "leather", 1 ] ] ] + }, + { + "type": "recipe", + "activity_level": "BRISK_EXERCISE", + "result": "jian", + "category": "CC_WEAPON", + "subcategory": "CSC_WEAPON_CUTTING", + "skill_used": "fabrication", + "difficulty": 8, + "time": "8 h", + "book_learn": [ [ "textbook_armschina", 7 ] ], + "proficiencies": [ + { "proficiency": "prof_metalworking" }, + { "proficiency": "prof_blacksmithing" }, + { "proficiency": "prof_bladesmith" }, + { "proficiency": "prof_carving", "time_multiplier": 1.2, "learning_time_multiplier": 0.2, "skill_penalty": 0 } + ], + "using": [ [ "blacksmithing_standard", 12 ], [ "steel_standard", 3 ] ], + "qualities": [ { "id": "GRIND", "level": 2 } ], + "tools": [ [ [ "hotcut", -1 ] ] ], + "components": [ [ [ "filament", 100, "LIST" ] ], [ [ "2x4", 1 ], [ "stick", 2 ] ], [ [ "fur", 1 ], [ "leather", 1 ] ] ] + }, + { + "type": "recipe", + "activity_level": "BRISK_EXERCISE", + "result": "scimitar", + "category": "CC_WEAPON", + "subcategory": "CSC_WEAPON_CUTTING", + "skill_used": "fabrication", + "difficulty": 8, + "time": "7 h", + "book_learn": [ [ "textbook_armschina", 7 ] ], + "proficiencies": [ + { "proficiency": "prof_metalworking" }, + { "proficiency": "prof_blacksmithing" }, + { "proficiency": "prof_bladesmith" }, + { "proficiency": "prof_carving", "time_multiplier": 1.2, "learning_time_multiplier": 0.2, "skill_penalty": 0 } + ], + "using": [ [ "blacksmithing_standard", 12 ], [ "steel_standard", 3 ] ], + "qualities": [ { "id": "GRIND", "level": 2 } ], + "tools": [ [ [ "hotcut", -1 ] ] ], + "components": [ [ [ "2x4", 1 ], [ "stick", 2 ] ], [ [ "fur", 1 ], [ "leather", 1 ] ] ] + }, + { + "type": "recipe", + "activity_level": "BRISK_EXERCISE", + "result": "estoc", + "category": "CC_WEAPON", + "subcategory": "CSC_WEAPON_PIERCING", + "skill_used": "fabrication", + "difficulty": 8, + "time": "8 h 10 m", + "book_learn": [ [ "textbook_weapwest", 7 ] ], + "proficiencies": [ + { "proficiency": "prof_metalworking" }, + { "proficiency": "prof_blacksmithing" }, + { "proficiency": "prof_bladesmith" }, + { "proficiency": "prof_carving", "time_multiplier": 1.2, "learning_time_multiplier": 0.2, "skill_penalty": 0 } + ], + "using": [ [ "blacksmithing_standard", 16 ], [ "steel_standard", 4 ] ], + "qualities": [ { "id": "GRIND", "level": 2 } ], + "tools": [ [ [ "hotcut", -1 ] ] ], + "components": [ [ [ "2x4", 1 ], [ "stick", 2 ] ], [ [ "fur", 1 ], [ "leather", 1 ] ] ] + }, + { + "type": "recipe", + "activity_level": "BRISK_EXERCISE", + "result": "longsword", + "category": "CC_WEAPON", + "subcategory": "CSC_WEAPON_CUTTING", + "skill_used": "fabrication", + "difficulty": 8, + "time": "7 h", + "book_learn": [ [ "textbook_weapwest", 7 ] ], + "proficiencies": [ + { "proficiency": "prof_metalworking" }, + { "proficiency": "prof_blacksmithing" }, + { "proficiency": "prof_bladesmith" }, + { "proficiency": "prof_carving", "time_multiplier": 1.2, "learning_time_multiplier": 0.2, "skill_penalty": 0 } + ], + "using": [ [ "blacksmithing_standard", 16 ], [ "steel_standard", 4 ] ], + "qualities": [ { "id": "GRIND", "level": 2 } ], + "tools": [ [ [ "hotcut", -1 ] ] ], + "components": [ [ [ "2x4", 1 ], [ "stick", 2 ] ], [ [ "fur", 1 ], [ "leather", 1 ] ] ] + }, + { + "type": "recipe", + "activity_level": "BRISK_EXERCISE", + "result": "kriegsmesser", + "category": "CC_WEAPON", + "subcategory": "CSC_WEAPON_CUTTING", + "skill_used": "fabrication", + "difficulty": 6, + "time": "5 h", + "book_learn": [ [ "textbook_weapwest", 5 ] ], + "proficiencies": [ + { "proficiency": "prof_metalworking" }, + { "proficiency": "prof_blacksmithing" }, + { "proficiency": "prof_bladesmith" }, + { "proficiency": "prof_carving", "time_multiplier": 1.2, "learning_time_multiplier": 0.2, "skill_penalty": 0 } + ], + "using": [ [ "blacksmithing_standard", 10 ], [ "steel_standard", 3 ] ], + "qualities": [ { "id": "GRIND", "level": 2 } ], + "tools": [ [ [ "hotcut", -1 ] ] ], + "components": [ [ [ "2x4", 1 ], [ "stick", 2 ] ], [ [ "fur", 1 ], [ "leather", 1 ] ] ] + }, + { + "type": "recipe", + "activity_level": "BRISK_EXERCISE", + "result": "falx", + "category": "CC_WEAPON", + "subcategory": "CSC_WEAPON_CUTTING", + "skill_used": "fabrication", + "difficulty": 8, + "time": "7 h", + "book_learn": [ [ "textbook_weapwest", 6 ] ], + "proficiencies": [ + { "proficiency": "prof_metalworking" }, + { "proficiency": "prof_blacksmithing" }, + { "proficiency": "prof_bladesmith" }, + { "proficiency": "prof_carving", "time_multiplier": 1.2, "learning_time_multiplier": 0.2, "skill_penalty": 0 } + ], + "using": [ [ "blacksmithing_standard", 12 ], [ "steel_standard", 4 ] ], + "qualities": [ { "id": "GRIND", "level": 2 } ], + "tools": [ [ [ "hotcut", -1 ] ] ], + "components": [ [ [ "2x4", 1 ], [ "stick", 2 ] ], [ [ "fur", 1 ], [ "leather", 1 ] ] ] + }, + { + "type": "recipe", + "activity_level": "BRISK_EXERCISE", + "result": "zweihander", + "category": "CC_WEAPON", + "subcategory": "CSC_WEAPON_CUTTING", + "skill_used": "fabrication", + "difficulty": 9, + "time": "8 h", + "book_learn": [ [ "textbook_weapwest", 8 ], [ "scots_cookbook", 10 ] ], + "proficiencies": [ + { "proficiency": "prof_metalworking" }, + { "proficiency": "prof_blacksmithing" }, + { "proficiency": "prof_bladesmith" }, + { "proficiency": "prof_carving", "time_multiplier": 1.2, "learning_time_multiplier": 0.2, "skill_penalty": 0 } + ], + "using": [ [ "blacksmithing_standard", 16 ], [ "steel_standard", 4 ] ], + "qualities": [ { "id": "GRIND", "level": 2 } ], + "tools": [ [ [ "hotcut", -1 ] ] ], + "components": [ [ [ "2x4", 2 ], [ "stick", 4 ] ], [ [ "fur", 2 ], [ "leather", 2 ] ] ] + }, + { + "type": "recipe", + "activity_level": "BRISK_EXERCISE", + "result": "wakizashi", + "category": "CC_WEAPON", + "subcategory": "CSC_WEAPON_CUTTING", + "skill_used": "fabrication", + "difficulty": 8, + "time": "7 h", + "book_learn": [ [ "textbook_weapeast", 7 ] ], + "proficiencies": [ + { "proficiency": "prof_metalworking" }, + { "proficiency": "prof_blacksmithing" }, + { "proficiency": "prof_bladesmith" }, + { "proficiency": "prof_carving", "time_multiplier": 1.2, "learning_time_multiplier": 0.2, "skill_penalty": 0 } + ], + "using": [ [ "blacksmithing_standard", 8 ], [ "steel_standard", 2 ] ], + "qualities": [ { "id": "GRIND", "level": 2 } ], + "tools": [ [ [ "hotcut", -1 ] ] ], + "components": [ [ [ "2x4", 1 ], [ "stick", 2 ] ], [ [ "fur", 2 ], [ "leather", 2 ] ] ] + }, + { + "type": "recipe", + "activity_level": "BRISK_EXERCISE", + "result": "katana", + "category": "CC_WEAPON", + "subcategory": "CSC_WEAPON_CUTTING", + "skill_used": "fabrication", + "difficulty": 9, + "time": "8 h", + "book_learn": [ [ "textbook_weapeast", 8 ] ], + "proficiencies": [ + { "proficiency": "prof_metalworking" }, + { "proficiency": "prof_blacksmithing" }, + { "proficiency": "prof_bladesmith" }, + { "proficiency": "prof_carving", "time_multiplier": 1.2, "learning_time_multiplier": 0.2, "skill_penalty": 0 } + ], + "using": [ [ "blacksmithing_standard", 8 ], [ "steel_standard", 2 ] ], + "qualities": [ { "id": "GRIND", "level": 2 } ], + "tools": [ [ [ "hotcut", -1 ] ] ], + "components": [ [ [ "2x4", 2 ], [ "stick", 4 ] ], [ [ "fur", 2 ], [ "leather", 2 ] ] ] + }, + { + "type": "recipe", + "activity_level": "BRISK_EXERCISE", + "result": "nodachi", + "category": "CC_WEAPON", + "subcategory": "CSC_WEAPON_CUTTING", + "skill_used": "fabrication", + "difficulty": 10, + "time": "9 h 40 m", + "book_learn": [ [ "textbook_weapeast", 8 ] ], + "proficiencies": [ + { "proficiency": "prof_metalworking" }, + { "proficiency": "prof_blacksmithing" }, + { "proficiency": "prof_bladesmith" }, + { "proficiency": "prof_carving", "time_multiplier": 1.2, "learning_time_multiplier": 0.2, "skill_penalty": 0 } + ], + "using": [ [ "blacksmithing_standard", 20 ], [ "steel_standard", 5 ] ], + "qualities": [ { "id": "GRIND", "level": 2 } ], + "tools": [ [ [ "hotcut", -1 ] ] ], + "components": [ [ [ "2x4", 3 ], [ "stick", 6 ] ], [ [ "fur", 3 ], [ "leather", 3 ] ] ] + } +] diff --git a/data/json/obsoletion/obsolete_items.json b/data/json/obsoletion/obsolete_items.json new file mode 100644 index 0000000000000..a7855a4179baa --- /dev/null +++ b/data/json/obsoletion/obsolete_items.json @@ -0,0 +1,52 @@ +[ + { + "id": "toolset_extended", + "type": "TOOL", + "name": { "str": "extended multitool" }, + "description": "Your multitool, extended. Ready to do repair work.", + "symbol": "#", + "color": "white", + "weight": "226 g", + "bashing": 3, + "cutting": 1, + "flags": [ "NO_UNWIELD", "BIONIC_WEAPON", "UNBREAKABLE_MELEE", "TRADER_AVOID" ] + }, + { + "id": "lobotomizer", + "type": "GENERIC", + "category": "weapons", + "name": { "str": "lobotomizer" }, + "description": "A hand-forged collapsible tool with two axe heads and a sharp shovel-like tip on one end. It can be used as a shovel, or you could chop some zombies with it instead.", + "weight": "2722 g", + "volume": "1750 ml", + "price": 25000, + "price_postapoc": 1250, + "bashing": 18, + "cutting": 37, + "to_hit": { "grip": "none", "length": "long", "surface": "line", "balance": "neutral" }, + "material": [ "steel" ], + "symbol": "/", + "color": "dark_gray", + "qualities": [ [ "DIG", 2 ], [ "AXE", 1 ], [ "CUT", 1 ], [ "BUTCHER", -11 ], [ "COOK", 1 ] ], + "techniques": [ "WBLOCK_1", "BRUTAL", "SWEEP" ], + "flags": [ "NEEDS_UNFOLD", "BELT_CLIP", "SHEATH_AXE" ], + "weapon_category": [ "HOOKING_WEAPONRY" ] + }, + { + "id": "mold_plastic", + "type": "TOOL", + "name": { "str": "plastic mold" }, + "description": "A mold that can be used to form plastic chunks.", + "weight": "320 g", + "volume": "2500 ml", + "longest_side": "36 cm", + "price": 1000, + "price_postapoc": 50, + "to_hit": 1, + "bashing": 3, + "material": [ "plastic" ], + "symbol": ";", + "color": "light_blue", + "qualities": [ [ "CONTAIN", 1 ] ] + } +] diff --git a/data/json/obsolete_terrains.json b/data/json/obsoletion/obsolete_terrains.json similarity index 100% rename from data/json/obsolete_terrains.json rename to data/json/obsoletion/obsolete_terrains.json From 56cf921d90700cabf59fcc3889f85438e06e0229 Mon Sep 17 00:00:00 2001 From: Alexey Kim Date: Wed, 22 Mar 2023 04:58:12 +0200 Subject: [PATCH 7/7] Remove obsoleted vitamins from stomach vitamins --- src/stomach.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/stomach.cpp b/src/stomach.cpp index f7a66c6b368d2..5061b4a563487 100644 --- a/src/stomach.cpp +++ b/src/stomach.cpp @@ -150,6 +150,20 @@ void stomach_contents::deserialize( const JsonObject &jo ) jo.read( "contents", str ); contents = string_to_ml( str ); jo.read( "last_ate", last_ate ); + + // the next chunk deletes obsoleted vitamins + const auto predicate = []( const std::pair &pair ) { + if( !pair.first.is_valid() ) { + DebugLog( D_WARNING, DC_ALL ) + << "deleted '" << pair.first.str() << "' from stomach_contents::nutrients::vitamins"; + return true; + } + return false; + }; + std::map::iterator it = nutr.vitamins.begin(); + while( ( it = std::find_if( it, nutr.vitamins.end(), predicate ) ) != nutr.vitamins.end() ) { + nutr.vitamins.erase( it++ ); + } } units::volume stomach_contents::capacity( const Character &owner ) const