Skip to content

Content kinds (registries)

A content kind is a typed builder that clones a vanilla base and emits a new definition. This is RSMM’s analog of a Minecraft registry: you don’t hand-author engine bytes, you declare “a new item like Knife and the SDK materializes it.

import rsmm.sdk as sdk
m = sdk.Mod(id="RubyMod", name="Ruby Mod")
m.item("RubyDagger", base="Knife", name="Ruby Dagger")
m.enemy("FastRat", base="Rat", name="Fast Rat")
m.commit()

Available kinds include item, enemy, boss, hero, map, plus the asset kinds texture and model, and the grouping kind tag. The full, current list and signatures are in the generated SDK reference.

Confidence — the RSMM twist

Minecraft registries always work; RSMM kinds describe a reverse-engineered byte format, so each kind carries a confidence:

ConfidenceMeaningRequirement
confirmedEmitted bytes verified in-gameusable directly
experimentalPlausible, not fully verifiedneeds Mod(..., experimental=True)
guessSchema partially understoodneeds experimental=True; may crash

rsmm lint enforces the opt-in gate, so you can’t accidentally ship a guess kind without acknowledging the risk.

Common problems