promotional bannermobile promotional banner

Chest DNA

Shows where the items in the inventory came from.
Back to Files

ChestDNA 1.01q-1.21.1 NeoForge

File namechestdna-1.0.0-mc1.21.1-neoforge.jar
Uploader
xsorasxsoras
Uploaded
Aug 12, 2026
Downloads
7
Size
71.6 KB
Mod Loaders
NeoForge
File ID
8634419
Type
R
Release
Supported game versions
  • 1.21.1

Curse Maven Snippet

NeoForge

implementation "curse.maven:cdna-1649754:8634419"

Learn more about Curse Maven

What's new

Chest DNA 1.0.0

First release. Chest DNA records where every item came from and shows it in the item's tooltip.

Downloads

File Minecraft Loader
chestdna-1.0.0-mc26.1-26.2-fabric.jar 26.1, 26.1.1, 26.1.2, 26.2 Fabric
chestdna-1.0.0-mc1.21.8-fabric.jar 1.21.8 Fabric
chestdna-1.0.0-mc1.21.8-neoforge.jar 1.21.8 NeoForge 21.8
chestdna-1.0.0-mc1.21.1-fabric.jar 1.21.1 Fabric
chestdna-1.0.0-mc1.21.1-neoforge.jar 1.21.1 NeoForge 21.1

Every build needs Fabric API on Fabric. Install on both the client and the server: the server records origins, the client draws them. A client with Chest DNA can still join a server without it, there is simply nothing to show.

The version ranges are deliberately narrow. Each jar declares only the Minecraft versions it was actually tested on, so a jar cannot load on a version whose tooltip internals it does not match.

What it does

  • Attaches an origin to every item the moment it is created: looted from a chest, dropped by a mob, bought from a villager, fished up, crafted, smelted, mined or taken from the creative menu.
  • The origin holds the source type, the loot table or entity behind it, the biome, the coordinates, the dimension, the game time and the name of the player who obtained it. It is a real data component, so it survives saves, shulker boxes and servers.
  • 36 built-in origin types, mapped from vanilla loot table paths, each with a name, a pixel glyph and a rarity tier.
  • The first source to touch an item wins; history is never overwritten.

The tooltip card

  • Pixel-art card drawn entirely from single-pixel rectangles, no textures, so it stays crisp at every GUI scale.
  • Rarity-coloured frame with corner studs, an animated DNA helix down the left edge, and shimmer pixels travelling around the border of legendary and mythic origins.
  • Compact by default: source name with the tier stamped underneath and a drawn chevron hinting at more. Shift expands it with biome, dimension, coordinates and finder.
  • Loot table ids appear only with advanced tooltips (F3+H), like vanilla.
  • Sizes itself against the screen: long values wrap, the card is capped in width and height, and it reports its real height so the tooltip stays on screen.
  • tooltipStyle can be set to lines for plain vanilla text, or off.

Compatibility

  • Tagged and untagged stacks still merge exactly like vanilla; the origin component is excluded from stack comparison. Turn this off with ignoreOriginForStacking if you want sticky stacks.
  • The structure lookup is skipped for mined blocks, so breaking blocks costs nothing measurable.
  • Works alongside other loot mods: the stamp is applied by a loot function attached to each table rather than by replacing loot generation.

Commands and config

  • /chestdna inspect prints the full DNA of the held item, /chestdna clear wipes it.
  • config/chestdna.json has a switch per source group, switches for how much detail is recorded (position, biome, structure, player name), and the tooltip options.

For mod authors

The whole system is an open API in xsoras.chestdna.api, and it does not depend on a loader.

  • Register your own origin types with their own glyph, colour and tier.
  • Claim your own loot tables with a prioritised classifier, or override the vanilla mapping.
  • Rewrite or veto a stamp before it is written, or observe stamps as they happen.
  • Add lines to the card, or replace its theme entirely.
  • Fabric builds also expose a chestdna entrypoint that runs after the built-ins are registered.

Notes per version

The mod is the same on every version; only the plumbing differs, because the APIs it hooks were rewritten between these releases.

  • 26.1 to 26.2 - loot is stamped through Fabric's drop event, and the card renders on the 26.x render state pipeline.
  • 1.21.8 - loot is stamped by a chestdna:stamp_origin loot function attached to every table, which is the one mechanism that works on both loaders; the card renders through GuiGraphics.
  • 1.21.1 - same loot function; the tooltip component is not told the width of the tooltip on this version, so the card is handed it explicitly.
  • NeoForge builds register through deferred registers and rebuild loot tables on load, since NeoForge has no loot table builder event and freezes its registries before mods are constructed.

Known gaps

  • 1.20.1, 1.16.5 and 1.12.2 are not out yet. They need NBT storage instead of data components and an older rendering path, so they are separate ports rather than rebuilds.
  • The NeoForge builds have no plain-text tooltip fallback yet (tooltipStyle: lines) and do not scan for add-on entrypoints; both are Fabric only for now.

This mod has no related projects