Items

misc

The miscellaneous-items master table — every non-weapon non-armor item lives here. Potions, scrolls, tomes, the Horadric Cube, gold, gems, runes, charms, jewels, quest items, keys, ammunition, herbs. 170 rows; the canonical home for the inventory-footprint, stackability, and use-effect columns of every consumable and utility item.

The 170-row catch-all for everything that isn't a weapon (weapons.txt) or armor (armor.txt). If a question is about a potion, a scroll, the cube, a charm, a gem, a rune, a jewel, gold, ammunition, or a quest item — the answer terminates here.

172 columns total — most of them shared with the equipment tables (inventory dimensions, level requirements, vendor min/max stocks, tooltip rendering, drop conditions, gambling), with a misc-only subset for consumable behaviors (auto-belt placement, multi-buy purchase modal, spell triggers on use, state applications, stat modifications during effect duration).

What's in the table

The 35 distinct itypes covered:

CategoryitypesExamples
Jewelryring, amul, jewlRing, Amulet, Jewel (the cube-craft jewel base — class-locked craft inputs)
Charmsscha, mcha, lcha, cschSmall / "Large" / "Grand" Charm; community-name offset is real (data-file mcha=community "LC", lcha=community "GC"). csch is the canonical-charm marker.
Tomes / scrollsbook, scroTome of Town Portal, Tome of Identify; Scroll of TP, Scroll of Identify
Potionshpot, mpot, rpot, apot, spot, wpot, elixHealing / Mana / Rejuv / Antidote / Stamina / Thawing / Elixirs
Gemsgema, gemd, geme, gemr, gems, gemt, gemzAmethyst, Diamond, Emerald, Ruby, Sapphire, Topaz, Skull (per-color gem tier)
RunesruneAll 33 runes
Ammunitionbowq, xboqBow and Crossbow quivers (arrows / bolts)
Questques, key, herb, body, play, torcCube, Khalim's items, keys, Wirt's Leg, Hellfire Torch, etc.
CurrencygoldGold (stackable to 5000 per inventory stack)

The most-asked codes

These are the inventory-footprint and stackability values the audit's Section 7 reasoning depends on:

CodeItemFootprintStackableNotes
boxHoradric Cube2×2 (4 cells)Carries hasinv=1 — has its own internal inventory grid.
gldGold1×1yes (max 5000)Inventory cap; the Stash holds more.
tbkTome of Town Portal1×2 (2 cells)yes (max 20 scrolls per tome)The TP tome.
ibkTome of Identify1×2 (2 cells)yes (max 20 scrolls per tome)The ID tome.
tscScroll of Town Portal1×1Single use.
iscScroll of Identify1×1Single use.
cm1Small Charm (community "SC")1×1The most stat-stackable charm.
cm2Large Charm (community "LC")1×2The community-LC = data-file mcha.
cm3Grand Charm (community "GC")1×3The community-GC = data-file lcha; carries skiller suffixes.
rinRing1×1Base ring item.
amuAmulet1×1Base amulet item.
hp1hp5Minor → Super Healing Potion1×1
mp1mp5Minor → Super Mana Potion1×1
rvsRejuvenation Potion1×1Restores life and mana.
rvlFull Rejuvenation Potion1×1

This table answers the Horadric Cube's 2×2 footprint, the tome's 1×2 footprint, the standard-charm dimensions, and the gold-stack cap — load-bearing for any inventory-budget reasoning.

Locbones coverage

locbones D2R Data Guide documents the misc-only column subset (the columns NOT shared with armor.txt). The shared columns inherit their semantics from armor.

Misc-only columns

These are the columns the engine reads only on this table — they don't appear in armor.txt or weapons.txt.

Auto-placement and purchase

ColumnMeaning
autobeltIf 1, picking the item up auto-places it into an open belt slot (potions).
multibuyIf 1, vendor purchase opens the multi-buy modal (buy a stack rather than one-at-a-time — applies to potions, scrolls).

Cube-recipe wiring

ColumnMeaning
BetterGemLinks to another item's code — the cube-upgrade target. Used by the chipped→flawed→normal→flawless→perfect gem progression and similar tier-up recipes.

Use-effect wiring (for consumable items)

ColumnMeaning
pSpellThe Player Spell enum value triggered when the item is used. Drives the use-effect (potion drink, scroll cast).
state, cstate1, cstate2States.txt entries applied when the item is used. Layered states (e.g. potion buff + visual overlay).
lenFrame length of the applied state (1/25-second engine frames; 25 = 1 second).
stat1, stat2, stat3Stats modified during the effect (itemstatcost.Stat references).
calc1, calc2, calc3Calc formulas for the corresponding stat values.
spelliconIcon asset for the use-effect display.

Tooltip rendering for use effects

ColumnMeaning
spelldesc0–4 numeric code controlling the spell-description format.
spelldescstr, spelldescstr2Primary / secondary string-table keys for the spell description text.
spelldesccalcNumeric value rendered in the description.
spelldesccolor0–12 color code for the spell-description text (0=white, 1=red, 2=green, etc., per the locbones color table).

Shared columns (defer to armor)

The 150+ remaining columns are shared with armor.txt: name, version, level, levelreq, rarity, spawnable, code, invwidth, invheight, hasinv, gemsockets, cost, gamble cost, the per-vendor *Min / *Max / *MagicMin / *MagicMax / *MagicLvl blocks for all 17 NPC vendors (Charsi through Jamella), the graphics columns, Transmogrify recipe metadata, and so on. See armor for column semantics on these.

Why some columns are blank for most rows

A potion row uses a small fraction of the columns (autobelt=1, type=hpot, the use-effect block, the vendor blocks). A ring row uses almost none of those. The schema's wide-but-sparse shape comes from the table being a true catch-all — every row uses only the columns relevant to its category, leaving everything else blank.

Cross-references

  • armor — shares most of this table's columns. Refer there for column semantics not in the misc-only section above.
  • itemtypestype and type2 resolve through this table.
  • cubemain — recipes reference misc-side codes (tsc, box, tbk, gem codes, rune codes via gems.txt).
  • belts — auto-fill defaults reference misc-side potion and scroll codes (hpot, mpot, rpot, scro, tsc).
  • itemstatcoststat1/stat2/stat3 resolve here.