// Crafting recipes. // // Fields: id, inputs, outputs (required); name, tools (not consumed), station // (tag provided by an adjacent building), skill ({ skill, level }), xp, on_craft. // Ingredients can be written as ("item", count) or { item: "item", count: n }. recipes: [ { id: "smelt_iron", name: Some("Smelt iron plate"), inputs: [("iron_ore", 2)], outputs: [("iron_plate", 1)], station: Some("furnace"), skill: Some({ skill: "smithing", level: 1 }), xp: 10, }, { id: "saw_planks", name: Some("Saw planks"), inputs: [("log", 1)], outputs: [("plank", 4)], station: Some("workbench"), skill: Some({ skill: "carpentry", level: 1 }), xp: 5, }, { id: "make_pickaxe", inputs: [("iron_plate", 2), ("plank", 1)], outputs: [("pickaxe", 1)], tools: ["wrench"], station: Some("workbench"), skill: Some({ skill: "smithing", level: 1 }), xp: 25, }, { id: "make_axe", inputs: [("iron_plate", 1), ("plank", 2)], outputs: [("axe", 1)], tools: ["wrench"], station: Some("workbench"), skill: Some({ skill: "carpentry", level: 1 }), xp: 25, }, { id: "make_sandwich", inputs: [("bread", 1), ("apple", 1)], outputs: [("sandwich", 1)], skill: Some({ skill: "cooking", level: 1 }), xp: 15, on_craft: Some("food::sandwich_crafted"), }, { id: "make_medkit", inputs: [("iron_plate", 1), ("apple", 2)], outputs: [("medkit", 1)], station: Some("workbench"), skill: Some({ skill: "medicine", level: 2 }), xp: 30, }, ]