diff --git a/data/json/vehicleparts/doors.json b/data/json/vehicleparts/doors.json new file mode 100644 index 0000000000000..1374e9564d00b --- /dev/null +++ b/data/json/vehicleparts/doors.json @@ -0,0 +1,865 @@ +[ + { + "abstract": "door_abstract", + "breaks_into": "ig_vp_frame", + "broken_color": "cyan", + "broken_symbol": "&", + "color": "cyan", + "damage_modifier": 80, + "damage_reduction": { "all": 21 }, + "description": "A door. Has a window so you can see out of it, even when closed.", + "durability": 225, + "flags": [ "CARGO", "OBSTACLE", "OPENABLE", "BOARDABLE", "WINDOW" ], + "item": "frame", + "location": "center", + "looks_like": "t_door_metal_c", + "name": { "str": "door" }, + "requirements": { + "install": { "skills": [ [ "mechanics", 2 ] ], "time": "60 m", "using": [ [ "vehicle_bolt", 1 ] ] }, + "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_bolt", 1 ] ] }, + "repair": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } + }, + "size": 10, + "symbol": "+", + "type": "vehicle_part" + }, + { + "abstract": "door_opaque_abstract", + "breaks_into": "ig_vp_frame", + "broken_color": "cyan", + "broken_symbol": "&", + "color": "cyan", + "damage_modifier": 80, + "damage_reduction": { "all": 28 }, + "description": "A door. Solid construction means you can't see through it when closed.", + "durability": 240, + "flags": [ "CARGO", "OBSTACLE", "OPAQUE", "OPENABLE", "BOARDABLE" ], + "item": "frame", + "location": "center", + "looks_like": "door", + "name": { "str": "opaque door" }, + "requirements": { + "install": { "skills": [ [ "mechanics", 2 ] ], "time": "60 m", "using": [ [ "vehicle_bolt", 1 ] ] }, + "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_bolt", 1 ] ] }, + "repair": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } + }, + "size": 10, + "symbol": "+", + "type": "vehicle_part" + }, + { + "abstract": "hddoor_abstract", + "breaks_into": "ig_vp_hdframe", + "broken_color": "cyan", + "broken_symbol": "&", + "color": "cyan", + "damage_modifier": 80, + "damage_reduction": { "all": 68 }, + "description": "A strong door. Has a window so you can see out of it, even when closed.", + "durability": 600, + "flags": [ "CARGO", "OBSTACLE", "OPENABLE", "BOARDABLE", "WINDOW" ], + "item": "hdframe", + "location": "center", + "looks_like": "door", + "name": { "str": "heavy duty door" }, + "requirements": { + "install": { "skills": [ [ "mechanics", 2 ] ], "time": "60 m", "using": [ [ "vehicle_bolt", 1 ] ] }, + "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_bolt", 1 ] ] }, + "repair": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } + }, + "size": 10, + "symbol": "+", + "type": "vehicle_part" + }, + { + "abstract": "hddoor_opaque_abstract", + "breaks_into": "ig_vp_hdframe", + "broken_color": "cyan", + "broken_symbol": "&", + "color": "cyan", + "damage_modifier": 80, + "damage_reduction": { "all": 75 }, + "description": "A strong door. Solid construction means you can't see through it when closed.", + "durability": 660, + "flags": [ "CARGO", "OBSTACLE", "OPAQUE", "OPENABLE", "BOARDABLE" ], + "item": "hdframe", + "location": "center", + "looks_like": "door_opaque", + "name": { "str": "heavy duty opaque door" }, + "requirements": { + "install": { "skills": [ [ "mechanics", 2 ] ], "time": "60 m", "using": [ [ "vehicle_bolt", 1 ] ] }, + "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_bolt", 1 ] ] }, + "repair": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } + }, + "size": 10, + "symbol": "+", + "type": "vehicle_part" + }, + { + "abstract": "door_internal_abstract", + "breaks_into": "ig_vp_frame", + "broken_color": "cyan", + "broken_symbol": "&", + "color": "cyan", + "damage_modifier": 75, + "damage_reduction": { "all": 28 }, + "description": "An interior door. Solid construction means you can't see through it when closed.", + "durability": 240, + "flags": [ "OBSTACLE", "OPAQUE", "OPENABLE", "ROOF", "BOARDABLE" ], + "item": "frame", + "location": "center", + "looks_like": "door", + "name": { "str": "internal door" }, + "requirements": { + "install": { "skills": [ [ "mechanics", 2 ] ], "time": "60 m", "using": [ [ "vehicle_bolt", 1 ] ] }, + "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_bolt", 1 ] ] }, + "repair": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } + }, + "symbol": "+", + "type": "vehicle_part" + }, + { + "abstract": "hatch_abstract", + "breaks_into": "ig_vp_frame", + "broken_color": "light_gray", + "broken_symbol": "&", + "color": "light_gray", + "damage_modifier": 80, + "damage_reduction": { "all": 30 }, + "description": "A strong door. A window lets you see through it when closed.", + "durability": 420, + "flags": [ "CARGO", "LOCKABLE_CARGO", "OBSTACLE", "OPENABLE", "MULTISQUARE", "BOARDABLE", "COVERED" ], + "item": "frame", + "location": "center", + "looks_like": "door", + "name": { "str": "hatch" }, + "requirements": { + "install": { "skills": [ [ "mechanics", 2 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] }, + "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_weld_removal", 1 ] ] }, + "repair": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } + }, + "size": 150, + "symbol": "+", + "type": "vehicle_part" + }, + { + "abstract": "hatch_opaque_abstract", + "breaks_into": "ig_vp_frame", + "broken_color": "light_gray", + "broken_symbol": "&", + "color": "light_gray", + "damage_modifier": 80, + "damage_reduction": { "all": 34 }, + "description": "A strong door. Solid construction means you can't see through it when closed.", + "durability": 450, + "flags": [ "CARGO", "LOCKABLE_CARGO", "OBSTACLE", "OPENABLE", "MULTISQUARE", "BOARDABLE", "COVERED", "OPAQUE" ], + "item": "frame", + "location": "center", + "looks_like": "door_opaque", + "name": { "str": "opaque hatch" }, + "requirements": { + "install": { "skills": [ [ "mechanics", 2 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] }, + "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_weld_removal", 1 ] ] }, + "repair": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } + }, + "size": 150, + "symbol": "+", + "type": "vehicle_part" + }, + { + "abstract": "hdhatch_abstract", + "breaks_into": "ig_vp_hdframe", + "broken_color": "dark_gray", + "broken_symbol": "&", + "color": "dark_gray", + "damage_modifier": 80, + "damage_reduction": { "all": 78 }, + "description": "A very strong door. A window lets you see through it when closed.", + "durability": 900, + "flags": [ "CARGO", "LOCKABLE_CARGO", "OBSTACLE", "OPENABLE", "MULTISQUARE", "BOARDABLE", "COVERED" ], + "item": "hdframe", + "location": "center", + "looks_like": "hatch", + "name": { "str": "heavy duty hatch" }, + "requirements": { + "install": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] }, + "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_weld_removal", 1 ] ] }, + "repair": { "skills": [ [ "mechanics", 4 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } + }, + "size": 150, + "symbol": "+", + "type": "vehicle_part" + }, + { + "abstract": "hdhatch_opaque_abstract", + "breaks_into": "ig_vp_hdframe", + "broken_color": "dark_gray", + "broken_symbol": "&", + "color": "dark_gray", + "damage_modifier": 80, + "damage_reduction": { "all": 80 }, + "description": "A very strong door. Solid construction means you can't see through it when closed.", + "durability": 1000, + "flags": [ "CARGO", "LOCKABLE_CARGO", "OBSTACLE", "OPENABLE", "MULTISQUARE", "BOARDABLE", "COVERED", "OPAQUE" ], + "item": "hdframe", + "location": "center", + "looks_like": "hatch_opaque", + "name": { "str": "opaque heavy duty hatch" }, + "requirements": { + "install": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] }, + "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_weld_removal", 1 ] ] }, + "repair": { "skills": [ [ "mechanics", 4 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } + }, + "size": 150, + "symbol": "+", + "type": "vehicle_part" + }, + { + "copy-from": "door_abstract", + "id": "door", + "symbol": "+", + "type": "vehicle_part" + }, + { + "copy-from": "door_opaque_abstract", + "id": "door_opaque", + "symbol": "+", + "type": "vehicle_part" + }, + { + "copy-from": "hddoor_abstract", + "id": "hddoor", + "symbol": "+", + "type": "vehicle_part" + }, + { + "copy-from": "hddoor_opaque_abstract", + "id": "hddoor_opaque", + "symbol": "+", + "type": "vehicle_part" + }, + { + "copy-from": "door_internal_abstract", + "id": "door_internal", + "symbol": "+", + "type": "vehicle_part" + }, + { + "copy-from": "hatch_abstract", + "id": "hatch", + "symbol": "+", + "type": "vehicle_part" + }, + { + "copy-from": "hatch_opaque_abstract", + "id": "hatch_opaque", + "symbol": "+", + "type": "vehicle_part" + }, + { + "copy-from": "hdhatch_abstract", + "id": "hdhatch", + "symbol": "+", + "type": "vehicle_part" + }, + { + "copy-from": "hdhatch_opaque_abstract", + "id": "hdhatch_opaque", + "symbol": "+", + "type": "vehicle_part" + }, + { + "copy-from": "door_abstract", + "id": "door_nw", + "symbol": "y", + "type": "vehicle_part" + }, + { + "copy-from": "door_opaque_abstract", + "id": "door_opaque_nw", + "symbol": "y", + "type": "vehicle_part" + }, + { + "copy-from": "hddoor_abstract", + "id": "hddoor_nw", + "symbol": "y", + "type": "vehicle_part" + }, + { + "copy-from": "hddoor_opaque_abstract", + "id": "hddoor_opaque_nw", + "symbol": "y", + "type": "vehicle_part" + }, + { + "copy-from": "door_internal_abstract", + "id": "door_internal_nw", + "symbol": "y", + "type": "vehicle_part" + }, + { + "copy-from": "hatch_abstract", + "id": "hatch_nw", + "symbol": "y", + "type": "vehicle_part" + }, + { + "copy-from": "hatch_opaque_abstract", + "id": "hatch_opaque_nw", + "symbol": "y", + "type": "vehicle_part" + }, + { + "copy-from": "hdhatch_abstract", + "id": "hdhatch_nw", + "symbol": "y", + "type": "vehicle_part" + }, + { + "copy-from": "hdhatch_opaque_abstract", + "id": "hdhatch_opaque_nw", + "symbol": "y", + "type": "vehicle_part" + }, + { + "copy-from": "door_abstract", + "id": "door_vertical", + "symbol": "j", + "type": "vehicle_part" + }, + { + "copy-from": "door_opaque_abstract", + "id": "door_opaque_vertical", + "symbol": "j", + "type": "vehicle_part" + }, + { + "copy-from": "hddoor_abstract", + "id": "hddoor_vertical", + "symbol": "j", + "type": "vehicle_part" + }, + { + "copy-from": "hddoor_opaque_abstract", + "id": "hddoor_opaque_vertical", + "symbol": "j", + "type": "vehicle_part" + }, + { + "copy-from": "door_internal_abstract", + "id": "door_internal_vertical", + "symbol": "j", + "type": "vehicle_part" + }, + { + "copy-from": "hatch_abstract", + "id": "hatch_vertical", + "symbol": "j", + "type": "vehicle_part" + }, + { + "copy-from": "hatch_opaque_abstract", + "id": "hatch_opaque_vertical", + "symbol": "j", + "type": "vehicle_part" + }, + { + "copy-from": "hdhatch_abstract", + "id": "hdhatch_vertical", + "symbol": "j", + "type": "vehicle_part" + }, + { + "copy-from": "hdhatch_opaque_abstract", + "id": "hdhatch_opaque_vertical", + "symbol": "j", + "type": "vehicle_part" + }, + { + "copy-from": "door_abstract", + "id": "door_ne", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "door_opaque_abstract", + "id": "door_opaque_ne", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "hddoor_abstract", + "id": "hddoor_ne", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "hddoor_opaque_abstract", + "id": "hddoor_opaque_ne", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "door_internal_abstract", + "id": "door_internal_ne", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "hatch_abstract", + "id": "hatch_ne", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "hatch_opaque_abstract", + "id": "hatch_opaque_ne", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "hdhatch_abstract", + "id": "hdhatch_ne", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "hdhatch_opaque_abstract", + "id": "hdhatch_opaque_ne", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "door_abstract", + "id": "door_sw", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "door_opaque_abstract", + "id": "door_opaque_sw", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "hddoor_abstract", + "id": "hddoor_sw", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "hddoor_opaque_abstract", + "id": "hddoor_opaque_sw", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "door_internal_abstract", + "id": "door_internal_sw", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "hatch_abstract", + "id": "hatch_sw", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "hatch_opaque_abstract", + "id": "hatch_opaque_sw", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "hdhatch_abstract", + "id": "hdhatch_sw", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "hdhatch_opaque_abstract", + "id": "hdhatch_opaque_sw", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "door_abstract", + "id": "door_vertical_2", + "symbol": "H", + "type": "vehicle_part" + }, + { + "copy-from": "door_opaque_abstract", + "id": "door_opaque_vertical_2", + "symbol": "H", + "type": "vehicle_part" + }, + { + "copy-from": "hddoor_abstract", + "id": "hddoor_vertical_2", + "symbol": "H", + "type": "vehicle_part" + }, + { + "copy-from": "hddoor_opaque_abstract", + "id": "hddoor_opaque_vertical_2", + "symbol": "H", + "type": "vehicle_part" + }, + { + "copy-from": "door_internal_abstract", + "id": "door_internal_vertical_2", + "symbol": "H", + "type": "vehicle_part" + }, + { + "copy-from": "hatch_abstract", + "id": "hatch_vertical_2", + "symbol": "H", + "type": "vehicle_part" + }, + { + "copy-from": "hatch_opaque_abstract", + "id": "hatch_opaque_vertical_2", + "symbol": "H", + "type": "vehicle_part" + }, + { + "copy-from": "hdhatch_abstract", + "id": "hdhatch_vertical_2", + "symbol": "H", + "type": "vehicle_part" + }, + { + "copy-from": "hdhatch_opaque_abstract", + "id": "hdhatch_opaque_vertical_2", + "symbol": "H", + "type": "vehicle_part" + }, + { + "copy-from": "door_abstract", + "id": "door_se", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "door_opaque_abstract", + "id": "door_opaque_se", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "hddoor_abstract", + "id": "hddoor_se", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "hddoor_opaque_abstract", + "id": "hddoor_opaque_se", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "door_internal_abstract", + "id": "door_internal_se", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "hatch_abstract", + "id": "hatch_se", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "hatch_opaque_abstract", + "id": "hatch_opaque_se", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "hdhatch_abstract", + "id": "hdhatch_se", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "hdhatch_opaque_abstract", + "id": "hdhatch_opaque_se", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "door_abstract", + "id": "door_cover", + "symbol": "^", + "type": "vehicle_part" + }, + { + "copy-from": "door_opaque_abstract", + "id": "door_opaque_cover", + "symbol": "^", + "type": "vehicle_part" + }, + { + "copy-from": "hddoor_abstract", + "id": "hddoor_cover", + "symbol": "^", + "type": "vehicle_part" + }, + { + "copy-from": "hddoor_opaque_abstract", + "id": "hddoor_opaque_cover", + "symbol": "^", + "type": "vehicle_part" + }, + { + "copy-from": "door_internal_abstract", + "id": "door_internal_cover", + "symbol": "^", + "type": "vehicle_part" + }, + { + "copy-from": "hatch_abstract", + "id": "hatch_cover", + "symbol": "^", + "type": "vehicle_part" + }, + { + "copy-from": "hatch_opaque_abstract", + "id": "hatch_opaque_cover", + "symbol": "^", + "type": "vehicle_part" + }, + { + "copy-from": "hdhatch_abstract", + "id": "hdhatch_cover", + "symbol": "^", + "type": "vehicle_part" + }, + { + "copy-from": "hdhatch_opaque_abstract", + "id": "hdhatch_opaque_cover", + "symbol": "^", + "type": "vehicle_part" + }, + { + "copy-from": "door_abstract", + "id": "door_horizontal", + "symbol": "h", + "type": "vehicle_part" + }, + { + "copy-from": "door_opaque_abstract", + "id": "door_opaque_horizontal", + "symbol": "h", + "type": "vehicle_part" + }, + { + "copy-from": "hddoor_abstract", + "id": "hddoor_horizontal", + "symbol": "h", + "type": "vehicle_part" + }, + { + "copy-from": "hddoor_opaque_abstract", + "id": "hddoor_opaque_horizontal", + "symbol": "h", + "type": "vehicle_part" + }, + { + "copy-from": "door_internal_abstract", + "id": "door_internal_horizontal", + "symbol": "h", + "type": "vehicle_part" + }, + { + "copy-from": "hatch_abstract", + "id": "hatch_horizontal", + "symbol": "h", + "type": "vehicle_part" + }, + { + "copy-from": "hatch_opaque_abstract", + "id": "hatch_opaque_horizontal", + "symbol": "h", + "type": "vehicle_part" + }, + { + "copy-from": "hdhatch_abstract", + "id": "hdhatch_horizontal", + "symbol": "h", + "type": "vehicle_part" + }, + { + "copy-from": "hdhatch_opaque_abstract", + "id": "hdhatch_opaque_horizontal", + "symbol": "h", + "type": "vehicle_part" + }, + { + "copy-from": "door_abstract", + "id": "door_horizontal_2", + "symbol": "=", + "type": "vehicle_part" + }, + { + "copy-from": "door_opaque_abstract", + "id": "door_opaque_horizontal_2", + "symbol": "=", + "type": "vehicle_part" + }, + { + "copy-from": "hddoor_abstract", + "id": "hddoor_horizontal_2", + "symbol": "=", + "type": "vehicle_part" + }, + { + "copy-from": "hddoor_opaque_abstract", + "id": "hddoor_opaque_horizontal_2", + "symbol": "=", + "type": "vehicle_part" + }, + { + "copy-from": "door_internal_abstract", + "id": "door_internal_horizontal_2", + "symbol": "=", + "type": "vehicle_part" + }, + { + "copy-from": "hatch_abstract", + "id": "hatch_horizontal_2", + "symbol": "=", + "type": "vehicle_part" + }, + { + "copy-from": "hatch_opaque_abstract", + "id": "hatch_opaque_horizontal_2", + "symbol": "=", + "type": "vehicle_part" + }, + { + "copy-from": "hdhatch_abstract", + "id": "hdhatch_horizontal_2", + "symbol": "=", + "type": "vehicle_part" + }, + { + "copy-from": "hdhatch_opaque_abstract", + "id": "hdhatch_opaque_horizontal_2", + "symbol": "=", + "type": "vehicle_part" + }, + { + "copy-from": "door_abstract", + "id": "door_cross", + "symbol": "c", + "type": "vehicle_part" + }, + { + "copy-from": "door_opaque_abstract", + "id": "door_opaque_cross", + "symbol": "c", + "type": "vehicle_part" + }, + { + "copy-from": "hddoor_abstract", + "id": "hddoor_cross", + "symbol": "c", + "type": "vehicle_part" + }, + { + "copy-from": "hddoor_opaque_abstract", + "id": "hddoor_opaque_cross", + "symbol": "c", + "type": "vehicle_part" + }, + { + "copy-from": "door_internal_abstract", + "id": "door_internal_cross", + "symbol": "c", + "type": "vehicle_part" + }, + { + "copy-from": "hatch_abstract", + "id": "hatch_cross", + "symbol": "c", + "type": "vehicle_part" + }, + { + "copy-from": "hatch_opaque_abstract", + "id": "hatch_opaque_cross", + "symbol": "c", + "type": "vehicle_part" + }, + { + "copy-from": "hdhatch_abstract", + "id": "hdhatch_cross", + "symbol": "c", + "type": "vehicle_part" + }, + { + "copy-from": "hdhatch_opaque_abstract", + "id": "hdhatch_opaque_cross", + "symbol": "c", + "type": "vehicle_part" + }, + { + "copy-from": "door_abstract", + "id": "door_box", + "symbol": "#", + "type": "vehicle_part" + }, + { + "copy-from": "door_opaque_abstract", + "id": "door_opaque_box", + "symbol": "#", + "type": "vehicle_part" + }, + { + "copy-from": "hddoor_abstract", + "id": "hddoor_box", + "symbol": "#", + "type": "vehicle_part" + }, + { + "copy-from": "hddoor_opaque_abstract", + "id": "hddoor_opaque_box", + "symbol": "#", + "type": "vehicle_part" + }, + { + "copy-from": "door_internal_abstract", + "id": "door_internal_box", + "symbol": "#", + "type": "vehicle_part" + }, + { + "copy-from": "hatch_abstract", + "id": "hatch_box", + "symbol": "#", + "type": "vehicle_part" + }, + { + "copy-from": "hatch_opaque_abstract", + "id": "hatch_opaque_box", + "symbol": "#", + "type": "vehicle_part" + }, + { + "copy-from": "hdhatch_abstract", + "id": "hdhatch_box", + "symbol": "#", + "type": "vehicle_part" + }, + { + "copy-from": "hdhatch_opaque_abstract", + "id": "hdhatch_opaque_box", + "symbol": "#", + "type": "vehicle_part" + } +] diff --git a/data/json/vehicleparts/rams.json b/data/json/vehicleparts/rams.json index 54b38b727b82f..1c9afcdd400e2 100644 --- a/data/json/vehicleparts/rams.json +++ b/data/json/vehicleparts/rams.json @@ -1,195 +1,915 @@ [ { "abstract": "ram_blaze", - "type": "vehicle_part", - "location": "structure", - "symbol": "X", "broken_symbol": "*", "damage_modifier": 150, "description": "A reinforced ram. Place at the edge of vehicle to reduce damage taken in collisions, and to increase damaged delivered in collisions, if the ram is the first vehicle part to collide.", + "flags": [ "PROTRUSION", "OBSTACLE" ], + "location": "structure", "requirements": { "install": { "skills": [ [ "mechanics", 2 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] }, "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_weld_removal", 1 ] ] }, "repair": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } }, - "flags": [ "PROTRUSION", "OBSTACLE" ] + "symbol": "X", + "type": "vehicle_part" }, { - "id": "ram_alloy", - "copy-from": "ram_blaze", - "type": "vehicle_part", - "name": { "str": "superalloy ram" }, - "item": "alloy_plate", - "color": "dark_gray", - "broken_color": "dark_gray", - "durability": 650, + "abstract": "ram_alloy_abstract", "breaks_into": [ - { "item": "steel_lump", "count": [ 4, 6 ] }, - { "item": "steel_chunk", "count": [ 4, 6 ] }, - { "item": "scrap", "count": [ 4, 6 ] } + { "count": [ 4, 6 ], "item": "steel_lump" }, + { "count": [ 4, 6 ], "item": "steel_chunk" }, + { "count": [ 4, 6 ], "item": "scrap" } ], + "broken_color": "dark_gray", + "color": "dark_gray", + "copy-from": "ram_blaze", + "damage_reduction": { "all": 120 }, + "durability": 650, + "item": "alloy_plate", + "name": { "str": "superalloy ram" }, "requirements": { "install": { "skills": [ [ "mechanics", 4 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] }, "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_weld_removal", 1 ] ] }, "repair": { "skills": [ [ "mechanics", 5 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } }, - "damage_reduction": { "all": 120 } + "type": "vehicle_part" }, { - "id": "ram_hardsteel", - "copy-from": "ram_blaze", - "type": "vehicle_part", - "name": { "str": "heavy steel ram" }, - "item": "hard_plate", - "color": "cyan", - "broken_color": "cyan", - "durability": 860, + "abstract": "ram_hardsteel_abstract", "breaks_into": [ - { "item": "steel_lump", "count": [ 4, 6 ] }, - { "item": "steel_chunk", "count": [ 4, 6 ] }, - { "item": "scrap", "count": [ 4, 6 ] } + { "count": [ 4, 6 ], "item": "steel_lump" }, + { "count": [ 4, 6 ], "item": "steel_chunk" }, + { "count": [ 4, 6 ], "item": "scrap" } ], + "broken_color": "cyan", + "color": "cyan", + "copy-from": "ram_blaze", + "damage_reduction": { "all": 200 }, + "durability": 860, + "item": "hard_plate", + "name": { "str": "heavy steel ram" }, "requirements": { "install": { "skills": [ [ "mechanics", 4 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] }, "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_weld_removal", 1 ] ] }, "repair": { "skills": [ [ "mechanics", 5 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } }, - "damage_reduction": { "all": 200 } + "type": "vehicle_part" }, { - "id": "ram_military_horizontal", - "copy-from": "ram_blaze", - "type": "vehicle_part", - "name": { "str": "military composite ram" }, - "item": "mil_plate", - "color": "green", - "broken_color": "green", - "durability": 800, + "abstract": "ram_military_horizontal_abstract", "breaks_into": [ - { "item": "steel_lump", "count": [ 4, 6 ] }, - { "item": "steel_chunk", "count": [ 4, 6 ] }, - { "item": "scrap", "count": [ 4, 6 ] }, - { "item": "ceramic_armor", "count": [ 0, 4 ] } + { "count": [ 4, 6 ], "item": "steel_lump" }, + { "count": [ 4, 6 ], "item": "steel_chunk" }, + { "count": [ 4, 6 ], "item": "scrap" }, + { "count": [ 0, 4 ], "item": "ceramic_armor" } ], + "broken_color": "green", + "color": "green", + "copy-from": "ram_blaze", + "damage_reduction": { "all": 180, "cut": 210, "stab": 280 }, + "durability": 800, + "item": "mil_plate", + "name": { "str": "military composite ram" }, "requirements": { "install": { "skills": [ [ "mechanics", 6 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] }, "removal": { "skills": [ [ "mechanics", 4 ] ], "time": "30 m", "using": [ [ "vehicle_weld_removal", 1 ] ] }, "repair": { "skills": [ [ "mechanics", 7 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } }, - "damage_reduction": { "all": 180, "cut": 210, "stab": 280 } + "type": "vehicle_part" }, { - "id": "ram_spiked", - "copy-from": "ram_blaze", - "type": "vehicle_part", - "name": { "str": "spiked ram" }, - "item": "spiked_plate", - "color": "red", - "broken_color": "red", - "durability": 550, - "damage_modifier": 200, + "abstract": "ram_spiked_abstract", "breaks_into": [ - { "item": "steel_lump", "count": [ 4, 6 ] }, - { "item": "steel_chunk", "count": [ 4, 6 ] }, - { "item": "scrap", "count": [ 4, 6 ] }, - { "item": "spike", "count": [ 0, 2 ] } + { "count": [ 4, 6 ], "item": "steel_lump" }, + { "count": [ 4, 6 ], "item": "steel_chunk" }, + { "count": [ 4, 6 ], "item": "scrap" }, + { "count": [ 0, 2 ], "item": "spike" } ], + "broken_color": "red", + "color": "red", + "copy-from": "ram_blaze", + "damage_modifier": 200, + "damage_reduction": { "all": 148 }, + "durability": 550, + "item": "spiked_plate", + "name": { "str": "spiked ram" }, "requirements": { "install": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] }, "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_weld_removal", 1 ] ] }, "repair": { "skills": [ [ "mechanics", 4 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } }, - "damage_reduction": { "all": 148 } + "type": "vehicle_part" }, { - "id": "ram_steel", - "copy-from": "ram_blaze", - "type": "vehicle_part", - "name": { "str": "steel ram" }, - "item": "steel_plate", - "color": "light_cyan", + "abstract": "ram_steel_abstract", + "breaks_into": "ig_vp_steel_plate", "broken_color": "light_cyan", + "color": "light_cyan", + "copy-from": "ram_blaze", + "damage_reduction": { "all": 156 }, "durability": 650, - "breaks_into": "ig_vp_steel_plate", - "damage_reduction": { "all": 156 } + "item": "steel_plate", + "name": { "str": "steel ram" }, + "type": "vehicle_part" }, { - "id": "ram_wood", - "copy-from": "ram_blaze", - "type": "vehicle_part", - "name": { "str": "wooden ram" }, - "item": "wood_plate", - "color": "brown", + "abstract": "ram_wood_abstract", + "breaks_into": "ig_vp_wood_plate", "broken_color": "brown", + "color": "brown", + "copy-from": "ram_blaze", + "damage_reduction": { "all": 75 }, "durability": 300, - "breaks_into": "ig_vp_wood_plate", + "item": "wood_plate", + "name": { "str": "wooden ram" }, "requirements": { "install": { "skills": [ [ "mechanics", 2 ] ], "time": "60 m", "using": [ [ "vehicle_nail_install", 1 ] ] }, "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_nail_removal", 1 ] ] }, "repair": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "adhesive", 2 ] ] } }, - "damage_reduction": { "all": 75 } + "type": "vehicle_part" }, { - "id": "ram_chitin", + "abstract": "ram_chitin_abstract", + "breaks_into": [ { "count": [ 5, 15 ], "item": "chitin_piece" } ], + "broken_color": "light_gray", + "color": "yellow", "copy-from": "ram_blaze", - "type": "vehicle_part", - "name": { "str": "chitin ram" }, + "damage_reduction": { "all": 80 }, + "durability": 320, "item": "chitin_plate", - "color": "yellow", - "broken_color": "light_gray", "looks_like": "ram_wood", - "durability": 320, - "breaks_into": [ { "item": "chitin_piece", "count": [ 5, 15 ] } ], - "damage_reduction": { "all": 80 } + "name": { "str": "chitin ram" }, + "type": "vehicle_part" }, { - "id": "ram_acidchitin", + "abstract": "ram_acidchitin_abstract", + "breaks_into": [ { "count": [ 6, 19 ], "item": "chitin_piece" } ], "copy-from": "ram_chitin", - "type": "vehicle_part", - "name": { "str": "biosilicified chitin ram" }, + "damage_reduction": { "all": 110 }, "item": "acidchitin_plate", + "name": { "str": "biosilicified chitin ram" }, "proportional": { "durability": 1.5 }, - "breaks_into": [ { "item": "chitin_piece", "count": [ 6, 19 ] } ], - "damage_reduction": { "all": 110 } + "type": "vehicle_part" }, { - "id": "ram_mattress", - "copy-from": "ram_blaze", - "type": "vehicle_part", - "name": { "str": "tied mattress" }, - "symbol": "=", - "item": "mattress", + "abstract": "ram_mattress_abstract", + "breaks_into": [ { "count": [ 40, 55 ], "item": "rag" } ], "color": "white", + "copy-from": "ram_blaze", "damage_modifier": 50, - "durability": 40, + "damage_reduction": { "bash": 20 }, "description": "A mattress, strapped onto the vehicle. It could serve to blunt any impact.", - "breaks_into": [ { "item": "rag", "count": [ 40, 55 ] } ], + "durability": 40, + "flags": [ "PROTRUSION", "OBSTACLE", "OPAQUE" ], + "item": "mattress", + "name": { "str": "tied mattress" }, "requirements": { "install": { "skills": [ [ "mechanics", 0 ] ], "time": "5 m", "using": [ [ "rope_natural_short", 2 ] ] } }, - "damage_reduction": { "bash": 20 }, - "flags": [ "PROTRUSION", "OBSTACLE", "OPAQUE" ] + "symbol": "=", + "type": "vehicle_part" }, { - "id": "tearer", - "type": "vehicle_part", - "name": { "str": "shredder" }, - "item": "tearer", - "location": "structure", - "symbol": "*", + "abstract": "tearer_abstract", + "breaks_into": [ ], + "broken_color": "dark_gray", "broken_symbol": "x", "color": "dark_gray", - "broken_color": "dark_gray", - "durability": 450, - "power": -1750, "damage_modifier": 500, - "breaks_into": [ ], + "damage_reduction": { "all": 82 }, "description": "A circular blade, powered by the vehicle's engine. It will dramatically increase the damage the vehicle delivers in collisions. Mount on the edges of the vehicle, preferably the front.", + "durability": 450, + "flags": [ "UNMOUNT_ON_DAMAGE", "SHARP", "PROTRUSION" ], + "item": "tearer", + "location": "structure", + "name": { "str": "shredder" }, + "power": -1750, "requirements": { "install": { "skills": [ [ "mechanics", 5 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] }, "removal": { "skills": [ [ "mechanics", 3 ] ], "time": "30 m", "using": [ [ "vehicle_weld_removal", 1 ] ] }, "repair": { "skills": [ [ "mechanics", 6 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } }, - "flags": [ "UNMOUNT_ON_DAMAGE", "SHARP", "PROTRUSION" ], - "damage_reduction": { "all": 82 } + "symbol": "*", + "type": "vehicle_part" + }, + { + "copy-from": "ram_alloy_abstract", + "id": "ram_alloy", + "symbol": "M", + "type": "vehicle_part" + }, + { + "copy-from": "ram_hardsteel_abstract", + "id": "ram_hardsteel", + "symbol": "M", + "type": "vehicle_part" + }, + { + "copy-from": "ram_military_horizontal_abstract", + "id": "ram_military_horizontal", + "symbol": "M", + "type": "vehicle_part" + }, + { + "copy-from": "ram_spiked_abstract", + "id": "ram_spiked", + "symbol": "M", + "type": "vehicle_part" + }, + { + "copy-from": "ram_steel_abstract", + "id": "ram_steel", + "symbol": "M", + "type": "vehicle_part" + }, + { + "copy-from": "ram_wood_abstract", + "id": "ram_wood", + "symbol": "M", + "type": "vehicle_part" + }, + { + "copy-from": "ram_chitin_abstract", + "id": "ram_chitin", + "symbol": "M", + "type": "vehicle_part" + }, + { + "copy-from": "ram_acidchitin_abstract", + "id": "ram_acidchitin", + "symbol": "M", + "type": "vehicle_part" + }, + { + "copy-from": "ram_mattress_abstract", + "id": "ram_mattress", + "symbol": "=", + "type": "vehicle_part" + }, + { + "copy-from": "tearer_abstract", + "id": "tearer", + "symbol": "*", + "type": "vehicle_part" + }, + { + "copy-from": "ram_alloy_abstract", + "id": "ram_alloy_nw", + "symbol": "y", + "type": "vehicle_part" + }, + { + "copy-from": "ram_hardsteel_abstract", + "id": "ram_hardsteel_nw", + "symbol": "y", + "type": "vehicle_part" + }, + { + "copy-from": "ram_military_horizontal_abstract", + "id": "ram_military_horizontal_nw", + "symbol": "y", + "type": "vehicle_part" + }, + { + "copy-from": "ram_spiked_abstract", + "id": "ram_spiked_nw", + "symbol": "y", + "type": "vehicle_part" + }, + { + "copy-from": "ram_steel_abstract", + "id": "ram_steel_nw", + "symbol": "y", + "type": "vehicle_part" + }, + { + "copy-from": "ram_wood_abstract", + "id": "ram_wood_nw", + "symbol": "y", + "type": "vehicle_part" + }, + { + "copy-from": "ram_chitin_abstract", + "id": "ram_chitin_nw", + "symbol": "y", + "type": "vehicle_part" + }, + { + "copy-from": "ram_acidchitin_abstract", + "id": "ram_acidchitin_nw", + "symbol": "y", + "type": "vehicle_part" + }, + { + "copy-from": "ram_mattress_abstract", + "id": "ram_mattress_nw", + "symbol": "y", + "type": "vehicle_part" + }, + { + "copy-from": "tearer_abstract", + "id": "tearer_nw", + "symbol": "y", + "type": "vehicle_part" + }, + { + "copy-from": "ram_alloy_abstract", + "id": "ram_alloy_vertical", + "symbol": "j", + "type": "vehicle_part" + }, + { + "copy-from": "ram_hardsteel_abstract", + "id": "ram_hardsteel_vertical", + "symbol": "j", + "type": "vehicle_part" + }, + { + "copy-from": "ram_military_horizontal_abstract", + "id": "ram_military_horizontal_vertical", + "symbol": "j", + "type": "vehicle_part" + }, + { + "copy-from": "ram_spiked_abstract", + "id": "ram_spiked_vertical", + "symbol": "j", + "type": "vehicle_part" + }, + { + "copy-from": "ram_steel_abstract", + "id": "ram_steel_vertical", + "symbol": "j", + "type": "vehicle_part" + }, + { + "copy-from": "ram_wood_abstract", + "id": "ram_wood_vertical", + "symbol": "j", + "type": "vehicle_part" + }, + { + "copy-from": "ram_chitin_abstract", + "id": "ram_chitin_vertical", + "symbol": "j", + "type": "vehicle_part" + }, + { + "copy-from": "ram_acidchitin_abstract", + "id": "ram_acidchitin_vertical", + "symbol": "j", + "type": "vehicle_part" + }, + { + "copy-from": "ram_mattress_abstract", + "id": "ram_mattress_vertical", + "symbol": "j", + "type": "vehicle_part" + }, + { + "copy-from": "tearer_abstract", + "id": "tearer_vertical", + "symbol": "j", + "type": "vehicle_part" + }, + { + "copy-from": "ram_alloy_abstract", + "id": "ram_alloy_ne", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "ram_hardsteel_abstract", + "id": "ram_hardsteel_ne", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "ram_military_horizontal_abstract", + "id": "ram_military_horizontal_ne", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "ram_spiked_abstract", + "id": "ram_spiked_ne", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "ram_steel_abstract", + "id": "ram_steel_ne", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "ram_wood_abstract", + "id": "ram_wood_ne", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "ram_chitin_abstract", + "id": "ram_chitin_ne", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "ram_acidchitin_abstract", + "id": "ram_acidchitin_ne", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "ram_mattress_abstract", + "id": "ram_mattress_ne", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "tearer_abstract", + "id": "tearer_ne", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "ram_alloy_abstract", + "id": "ram_alloy_sw", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "ram_hardsteel_abstract", + "id": "ram_hardsteel_sw", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "ram_military_horizontal_abstract", + "id": "ram_military_horizontal_sw", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "ram_spiked_abstract", + "id": "ram_spiked_sw", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "ram_steel_abstract", + "id": "ram_steel_sw", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "ram_wood_abstract", + "id": "ram_wood_sw", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "ram_chitin_abstract", + "id": "ram_chitin_sw", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "ram_acidchitin_abstract", + "id": "ram_acidchitin_sw", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "ram_mattress_abstract", + "id": "ram_mattress_sw", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "tearer_abstract", + "id": "tearer_sw", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "ram_alloy_abstract", + "id": "ram_alloy_vertical_2", + "symbol": "H", + "type": "vehicle_part" + }, + { + "copy-from": "ram_hardsteel_abstract", + "id": "ram_hardsteel_vertical_2", + "symbol": "H", + "type": "vehicle_part" + }, + { + "copy-from": "ram_military_horizontal_abstract", + "id": "ram_military_horizontal_vertical_2", + "symbol": "H", + "type": "vehicle_part" + }, + { + "copy-from": "ram_spiked_abstract", + "id": "ram_spiked_vertical_2", + "symbol": "H", + "type": "vehicle_part" + }, + { + "copy-from": "ram_steel_abstract", + "id": "ram_steel_vertical_2", + "symbol": "H", + "type": "vehicle_part" + }, + { + "copy-from": "ram_wood_abstract", + "id": "ram_wood_vertical_2", + "symbol": "H", + "type": "vehicle_part" + }, + { + "copy-from": "ram_chitin_abstract", + "id": "ram_chitin_vertical_2", + "symbol": "H", + "type": "vehicle_part" + }, + { + "copy-from": "ram_acidchitin_abstract", + "id": "ram_acidchitin_vertical_2", + "symbol": "H", + "type": "vehicle_part" + }, + { + "copy-from": "ram_mattress_abstract", + "id": "ram_mattress_vertical_2", + "symbol": "H", + "type": "vehicle_part" + }, + { + "copy-from": "tearer_abstract", + "id": "tearer_vertical_2", + "symbol": "H", + "type": "vehicle_part" + }, + { + "copy-from": "ram_alloy_abstract", + "id": "ram_alloy_se", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "ram_hardsteel_abstract", + "id": "ram_hardsteel_se", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "ram_military_horizontal_abstract", + "id": "ram_military_horizontal_se", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "ram_spiked_abstract", + "id": "ram_spiked_se", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "ram_steel_abstract", + "id": "ram_steel_se", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "ram_wood_abstract", + "id": "ram_wood_se", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "ram_chitin_abstract", + "id": "ram_chitin_se", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "ram_acidchitin_abstract", + "id": "ram_acidchitin_se", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "ram_mattress_abstract", + "id": "ram_mattress_se", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "tearer_abstract", + "id": "tearer_se", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "ram_alloy_abstract", + "id": "ram_alloy_cover", + "symbol": "^", + "type": "vehicle_part" + }, + { + "copy-from": "ram_hardsteel_abstract", + "id": "ram_hardsteel_cover", + "symbol": "^", + "type": "vehicle_part" + }, + { + "copy-from": "ram_military_horizontal_abstract", + "id": "ram_military_horizontal_cover", + "symbol": "^", + "type": "vehicle_part" + }, + { + "copy-from": "ram_spiked_abstract", + "id": "ram_spiked_cover", + "symbol": "^", + "type": "vehicle_part" + }, + { + "copy-from": "ram_steel_abstract", + "id": "ram_steel_cover", + "symbol": "^", + "type": "vehicle_part" + }, + { + "copy-from": "ram_wood_abstract", + "id": "ram_wood_cover", + "symbol": "^", + "type": "vehicle_part" + }, + { + "copy-from": "ram_chitin_abstract", + "id": "ram_chitin_cover", + "symbol": "^", + "type": "vehicle_part" + }, + { + "copy-from": "ram_acidchitin_abstract", + "id": "ram_acidchitin_cover", + "symbol": "^", + "type": "vehicle_part" + }, + { + "copy-from": "ram_mattress_abstract", + "id": "ram_mattress_cover", + "symbol": "^", + "type": "vehicle_part" + }, + { + "copy-from": "tearer_abstract", + "id": "tearer_cover", + "symbol": "^", + "type": "vehicle_part" + }, + { + "copy-from": "ram_alloy_abstract", + "id": "ram_alloy_horizontal", + "symbol": "h", + "type": "vehicle_part" + }, + { + "copy-from": "ram_hardsteel_abstract", + "id": "ram_hardsteel_horizontal", + "symbol": "h", + "type": "vehicle_part" + }, + { + "copy-from": "ram_military_horizontal_abstract", + "id": "ram_military_horizontal_horizontal", + "symbol": "h", + "type": "vehicle_part" + }, + { + "copy-from": "ram_spiked_abstract", + "id": "ram_spiked_horizontal", + "symbol": "h", + "type": "vehicle_part" + }, + { + "copy-from": "ram_steel_abstract", + "id": "ram_steel_horizontal", + "symbol": "h", + "type": "vehicle_part" + }, + { + "copy-from": "ram_wood_abstract", + "id": "ram_wood_horizontal", + "symbol": "h", + "type": "vehicle_part" + }, + { + "copy-from": "ram_chitin_abstract", + "id": "ram_chitin_horizontal", + "symbol": "h", + "type": "vehicle_part" + }, + { + "copy-from": "ram_acidchitin_abstract", + "id": "ram_acidchitin_horizontal", + "symbol": "h", + "type": "vehicle_part" + }, + { + "copy-from": "ram_mattress_abstract", + "id": "ram_mattress_horizontal", + "symbol": "h", + "type": "vehicle_part" + }, + { + "copy-from": "tearer_abstract", + "id": "tearer_horizontal", + "symbol": "h", + "type": "vehicle_part" + }, + { + "copy-from": "ram_alloy_abstract", + "id": "ram_alloy_horizontal_2", + "symbol": "=", + "type": "vehicle_part" + }, + { + "copy-from": "ram_hardsteel_abstract", + "id": "ram_hardsteel_horizontal_2", + "symbol": "=", + "type": "vehicle_part" + }, + { + "copy-from": "ram_military_horizontal_abstract", + "id": "ram_military_horizontal_horizontal_2", + "symbol": "=", + "type": "vehicle_part" + }, + { + "copy-from": "ram_spiked_abstract", + "id": "ram_spiked_horizontal_2", + "symbol": "=", + "type": "vehicle_part" + }, + { + "copy-from": "ram_steel_abstract", + "id": "ram_steel_horizontal_2", + "symbol": "=", + "type": "vehicle_part" + }, + { + "copy-from": "ram_wood_abstract", + "id": "ram_wood_horizontal_2", + "symbol": "=", + "type": "vehicle_part" + }, + { + "copy-from": "ram_chitin_abstract", + "id": "ram_chitin_horizontal_2", + "symbol": "=", + "type": "vehicle_part" + }, + { + "copy-from": "ram_acidchitin_abstract", + "id": "ram_acidchitin_horizontal_2", + "symbol": "=", + "type": "vehicle_part" + }, + { + "copy-from": "ram_mattress_abstract", + "id": "ram_mattress_horizontal_2", + "symbol": "=", + "type": "vehicle_part" + }, + { + "copy-from": "tearer_abstract", + "id": "tearer_horizontal_2", + "symbol": "=", + "type": "vehicle_part" + }, + { + "copy-from": "ram_alloy_abstract", + "id": "ram_alloy_cross", + "symbol": "c", + "type": "vehicle_part" + }, + { + "copy-from": "ram_hardsteel_abstract", + "id": "ram_hardsteel_cross", + "symbol": "c", + "type": "vehicle_part" + }, + { + "copy-from": "ram_military_horizontal_abstract", + "id": "ram_military_horizontal_cross", + "symbol": "c", + "type": "vehicle_part" + }, + { + "copy-from": "ram_spiked_abstract", + "id": "ram_spiked_cross", + "symbol": "c", + "type": "vehicle_part" + }, + { + "copy-from": "ram_steel_abstract", + "id": "ram_steel_cross", + "symbol": "c", + "type": "vehicle_part" + }, + { + "copy-from": "ram_wood_abstract", + "id": "ram_wood_cross", + "symbol": "c", + "type": "vehicle_part" + }, + { + "copy-from": "ram_chitin_abstract", + "id": "ram_chitin_cross", + "symbol": "c", + "type": "vehicle_part" + }, + { + "copy-from": "ram_acidchitin_abstract", + "id": "ram_acidchitin_cross", + "symbol": "c", + "type": "vehicle_part" + }, + { + "copy-from": "ram_mattress_abstract", + "id": "ram_mattress_cross", + "symbol": "c", + "type": "vehicle_part" + }, + { + "copy-from": "tearer_abstract", + "id": "tearer_cross", + "symbol": "c", + "type": "vehicle_part" + }, + { + "copy-from": "ram_alloy_abstract", + "id": "ram_alloy_box", + "symbol": "#", + "type": "vehicle_part" + }, + { + "copy-from": "ram_hardsteel_abstract", + "id": "ram_hardsteel_box", + "symbol": "#", + "type": "vehicle_part" + }, + { + "copy-from": "ram_military_horizontal_abstract", + "id": "ram_military_horizontal_box", + "symbol": "#", + "type": "vehicle_part" + }, + { + "copy-from": "ram_spiked_abstract", + "id": "ram_spiked_box", + "symbol": "#", + "type": "vehicle_part" + }, + { + "copy-from": "ram_steel_abstract", + "id": "ram_steel_box", + "symbol": "#", + "type": "vehicle_part" + }, + { + "copy-from": "ram_wood_abstract", + "id": "ram_wood_box", + "symbol": "#", + "type": "vehicle_part" + }, + { + "copy-from": "ram_chitin_abstract", + "id": "ram_chitin_box", + "symbol": "#", + "type": "vehicle_part" + }, + { + "copy-from": "ram_acidchitin_abstract", + "id": "ram_acidchitin_box", + "symbol": "#", + "type": "vehicle_part" + }, + { + "copy-from": "ram_mattress_abstract", + "id": "ram_mattress_box", + "symbol": "#", + "type": "vehicle_part" + }, + { + "copy-from": "tearer_abstract", + "id": "tearer_box", + "symbol": "#", + "type": "vehicle_part" } ] diff --git a/data/json/vehicleparts/seats.json b/data/json/vehicleparts/seats.json new file mode 100644 index 0000000000000..2a0e96baa2cca --- /dev/null +++ b/data/json/vehicleparts/seats.json @@ -0,0 +1,215 @@ +[ + { + "entries": [ + { "count": [ 2, 8 ], "item": "rag" }, + { "count": [ 1, 3 ], "item": "pipe" }, + { "count": [ 0, 2 ], "item": "spring" }, + { "count": [ 3, 5 ], "item": "scrap" } + ], + "id": "ig_vp_seat", + "subtype": "collection", + "type": "item_group" + }, + { + "entries": [ + { "count": [ 1, 5 ], "item": "leather" }, + { "count": [ 1, 3 ], "item": "rag" }, + { "count": [ 1, 3 ], "item": "pipe" }, + { "count": [ 0, 2 ], "item": "spring" }, + { "count": [ 3, 5 ], "item": "scrap" } + ], + "id": "ig_vp_seat_leather", + "subtype": "collection", + "type": "item_group" + }, + { + "abstract": "seat_abstract", + "breaks_into": "ig_vp_seat", + "broken_color": "red", + "broken_symbol": "*", + "color": "red", + "comfort": 2, + "damage_modifier": 60, + "damage_reduction": { "all": 2 }, + "description": "A place to sit, or sleep if you're desperate.", + "durability": 300, + "flags": [ "SEAT", "BOARDABLE", "CARGO", "BELTABLE" ], + "floor_bedding_warmth": 200, + "item": "seat", + "location": "center", + "looks_like": "reclining_seat", + "name": { "str": "seat" }, + "requirements": { + "install": { "skills": [ [ "mechanics", 1 ] ], "time": "30 m", "using": [ [ "vehicle_bolt", 1 ] ] }, + "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "15 m", "using": [ [ "vehicle_bolt", 1 ] ] }, + "repair": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "welding_standard", 5 ] ] } + }, + "size": 100, + "symbol": "#", + "type": "vehicle_part" + }, + { + "abstract": "seat_leather_abstract", + "breaks_into": "ig_vp_seat_leather", + "copy-from": "seat", + "item": "seat_leather", + "looks_like": "seat", + "name": { "str": "leather seat" }, + "type": "vehicle_part" + }, + { + "abstract": "reclining_seat_abstract", + "breaks_into": "ig_vp_seat", + "broken_color": "red", + "broken_symbol": "*", + "color": "red", + "comfort": 3, + "damage_modifier": 60, + "damage_reduction": { "all": 3 }, + "description": "A place to sit, and the backrest reclines to make it an uncomfortable bed.", + "durability": 100, + "flags": [ "BED", "SEAT", "BOARDABLE", "BELTABLE", "CARGO" ], + "floor_bedding_warmth": 250, + "item": "seat", + "location": "center", + "looks_like": "seat", + "name": { "str": "reclining seat" }, + "requirements": { + "install": { "skills": [ [ "mechanics", 1 ] ], "time": "30 m", "using": [ [ "vehicle_bolt", 1 ] ] }, + "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "15 m", "using": [ [ "vehicle_bolt", 1 ] ] }, + "repair": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "welding_standard", 5 ] ] } + }, + "size": 25, + "symbol": "#", + "type": "vehicle_part" + }, + { + "abstract": "reclining_seat_leather_abstract", + "breaks_into": "ig_vp_seat_leather", + "copy-from": "reclining_seat", + "item": "seat_leather", + "looks_like": "seat_leather", + "name": { "str": "reclining leather seat" }, + "type": "vehicle_part" + }, + { + "copy-from": "seat_abstract", + "id": "seat", + "symbol": "#", + "type": "vehicle_part" + }, + { + "copy-from": "seat_leather_abstract", + "id": "seat_leather", + "symbol": "#", + "type": "vehicle_part" + }, + { + "copy-from": "reclining_seat_abstract", + "id": "reclining_seat", + "symbol": "#", + "type": "vehicle_part" + }, + { + "copy-from": "reclining_seat_leather_abstract", + "id": "reclining_seat_leather", + "symbol": "#", + "type": "vehicle_part" + }, + { + "copy-from": "seat_abstract", + "id": "seat_up", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "seat_leather_abstract", + "id": "seat_leather_up", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "reclining_seat_abstract", + "id": "reclining_seat_up", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "reclining_seat_leather_abstract", + "id": "reclining_seat_leather_up", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "seat_abstract", + "id": "seat_down", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "seat_leather_abstract", + "id": "seat_leather_down", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "reclining_seat_abstract", + "id": "reclining_seat_down", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "reclining_seat_leather_abstract", + "id": "reclining_seat_leather_down", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "seat_abstract", + "id": "seat_left", + "symbol": "d", + "type": "vehicle_part" + }, + { + "copy-from": "seat_leather_abstract", + "id": "seat_leather_left", + "symbol": "d", + "type": "vehicle_part" + }, + { + "copy-from": "reclining_seat_abstract", + "id": "reclining_seat_left", + "symbol": "d", + "type": "vehicle_part" + }, + { + "copy-from": "reclining_seat_leather_abstract", + "id": "reclining_seat_leather_left", + "symbol": "d", + "type": "vehicle_part" + }, + { + "copy-from": "seat_abstract", + "id": "seat_right", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "seat_leather_abstract", + "id": "seat_leather_right", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "reclining_seat_abstract", + "id": "reclining_seat_right", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "reclining_seat_leather_abstract", + "id": "reclining_seat_leather_right", + "symbol": "b", + "type": "vehicle_part" + } +] diff --git a/data/json/vehicleparts/utilities.json b/data/json/vehicleparts/utilities.json new file mode 100644 index 0000000000000..9f6c6b38bb90d --- /dev/null +++ b/data/json/vehicleparts/utilities.json @@ -0,0 +1,362 @@ +[ + { + "abstract": "kitchen_unit_abstract", + "breaks_into": [ + { "count": [ 4, 6 ], "item": "steel_lump" }, + { "count": [ 4, 6 ], "item": "steel_chunk" }, + { "count": [ 4, 6 ], "item": "scrap" }, + { "item": "pan", "prob": 50 }, + { "item": "pot", "prob": 50 } + ], + "broken_color": "light_cyan", + "broken_symbol": "x", + "color": "light_cyan", + "damage_modifier": 10, + "damage_reduction": { "all": 30 }, + "description": "A small but complete kitchen unit, powered from the vehicle's batteries.", + "durability": 80, + "flags": [ "CARGO", "OBSTACLE", "KITCHEN", "FAUCET", "COVERED" ], + "item": "kitchen_unit", + "location": "center", + "looks_like": "f_oven", + "name": { "str": "kitchen unit" }, + "requirements": { + "install": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "vehicle_bolt", 1 ] ] }, + "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_bolt", 1 ] ] }, + "repair": { "skills": [ [ "mechanics", 4 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } + }, + "size": 200, + "symbol": "&", + "type": "vehicle_part" + }, + { + "abstract": "welding_rig_abstract", + "breaks_into": [ + { "count": [ 3, 6 ], "item": "steel_lump" }, + { "count": [ 3, 6 ], "item": "steel_chunk" }, + { "count": [ 3, 6 ], "item": "scrap" }, + { "charges": 0, "item": "welder", "prob": 50 } + ], + "broken_color": "light_red", + "broken_symbol": "x", + "color": "light_red", + "damage_modifier": 10, + "damage_reduction": { "all": 24 }, + "description": "A welding rig mounted in the vehicle, that draws power from the vehicle's batteries. You still need glare protection. 'e'xamine the tile with the rig to use it to repair items in your inventory. If you attempt to craft an item or perform a repair that requires a welder, you will be given the option of using the welding rig.", + "durability": 80, + "flags": [ "CARGO", "OBSTACLE", "WELDRIG", "COVERED" ], + "item": "weldrig", + "location": "center", + "name": { "str": "welding rig" }, + "requirements": { + "install": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "vehicle_bolt", 1 ] ] }, + "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_bolt", 1 ] ] }, + "repair": { "skills": [ [ "mechanics", 4 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } + }, + "size": 200, + "symbol": "&", + "type": "vehicle_part" + }, + { + "abstract": "craft_rig_abstract", + "breaks_into": [ + { "count": [ 4, 7 ], "item": "steel_lump" }, + { "count": [ 4, 7 ], "item": "steel_chunk" }, + { "count": [ 4, 7 ], "item": "scrap" }, + { "item": "pan", "prob": 50 }, + { "item": "pot", "prob": 50 }, + { "charges": 0, "item": "water_purifier", "prob": 50 }, + { "charges": 0, "item": "vac_sealer", "prob": 50 }, + { "charges": 0, "item": "dehydrator", "prob": 50 }, + { "charges": 0, "item": "food_processor", "prob": 50 }, + { "charges": 0, "item": "press", "prob": 50 } + ], + "broken_color": "light_gray", + "broken_symbol": "x", + "color": "light_green", + "damage_modifier": 10, + "damage_reduction": { "all": 20 }, + "description": "A multi-function crafting station, with a water purifier, food dehydrator, vacuum sealer, and hand press for making ammo. Draws power from the vehicle's batteries. 'e'xamine the tile with the kitchen buddy to access the water faucet or to purify water in a vehicle tank or in a container in your inventory. If you attempt craft an item that needs one of the kitchen buddy's functions, it will automatically be selected as a tool.", + "durability": 80, + "flags": [ "CARGO", "OBSTACLE", "CRAFTRIG", "WATER_PURIFIER", "COVERED" ], + "item": "craftrig", + "location": "center", + "looks_like": "f_sink", + "name": { "str": "FOODCO kitchen buddy" }, + "requirements": { + "install": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "vehicle_bolt", 1 ] ] }, + "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_bolt", 1 ] ] }, + "repair": { "skills": [ [ "mechanics", 4 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } + }, + "size": 200, + "symbol": "&", + "type": "vehicle_part" + }, + { + "abstract": "chemlab_abstract", + "breaks_into": [ + { "count": [ 4, 7 ], "item": "steel_lump" }, + { "count": [ 4, 7 ], "item": "steel_chunk" }, + { "count": [ 4, 7 ], "item": "scrap" }, + { "charges": [ 30, 50 ], "item": "cable" }, + { "charges": 0, "item": "chemistry_set", "prob": 50 }, + { "charges": 0, "item": "hotplate", "prob": 50 } + ], + "broken_color": "light_gray", + "broken_symbol": "x", + "color": "yellow", + "damage_modifier": 10, + "damage_reduction": { "all": 19 }, + "description": "A small chemistry station, including a hotplate and electrolysis setup powered by the vehicle's batteries. 'e'xamine the tile with the chemistry lab to access the water faucet or to heat up food with the hotplate. If you attempt craft an item that needs one of the chemistry lab's functions, it will automatically be selected as a tool.", + "durability": 80, + "flags": [ "CARGO", "OBSTACLE", "CHEMLAB", "FAUCET", "COVERED" ], + "item": "chemlab", + "location": "center", + "looks_like": "f_workbench", + "name": { "str": "onboard chemistry lab" }, + "requirements": { + "install": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "vehicle_bolt", 1 ] ] }, + "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_bolt", 1 ] ] }, + "repair": { "skills": [ [ "mechanics", 4 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } + }, + "size": 200, + "symbol": "&", + "type": "vehicle_part" + }, + { + "abstract": "veh_forge_abstract", + "breaks_into": [ + { "count": [ 4, 5 ], "item": "steel_lump" }, + { "count": [ 4, 6 ], "item": "steel_chunk" }, + { "count": [ 4, 6 ], "item": "scrap" } + ], + "broken_color": "light_gray", + "broken_symbol": "x", + "color": "red", + "damage_modifier": 10, + "damage_reduction": { "all": 29 }, + "description": "A electric forge for metalworking, powered by the vehicle's batteries. With a hammer and other tools, you could use this for metalworking. If you attempt craft an item that needs a forge, you will be given the option of selecting it as a tool.", + "durability": 80, + "flags": [ "CARGO", "OBSTACLE", "FORGE" ], + "item": "forgerig", + "location": "center", + "looks_like": "f_forge_rock", + "name": { "str": "mounted electric forge" }, + "requirements": { + "install": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "vehicle_bolt", 1 ] ] }, + "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_bolt", 1 ] ] }, + "repair": { "skills": [ [ "mechanics", 4 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } + }, + "size": 200, + "symbol": "&", + "type": "vehicle_part" + }, + { + "abstract": "veh_kiln_abstract", + "breaks_into": [ + { "count": [ 4, 5 ], "item": "steel_lump" }, + { "count": [ 4, 6 ], "item": "steel_chunk" }, + { "count": [ 4, 6 ], "item": "scrap" } + ], + "broken_color": "light_gray", + "broken_symbol": "x", + "color": "red", + "damage_modifier": 10, + "damage_reduction": { "all": 25 }, + "description": "A electric kiln for baking brick or clay, powered by the vehicle's batteries. You could use this to harden bricks or clay. If you attempt craft an item that needs a kiln, you will be given the option of selecting it as a tool.", + "durability": 80, + "flags": [ "CARGO", "OBSTACLE", "KILN" ], + "item": "kilnrig", + "location": "center", + "looks_like": "f_kiln_empty", + "name": { "str": "mounted electric kiln" }, + "requirements": { + "install": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "vehicle_bolt", 1 ] ] }, + "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_bolt", 1 ] ] }, + "repair": { "skills": [ [ "mechanics", 4 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } + }, + "size": 200, + "symbol": "&", + "type": "vehicle_part" + }, + { + "copy-from": "kitchen_unit_abstract", + "id": "kitchen_unit", + "symbol": "&", + "type": "vehicle_part" + }, + { + "copy-from": "welding_rig_abstract", + "id": "welding_rig", + "symbol": "&", + "type": "vehicle_part" + }, + { + "copy-from": "craft_rig_abstract", + "id": "craft_rig", + "symbol": "&", + "type": "vehicle_part" + }, + { + "copy-from": "chemlab_abstract", + "id": "chemlab", + "symbol": "&", + "type": "vehicle_part" + }, + { + "copy-from": "veh_forge_abstract", + "id": "veh_forge", + "symbol": "&", + "type": "vehicle_part" + }, + { + "copy-from": "veh_kiln_abstract", + "id": "veh_kiln", + "symbol": "&", + "type": "vehicle_part" + }, + { + "copy-from": "kitchen_unit_abstract", + "id": "kitchen_unit_up", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "welding_rig_abstract", + "id": "welding_rig_up", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "craft_rig_abstract", + "id": "craft_rig_up", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "chemlab_abstract", + "id": "chemlab_up", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "veh_forge_abstract", + "id": "veh_forge_up", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "veh_kiln_abstract", + "id": "veh_kiln_up", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "kitchen_unit_abstract", + "id": "kitchen_unit_down", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "welding_rig_abstract", + "id": "welding_rig_down", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "craft_rig_abstract", + "id": "craft_rig_down", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "chemlab_abstract", + "id": "chemlab_down", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "veh_forge_abstract", + "id": "veh_forge_down", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "veh_kiln_abstract", + "id": "veh_kiln_down", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "kitchen_unit_abstract", + "id": "kitchen_unit_left", + "symbol": "d", + "type": "vehicle_part" + }, + { + "copy-from": "welding_rig_abstract", + "id": "welding_rig_left", + "symbol": "d", + "type": "vehicle_part" + }, + { + "copy-from": "craft_rig_abstract", + "id": "craft_rig_left", + "symbol": "d", + "type": "vehicle_part" + }, + { + "copy-from": "chemlab_abstract", + "id": "chemlab_left", + "symbol": "d", + "type": "vehicle_part" + }, + { + "copy-from": "veh_forge_abstract", + "id": "veh_forge_left", + "symbol": "d", + "type": "vehicle_part" + }, + { + "copy-from": "veh_kiln_abstract", + "id": "veh_kiln_left", + "symbol": "d", + "type": "vehicle_part" + }, + { + "copy-from": "kitchen_unit_abstract", + "id": "kitchen_unit_right", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "welding_rig_abstract", + "id": "welding_rig_right", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "craft_rig_abstract", + "id": "craft_rig_right", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "chemlab_abstract", + "id": "chemlab_right", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "veh_forge_abstract", + "id": "veh_forge_right", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "veh_kiln_abstract", + "id": "veh_kiln_right", + "symbol": "b", + "type": "vehicle_part" + } +] diff --git a/data/json/vehicleparts/vehicle_parts.json b/data/json/vehicleparts/vehicle_parts.json index ad3972da7ed0f..c6c944fedffd8 100644 --- a/data/json/vehicleparts/vehicle_parts.json +++ b/data/json/vehicleparts/vehicle_parts.json @@ -1,27 +1,4 @@ [ - { - "type": "item_group", - "id": "ig_vp_seat", - "subtype": "collection", - "entries": [ - { "item": "rag", "count": [ 2, 8 ] }, - { "item": "pipe", "count": [ 1, 3 ] }, - { "item": "spring", "count": [ 0, 2 ] }, - { "item": "scrap", "count": [ 3, 5 ] } - ] - }, - { - "type": "item_group", - "id": "ig_vp_seat_leather", - "subtype": "collection", - "entries": [ - { "item": "leather", "count": [ 1, 5 ] }, - { "item": "rag", "count": [ 1, 3 ] }, - { "item": "pipe", "count": [ 1, 3 ] }, - { "item": "spring", "count": [ 0, 2 ] }, - { "item": "scrap", "count": [ 3, 5 ] } - ] - }, { "type": "item_group", "id": "ig_vp_frame", @@ -569,243 +546,6 @@ "breaks_into": "ig_vp_steel_plate", "damage_reduction": { "all": 75 } }, - { - "type": "vehicle_part", - "id": "door", - "name": { "str": "door" }, - "symbol": "+", - "looks_like": "t_door_metal_c", - "color": "cyan", - "broken_symbol": "&", - "broken_color": "cyan", - "damage_modifier": 80, - "durability": 225, - "description": "A door. Has a window so you can see out of it, even when closed.", - "size": 10, - "item": "frame", - "location": "center", - "requirements": { - "install": { "skills": [ [ "mechanics", 2 ] ], "time": "60 m", "using": [ [ "vehicle_bolt", 1 ] ] }, - "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_bolt", 1 ] ] }, - "repair": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } - }, - "flags": [ "CARGO", "OBSTACLE", "OPENABLE", "BOARDABLE", "WINDOW", "SIMPLE_PART" ], - "breaks_into": "ig_vp_frame", - "damage_reduction": { "all": 21 } - }, - { - "type": "vehicle_part", - "id": "door_opaque", - "name": { "str": "opaque door" }, - "symbol": "+", - "looks_like": "door", - "color": "cyan", - "broken_symbol": "&", - "broken_color": "cyan", - "damage_modifier": 80, - "durability": 240, - "description": "A door. Solid construction means you can't see through it when closed.", - "size": 10, - "item": "frame", - "location": "center", - "requirements": { - "install": { "skills": [ [ "mechanics", 2 ] ], "time": "60 m", "using": [ [ "vehicle_bolt", 1 ] ] }, - "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_bolt", 1 ] ] }, - "repair": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } - }, - "flags": [ "CARGO", "OBSTACLE", "OPAQUE", "OPENABLE", "BOARDABLE", "SIMPLE_PART" ], - "breaks_into": "ig_vp_frame", - "damage_reduction": { "all": 28 } - }, - { - "type": "vehicle_part", - "id": "hddoor", - "name": { "str": "heavy duty door" }, - "symbol": "+", - "color": "cyan", - "looks_like": "door", - "broken_symbol": "&", - "broken_color": "cyan", - "damage_modifier": 80, - "durability": 600, - "description": "A strong door. Has a window so you can see out of it, even when closed.", - "size": 10, - "item": "hdframe", - "location": "center", - "requirements": { - "install": { "skills": [ [ "mechanics", 2 ] ], "time": "60 m", "using": [ [ "vehicle_bolt", 1 ] ] }, - "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_bolt", 1 ] ] }, - "repair": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } - }, - "flags": [ "CARGO", "OBSTACLE", "OPENABLE", "BOARDABLE", "WINDOW", "SIMPLE_PART" ], - "breaks_into": "ig_vp_hdframe", - "damage_reduction": { "all": 68 } - }, - { - "type": "vehicle_part", - "id": "hddoor_opaque", - "name": { "str": "heavy duty opaque door" }, - "symbol": "+", - "color": "cyan", - "looks_like": "door_opaque", - "broken_symbol": "&", - "broken_color": "cyan", - "damage_modifier": 80, - "durability": 660, - "description": "A strong door. Solid construction means you can't see through it when closed.", - "size": 10, - "item": "hdframe", - "location": "center", - "requirements": { - "install": { "skills": [ [ "mechanics", 2 ] ], "time": "60 m", "using": [ [ "vehicle_bolt", 1 ] ] }, - "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_bolt", 1 ] ] }, - "repair": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } - }, - "flags": [ "CARGO", "OBSTACLE", "OPAQUE", "OPENABLE", "BOARDABLE", "SIMPLE_PART" ], - "breaks_into": "ig_vp_hdframe", - "damage_reduction": { "all": 75 } - }, - { - "type": "vehicle_part", - "id": "door_internal", - "name": { "str": "internal door" }, - "symbol": "+", - "looks_like": "door", - "color": "cyan", - "broken_symbol": "&", - "broken_color": "cyan", - "damage_modifier": 75, - "durability": 240, - "description": "An interior door. Solid construction means you can't see through it when closed.", - "item": "frame", - "location": "center", - "requirements": { - "install": { "skills": [ [ "mechanics", 2 ] ], "time": "60 m", "using": [ [ "vehicle_bolt", 1 ] ] }, - "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_bolt", 1 ] ] }, - "repair": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } - }, - "flags": [ "OBSTACLE", "OPAQUE", "OPENABLE", "ROOF", "BOARDABLE", "SIMPLE_PART" ], - "breaks_into": "ig_vp_frame", - "damage_reduction": { "all": 28 } - }, - { - "type": "vehicle_part", - "id": "hatch", - "name": { "str": "hatch" }, - "symbol": "+", - "looks_like": "door", - "color": "light_gray", - "broken_symbol": "&", - "broken_color": "light_gray", - "damage_modifier": 80, - "durability": 420, - "description": "A strong door. A window lets you see through it when closed.", - "size": 150, - "item": "frame", - "location": "center", - "requirements": { - "install": { "skills": [ [ "mechanics", 2 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] }, - "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_weld_removal", 1 ] ] }, - "repair": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } - }, - "flags": [ "CARGO", "LOCKABLE_CARGO", "OBSTACLE", "OPENABLE", "MULTISQUARE", "BOARDABLE", "COVERED", "SIMPLE_PART" ], - "breaks_into": "ig_vp_frame", - "damage_reduction": { "all": 30 } - }, - { - "type": "vehicle_part", - "id": "hatch_opaque", - "name": { "str": "opaque hatch" }, - "symbol": "+", - "looks_like": "door_opaque", - "color": "light_gray", - "broken_symbol": "&", - "broken_color": "light_gray", - "damage_modifier": 80, - "durability": 450, - "description": "A strong door. Solid construction means you can't see through it when closed.", - "size": 150, - "item": "frame", - "location": "center", - "requirements": { - "install": { "skills": [ [ "mechanics", 2 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] }, - "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_weld_removal", 1 ] ] }, - "repair": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } - }, - "flags": [ "CARGO", "LOCKABLE_CARGO", "OBSTACLE", "OPENABLE", "MULTISQUARE", "BOARDABLE", "COVERED", "OPAQUE", "SIMPLE_PART" ], - "breaks_into": "ig_vp_frame", - "damage_reduction": { "all": 34 } - }, - { - "type": "vehicle_part", - "id": "hdhatch", - "name": { "str": "heavy duty hatch" }, - "symbol": "+", - "color": "dark_gray", - "looks_like": "hatch", - "broken_symbol": "&", - "broken_color": "dark_gray", - "damage_modifier": 80, - "durability": 900, - "description": "A very strong door. A window lets you see through it when closed.", - "size": 150, - "item": "hdframe", - "location": "center", - "requirements": { - "install": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] }, - "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_weld_removal", 1 ] ] }, - "repair": { "skills": [ [ "mechanics", 4 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } - }, - "flags": [ "CARGO", "LOCKABLE_CARGO", "OBSTACLE", "OPENABLE", "MULTISQUARE", "BOARDABLE", "COVERED", "SIMPLE_PART" ], - "breaks_into": "ig_vp_hdframe", - "damage_reduction": { "all": 78 } - }, - { - "type": "vehicle_part", - "id": "hdhatch_opaque", - "name": { "str": "opaque heavy duty hatch" }, - "symbol": "+", - "color": "dark_gray", - "looks_like": "hatch_opaque", - "broken_symbol": "&", - "broken_color": "dark_gray", - "damage_modifier": 80, - "durability": 1000, - "description": "A very strong door. Solid construction means you can't see through it when closed.", - "size": 150, - "item": "hdframe", - "location": "center", - "requirements": { - "install": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] }, - "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_weld_removal", 1 ] ] }, - "repair": { "skills": [ [ "mechanics", 4 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } - }, - "flags": [ "CARGO", "LOCKABLE_CARGO", "OBSTACLE", "OPENABLE", "MULTISQUARE", "BOARDABLE", "COVERED", "OPAQUE", "SIMPLE_PART" ], - "breaks_into": "ig_vp_hdframe", - "damage_reduction": { "all": 80 } - }, - { - "type": "vehicle_part", - "id": "windshield", - "name": { "str": "windshield" }, - "symbol": "\"", - "looks_like": "t_wall_glass", - "color": "light_cyan", - "broken_symbol": "0", - "broken_color": "light_gray", - "damage_modifier": 70, - "description": "A sheet of glass that lets you see outside the vehicle.", - "durability": 50, - "item": "glass_sheet", - "location": "center", - "requirements": { - "install": { "skills": [ [ "mechanics", 1 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] }, - "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_weld_removal", 1 ] ] }, - "repair": { "skills": [ [ "mechanics", 2 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } - }, - "flags": [ "OVER", "WINDSHIELD", "OBSTACLE", "WINDOW" ], - "breaks_into": [ { "item": "glass_shard", "count": [ 25, 50 ] } ] - }, { "type": "vehicle_part", "id": "blade_horizontal", @@ -2204,186 +1944,6 @@ "flags": [ "TOWEL", "FOLDABLE" ], "breaks_into": [ { "item": "scrap", "count": [ 1, 3 ] }, { "item": "rag", "count": [ 1, 6 ] } ] }, - { - "type": "vehicle_part", - "id": "kitchen_unit", - "name": { "str": "kitchen unit" }, - "symbol": "&", - "looks_like": "f_oven", - "color": "light_cyan", - "broken_symbol": "x", - "broken_color": "light_cyan", - "damage_modifier": 10, - "durability": 80, - "description": "A small but complete kitchen unit, powered from the vehicle's batteries.", - "size": 200, - "item": "kitchen_unit", - "location": "center", - "requirements": { - "install": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "vehicle_bolt", 1 ] ] }, - "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_bolt", 1 ] ] }, - "repair": { "skills": [ [ "mechanics", 4 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } - }, - "flags": [ "CARGO", "OBSTACLE", "KITCHEN", "FAUCET", "COVERED" ], - "breaks_into": [ - { "item": "steel_lump", "count": [ 4, 6 ] }, - { "item": "steel_chunk", "count": [ 4, 6 ] }, - { "item": "scrap", "count": [ 4, 6 ] }, - { "item": "pan", "prob": 50 }, - { "item": "pot", "prob": 50 } - ], - "damage_reduction": { "all": 30 } - }, - { - "type": "vehicle_part", - "id": "welding_rig", - "name": { "str": "welding rig" }, - "symbol": "&", - "color": "light_red", - "broken_symbol": "x", - "broken_color": "light_red", - "damage_modifier": 10, - "durability": 80, - "description": "A welding rig mounted in the vehicle, that draws power from the vehicle's batteries. You still need glare protection. 'e'xamine the tile with the rig to use it to repair items in your inventory. If you attempt to craft an item or perform a repair that requires a welder, you will be given the option of using the welding rig.", - "size": 200, - "item": "weldrig", - "location": "center", - "requirements": { - "install": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "vehicle_bolt", 1 ] ] }, - "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_bolt", 1 ] ] }, - "repair": { "skills": [ [ "mechanics", 4 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } - }, - "flags": [ "CARGO", "OBSTACLE", "WELDRIG", "COVERED" ], - "breaks_into": [ - { "item": "steel_lump", "count": [ 3, 6 ] }, - { "item": "steel_chunk", "count": [ 3, 6 ] }, - { "item": "scrap", "count": [ 3, 6 ] }, - { "item": "welder", "charges": 0, "prob": 50 } - ], - "damage_reduction": { "all": 24 } - }, - { - "type": "vehicle_part", - "id": "craft_rig", - "name": { "str": "FOODCO kitchen buddy" }, - "symbol": "&", - "looks_like": "f_sink", - "color": "light_green", - "broken_symbol": "x", - "broken_color": "light_gray", - "damage_modifier": 10, - "durability": 80, - "description": "A multi-function crafting station, with a water purifier, food dehydrator, vacuum sealer, and hand press for making ammo. Draws power from the vehicle's batteries. 'e'xamine the tile with the kitchen buddy to access the water faucet or to purify water in a vehicle tank or in a container in your inventory. If you attempt craft an item that needs one of the kitchen buddy's functions, it will automatically be selected as a tool.", - "size": 200, - "item": "craftrig", - "location": "center", - "requirements": { - "install": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "vehicle_bolt", 1 ] ] }, - "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_bolt", 1 ] ] }, - "repair": { "skills": [ [ "mechanics", 4 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } - }, - "flags": [ "CARGO", "OBSTACLE", "CRAFTRIG", "WATER_PURIFIER", "COVERED" ], - "breaks_into": [ - { "item": "steel_lump", "count": [ 4, 7 ] }, - { "item": "steel_chunk", "count": [ 4, 7 ] }, - { "item": "scrap", "count": [ 4, 7 ] }, - { "item": "pan", "prob": 50 }, - { "item": "pot", "prob": 50 }, - { "item": "water_purifier", "charges": 0, "prob": 50 }, - { "item": "vac_sealer", "charges": 0, "prob": 50 }, - { "item": "dehydrator", "charges": 0, "prob": 50 }, - { "item": "food_processor", "charges": 0, "prob": 50 }, - { "item": "press", "charges": 0, "prob": 50 } - ], - "damage_reduction": { "all": 20 } - }, - { - "type": "vehicle_part", - "id": "chemlab", - "name": { "str": "onboard chemistry lab" }, - "symbol": "&", - "looks_like": "f_workbench", - "color": "yellow", - "broken_symbol": "x", - "broken_color": "light_gray", - "damage_modifier": 10, - "description": "A small chemistry station, including a hotplate and electrolysis setup powered by the vehicle's batteries. 'e'xamine the tile with the chemistry lab to access the water faucet or to heat up food with the hotplate. If you attempt craft an item that needs one of the chemistry lab's functions, it will automatically be selected as a tool.", - "durability": 80, - "size": 200, - "item": "chemlab", - "location": "center", - "requirements": { - "install": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "vehicle_bolt", 1 ] ] }, - "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_bolt", 1 ] ] }, - "repair": { "skills": [ [ "mechanics", 4 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } - }, - "flags": [ "CARGO", "OBSTACLE", "CHEMLAB", "FAUCET", "COVERED" ], - "breaks_into": [ - { "item": "steel_lump", "count": [ 4, 7 ] }, - { "item": "steel_chunk", "count": [ 4, 7 ] }, - { "item": "scrap", "count": [ 4, 7 ] }, - { "item": "cable", "charges": [ 30, 50 ] }, - { "item": "chemistry_set", "charges": 0, "prob": 50 }, - { "item": "hotplate", "charges": 0, "prob": 50 } - ], - "damage_reduction": { "all": 19 } - }, - { - "type": "vehicle_part", - "id": "veh_forge", - "name": { "str": "mounted electric forge" }, - "symbol": "&", - "looks_like": "f_forge_rock", - "color": "red", - "broken_symbol": "x", - "broken_color": "light_gray", - "damage_modifier": 10, - "durability": 80, - "description": "A electric forge for metalworking, powered by the vehicle's batteries. With a hammer and other tools, you could use this for metalworking. If you attempt craft an item that needs a forge, you will be given the option of selecting it as a tool.", - "size": 200, - "item": "forgerig", - "location": "center", - "requirements": { - "install": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "vehicle_bolt", 1 ] ] }, - "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_bolt", 1 ] ] }, - "repair": { "skills": [ [ "mechanics", 4 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } - }, - "flags": [ "CARGO", "OBSTACLE", "FORGE" ], - "breaks_into": [ - { "item": "steel_lump", "count": [ 4, 5 ] }, - { "item": "steel_chunk", "count": [ 4, 6 ] }, - { "item": "scrap", "count": [ 4, 6 ] } - ], - "damage_reduction": { "all": 29 } - }, - { - "type": "vehicle_part", - "id": "veh_kiln", - "name": { "str": "mounted electric kiln" }, - "symbol": "&", - "looks_like": "f_kiln_empty", - "color": "red", - "broken_symbol": "x", - "broken_color": "light_gray", - "damage_modifier": 10, - "durability": 80, - "description": "A electric kiln for baking brick or clay, powered by the vehicle's batteries. You could use this to harden bricks or clay. If you attempt craft an item that needs a kiln, you will be given the option of selecting it as a tool.", - "size": 200, - "item": "kilnrig", - "location": "center", - "requirements": { - "install": { "skills": [ [ "mechanics", 3 ] ], "time": "60 m", "using": [ [ "vehicle_bolt", 1 ] ] }, - "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_bolt", 1 ] ] }, - "repair": { "skills": [ [ "mechanics", 4 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } - }, - "flags": [ "CARGO", "OBSTACLE", "KILN" ], - "breaks_into": [ - { "item": "steel_lump", "count": [ 4, 5 ] }, - { "item": "steel_chunk", "count": [ 4, 6 ] }, - { "item": "scrap", "count": [ 4, 6 ] } - ], - "damage_reduction": { "all": 25 } - }, { "type": "vehicle_part", "id": "plating_wood", @@ -2524,29 +2084,6 @@ ], "damage_reduction": { "all": 70, "cut": 95, "stab": 88 } }, - { - "type": "vehicle_part", - "id": "reinforced_windshield", - "name": { "str": "reinforced windshield" }, - "symbol": "\"", - "looks_like": "windshield", - "color": "light_blue", - "broken_symbol": "0", - "broken_color": "light_gray", - "damage_modifier": 80, - "durability": 250, - "description": "A sheet of glass that lets you see outside the vehicle. Reinforced with wire to make it harder to break than normal glass.", - "item": "reinforced_glass_sheet", - "location": "center", - "requirements": { - "install": { "skills": [ [ "mechanics", 4 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] }, - "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_weld_removal", 1 ] ] }, - "repair": { "skills": [ [ "mechanics", 5 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } - }, - "flags": [ "WINDSHIELD", "OBSTACLE", "WINDOW" ], - "breaks_into": [ { "item": "glass_shard", "count": [ 25, 50 ] }, { "item": "wire", "count": [ 4, 8 ] } ], - "damage_reduction": { "all": 16 } - }, { "type": "vehicle_part", "id": "horn_bicycle", diff --git a/data/json/vehicleparts/windshields.json b/data/json/vehicleparts/windshields.json new file mode 100644 index 0000000000000..638d25fb1bcbd --- /dev/null +++ b/data/json/vehicleparts/windshields.json @@ -0,0 +1,191 @@ +[ + { + "abstract": "windshield_abstract", + "breaks_into": [ { "count": [ 25, 50 ], "item": "glass_shard" } ], + "broken_color": "light_gray", + "broken_symbol": "0", + "color": "light_cyan", + "damage_modifier": 70, + "description": "A sheet of glass that lets you see outside the vehicle.", + "durability": 50, + "flags": [ "OVER", "WINDSHIELD", "OBSTACLE", "WINDOW" ], + "item": "glass_sheet", + "location": "center", + "looks_like": "t_wall_glass", + "name": { "str": "windshield" }, + "requirements": { + "install": { "skills": [ [ "mechanics", 1 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] }, + "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_weld_removal", 1 ] ] }, + "repair": { "skills": [ [ "mechanics", 2 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } + }, + "symbol": "\"", + "type": "vehicle_part" + }, + { + "abstract": "reinforced_windshield_abstract", + "breaks_into": [ { "count": [ 25, 50 ], "item": "glass_shard" }, { "count": [ 4, 8 ], "item": "wire" } ], + "broken_color": "light_gray", + "broken_symbol": "0", + "color": "light_blue", + "damage_modifier": 80, + "damage_reduction": { "all": 16 }, + "description": "A sheet of glass that lets you see outside the vehicle. Reinforced with wire to make it harder to break than normal glass.", + "durability": 250, + "flags": [ "WINDSHIELD", "OBSTACLE", "WINDOW" ], + "item": "reinforced_glass_sheet", + "location": "center", + "looks_like": "windshield", + "name": { "str": "reinforced windshield" }, + "requirements": { + "install": { "skills": [ [ "mechanics", 4 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] }, + "removal": { "skills": [ [ "mechanics", 2 ] ], "time": "30 m", "using": [ [ "vehicle_weld_removal", 1 ] ] }, + "repair": { "skills": [ [ "mechanics", 5 ] ], "time": "60 m", "using": [ [ "welding_standard", 5 ] ] } + }, + "symbol": "\"", + "type": "vehicle_part" + }, + { + "copy-from": "windshield_abstract", + "id": "windshield", + "symbol": "\"", + "type": "vehicle_part" + }, + { + "copy-from": "reinforced_windshield_abstract", + "id": "reinforced_windshield", + "symbol": "\"", + "type": "vehicle_part" + }, + { + "copy-from": "windshield_abstract", + "id": "windshield_nw", + "symbol": "y", + "type": "vehicle_part" + }, + { + "copy-from": "reinforced_windshield_abstract", + "id": "reinforced_windshield_nw", + "symbol": "y", + "type": "vehicle_part" + }, + { + "copy-from": "windshield_abstract", + "id": "windshield_vertical", + "symbol": "j", + "type": "vehicle_part" + }, + { + "copy-from": "reinforced_windshield_abstract", + "id": "reinforced_windshield_vertical", + "symbol": "j", + "type": "vehicle_part" + }, + { + "copy-from": "windshield_abstract", + "id": "windshield_ne", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "reinforced_windshield_abstract", + "id": "reinforced_windshield_ne", + "symbol": "u", + "type": "vehicle_part" + }, + { + "copy-from": "windshield_abstract", + "id": "windshield_sw", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "reinforced_windshield_abstract", + "id": "reinforced_windshield_sw", + "symbol": "b", + "type": "vehicle_part" + }, + { + "copy-from": "windshield_abstract", + "id": "windshield_vertical_2", + "symbol": "H", + "type": "vehicle_part" + }, + { + "copy-from": "reinforced_windshield_abstract", + "id": "reinforced_windshield_vertical_2", + "symbol": "H", + "type": "vehicle_part" + }, + { + "copy-from": "windshield_abstract", + "id": "windshield_se", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "reinforced_windshield_abstract", + "id": "reinforced_windshield_se", + "symbol": "n", + "type": "vehicle_part" + }, + { + "copy-from": "windshield_abstract", + "id": "windshield_cover", + "symbol": "^", + "type": "vehicle_part" + }, + { + "copy-from": "reinforced_windshield_abstract", + "id": "reinforced_windshield_cover", + "symbol": "^", + "type": "vehicle_part" + }, + { + "copy-from": "windshield_abstract", + "id": "windshield_horizontal", + "symbol": "h", + "type": "vehicle_part" + }, + { + "copy-from": "reinforced_windshield_abstract", + "id": "reinforced_windshield_horizontal", + "symbol": "h", + "type": "vehicle_part" + }, + { + "copy-from": "windshield_abstract", + "id": "windshield_horizontal_2", + "symbol": "=", + "type": "vehicle_part" + }, + { + "copy-from": "reinforced_windshield_abstract", + "id": "reinforced_windshield_horizontal_2", + "symbol": "=", + "type": "vehicle_part" + }, + { + "copy-from": "windshield_abstract", + "id": "windshield_cross", + "symbol": "c", + "type": "vehicle_part" + }, + { + "copy-from": "reinforced_windshield_abstract", + "id": "reinforced_windshield_cross", + "symbol": "c", + "type": "vehicle_part" + }, + { + "copy-from": "windshield_abstract", + "id": "windshield_box", + "symbol": "#", + "type": "vehicle_part" + }, + { + "copy-from": "reinforced_windshield_abstract", + "id": "reinforced_windshield_box", + "symbol": "#", + "type": "vehicle_part" + } +] diff --git a/tools/make_vehicle_parts_directions.py b/tools/make_vehicle_parts_directions.py new file mode 100644 index 0000000000000..691506ef6856e --- /dev/null +++ b/tools/make_vehicle_parts_directions.py @@ -0,0 +1,79 @@ +import json +import os +import subprocess + +default_path = "data/json/vehicleparts/doors.json" +default_output = "data/json/vehicleparts/doors.json" +ids_created_output = "data/json/vehicleparts/new_ids.txt" + +ids_to_create_directional_parts_for = [] +list_of_created_ids = [] + +variants = { + "default_look" : "M", + "nw" : "y", + "vertical" : "j", + "ne" : "u", + "sw" : "b", + "vertical_2" : "H", + "se" : "n", + "cover" : "^", + "horizontal" : "h", + "horizontal_2" : "=", + "cross" : "c", + "box" : "#" +} + +#variants = { +# "default_look" : "M", +# "up" : "n", +# "down" : "u", +# "left" : "d", +# "right" : "b", +#} + +def gen_new(path): + with open(path, "r") as json_file: + json_data = json.load(json_file) + for jo in json_data: + if "id" in jo and jo["type"] == "vehicle_part": + jo["abstract"] = jo["id"] + "_abstract" + original_symbol = "" + if "symbol" in jo: + original_symbol = jo["symbol"] + + ids_to_create_directional_parts_for.append({"id":jo["id"], "symbol": original_symbol}) + jo.pop("id") + + for key, value in variants.items(): + for ram in ids_to_create_directional_parts_for: + new_ram_id = ram["id"] + "_" + key + copyfrom = ram["id"] + "_abstract" + if(key == "default_look"): + new_ram_id = ram["id"] + if(ram["symbol"] != ""): + value = ram["symbol"] + + new_ram_data = { + "id": new_ram_id, + "copy-from": copyfrom, + "symbol": value, + "type": "vehicle_part" + } + json_data.append(new_ram_data) + list_of_created_ids.append(new_ram_id) + return json_data + +path = os.path.join(os.getcwd(), default_path) +output_path = os.path.join(os.getcwd(), default_output) +result = gen_new(path) + +json_formatter_path = os.path.join(os.getcwd(), "tools/format/json_formatter.exe") + +with open(output_path, "w") as jf: + json.dump(result, jf, ensure_ascii=False, sort_keys=True) + subprocess.Popen([json_formatter_path, output_path], shell=True) + +with open(ids_created_output, "w") as jf: + for id in list_of_created_ids: + jf.write(id + "\n") \ No newline at end of file