From ec2e94e3463654a6288464a4c070b48ef9bf7368 Mon Sep 17 00:00:00 2001 From: historia <[not public]> Date: Wed, 17 Jun 2026 21:13:07 -0400 Subject: feat: smithing added, item/object interaction reworked. recipes and menus refactored. --- worldbuilding_guide/items.md | 38 ++++++++++++++++++++++++++++++++++++-- 1 file changed, 36 insertions(+), 2 deletions(-) (limited to 'worldbuilding_guide/items.md') diff --git a/worldbuilding_guide/items.md b/worldbuilding_guide/items.md index e9e4352..0a4592b 100644 --- a/worldbuilding_guide/items.md +++ b/worldbuilding_guide/items.md @@ -65,17 +65,51 @@ eat_message: "You eat the bread. Warm and satisfying." ## MadeFrom — Item Combinations -Define what items combine to make this item. Used by the `use` command. +Define what items combine to make this item. Used by the `use` command. Combinations run through the production system — players are prompted "How many?" and the action loops with a timer. ```yaml id: bread_dough name: bread dough color: "222" +ticks: 2 made_from: - items: [pot_of_flour] qty: 1 + byproducts: [empty_pot] - items: [bucket_of_water, pitcher_of_water] qty: 1 + byproducts: [empty_bucket, empty_pitcher] ``` -Each entry is an ingredient slot. Multiple `items` means any of them works. The first matching item found in inventory is consumed. See also `recipes.md` for station-based recipes. +Each entry is an ingredient slot. Multiple `items` means any of them works. The first matching item found in inventory is consumed. + +`ticks` controls how many game ticks each production cycle takes (default 2). + +### Byproducts + +`byproducts` is a list matching the `items` list by index. When `bucket_of_water` (items[0]) is consumed, `empty_bucket` (byproducts[0]) is returned to inventory. When `pitcher_of_water` (items[1]) is consumed, `empty_pitcher` (byproducts[1]) is returned instead. + +Use `""` for items that produce no byproduct: + +```yaml +made_from: + - items: [pot_of_flour, loose_flour] + qty: 1 + byproducts: [empty_pot, ""] # pot returns empty_pot, loose flour returns nothing + - items: [bucket_of_water] + qty: 1 + byproducts: [empty_bucket] +``` + +Omit `byproducts` entirely if no items in that slot produce a byproduct: + +```yaml +made_from: + - items: [pot_of_flour] + qty: 1 + byproducts: [empty_pot] # returns empty_pot + - items: [salt] + qty: 1 # no byproducts field — salt is consumed entirely +``` + +See also `recipes.md` for station-based recipes. -- cgit v1.2.3