aboutsummaryrefslogtreecommitdiff
path: root/worldbuilding_guide/items.md
diff options
context:
space:
mode:
Diffstat (limited to 'worldbuilding_guide/items.md')
-rw-r--r--worldbuilding_guide/items.md38
1 files changed, 36 insertions, 2 deletions
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.