aboutsummaryrefslogtreecommitdiff
path: root/building_guide
diff options
context:
space:
mode:
authorhistoria <[not public]>2026-07-01 18:36:21 -0400
committerhistoria <[not public]>2026-07-01 18:36:21 -0400
commit78b522d57a9ebc691e075523910d7cdaa06b6493 (patch)
treeb2a68397e0cecc5abb56e5ae451c05a9435cc5fe /building_guide
parente6b4cb9f5816c6ee239233bc85f74ee446a161c2 (diff)
downloadthehouseoficarus-78b522d57a9ebc691e075523910d7cdaa06b6493.tar.gz
feat: shop system removed from talk system, added per-item restock and variable pricing
Diffstat (limited to 'building_guide')
-rw-r--r--building_guide/behaviors.md9
1 files changed, 5 insertions, 4 deletions
diff --git a/building_guide/behaviors.md b/building_guide/behaviors.md
index c94f787..c7b091d 100644
--- a/building_guide/behaviors.md
+++ b/building_guide/behaviors.md
@@ -477,8 +477,10 @@ Each shop item carries a `stock` (its target/maximum, and its starting amount).
Buying depletes stock — an item at 0 stock is out of stock. Selling raises stock,
lowering subsequent sell prices. Every `restock_ticks` the current stock moves one
step toward the configured target (refilling when low, decaying overstock when
-high). Items a player sold that the shop didn't originally list are held as dynamic
-stock that decays back to 0.
+high). An item that omits `restock_ticks` uses the global default from
+`game_constants.shop_default_restock` in `config.yaml` (1000 ticks). Items a player
+sold that the shop didn't originally list are held as dynamic stock that decays
+back to 0.
#### Shop fields
@@ -487,11 +489,10 @@ stock that decays back to 0.
| `shop.message` | Optional greeting shown at the top of `list`. |
| `shop.buy_percentage` | Sell price at zero stock, as % of value (default 40). |
| `shop.change_percentage` | Sell price drop per unit of stock, as % of value (default 3). |
-| `shop.restock_ticks` | Shop-wide default restock interval (default 100). |
| `shop.buys_anything` | Whether the shop buys items not in its list (default true). |
| `shop.items[].item_id` | Item definition ID. |
| `shop.items[].stock` | Target/maximum and starting stock. |
-| `shop.items[].restock_ticks` | Per-item restock interval (overrides shop default). |
+| `shop.items[].restock_ticks` | Per-item restock interval (default `game_constants.shop_default_restock`, 1000). |
Full example — General Store:
```yaml