diff --git a/data/json/itemgroups/tools.json b/data/json/itemgroups/tools.json index db8bacce2e796..138805e88170f 100644 --- a/data/json/itemgroups/tools.json +++ b/data/json/itemgroups/tools.json @@ -965,6 +965,20 @@ { "item": "plastichoboreel", "prob": 1 } ] }, + { + "id": "tools_tractor", + "type": "item_group", + "subtype": "distribution", + "//": "Tools that would be found in a tractor.", + "items": [ + [ "wrench", 35 ], + [ "wrench_small", 35 ], + [ "hammer", 20 ], + [ "multitool", 20 ], + [ "pliers_locking", 15 ], + [ "wrench_large", 5 ] + ] + }, { "type": "item_group", "id": "pur_tablets_bottle_plastic_small_15", diff --git a/data/json/recipes/other/parts_rigs.json b/data/json/recipes/other/parts_rigs.json index 833ae8844d41d..1da0447975a4b 100644 --- a/data/json/recipes/other/parts_rigs.json +++ b/data/json/recipes/other/parts_rigs.json @@ -73,14 +73,7 @@ { "proficiency": "prof_welding" } ], "qualities": [ { "id": "HAMMER", "level": 2 }, { "id": "SAW_M", "level": 1 }, { "id": "WRENCH", "level": 2 } ], - "components": [ - [ [ "pipe", 2 ] ], - [ [ "sheet_metal", 1 ] ], - [ [ "motor", 2 ] ], - [ [ "wheel", 1 ] ], - [ [ "processor", 1 ] ], - [ [ "nuts_bolts", 16 ] ] - ] + "components": [ [ [ "pipe", 3 ] ], [ [ "sheet_metal", 1 ] ], [ [ "wheel", 2 ] ], [ [ "nuts_bolts", 16 ] ] ] }, { "type": "recipe", @@ -101,7 +94,7 @@ { "proficiency": "prof_welding" } ], "qualities": [ { "id": "HAMMER", "level": 2 }, { "id": "SAW_M", "level": 1 }, { "id": "WRENCH", "level": 2 } ], - "components": [ [ [ "pipe", 2 ] ], [ [ "sheet_metal", 1 ] ], [ [ "frame", 1 ] ], [ [ "wheel", 1 ] ], [ [ "nuts_bolts", 16 ] ] ] + "components": [ [ [ "pipe", 4 ] ], [ [ "sheet_metal", 1 ] ], [ [ "frame", 1 ] ], [ [ "wheel", 2 ] ], [ [ "nuts_bolts", 16 ] ] ] }, { "type": "recipe", @@ -127,7 +120,6 @@ [ [ "steel_plate", 2 ] ], [ [ "frame", 1 ] ], [ [ "wheel", 1 ] ], - [ [ "motor", 1 ] ], [ [ "pipe_fittings", 2 ] ], [ [ "nuts_bolts", 50 ] ] ] diff --git a/data/json/vehicleparts/engineering.json b/data/json/vehicleparts/engineering.json index 49babadb1e89a..5bb95fd313b13 100644 --- a/data/json/vehicleparts/engineering.json +++ b/data/json/vehicleparts/engineering.json @@ -88,7 +88,7 @@ { "id": "forklift_fork", "type": "vehicle_part", - "name": { "str": "forklift arm" }, + "name": { "str": "forklift arms" }, "item": "frame", "location": "structure", "categories": [ "utility" ], diff --git a/data/json/vehicleparts/vehicle_parts.json b/data/json/vehicleparts/vehicle_parts.json index f92862a78a126..ee386f8d11db6 100644 --- a/data/json/vehicleparts/vehicle_parts.json +++ b/data/json/vehicleparts/vehicle_parts.json @@ -2990,8 +2990,9 @@ "durability": 200, "description": "A plow. Use the vehicle controls to turn it on or off. When turned on, it will create a furrow in any dirt it travels over, making it suitable for planting seeds. It should be placed in front of any seed drills on the vehicle.", "item": "v_plow_item", - "location": "under", - "power": "-300 W", + "location": "structure", + "power": "-6000 W", + "//2": "~8 hp for a moldboard plow depth of 8 inches", "//1": "200 cm weld to install and 60 cm weld per damage quadrant to repair", "transform_terrain": { "pre_flags": [ "PLOWABLE" ], "post_terrain": "t_dirtmound" }, "requirements": { @@ -3025,7 +3026,8 @@ "item": "v_planter_item", "location": "structure", "size": "12500 ml", - "power": "-700 W", + "power": "-1200 W", + "//2": "~1.5 hp for seed drill depth of 1.5 inches", "//1": "200 cm weld to install and 60 cm weld per damage quadrant to repair", "requirements": { "install": { @@ -3058,6 +3060,7 @@ "item": "v_planter_item_advanced", "location": "structure", "power": "-700 W", + "epower": "-1 W", "size": "17500 ml", "//1": "200 cm weld to install and 60 cm weld per damage quadrant to repair", "requirements": { @@ -3073,7 +3076,7 @@ }, "repair": { "skills": [ [ "mechanics", 5 ] ], "time": "10 m", "using": [ [ "repair_welding_standard", 6 ] ] } }, - "flags": [ "PLANTER", "PROTRUSION", "CARGO", "ADVANCED_PLANTER", "EXTRA_DRAG", "CARGO_PASSABLE" ], + "flags": [ "PLANTER", "PROTRUSION", "CARGO", "ADVANCED_PLANTER", "EXTRA_DRAG", "CARGO_PASSABLE", "ENABLED_DRAINS_EPOWER" ], "breaks_into": [ { "item": "cable", "charges": [ 3, 6 ] }, { "item": "e_scrap", "count": [ 4, 10 ] }, @@ -3091,7 +3094,8 @@ "broken_color": "light_blue", "damage_modifier": 120, "bonus": 7, - "power": "-700 W", + "power": "-1500 W", + "//2": "about 2 hp", "durability": 200, "description": "An automatic reaper. Use the vehicle controls to turn it on or off. When on, it will cut down plants that it travels over. It should be placed in front of any plows in the vehicle for efficient operation. It does not include cargo space, so harvested plants will end up on the ground.", "item": "v_reaper_item", @@ -3123,13 +3127,13 @@ "broken_color": "light_blue", "damage_modifier": 120, "bonus": 7, - "power": "-1050 W", + "power": "-2000 W", "durability": 200, "//": "No need to mention re drag - already provided by EXTRA_DRAG flag.", "description": "An automatic reaper. Use the vehicle controls to turn it on or off. When on, it will cut down plants and store them in the vehicle's cargo. It should be placed in front of any plows in the vehicle for efficient operation. It has internal cargo space for collecting the harvest.", "item": "v_reaper_item_advanced", "//1": "200 cm weld to install and 60 cm weld per damage quadrant to repair", - "location": "under", + "location": "structure", "size": "87500 ml", "requirements": { "install": { diff --git a/data/json/vehicles/farm.json b/data/json/vehicles/farm.json index 40b2cec8c180a..7068923515586 100644 --- a/data/json/vehicles/farm.json +++ b/data/json/vehicles/farm.json @@ -12,7 +12,7 @@ { "x": 0, "y": 0, "parts": [ "frame#vertical", "seat", "controls" ] }, { "x": 1, "y": 0, "parts": [ "frame#vertical", "halfboard#vertical" ] }, { "x": 2, "y": 0, "parts": [ "frame#horizontal_front", "halfboard#vertical" ] }, - { "x": -1, "y": 0, "parts": [ "frame#horizontal_rear", "plow" ] }, + { "x": -1, "y": 0, "parts": [ "plow" ] }, { "x": 2, "y": -1, "parts": [ "frame#vertical_T_left", "wheel_mount_medium_steerable" ] }, { "x": 2, "y": 1, "parts": [ "frame#vertical_T_right", "wheel_mount_medium_steerable" ] }, { "x": -1, "y": -1, "parts": [ "frame#vertical_T_left", "wheel_mount_medium" ] }, @@ -39,7 +39,7 @@ [ "O-+-O" ] ], "parts": [ - { "x": 0, "y": 0, "parts": [ "frame#cross", "reaper_advanced", "roof" ] }, + { "x": 0, "y": 0, "parts": [ "reaper_advanced", "roof" ] }, { "x": 0, "y": -1, "parts": [ "frame#vertical_left", "board#vertical_left" ] }, { "x": 0, "y": 1, "parts": [ "frame#vertical_right", "door_opaque#full_right" ] }, { "x": 1, "y": -1, "parts": [ "frame#vertical_left", "board#vertical_left" ] }, @@ -53,7 +53,7 @@ { "x": 2, "y": 1, "parts": [ "wheel_mount_medium_steerable", "wheel_wide_or" ] }, { "x": -1, "y": -1, "parts": [ "frame#cross", "storage_battery_mount" ] }, { "x": -1, "y": -1, "parts": [ "storage_battery_removable", "board#sw" ] }, - { "x": -1, "y": 0, "parts": [ "frame#horizontal_2", "plow", "board#horizontal_rear" ] }, + { "x": -1, "y": 0, "parts": [ "plow", "board#horizontal_rear" ] }, { "x": -1, "y": 1, "parts": [ "frame#cross", "storage_battery_mount" ] }, { "x": -1, "y": 1, "parts": [ "storage_battery_removable", "board#se" ] }, { "x": -2, "y": -1, "parts": [ "frame#sw", "engine_electric", "storage_battery_mount" ] }, @@ -71,70 +71,70 @@ "type": "vehicle", "name": "Plow Tractor", "blueprint": [ - [ "& " ], - [ "+O O" ], + [ "&+ " ], + [ " O O" ], [ "&=#==" ], - [ "+O O" ], - [ "& " ] + [ " O O" ], + [ "&+ " ] ], "parts": [ - { "x": 0, "y": 0, "parts": [ "frame#vertical", "seat", "controls" ] }, - { "x": 1, "y": 0, "parts": [ "frame#horizontal", "halfboard#vertical" ] }, + { "x": 0, "y": 0, "parts": [ "frame#vertical", "seat", "controls", "dashboard" ] }, + { + "x": 1, + "y": 0, + "parts": [ "frame", "halfboard#vertical", "battery_car", "diesel_engine_v6", "alternator_truck" ] + }, { "x": 2, "y": 0, "parts": [ "frame#horizontal_front", "halfboard#vertical" ] }, - { "x": 2, "y": -1, "parts": [ "frame#vertical_T_left", "wheel_mount_medium_steerable" ] }, - { "x": 2, "y": 1, "parts": [ "frame#vertical_T_right", "wheel_mount_medium_steerable" ] }, - { "x": -1, "y": 0, "parts": [ "frame#cross", { "part": "tank", "fuel": "diesel" } ] }, - { "x": -1, "y": -1, "parts": [ "frame#vertical_T_left", "wheel_mount_medium" ] }, - { "x": -1, "y": 1, "parts": [ "frame#vertical_T_right", "wheel_mount_medium" ] }, - { "x": -2, "y": 0, "parts": [ "frame#cross", "plow" ] }, - { "x": -2, "y": -1, "parts": [ "frame#cross" ] }, - { "x": -2, "y": -2, "parts": [ "frame#cross", "plow" ] }, - { "x": -2, "y": 1, "parts": [ "frame#cross" ] }, - { "x": -2, "y": 2, "parts": [ "frame#cross", "plow" ] }, - { "x": 0, "y": 0, "parts": [ "dashboard" ] }, - { "x": 1, "y": 0, "parts": [ "battery_car", "diesel_engine_v6", "alternator_truck" ] }, - { "x": 2, "y": -1, "parts": [ "wheel_wide_or" ] }, - { "x": 2, "y": 1, "parts": [ "wheel_wide_or" ] }, - { "x": -1, "y": -1, "parts": [ "wheel_wide_or" ] }, - { "x": -1, "y": 0, "parts": [ "halfboard#vertical" ] }, - { "x": -1, "y": 1, "parts": [ "wheel_wide_or" ] } + { "x": 2, "y": -1, "parts": [ "frame#vertical_T_left", "wheel_mount_medium_steerable", "wheel_wide_or" ] }, + { "x": 2, "y": 1, "parts": [ "frame#vertical_T_right", "wheel_mount_medium_steerable", "wheel_wide_or" ] }, + { "x": -1, "y": 0, "parts": [ "frame#cross", { "part": "tank", "fuel": "diesel" }, "halfboard#vertical" ] }, + { "x": -1, "y": 1, "parts": [ "frame#vertical_T_right", "wheel_mount_medium", "wheel_wide_or" ] }, + { "x": -1, "y": 2, "parts": [ "frame#cross" ] }, + { "x": -1, "y": -1, "parts": [ "frame#vertical_T_left", "wheel_mount_medium", "wheel_wide_or" ] }, + { "x": -1, "y": -2, "parts": [ "frame#cross" ] }, + { "x": -2, "y": 0, "parts": [ "plow" ] }, + { "x": -2, "y": 2, "parts": [ "plow" ] }, + { "x": -2, "y": -2, "parts": [ "plow" ] } ], - "items": [ ] + "items": [ + { "x": 0, "y": 0, "chance": 60, "item_groups": [ "tools_tractor" ] }, + { "x": 0, "y": 0, "chance": 40, "item_groups": [ "softdrinks_bottled" ] } + ] }, { "id": "tractor_reaper", "type": "vehicle", "name": "Reaper Tractor", "blueprint": [ - [ "& " ], - [ "+O O" ], - [ "&=#==" ], - [ "+O O" ], - [ "& " ] + [ " &" ], + [ "O O+" ], + [ "=#==&" ], + [ "O O+" ], + [ " &" ] ], "parts": [ - { "x": 0, "y": 0, "parts": [ "frame#vertical", "seat", "controls" ] }, - { "x": 0, "y": 0, "parts": [ "dashboard" ] }, - { "x": 1, "y": 0, "parts": [ "frame#horizontal", "halfboard#vertical" ] }, - { "x": 1, "y": 0, "parts": [ "battery_car", "diesel_engine_v6", "alternator_truck" ] }, + { "x": 0, "y": 0, "parts": [ "frame#vertical", "seat", "controls", "dashboard" ] }, + { + "x": 1, + "y": 0, + "parts": [ "frame", "halfboard#vertical", "battery_car", "diesel_engine_v6", "alternator_truck" ] + }, + { "x": -1, "y": 0, "parts": [ "frame#cross", { "part": "tank", "fuel": "diesel" }, "halfboard#vertical" ] }, + { "x": -1, "y": 1, "parts": [ "frame#vertical_T_right", "wheel_mount_medium", "wheel_wide_or" ] }, + { "x": -1, "y": -1, "parts": [ "frame#vertical_T_left", "wheel_mount_medium", "wheel_wide_or" ] }, { "x": 2, "y": 0, "parts": [ "frame#horizontal_front", "halfboard#vertical" ] }, - { "x": 2, "y": -1, "parts": [ "frame#vertical_T_left", "wheel_mount_medium_steerable" ] }, - { "x": 2, "y": -1, "parts": [ "wheel_wide_or" ] }, - { "x": 2, "y": 1, "parts": [ "frame#vertical_T_right", "wheel_mount_medium_steerable" ] }, - { "x": 2, "y": 1, "parts": [ "wheel_wide_or" ] }, - { "x": -1, "y": 0, "parts": [ "frame#cross", { "part": "tank", "fuel": "diesel" } ] }, - { "x": -1, "y": -1, "parts": [ "frame#vertical_T_left", "wheel_mount_medium" ] }, - { "x": -1, "y": -1, "parts": [ "wheel_wide_or" ] }, - { "x": -1, "y": 0, "parts": [ "halfboard#vertical" ] }, - { "x": -1, "y": 1, "parts": [ "frame#vertical_T_right", "wheel_mount_medium" ] }, - { "x": -1, "y": 1, "parts": [ "wheel_wide_or" ] }, - { "x": -2, "y": -1, "parts": [ "frame#cross" ] }, - { "x": -2, "y": -2, "parts": [ "reaper" ] }, - { "x": -2, "y": 0, "parts": [ "reaper" ] }, - { "x": -2, "y": 1, "parts": [ "frame#cross" ] }, - { "x": -2, "y": 2, "parts": [ "reaper" ] } + { "x": 2, "y": 1, "parts": [ "frame#vertical_T_right", "wheel_mount_medium_steerable", "wheel_wide_or" ] }, + { "x": 2, "y": 2, "parts": [ "frame#cross" ] }, + { "x": 2, "y": -1, "parts": [ "frame#vertical_T_left", "wheel_mount_medium_steerable", "wheel_wide_or" ] }, + { "x": 2, "y": -2, "parts": [ "frame#cross" ] }, + { "x": 3, "y": 0, "parts": [ "reaper" ] }, + { "x": 3, "y": -2, "parts": [ "reaper" ] }, + { "x": 3, "y": 2, "parts": [ "reaper" ] } ], - "items": [ ] + "items": [ + { "x": 0, "y": 0, "chance": 60, "item_groups": [ "tools_tractor" ] }, + { "x": 0, "y": 0, "chance": 40, "item_groups": [ "softdrinks_bottled" ] } + ] }, { "id": "tractor_seed", @@ -169,7 +169,10 @@ { "x": -2, "y": 1, "parts": [ "frame#cross" ] }, { "x": -2, "y": 2, "parts": [ "seed_drill" ] } ], - "items": [ ] + "items": [ + { "x": 0, "y": 0, "chance": 60, "item_groups": [ "tools_tractor" ] }, + { "x": 0, "y": 0, "chance": 40, "item_groups": [ "softdrinks_bottled" ] } + ] }, { "id": "uncovered_wagon", diff --git a/data/json/vehicles/utility.json b/data/json/vehicles/utility.json index 99fe48a384ea6..271fd2f891443 100644 --- a/data/json/vehicles/utility.json +++ b/data/json/vehicles/utility.json @@ -178,38 +178,45 @@ { "type": "vehicle", "id": "forklift", - "name": "Forklift", + "name": "Electric Forklift", "blueprint": [ - [ "o#o-" ], - [ "o|o-" ] + [ "|" ], + [ "^" ], + [ "#" ], + [ "-" ] ], "parts": [ - { "x": 0, "y": 0, "parts": [ "hdframe#vertical_T_left", "seat", "hdroof", "controls" ] }, - { "x": 0, "y": 0, "parts": [ "dashboard" ] }, - { "x": 0, "y": 1, "parts": [ "hdframe#vertical_T_right", "engine_electric", "hdroof" ] }, - { "x": 0, "y": 1, "parts": [ "hdhalfboard#vertical_right", "storage_battery" ] }, - { "x": 1, "y": 0, "parts": [ "hdframe#nw", "hdhalfboard#nw", "wheel_mount_medium" ] }, - { "x": 1, "y": 0, "parts": [ "wheel", "headlight" ] }, - { "x": 1, "y": 1, "parts": [ "hdframe#ne", "hdhalfboard#ne", "wheel_mount_medium" ] }, - { "x": 1, "y": 1, "parts": [ "wheel", "headlight" ] }, - { "x": 2, "y": 0, "parts": [ "forklift_fork" ] }, - { "x": 2, "y": 1, "parts": [ "forklift_fork" ] }, - { "x": -1, "y": 0, "parts": [ "hdframe#sw", "counterweight#sw", "wheel_mount_light_steerable" ] }, - { "x": -1, "y": 0, "parts": [ "wheel_small" ] }, - { "x": -1, "y": 1, "parts": [ "hdframe#se", "counterweight#se", "wheel_mount_light_steerable" ] }, - { "x": -1, "y": 1, "parts": [ "wheel_small" ] } + { + "x": -1, + "y": 0, + "parts": [ "frame#cover", "counterweight#horizontal_rear", "wheel_mount_light_steerable", "wheel_small", "muffler" ] + }, + { "x": 0, "y": 0, "parts": [ "frame#vertical_T_left", "seat", "roof", "controls", "dashboard" ] }, + { + "x": 1, + "y": 0, + "parts": [ + "frame#vertical_2", + "halfboard#cover", + "wheel_mount_medium", + "wheel", + "headlight", + "engine_electric", + "storage_battery" + ] + }, + { "x": 2, "y": 0, "parts": [ "forklift_fork" ] } ], "items": [ { "x": 0, "y": 0, "chance": 5, "items": [ "hat_hard" ] }, { "x": 0, "y": 0, "chance": 8, "items": [ "vest" ] }, - { "x": 2, "y": 0, "chance": 10, "items": [ "2x4" ] }, - { "x": 2, "y": 1, "chance": 10, "items": [ "2x4" ] } + { "x": 2, "y": 0, "chance": 10, "items": [ "2x4" ] } ] }, { "type": "vehicle", "id": "forklift_diesel", - "name": "Forklift", + "name": "Heavy-Duty Forklift", "blueprint": [ [ "o#o-" ], [ "o|o-" ] diff --git a/data/mods/TEST_DATA/vehicle_drag_test.json b/data/mods/TEST_DATA/vehicle_drag_test.json index bfdf9946cbf0d..ee4b09a536e1e 100644 --- a/data/mods/TEST_DATA/vehicle_drag_test.json +++ b/data/mods/TEST_DATA/vehicle_drag_test.json @@ -59,13 +59,13 @@ "quad_bike": [ 0.690795, 1.093925, 698.691964, 6893, 8235 ], "golf_cart": [ 1.069088, 1.127783, 709.645833, 6813, 7065 ], "unicycle": [ 0.690795, 0.00209, 21.0375, 1378, 1798 ], - "tractor_plow": [ 0.835275, 0.942558, 1785.235577, 10772, 12464 ], + "tractor_plow": [ 0.835275, 0.866535, 1641.245192, 10783, 12475 ], "tractor_seed": [ 0.835275, 0.828333, 2039.86875, 10789, 12480 ], - "tractor_reaper": [ 0.835275, 0.828333, 2039.86875, 10789, 12480 ], + "tractor_reaper": [ 0.790125, 0.82846, 2039.86875, 10987, 12710 ], "oldtractor": [ 0.537285, 0.89602, 1654.898437, 12446, 14407 ], "autotractor": [ 1.64475, 1.506677, 1590.049554, 7477, 7751 ], "trencher": [ 0.729173, 1.037314, 1310.940625, 7719, 8006 ], - "forklift": [ 0.440213, 6.504838, 4955.679167, 7626, 7980 ], + "forklift": [ 0.565988, 2.317921, 2100.279167, 8071, 8388 ], "golf_cart_4seat": [ 1.069088, 1.095145, 689.108333, 6817, 7069 ], "tandem": [ 0.609525, 0.01059, 19.990625, 1430, 1870 ], "animalctrl": [ 0.660319, 2.666804, 1078.751786, 11007, 13168 ], diff --git a/data/mods/TEST_DATA/vehicle_efficiency_test.json b/data/mods/TEST_DATA/vehicle_efficiency_test.json index 5f53abe48dc66..4820f1f3e3dbf 100644 --- a/data/mods/TEST_DATA/vehicle_efficiency_test.json +++ b/data/mods/TEST_DATA/vehicle_efficiency_test.json @@ -20,7 +20,7 @@ "apc": { "forward": [ 5832494, 1558000, 1042000, 143000, 96817 ], "reverse": [ 5832494, 376700, 376700, 142900, 92760 ] }, "quad_bike": { "forward": [ 260845, 107400, 107400, 47040, 47040 ], "reverse": [ 260845, 18770, 18770, 14750, 14750 ] }, "golf_cart": { "forward": [ 340630, 44600, 44920, 20990, 12180 ], "reverse": [ 340630, 44670, 15800, 21030, 8274 ] }, - "tractor_plow": { "forward": [ 742758, 673600, 673600, 142700, 142700 ], "reverse": [ 742758, 62490, 62490, 47320, 47320 ] } + "tractor_plow": { "forward": [ 682758, 689103, 689103, 149672, 149672 ], "reverse": [ 682758, 65753, 65753, 49009, 49009 ] } } } ]