Skip to main content
unofficial.voyage wiki
Builder

AI

Item Generation/Usage

Provides context to generateItemDefinitions (newly created `items`) and generateItemUpdates (inventory changes). Not included for `generateActionInfo` or `generateStory`. The JSON key is `ItemGenerationAndUsage` — non-standard casing.

Editor
AI Tasks → Item Generation/Usage
Edit via
Graphical form (labeled textareas)
{
  "aiInstructions": {
    "ItemGenerationAndUsage": {
      "custom": "## Inventory changes\nADD: item physically enters possession — picked up, looted, gifted, crafted, or found.\nREMOVE: item physically leaves — consumed, handed over, destroyed, stolen, or lost.\n\nNEVER update for items merely seen, discussed, offered, displayed, inspected, or nearby. Awareness is not possession.\n\n## Transaction rule\nA purchase requires two conditions in sequence: (1) a price is stated, AND (2) the player explicitly pays or agrees AFTER hearing the price. Do not add a purchased item until both conditions occur in the same scene.\n\n## Loot tiers\nCommon enemies: consumables and coin only. Named enemies: one item appropriate to their role. Elite or boss: one item worth keeping long-term, plus coin."
    }
  }
}

Fields

custom

The default key, under the non-standard-cased ItemGenerationAndUsage. As with every AI task, the key name is yours and you can add further keys; all non-empty values are concatenated in key order (see Story Instructions for the processing rule). This block feeds both internal consumers, generateItemDefinitions and generateItemUpdates.

Authoring pattern

Cover in custom:

  • Inventory trigger rules and the transaction gate are the most critical content in this key. Without them the engine adds items when the player browses a shop or hears an item described, and completes purchases before the player agrees.
  • Loot rarity guidance and how drops should scale with enemy tier.
  • Item description framing: what level of detail new item definitions should have.
  • World economy calibration: relative cost of goods, how scarce certain item types are.
  • How newly materialized items should be framed (flavour first, mechanics second).

Combat rules belong in generateActionInfo. Item-use rules that must affect combat resolution (e.g. "this potion heals 20 HP mid-combat") belong in generateActionInfo, not here.

Size limits

LimitValue
Each string leaf under a task (`aiInstructions.<task>.<key>`)5000
Per task (`aiInstructions.<task>` total, sum of instruction chars)20000

Related

  • Itemsthe item records this task shapes
  • Action Infoput item-use combat rules here, not in this task