diff --git a/data/json/construction.json b/data/json/construction.json index f2499188e1923..791582b1887d3 100644 --- a/data/json/construction.json +++ b/data/json/construction.json @@ -1120,7 +1120,7 @@ "category": "CONSTRUCT", "required_skills": [ [ "fabrication", 3 ] ], "time": "60 m", - "tools": [ [ [ "con_mix", 50 ] ] ], + "tools": [ [ [ "concrete_mix_tool", 50 ] ] ], "qualities": [ [ { "id": "SMOOTH", "level": 2 } ] ], "components": [ [ [ "concrete", 2 ] ], [ [ "water", 2 ], [ "water_clean", 2 ] ] ], "pre_terrain": "t_pit_shallow", @@ -1299,7 +1299,7 @@ "category": "CONSTRUCT", "required_skills": [ [ "fabrication", 4 ] ], "time": "180 m", - "tools": [ [ [ "con_mix", 50 ] ] ], + "tools": [ [ [ "concrete_mix_tool", 50 ] ] ], "qualities": [ [ { "id": "SMOOTH", "level": 2 } ] ], "components": [ [ [ "concrete", 4 ] ], [ [ "2x4", 12 ] ], [ [ "water", 4 ], [ "water_clean", 4 ] ] ], "pre_terrain": "t_pit_shallow", @@ -1313,7 +1313,7 @@ "category": "CONSTRUCT", "required_skills": [ [ "fabrication", 4 ] ], "time": "180 m", - "tools": [ [ [ "con_mix", 50 ] ] ], + "tools": [ [ [ "concrete_mix_tool", 50 ] ] ], "qualities": [ [ { "id": "SMOOTH", "level": 2 } ] ], "components": [ [ [ "concrete", 4 ] ], [ [ "2x4", 12 ] ], [ [ "water", 4 ], [ "water_clean", 4 ] ] ], "pre_terrain": "t_sconc_wall_halfway", @@ -1354,7 +1354,7 @@ "category": "CONSTRUCT", "required_skills": [ [ "fabrication", 6 ] ], "time": "120 m", - "tools": [ [ [ "con_mix", 50 ] ] ], + "tools": [ [ [ "concrete_mix_tool", 50 ] ] ], "qualities": [ [ { "id": "SMOOTH", "level": 2 } ] ], "components": [ [ [ "concrete", 6 ] ], [ [ "2x4", 12 ] ], [ [ "water", 4 ], [ "water_clean", 4 ] ] ], "pre_terrain": "t_reb_cage", @@ -1368,7 +1368,7 @@ "category": "CONSTRUCT", "required_skills": [ [ "fabrication", 6 ] ], "time": "120 m", - "tools": [ [ [ "con_mix", 50 ] ] ], + "tools": [ [ [ "concrete_mix_tool", 50 ] ] ], "qualities": [ [ { "id": "SMOOTH", "level": 2 } ] ], "components": [ [ [ "concrete", 6 ] ], [ [ "2x4", 12 ] ], [ [ "water", 4 ], [ "water_clean", 4 ] ] ], "pre_terrain": "t_strconc_wall_halfway", @@ -1382,7 +1382,7 @@ "category": "CONSTRUCT", "required_skills": [ [ "fabrication", 6 ] ], "time": "120 m", - "tools": [ [ [ "con_mix", 50 ] ] ], + "tools": [ [ [ "concrete_mix_tool", 50 ] ] ], "qualities": [ [ { "id": "SMOOTH", "level": 2 } ] ], "components": [ [ [ "concrete", 6 ] ], [ [ "2x4", 12 ] ], [ [ "rope_6", 8 ] ], [ [ "water", 4 ], [ "water_clean", 4 ] ] ], "pre_terrain": "t_strconc_wall_halfway", @@ -1410,7 +1410,7 @@ "category": "CONSTRUCT", "required_skills": [ [ "fabrication", 6 ] ], "time": "120 m", - "tools": [ [ [ "con_mix", 50 ] ] ], + "tools": [ [ [ "concrete_mix_tool", 50 ] ] ], "qualities": [ [ { "id": "SMOOTH", "level": 2 } ] ], "components": [ [ [ "concrete", 6 ] ], [ [ "2x4", 12 ] ], [ [ "water", 4 ], [ "water_clean", 4 ] ] ], "pre_terrain": "t_reb_cage", @@ -1424,7 +1424,7 @@ "category": "CONSTRUCT", "required_skills": [ [ "fabrication", 6 ] ], "time": "120 m", - "tools": [ [ [ "con_mix", 50 ] ] ], + "tools": [ [ [ "concrete_mix_tool", 50 ] ] ], "qualities": [ [ { "id": "SMOOTH", "level": 2 } ] ], "components": [ [ [ "concrete", 6 ] ], [ [ "water", 4 ], [ "water_clean", 4 ] ] ], "pre_terrain": "t_column_halfway", @@ -1465,7 +1465,7 @@ "category": "CONSTRUCT", "required_skills": [ [ "fabrication", 5 ] ], "time": "120 m", - "tools": [ [ [ "con_mix", 50 ] ] ], + "tools": [ [ [ "concrete_mix_tool", 50 ] ] ], "qualities": [ [ { "id": "SMOOTH", "level": 2 } ] ], "components": [ [ [ "concrete", 4 ] ], [ [ "water", 4 ], [ "water_clean", 4 ] ] ], "pre_terrain": "t_ov_smreb_cage", @@ -1493,7 +1493,7 @@ "category": "CONSTRUCT", "required_skills": [ [ "fabrication", 6 ] ], "time": "180 m", - "tools": [ [ [ "con_mix", 50 ] ] ], + "tools": [ [ [ "concrete_mix_tool", 50 ] ] ], "qualities": [ [ { "id": "SMOOTH", "level": 2 } ] ], "components": [ [ [ "concrete", 6 ] ], [ [ "water", 3 ], [ "water_clean", 3 ] ] ], "pre_terrain": "t_ov_reb_cage", @@ -1507,7 +1507,7 @@ "category": "CONSTRUCT", "required_skills": [ [ "fabrication", 6 ] ], "time": "180 m", - "tools": [ [ [ "con_mix", 50 ] ] ], + "tools": [ [ [ "concrete_mix_tool", 50 ] ] ], "qualities": [ [ { "id": "SMOOTH", "level": 2 } ] ], "components": [ [ [ "concrete", 6 ] ], [ [ "water", 3 ], [ "water_clean", 3 ] ] ], "pre_terrain": "t_strconc_floor_halfway", @@ -1997,7 +1997,7 @@ "required_skills": [ [ "fabrication", 4 ] ], "time": "180 m", "//": "The frame is used to keep the shape of the hole until the concrete is solid", - "tools": [ [ [ "con_mix", 50 ] ], [ [ "frame_wood", -1 ] ] ], + "tools": [ [ [ "concrete_mix_tool", 50 ] ], [ [ "frame_wood", -1 ] ] ], "qualities": [ [ { "id": "SMOOTH", "level": 2 } ] ], "components": [ [ [ "concrete", 4 ] ], [ [ "2x4", 12 ] ], [ [ "water", 4 ], [ "water_clean", 4 ] ] ], "pre_terrain": "t_sconc_wall_halfway", @@ -2011,7 +2011,7 @@ "required_skills": [ [ "fabrication", 6 ] ], "time": "120 m", "//": "The frame is used to keep the shape of the hole until the concrete is solid", - "tools": [ [ [ "con_mix", 50 ] ], [ [ "frame_wood", -1 ] ] ], + "tools": [ [ [ "concrete_mix_tool", 50 ] ], [ [ "frame_wood", -1 ] ] ], "qualities": [ [ { "id": "SMOOTH", "level": 2 } ] ], "components": [ [ [ "concrete", 6 ] ], [ [ "2x4", 12 ] ], [ [ "water", 4 ], [ "water_clean", 4 ] ] ], "pre_terrain": "t_strconc_wall_halfway", @@ -2732,7 +2732,7 @@ "qualities": [ [ { "id": "SAW_M", "level": 1 } ], [ { "id": "SCREW", "level": 1 } ], [ { "id": "SMOOTH", "level": 2 } ] ], "using": [ [ "welding_standard", 500 ], [ "welding_standard", 500 ] ], "//1": "lots of 1 meter square metal sheet and plating so very big weld", - "tools": [ [ [ "con_mix", 50 ] ] ], + "tools": [ [ [ "concrete_mix_tool", 50 ] ] ], "components": [ [ [ "hdframe", 1 ] ], [ [ "steel_lump", 2 ], [ "steel_chunk", 8 ], [ "scrap", 40 ] ], @@ -4947,7 +4947,7 @@ "category": "DIG", "required_skills": [ [ "fabrication", 3 ] ], "time": "150 m", - "tools": [ [ [ "con_mix", 125 ] ] ], + "tools": [ [ [ "concrete_mix_tool", 125 ] ] ], "qualities": [ [ { "id": "SMOOTH", "level": 2 } ] ], "components": [ [ [ "concrete", 5 ] ], [ [ "water", 5 ], [ "water_clean", 5 ] ] ], "pre_special": [ "check_empty", "check_stable", "check_up_OK", "check_nofloor_above" ], @@ -4963,7 +4963,7 @@ "category": "DIG", "required_skills": [ [ "fabrication", 3 ] ], "time": "150 m", - "tools": [ [ [ "con_mix", 125 ] ] ], + "tools": [ [ [ "concrete_mix_tool", 125 ] ] ], "qualities": [ [ { "id": "SMOOTH", "level": 2 } ] ], "components": [ [ [ "concrete", 5 ] ], [ [ "water", 5 ], [ "water_clean", 5 ] ] ], "pre_special": [ "check_empty", "check_stable", "check_up_OK", "check_nofloor_above", "check_ramp_high" ], diff --git a/data/json/itemgroups/tools.json b/data/json/itemgroups/tools.json index 8839012cb73b1..75bb6bf2d79ad 100644 --- a/data/json/itemgroups/tools.json +++ b/data/json/itemgroups/tools.json @@ -93,7 +93,7 @@ "items": [ { "item": "brick_kiln", "prob": 80, "charges": [ 0, 1000 ] }, { "item": "kiln", "prob": 40 }, - { "item": "con_mix", "prob": 120, "charges": [ 0, 500 ] }, + { "item": "con_mix_foldable", "prob": 120 }, { "item": "elec_jackhammer", "prob": 40, "charges": [ 0, 6600 ] }, { "item": "reciprocating_saw", "prob": 80, "charges": [ 0, 500 ] }, { "item": "cordless_impact_wrench", "prob": 20, "charges": [ 0, 500 ] }, diff --git a/data/json/items/containers/containers.json b/data/json/items/containers/containers.json index 16e160642491a..dec805eae1879 100644 --- a/data/json/items/containers/containers.json +++ b/data/json/items/containers/containers.json @@ -43,15 +43,16 @@ "id": "30gal_barrel", "type": "GENERIC", "category": "container", - "name": { "str": "30 gallon barrel" }, + "name": { "str": "30 gallon plastic barrel" }, "looks_like": "55gal_drum", "description": "A huge plastic barrel with a watertight lid.", "ascii_picture": "30gal_barrel", "weight": "6800 g", - "volume": "118125 ml", - "price": 5000, + "volume": "165640 ml", + "longest_side": "72 cm", + "price": "71 USD", "price_postapoc": 250, - "to_hit": -5, + "to_hit": { "grip": "bad", "length": "long", "surface": "any", "balance": "clumsy" }, "material": [ "plastic" ], "symbol": "0", "color": "light_blue", @@ -60,13 +61,14 @@ "pocket_type": "CONTAINER", "watertight": true, "rigid": true, - "max_contains_volume": "112500 ml", + "max_contains_volume": "113560 ml", "max_contains_weight": "255 kg" } ], "qualities": [ [ "CONTAIN", 1 ] ], "flags": [ "COLLAPSE_CONTENTS" ], - "melee_damage": { "bash": 8 } + "melee_damage": { "bash": 8 }, + "//": "Based on https://www.amazon.com/dp/B0025QI4XC" }, { "id": "30gal_drum", diff --git a/data/json/items/fake.json b/data/json/items/fake.json index 385a191b48b68..b770cc0d96476 100644 --- a/data/json/items/fake.json +++ b/data/json/items/fake.json @@ -406,5 +406,12 @@ "pocket_data": [ { "pocket_type": "MAGAZINE_WELL", "default_magazine": "pseudo_battery" } ], "charges_per_use": 100, "charged_qualities": [ [ "PRESSURIZATION", 10 ] ] + }, + { + "id": "concrete_mix_tool", + "type": "TOOL", + "name": { "str": "concrete mixer" }, + "copy-from": "fake_appliance_tool", + "charges_per_use": 20 } ] diff --git a/data/json/items/tool/workshop.json b/data/json/items/tool/workshop.json index 3568aa045d84c..8d299467bdb29 100644 --- a/data/json/items/tool/workshop.json +++ b/data/json/items/tool/workshop.json @@ -245,32 +245,39 @@ "//2": "Based on https://www.amazon.com/dp/B000A24RCA" }, { - "id": "con_mix", + "id": "con_mix_foldable", "type": "TOOL", "name": { "str": "concrete mixer" }, - "description": "A portable concrete mixer. It is still large and heavy, but it can be operated solo, and runs on batteries. It also has a heater built in.", - "weight": "9071 g", - "volume": "5 L", - "price": 50000, + "description": "A portable concrete mixer. It is large and heavy, but it can be operated solo. Unfold to use.", + "looks_like": "con_mix", + "weight": "40823 g", + "volume": "250 L", + "longest_side": "118 cm", + "//1": "Calculated by assuming a cylinder with dimensions taken from the drum opening (14.5in) and product length (46.5in) and then doubling it. Calculating volume from the product dimensions inflated it artifically as it counted all the free space inbetween the handles, wheels, etc resulting in 600+l of volume (a portable concrete mixer that can't be transported in a vehicle lmao).", + "price": "400 USD", "price_postapoc": 500, - "to_hit": -6, - "material": [ "steel" ], - "symbol": "$", - "color": "dark_gray", - "ammo": [ "battery" ], - "charges_per_use": 20, - "qualities": [ [ "CONTAIN", 1 ] ], - "flags": [ "ALLOWS_REMOTE_USE" ], - "use_action": [ "HOTPLATE", { "type": "link_up", "cable_length": 15, "charge_rate": "1500 W" } ], + "to_hit": { "grip": "bad", "length": "long", "surface": "line", "balance": "clumsy" }, + "material": [ "plastic", "steel" ], "pocket_data": [ { - "pocket_type": "MAGAZINE_WELL", - "rigid": true, - "flag_restriction": [ "BATTERY_MEDIUM" ], - "default_magazine": "medium_battery_cell" + "max_contains_volume": "100 L", + "max_contains_weight": "300 kg", + "watertight": true, + "open_container": true, + "rigid": true } ], - "melee_damage": { "bash": 15 } + "symbol": "$", + "color": "dark_gray", + "qualities": [ [ "CONTAIN", 1 ] ], + "flags": [ "NO_SALVAGE" ], + "use_action": [ "UNFOLD_GENERIC" ], + "variables": { + "vehicle_name": "Concrete mixer", + "folded_parts": "[{\"id\": \"frame_concrete_mix\",\"base\":{\"typeid\":\"frame_concrete_mix\",\"item_tags\":[\"VEHICLE\"]},\"mount_dx\":0,\"mount_dy\":0},{\"id\":\"wheel_mount_concrete_mix\",\"base\":{\"typeid\":\"wheel_mount_concrete_mix\",\"item_tags\":[\"VEHICLE\"]},\"mount_dx\": 0,\"mount_dy\": 0},{\"id\":\"wheel_set_concrete_mix\",\"base\":{\"typeid\":\"wheel_set_concrete_mix\",\"item_tags\":[\"VEHICLE\"]},\"mount_dx\": 0,\"mount_dy\":0},{\"id\":\"drum_concrete_mix\",\"base\":{\"typeid\":\"30gal_barrel\",\"item_tags\":[\"VEHICLE\"]},\"mount_dx\":0,\"mount_dy\":0},{\"id\":\"engine_electric_small\",\"base\":{\"typeid\":\"motor_small\",\"item_tags\":[\"VEHICLE\"]},\"mount_dx\":0,\"mount_dy\":0},{\"id\":\"small_storage_battery\",\"base\":{\"typeid\":\"small_storage_battery\",\"item_tags\":[\"VEHICLE\"]},\"mount_dx\":0,\"mount_dy\":0}]" + }, + "melee_damage": { "bash": 15 }, + "//2": "Based on https://www.amazon.com/dp/B01EGB6TJ4 - save for the numbers that the Amazon arcticle got straight up wrong (weight and drum opening) which were taken from the owner's manual - https://assets.northerntool.com/products/494/documents/manuals/49413.pdf" }, { "id": "cordless_drill", diff --git a/data/json/items/vehicle/frames.json b/data/json/items/vehicle/frames.json index ac304a2a55f39..3c5c677c0b4a3 100644 --- a/data/json/items/vehicle/frames.json +++ b/data/json/items/vehicle/frames.json @@ -118,5 +118,16 @@ "price": 1000, "price_postapoc": 50, "copy-from": "foldframe" + }, + { + "type": "GENERIC", + "id": "frame_concrete_mix", + "name": { "str_sp": "concrete mixer chassis" }, + "description": "The chassis of a concrete mixer.", + "weight": "9700 g", + "volume": "10 L", + "color": "light_gray", + "symbol": "]", + "category": "veh_parts" } ] diff --git a/data/json/items/vehicle/wheel.json b/data/json/items/vehicle/wheel.json index f2f3b9149b0be..9824ff3b4b147 100644 --- a/data/json/items/vehicle/wheel.json +++ b/data/json/items/vehicle/wheel.json @@ -778,5 +778,24 @@ "name": { "str": "banded wooden cart wheel" }, "description": "A handmade wooden cart wheel with metal bands for durability.", "relative": { "weight": "500 g" } + }, + { + "id": "wheel_mount_concrete_mix", + "type": "GENERIC", + "name": { "str_sp": "concrete mixer wheel mounts" }, + "description": "A set of two small wheel mounts from a concrete mixer.", + "copy-from": "wheel_mount_light", + "weight": "300 g", + "volume": "500 ml" + }, + { + "id": "wheel_set_concrete_mix", + "type": "WHEEL", + "name": { "str_sp": "concrete mixer wheels" }, + "description": "A set of two small wheels from a concrete mixer.", + "copy-from": "wheel_small", + "weight": "5444 g", + "volume": "5500 ml", + "width": 6 } ] diff --git a/data/json/mapgen/construction_site.json b/data/json/mapgen/construction_site.json index 582a05f596693..efb0c3a19bb84 100644 --- a/data/json/mapgen/construction_site.json +++ b/data/json/mapgen/construction_site.json @@ -33,7 +33,7 @@ " " ], "palettes": [ "construction_site_palette" ], - "place_loot": [ { "item": "con_mix", "x": [ 0, 8 ], "y": [ 5, 7 ] } ], + "place_loot": [ { "item": "con_mix_foldable", "x": [ 0, 8 ], "y": [ 5, 7 ] } ], "place_vehicles": [ { "vehicle": "small_utility_vehicles", "x": 12, "y": 4, "chance": 70, "rotation": 180 } ] } }, @@ -71,7 +71,7 @@ " " ], "palettes": [ "construction_site_palette" ], - "place_loot": [ { "item": "con_mix", "x": [ 5, 9 ], "y": [ 4, 7 ] } ], + "place_loot": [ { "item": "con_mix_foldable", "x": [ 5, 9 ], "y": [ 4, 7 ] } ], "place_vehicles": [ { "vehicle": "small_utility_vehicles", "x": 12, "y": 4, "chance": 70, "rotation": 0 } ] } }, @@ -109,7 +109,7 @@ " c ss " ], "palettes": [ "construction_site_palette" ], - "place_loot": [ { "item": "con_mix", "x": [ 0, 4 ], "y": [ 17, 19 ] } ], + "place_loot": [ { "item": "con_mix_foldable", "x": [ 0, 4 ], "y": [ 17, 19 ] } ], "place_vehicles": [ { "vehicle": "small_utility_vehicles", "x": 22, "y": 4, "chance": 66, "rotation": 270 }, { "vehicle": "small_utility_vehicles", "x": 12, "y": 21, "chance": 66, "rotation": 180 } @@ -150,7 +150,7 @@ " -- -- -- -- -- " ], "palettes": [ "construction_site_palette" ], - "place_loot": [ { "item": "con_mix", "x": [ 0, 17 ], "y": 1 } ], + "place_loot": [ { "item": "con_mix_foldable", "x": [ 0, 17 ], "y": 1 } ], "place_vehicles": [ { "vehicle": "small_utility_vehicles", "x": 20, "y": [ 6, 11 ], "chance": 70, "rotation": 270 } ] } }, @@ -188,7 +188,7 @@ " c c " ], "palettes": [ "construction_site_palette" ], - "place_loot": [ { "item": "con_mix", "x": [ 5, 11 ], "y": [ 20, 23 ] } ], + "place_loot": [ { "item": "con_mix_foldable", "x": [ 5, 11 ], "y": [ 20, 23 ] } ], "place_vehicles": [ { "vehicle": "small_utility_vehicles", "x": 15, "y": 21, "chance": 70, "rotation": 180 } ] } } diff --git a/data/json/mapgen/house/house_vacant.json b/data/json/mapgen/house/house_vacant.json index 438488376341e..b5e824a27b455 100644 --- a/data/json/mapgen/house/house_vacant.json +++ b/data/json/mapgen/house/house_vacant.json @@ -34,7 +34,7 @@ " -- -- -- -- -- " ], "palettes": [ "construction_site_palette" ], - "place_loot": [ { "item": "con_mix", "x": [ 12, 22 ], "y": [ 19, 22 ] } ], + "place_loot": [ { "item": "con_mix_foldable", "x": [ 12, 22 ], "y": [ 19, 22 ] } ], "place_vehicles": [ { "vehicle": "small_utility_vehicles", "x": 11, "y": 2, "chance": 70, "rotation": 0 } ] } }, @@ -73,7 +73,7 @@ " @@ sss 11 22 22 " ], "palettes": [ "construction_site_palette" ], - "place_loot": [ { "item": "con_mix", "x": [ 1, 9 ], "y": [ 16, 19 ] } ], + "place_loot": [ { "item": "con_mix_foldable", "x": [ 1, 9 ], "y": [ 16, 19 ] } ], "place_vehicles": [ { "vehicle": "small_utility_vehicles", "x": 20, "y": 2, "chance": 70, "rotation": 0 } ] } }, @@ -112,7 +112,7 @@ " ss -- -- " ], "palettes": [ "construction_site_palette" ], - "place_loot": [ { "item": "con_mix", "x": [ 2, 8 ], "y": [ 19, 21 ] } ], + "place_loot": [ { "item": "con_mix_foldable", "x": [ 2, 8 ], "y": [ 19, 21 ] } ], "place_vehicles": [ { "vehicle": "small_utility_vehicles", "x": 5, "y": 2, "chance": 70, "rotation": 0 } ] } }, @@ -151,7 +151,7 @@ " " ], "palettes": [ "construction_site_palette" ], - "place_loot": [ { "item": "con_mix", "x": [ 7, 13 ], "y": [ 1, 5 ] } ], + "place_loot": [ { "item": "con_mix_foldable", "x": [ 7, 13 ], "y": [ 1, 5 ] } ], "place_vehicles": [ { "vehicle": "small_utility_vehicles", "x": 4, "y": 4, "chance": 70, "rotation": 90 } ] } } diff --git a/data/json/npcs/NC_JUNK_SHOPKEEP.json b/data/json/npcs/NC_JUNK_SHOPKEEP.json index 1b9b9487d38e0..0a045b0ed7f92 100644 --- a/data/json/npcs/NC_JUNK_SHOPKEEP.json +++ b/data/json/npcs/NC_JUNK_SHOPKEEP.json @@ -242,7 +242,7 @@ { "item": "polisher", "prob": 20 }, { "item": "screwdriver", "prob": 40 }, { "item": "hammer", "prob": 35 }, - { "item": "con_mix", "prob": 10 }, + { "item": "con_mix_foldable", "prob": 10 }, { "item": "brick_kiln", "prob": 10 }, { "item": "kiln", "prob": 4 }, { "item": "g_shovel", "prob": 20 }, diff --git a/data/json/obsoletion_and_migration_0.I/migration_items.json b/data/json/obsoletion_and_migration_0.I/migration_items.json index 6c4b99f9b03c2..7a6f2bd7d7ab2 100644 --- a/data/json/obsoletion_and_migration_0.I/migration_items.json +++ b/data/json/obsoletion_and_migration_0.I/migration_items.json @@ -1238,5 +1238,11 @@ "id": "surv_hand_cannon", "type": "MIGRATION", "replace": "hptjhpmag" + }, + { + "id": "con_mix", + "type": "MIGRATION", + "replace": "con_mix_foldable", + "reset_item_vars": true } ] diff --git a/data/json/recipes/other/parts_construction.json b/data/json/recipes/other/parts_construction.json index 5aa7cf6e49584..10ee1e80ed8ef 100644 --- a/data/json/recipes/other/parts_construction.json +++ b/data/json/recipes/other/parts_construction.json @@ -666,7 +666,7 @@ "time": "10 m", "autolearn": false, "book_learn": [ [ "concrete_book", 2 ] ], - "tools": [ [ [ "con_mix", 50 ] ] ], + "tools": [ [ [ "concrete_mix_tool", 50 ] ] ], "components": [ [ [ "material_cement", 50 ] ], [ [ "material_sand", 150 ] ] ] }, { diff --git a/data/json/recipes/recipe_others.json b/data/json/recipes/recipe_others.json index 298fbc157fdd0..eb36776d1cb24 100644 --- a/data/json/recipes/recipe_others.json +++ b/data/json/recipes/recipe_others.json @@ -1536,7 +1536,7 @@ { "type": "recipe", "activity_level": "BRISK_EXERCISE", - "result": "con_mix", + "result": "con_mix_foldable", "category": "CC_OTHER", "subcategory": "CSC_OTHER_TOOLS", "skill_used": "fabrication", @@ -1545,28 +1545,27 @@ "time": "4 h 30 m", "reversible": true, "autolearn": true, - "//": "80 cm weld", + "//1": "338cm weld. 108cm from pipes making the base and handles, 20cm from welding four sheets for the blades on the inside of the drum, 200cm from welding six sheets around the motor.", "book_learn": [ [ "textbook_fabrication", 7 ], [ "manual_fabrication", 7 ] ], - "using": [ [ "soldering_standard", 25 ], [ "welding_standard", 80 ] ], - "proficiencies": [ - { "proficiency": "prof_metalworking" }, - { "proficiency": "prof_welding_basic", "skill_penalty": 0.5 }, - { "proficiency": "prof_welding" } - ], + "using": [ [ "soldering_standard", 25 ], [ "welding_standard", 338 ] ], + "proficiencies": [ { "proficiency": "prof_welding_basic", "skill_penalty": 0.5 }, { "proficiency": "prof_welding" } ], "qualities": [ { "id": "HAMMER", "level": 3 }, - { "id": "SAW_M", "level": 1 }, + { "id": "SAW_M", "level": 2 }, { "id": "SCREW", "level": 1 }, { "id": "WRENCH", "level": 1 } ], "components": [ - [ [ "steel_lump", 3 ], [ "steel_chunk", 9 ], [ "scrap", 36 ] ], - [ [ "metal_tank_little", 1 ] ], - [ [ "pipe", 4 ] ], - [ [ "motor_tiny", 1 ] ], - [ [ "element", 3 ], [ "crude_heating_element", 4 ] ], - [ [ "cable", 16 ] ] - ] + [ [ "pipe", 12 ] ], + [ [ "sheet_metal_small", 10 ] ], + [ [ "motor_small", 1 ] ], + [ [ "small_storage_battery", 1 ] ], + [ [ "wheel_small", 2 ] ], + [ [ "wheel_mount_light", 2 ] ], + [ [ "nuts_bolts", 8 ] ], + [ [ "30gal_barrel", 1 ] ] + ], + "//2": "The component list is by no means perfect - this craft still generates ~7.2kg of mass. I can't, however, improve it without adding nonexistant components to the recipe, so I think this is an acceptable state of things." }, { "type": "recipe", diff --git a/data/json/recipes/tools/containers.json b/data/json/recipes/tools/containers.json index 6806709906b81..c65292d393ee5 100644 --- a/data/json/recipes/tools/containers.json +++ b/data/json/recipes/tools/containers.json @@ -400,12 +400,12 @@ "category": "CC_OTHER", "subcategory": "CSC_OTHER_CONTAINERS", "skill_used": "fabrication", - "difficulty": 8, - "time": "30 m", + "difficulty": 6, + "time": "1 h", "autolearn": true, - "using": [ [ "soldering_standard", 40 ] ], - "qualities": [ { "id": "CUT", "level": 2 } ], - "components": [ [ [ "duct_tape", 200 ], [ "superglue", 4 ] ], [ [ "jerrycan", 12 ] ] ] + "proficiencies": [ { "proficiency": "prof_plasticworking" } ], + "using": [ [ "plastic_molding", 98 ] ], + "components": [ [ [ "plastic_chunk", 136 ] ] ] }, { "type": "recipe", diff --git a/data/json/vehicleparts/frames.json b/data/json/vehicleparts/frames.json index 3e774995252e0..c60ed0271d6c7 100644 --- a/data/json/vehicleparts/frames.json +++ b/data/json/vehicleparts/frames.json @@ -279,5 +279,18 @@ "repair": { "skills": [ [ "mechanics", 2 ] ], "time": "9 m", "using": [ [ "repair_welding_alloys", 5 ] ] } }, "damage_reduction": { "all": 7 } + }, + { + "id": "frame_concrete_mix", + "type": "vehicle_part", + "copy-from": "frame_abstract", + "name": { "str": "concrete mixer chassis" }, + "item": "frame_concrete_mix", + "durability": 150, + "description": "The chassis of a concrete mixer.", + "folded_volume": "10 L", + "breaks_into": [ { "item": "steel_chunk", "count": [ 1, 4 ] }, { "item": "scrap", "count": [ 5, 25 ] } ], + "extend": { "flags": [ "NO_INSTALL_HIDDEN", "CABLE_PORTS" ] }, + "damage_reduction": { "all": 7 } } ] diff --git a/data/json/vehicleparts/modular_tools.json b/data/json/vehicleparts/modular_tools.json index 2fbfdcf7fd367..de9b352f0c0f0 100644 --- a/data/json/vehicleparts/modular_tools.json +++ b/data/json/vehicleparts/modular_tools.json @@ -104,7 +104,6 @@ "angle_grinder", "atomic_coffeepot", "coffeemaker", - "con_mix", "copper_pan", "cordless_drill", "corded_powerdrill", diff --git a/data/json/vehicleparts/utilities.json b/data/json/vehicleparts/utilities.json index fb7ef63154e81..9369547273e04 100644 --- a/data/json/vehicleparts/utilities.json +++ b/data/json/vehicleparts/utilities.json @@ -134,5 +134,22 @@ }, "breaks_into": [ { "item": "plastic_chunk", "count": [ 2, 5 ] } ], "variants": [ { "symbols": "8", "symbols_broken": "x" } ] + }, + { + "id": "drum_concrete_mix", + "type": "vehicle_part", + "name": { "str": "concrete mixer drum" }, + "item": "30gal_barrel", + "description": "A plastic 100-liter drum of a portable concrete mixer.", + "categories": [ "utility" ], + "location": "center", + "folded_volume": "113560 ml", + "color": "light_blue", + "broken_color": "light_blue", + "durability": 150, + "flags": [ "OBSTACLE", "NO_INSTALL_HIDDEN" ], + "pseudo_tools": [ { "id": "concrete_mix_tool" } ], + "breaks_into": [ { "item": "plastic_chunk", "count": [ 10, 100 ] } ], + "variants": [ { "symbols": "U", "symbols_broken": "u" } ] } ] diff --git a/data/json/vehicleparts/vp_flags.json b/data/json/vehicleparts/vp_flags.json index 36b696f9b3279..b5d0b44897dc3 100644 --- a/data/json/vehicleparts/vp_flags.json +++ b/data/json/vehicleparts/vp_flags.json @@ -694,5 +694,14 @@ { "id": "IGNORE_HEIGHT_REQUIREMENT", "type": "json_flag" + }, + { + "id": "WHEEL_MOUNT_CONCRETE_MIX", + "type": "json_flag" + }, + { + "id": "NEEDS_WHEEL_MOUNT_CONCRETE_MIX", + "type": "json_flag", + "requires_flag": "WHEEL_MOUNT_CONCRETE_MIX" } ] diff --git a/data/json/vehicleparts/wheel.json b/data/json/vehicleparts/wheel.json index 5102e4633bf6e..0d343b1a92e1e 100644 --- a/data/json/vehicleparts/wheel.json +++ b/data/json/vehicleparts/wheel.json @@ -723,5 +723,42 @@ "rolling_resistance": 2.05, "proportional": { "durability": 2, "damage_modifier": 2 }, "damage_reduction": { "all": 20 } + }, + { + "type": "vehicle_part", + "id": "wheel_mount_concrete_mix", + "name": { "str": "concrete mixer wheel mounts" }, + "categories": [ "movement" ], + "location": "axle", + "damage_modifier": 80, + "folded_volume": "500 ml", + "durability": 240, + "description": "A set of two small wheel mounts from a concrete mixer.", + "item": "wheel_mount_concrete_mix", + "flags": [ "WHEEL_MOUNT_CONCRETE_MIX", "NEEDS_JACKING", "NO_INSTALL_HIDDEN" ], + "breaks_into": [ { "item": "scrap", "count": [ 1, 8 ] } ], + "damage_reduction": { "all": 10 }, + "variants": [ { "symbols": "-", "symbols_broken": "X" } ] + }, + { + "id": "wheel_set_concrete_mix", + "type": "vehicle_part", + "name": { "str": "concrete mixer wheels" }, + "looks_like": "wheel", + "item": "wheel_set_concrete_mix", + "location": "under", + "categories": [ "movement" ], + "color": "dark_gray", + "durability": 140, + "description": "A small wheel.", + "damage_modifier": 50, + "folded_volume": "5500 ml", + "breaks_into": [ { "item": "steel_lump" }, { "item": "steel_chunk", "count": [ 1, 3 ] }, { "item": "scrap", "count": [ 1, 6 ] } ], + "rolling_resistance": 1.5, + "wheel_offroad_rating": 0.3, + "wheel_terrain_modifiers": { "FLAT": [ 0, 5 ], "ROAD": [ 0, 2 ] }, + "contact_area": 60, + "flags": [ "WHEEL", "UNSTABLE_WHEEL", "NEEDS_WHEEL_MOUNT_CONCRETE_MIX", "NO_INSTALL_HIDDEN" ], + "variants": [ { "symbols": "o", "symbols_broken": "x" } ] } ]