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 sdkm = 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:
| Confidence | Meaning | Requirement |
|---|---|---|
confirmed | Emitted bytes verified in-game | usable directly |
experimental | Plausible, not fully verified | needs Mod(..., experimental=True) |
guess | Schema partially understood | needs 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
Related
- Tags — group content across mods.
- Mods ship data, not code — why this is declarative.
- Authoring mods — the full how-to.