Skip to content
3 Death Saves
Wiki updated as of 0.3.0 (Aug 2026)

Stock and Restocking

A shop’s stock is the items on its actor. Peddler adds a restock schedule on top, so shelves refill as world time passes.

To stock a shop, drag Items onto its actor. Dragging an Item folder onto the actor stocks everything inside. Whatever sits on the actor is what players can browse and buy in the vignette.

The Stock tab in Shop Settings lists every item in the shop. Each row carries an infinite-stock toggle, a restock quantity, and a restock cadence.

Two kinds of row are held back from the shelf. An item of a type the system does not trade is marked Not Stock, and an item the shopkeeper has equipped is marked Equipped while the shop’s Exclude Equipped Gear toggle is on. Both keep the restock values you entered.

The quantity field sets how much of an item comes back on a restock. It accepts a plain number or a roll formula. A restock sets the item to the rolled result rather than adding to it. Leaving the quantity blank means the item never restocks. Saving a quantity that is not a valid number or formula still saves the shop, but flags that field and warns you.

Marking an item infinite means it never runs out, and purchases do not consume it. Infinite items are skipped by restocking entirely.

Each item’s cadence is a number paired with a unit of world time. An item with a cadence refills once that much time has passed since its last restock. Cadence lengths follow the world’s active calendar. Leaving the cadence blank makes the item refill every time the shop opens.

The Stock tab also accepts Roll Tables. To stock the shop from a table’s results, drag a Roll Table onto the tab. Each table row sets how many items to roll and its own cadence. Only Item results stock the shop; a row that draws a journal entry, an actor, or a deleted reference is skipped and reported. A row that draws plain text instead of a document is skipped without being reported. A mode setting decides whether a table draw adds to the current stock or first clears the goods that earlier table draws brought in. The mode applies only to table rows; item rows always restock to what their formula rolls.

A restock runs when its scheduled world time passes. Any module that advances world time can trigger it, including calendar modules and the core clock. Peddler also checks the schedule whenever the shop opens.

With Calendaria active, a shop can check its cadences on day change instead of on every time advance. The check runs once as time crosses onto a new day. A row still waits for its own interval to pass, and rows with no cadence keep refilling when the shop opens.

A day-change shop can be limited to market days. Pick one or more calendar note categories, and the shop checks its cadences only on days carrying a note in one of those categories. A row that comes due before the next market day refills on that market day. Picking no category treats every day as a market day.

Timed restocks only need the world clock to move. Blank-cadence rows wait for the shop to open instead. The Stock tab includes a button to force a restock immediately; if no item or table has a restock value set, it warns you there is nothing to restock instead.

When a restock lands, a toast summarizes how many items were added and how many were refilled. A second toast warns when a table result cannot be resolved to an item, which happens when the drawn document was deleted or its compendium is unavailable. Those results are skipped and the rest of the restock still runs. The same event fires a hook for macros and other modules; the hook is documented on API and Hooks.

Restocking runs on the primary GM’s client, the one 3DS Atlas designates. In a world with several GMs logged in, only that client restocks, so shelves never refill twice. Players never see the restock happen, only the refreshed shelves.