Items

Edit tabs/items.json.

Required Fields

Field Requirement
name Must match object key exactly
category Must be in itemSettings.itemCategories (armor, consumable, etc.)
description Brief flavor text describing the item’s appearance and nature
bonuses Array of bonuses - use [] if item is not equipable

Conditional Fields

Field When to Include
slot Required for equippable items
mediaContent Required for readable items - the text content to display
imageUrl Optional URL for the item’s image
imageFocusX, imageFocusY, imageZoom Optional crop/focus adjustments for the item’s image

Never Include

Omit these fields (calculated at runtime):

  • uuid, quantity, equippedSlot

Item Types

Consumables

  • category: "Consumable", no slot
  • Always bonuses: []

Currency

  • category: "Currency", no slot
  • Must match itemSettings.currencyName for stacking
  • Always bonuses: []

Readable

  • category: "Readable", no slot
  • Add "Readable" to itemSettings.itemCategories in tabs/settings.json; like every category, it must be listed there
  • Include mediaContent with the text to display
  • Always bonuses: []

bonuses Format

Array of stat modifications applied when item is equipped.

{ type: "stat", variable: "damage", value: 5 }     // +50% damage
{ type: "stat", variable: "armor", value: 100 }    // 10% incoming damage reduction
{ type: "attribute", variable: "strength", value: 2 }  // +2 to attribute
{ type: "skill", variable: "stealth", value: 1 }   // +1 to skill
{ type: "resource", variable: "health", value: 10 }  // +10 max health

Format: { type: "stat" | "attribute" | "skill" | "resource", variable: string, value: number }

For type: "stat", only damage and armor are valid variable values. Armor reduces incoming damage by value / 1000 (capped at 90%).

Schema

interface ItemDefinition {
  name: string
  category: string
  description: string
  bonuses: ItemBonus[]
  slot?: string
  mediaContent?: string
  imageUrl?: string
  imageFocusX?: number
  imageFocusY?: number
  imageZoom?: number
}

interface ItemBonus {
  type: 'resource' | 'stat' | 'attribute' | 'skill'
  variable: string
  value: number
}

Reference

For detailed documentation, see items-reference.md.


This site uses Just the Docs, a documentation theme for Jekyll.