{"$schema":"http://json-schema.org/draft-07/schema#","title":"NTM 1.0.1 custom_machine","type":"object","properties":{"recipe_key":{"description":"Process-family key matched by hbm:custom_machine recipes.","markdownDescription":"Process-family key matched by `hbm:custom_machine` recipes."},"name":{"description":"Text component displayed as the machine name.","markdownDescription":"Text component displayed as the machine name."},"cells":{"type":"object","properties":{"blocks":{"description":"Block ID, list of block IDs, or block tag accepted at this cell.","markdownDescription":"Block ID, list of block IDs, or block tag accepted at this cell."},"x":{"type":"integer","minimum":-2147483648,"maximum":2147483647,"description":"X offset from the controller.\n\nRange: i32","markdownDescription":"X offset from the controller.\n\nRange: `i32`"},"y":{"type":"integer","minimum":-2147483648,"maximum":2147483647,"description":"Y offset from the controller.\n\nRange: i32","markdownDescription":"Y offset from the controller.\n\nRange: `i32`"},"z":{"type":"integer","minimum":-2147483648,"maximum":2147483647,"description":"Z offset from the controller.\n\nRange: i32","markdownDescription":"Z offset from the controller.\n\nRange: `i32`"}},"required":["blocks","x","y","z"],"description":"Structure-cell list relative to the controller.","markdownDescription":"Structure-cell list relative to the controller."},"item_in_count":{"type":"number","minimum":0,"maximum":6,"description":"Item input positions; default 0.\n\nRange: [0, 6]","markdownDescription":"Item input positions; default 0.\n\nRange: [0, 6]"},"item_out_count":{"type":"number","minimum":0,"maximum":6,"description":"Item output positions; default 0.\n\nRange: [0, 6]","markdownDescription":"Item output positions; default 0.\n\nRange: [0, 6]"},"fluid_in_count":{"type":"number","minimum":0,"maximum":3,"description":"Input tanks; default 0.\n\nRange: [0, 3]","markdownDescription":"Input tanks; default 0.\n\nRange: [0, 3]"},"fluid_out_count":{"type":"number","minimum":0,"maximum":3,"description":"Output tanks; default 0.\n\nRange: [0, 3]","markdownDescription":"Output tanks; default 0.\n\nRange: [0, 3]"},"fluid_in_cap":{"type":"integer","minimum":0,"maximum":2147483647,"description":"Input-tank capacity in mB; default 0.\n\nRange: [0, i32::MAX]","markdownDescription":"Input-tank capacity in mB; default 0.\n\nRange: [0, `i32::MAX`]"},"fluid_out_cap":{"type":"integer","minimum":0,"maximum":2147483647,"description":"Output-tank capacity in mB; default 0.\n\nRange: [0, i32::MAX]","markdownDescription":"Output-tank capacity in mB; default 0.\n\nRange: [0, `i32::MAX`]"},"max_power":{"type":"integer","minimum":-9223372036854776000,"maximum":9223372036854776000,"description":"HE buffer capacity; default 0. Use a nonnegative capacity.\n\nRange: i64","markdownDescription":"HE buffer capacity; default 0. Use a nonnegative capacity.\n\nRange: `i64`"},"max_heat":{"type":"integer","minimum":0,"maximum":2147483647,"description":"Stored-heat limit; default 0.\n\nRange: [0, i32::MAX]","markdownDescription":"Stored-heat limit; default 0.\n\nRange: [0, `i32::MAX`]"},"max_pollution_cap":{"type":"integer","minimum":0,"maximum":2147483647,"description":"Pollution buffer limit; default 0.\n\nRange: [0, i32::MAX]","markdownDescription":"Pollution buffer limit; default 0.\n\nRange: [0, `i32::MAX`]"},"recipe_speed_mult":{"type":"number","exclusiveMinimum":0,"maximum":1.7976931348623157e+308,"description":"Positive divisor of recipe duration; default 1.0.\n\nRange: (0, f64::MAX]","markdownDescription":"Positive divisor of recipe duration; default 1.0.\n\nRange: (0, `f64::MAX`]"},"recipe_consumption_mult":{"type":"number","exclusiveMinimum":0,"maximum":1.7976931348623157e+308,"description":"Positive multiplier on recipe HE cost per tick; default 1.0.\n\nRange: (0, f64::MAX]","markdownDescription":"Positive multiplier on recipe HE cost per tick; default 1.0.\n\nRange: (0, `f64::MAX`]"},"generator_mode":{"type":"boolean","description":"Spends inputs at the start and produces energy during the run when true; default false.","markdownDescription":"Spends inputs at the start and produces energy during the run when true; default false."},"flux_mode":{"type":"boolean","description":"Applies the recipe's flux requirement when true; default false.","markdownDescription":"Applies the recipe's flux requirement when true; default false."}},"required":["recipe_key","name","cells"]}