
Description
RarityJS is a Forge mod for Minecraft 1.20.1 made for modpack creators who want full control over item rarities through KubeJS.
Create your own rarity levels, assign them to individual items or entire groups of content, and optionally give them enhanced tooltip visuals with Obscure Tooltips.
Features
- Create custom rarities with KubeJS.
- Built-in Common, Uncommon, Rare, Unique, Legendary, Epic, Mythic, and God rarity IDs.
- Assign rarities by item ID, item tag, NBT, or mod ID.
- Set a global default rarity for otherwise-unmatched items.
- Replace Minecraft's built-in Common/Uncommon/Rare/Epic rarities without overriding explicit RarityJS assignments.
- In-game Rarity Editor for Creative players — press F7, right-click an item, and choose its rarity.
- Export editor changes directly to
kubejs/startup_scripts/with/rarityjs export <filename>. - Optional built-in Rarity Tooltips resource pack for Obscure Tooltips, registered through Fragmentum.
- JEI-aware editor integration.
Example
RarityJSEvents.register(event => {
event.addRarity('example.ancient', 'dark_aqua')
event.setRarity('minecraft:nether_star', 'example.ancient')
event.setRarityByTag('forge:ingots/netherite', 'raritymod.legendary')
event.setRarityByMod('examplemod', 'raritymod.unique')
event.replaceRarityBy('minecraft:rare', 'raritymod.legendary')
})
Put your scripts in:
kubejs/startup_scripts/
Required Dependencies
- Minecraft Forge 47+
- KubeJS 2001.6.5-build.26+
- ApocalypseLib 1.2.0+
Optional Integrations
- Fragmentum 5.0.0+
- Obscure Tooltips 3.10.1+
- JEI



