Skip to main content

Features

Detailed documentation of the Worth Addon's feature set.


Live Worth Calculationโ€‹

The addon never uses a static price list - worth is calculated by aggregating every currently active, undelivered order listing from the Sigma Orders & Auctions API.

  • Cancelled and completed orders are excluded
  • Order items with no remaining quantity to deliver are excluded (they no longer represent demand)
  • Listings are grouped per item variant - material, enchantments, and custom-item id together form the matching key, so an enchanted diamond sword and a plain one are tracked separately
  • For each variant, the addon tracks listing count, best price, worst price, and a cached average price

This aggregation runs on a background timer (cache.refresh-interval-seconds, default 10s) rather than per-tooltip, so the live overlay is always a cheap, synchronous lookup against the last computed snapshot.


Hover Tooltip Overlayโ€‹

The addon's only player-facing feature (besides the toggle command) is a live lore line injected into matching items' tooltips.

  • Requires ProtocolLib - without it, the addon still enables but skips this feature entirely
  • Operates purely at the packet level (WINDOW_ITEMS, SET_SLOT) - the real ItemStack data held by the player is never modified
  • Injected lines are tagged with an invisible marker so they can be reliably identified and stripped/replaced on the next packet, regardless of color codes or configured text
  • Disabled entirely for creative-mode players, since the creative inventory's client-authoritative packets can otherwise snowball into duplicated/corrupted lore

Shulker Box Contentsโ€‹

A shulker box itself is never matched against a listing - there's no such thing as "worth" for the box. Instead, the addon reads the box's stored contents directly from its block-state metadata (no need to open it) and shows the combined worth of whatever matching items are packed inside, using the separate shulker-contents-lines template.

Container Restrictionโ€‹

Many plugins build custom shop/menu GUIs on top of a vanilla "Chest"-type inventory. To avoid the worth overlay leaking into those GUIs, the addon checks the inventory holder, not just the inventory type - a real chest, barrel, furnace, etc. has a world-backed holder, while a synthetic plugin GUI does not. Only inventory types in lore.allowed-container-types are eligible when lore.restrict-to-real-containers is enabled.

Inventory Refreshโ€‹

Modern clients predict the result of most inventory clicks and drags themselves, and the server only sends a new item packet when the client's prediction is wrong. Since the overlay depends on intercepting outgoing item packets, the addon listens for InventoryClickEvent/InventoryDragEvent and forces a fresh packet one tick later, so the worth line appears immediately instead of waiting for an unrelated packet. This is debounced per player to avoid flooding packets during rapid clicking.


Per-Player Toggleโ€‹

Each player can opt in or out of seeing the overlay at all via /worth toggle.

  • Preference is stored in toggles.yml, keyed by player UUID, and persists across restarts
  • Players who have never toggled fall back to toggle.default-enabled in config.yml
  • Toggling forces an immediate inventory refresh so the change is visible without needing to move items

PlaceholderAPI Integrationโ€‹

If PlaceholderAPI is installed, the addon registers the worthaddon expansion:

PlaceholderOutput
%worthaddon_status%Enabled or Disabled
%worthaddon_enabled%true or false

Both reflect the requesting player's own toggle state - useful for menus or scoreboards that want to show a player whether their overlay is currently active.


Resilienceโ€‹

  • Reload recovery - if Sigma Orders & Auctions is reloaded, the Worth Addon listens for its PluginEnableEvent, re-acquires a fresh API reference, and restarts the worth cache automatically
  • Manifest-based version policy - like the other Sigma Orders addons, the plugin checks a remote manifest on startup for compatibility/licensing policy and disables itself if blocked
  • Defensive lore stripping - any incoming item data carrying worth-lore (e.g. from a creative-mode slot write) is stripped before being treated as real item data, preventing the cosmetic overlay from ever being persisted into an item's actual lore

See Alsoโ€‹