Accessories and Curios
| Accessories and Curios |
|---|
The Accessories and Curios pair of mods adds accessory equipment slots to the player, separate from the armor, hand and hotbar slots. The two mods are the Accessories framework (namespace accessories, version 1.1.0-beta.53) and the Curios API (namespace curios, version 9.5.1). Each provides a slot system that other mods use to place wearable items on the body, such as rings, necklaces, belts, charms and backpacks. Neither mod adds items, blocks, mobs, biomes or structures of its own, so a player meets them through the content of other mods.
Several pack mods depend on one or both APIs for their wearable content. Charm of Undying requires Curios, Immersive Lanterns uses the Accessories belt slot, and Traveler's Backpack, Iron's Spells 'n Spellbooks and Tide add items to slots from one or both APIs.
Overview
Accessories and Curios solve the same problem in two different ways. Accessories is a data-driven slot framework with its own screen, a full set of default body slots for players and armor stands, and per-entity slot bindings. Curios is a shared slot-type registry with a side panel on the inventory screen, and it ships no slots by default. Other mods add slot types through datapacks or the Curios API, and the pack configures no extra Curios slots.
The two APIs can run together. When Curios is loaded, the Accessories mod skips its own decoding of Curios inventory data that it has already encoded, which prevents duplicate entries.
Content
The mods have no content of their own. The content they support is listed below by category.
- Items: The Accessories mod registers no items. Vanilla armor is auto-registered as accessory-eligible, so a helmet, chestplate, pair of leggings or boots can be placed in the matching accessory armor slot. Items from other mods that use the slots include Charm of Undying (a totem worn in the charm slot), Traveler's Backpack and Backpacks (worn in the back slot), Rings, Amulets and Charms (necklace, ring and spellbook slots), the Butchery Armor Stray Necklace (necklace tag), Fishing Gadgets from Tide (informational slot), and Immersive Lanterns (lanterns in the belt slot).
- Overview: The Accessory Items page lists the slot-based items in the pack.
- Mobs: Neither mod adds mobs. Accessories binds an
animal_bodyslot to horses and wolves, and it whitelists armor stands, horses, donkeys, mules, llamas and pigs for modification. Only players and armor stands get the full default slot set. - Biomes and structures: Neither mod adds biomes or structures, and neither ships loot tables or villager trades.
- Recipes and enchantments: Neither mod adds recipes, enchantments, effects or advancements beyond the trigger types used by the equip and unequip criteria.
Mechanics
Slots
Accessories defines 12 slot types for players and armor stands: hat, face, necklace, cape, back, hand, ring, wrist, belt, anklet, shoes and charm. Hand and ring hold two items each, and every other slot holds one. The slot types sit in six groups (head, chest, arm, leg, feet and misc) for the group filter tabs. Armor slot types for head, chest, legs and feet are strict, with one item each.
Curios defines 10 slot types: curio (the generic fallback), head, necklace, back, body, bracelet, hands, ring, belt and charm. None has a size set, so none holds an item until a mod or command adds it. The Curios /curios command can add, remove, lock, unlock and drop slot contents.
Equipping
An item can enter a slot only if it passes the slot's validators and the item's own check. Validators are normally item tags such as curios:ring or accessories:any.
- Accessories: With the default
equipControlvalue ofMUST_NOT_CROUCH, right-clicking an eligible item without sneaking equips it. Armor slots do not allow equip-from-use. Shift-right-clicking an armor stand equips or swaps an item on it. - Curios: Right-clicking a curio item with a free active slot equips it and cancels the normal use. If no slot is free, the item swaps with the first occupied slot that accepts it.
Equipping plays the item's equip sound and fires a game event. Changes to the slot contents also update the attribute modifiers the item grants.
Ticking and attributes
Each living entity with slots runs the tick logic for every equipped item on every tick. Items in inactive Curios slots do nothing: they do not tick, grant attributes or receive mending. Accessories grants no attribute bonuses from its own armor accessories, so vanilla armor values are unchanged by the mod.
Death and drops
Each equipped item has a drop rule that decides whether it is kept, dropped or destroyed on death. The rule comes from the item, then from the slot type or event override.
- Accessories: The default rule drops the item unless
keepInventoryor theaccessories:keepAccessoryInventorygamerule is on. Items with theprevent_equipment_dropenchantment effect are destroyed instead. - Curios: The
keepCuriossetting decides whether equipped curios are kept. Its values are ON, DEFAULT (followkeepInventory) and OFF. Items with theprevent_equipment_dropenchantment effect are not dropped.
See Death and Respawning for the vanilla death rules that these settings extend.
Mending and enchantments
Player XP pickup repairs items in Curios slots before it repairs other items. Enchantments on equipped accessories count toward the levels used by the enchantment effect checks, so an enchantment on a worn item works as if the item were in an armor slot.
Keybinds
Accessories has an open-screen key (H, in the "Accessories" category), but because the pack sets the screen type to NONE (see below) its slots are reached through buttons on the vanilla inventory screen instead. Curios opens its inventory panel with G, in the "Curios" category. See Controls and Keybinds for the full list.
Cosmetic slots
Each slot has a cosmetic twin. A cosmetic item is a client-side visual override that shows on the player model and does not change server-side equipment or attributes. Players can hide cosmetic items with the showCosmeticAccessories client option, which is on by default.
Changes to vanilla
Both mods change base-game behaviour in ways the player will notice.
- Equipment slots: Accessories adds an
ACCESSORIESslot to the vanilla equipment enum. It is used internally for enchantment effects and item breakage. - Inventory checks: The player's inventory counts equipped accessories and Curios items when
/clearcounts items, whencontainschecks for an item, and when the player drops everything on death. Recipe and trade checks that ask whether a player has an item see worn items too. - Fortune and Looting: Curio items with a Fortune level add to the level used by the Fortune enchantment for block drops and block XP, using the wearer's worn items. Curio items with a Looting level add to the Looting level for mob drops, using the attacker's worn items. Accessories applies its own Fortune and Looting adjustments through the same loot functions.
- Mob behaviour: Worn items can make piglins treat the wearer as wearing gold, stop endermen from angering when they look at the wearer, let the wearer walk on Powder Snow, and grant freeze immunity through the vanilla
freeze_immune_wearablestag. - Right-click: Accessories can cancel the vanilla use action for items it equips, and Curios does the same for curio items with a free slot.
- Client rendering: Accessories changes what the vanilla armor layer draws, replacing the armor a player model shows with a cosmetic item during rendering. Server logic is not affected.
- Pig and strider steering: Pigs and striders expose their steering through an item-based interface, so a steering item can be attached to them through the slots.
- NBT reading: Accessories changes how NBT list tags are read for every mod. A list of four integers is read as a UUID, and matching list tags are read as byte, int or long arrays.
In Fear Nightfall
Fear Nightfall keeps the default settings for both mods, with a few exceptions noted here.
- Accessories screen: The pack sets
selectedScreenTypetoNONE, so the accessory slots appear through the buttons on the vanilla inventory and creative screens instead of a separate screen. The pack also keeps the defaultequipControlsetting, so equip-from-use works without sneaking. - Curios slots: The Curios
slotslist is empty, so the pack adds no Curios slots of its own. Slots come only from the mods that add them, such as Rings, Amulets and Charms (necklace, ring and spellbook), Charm of Undying (charm, ring and necklace on players) and Traveler's Backpack (back). - Keep behaviour:
keepCuriosis set to DEFAULT, so curio items follow the server'skeepInventorygamerule. Theaccessories:keepAccessoryInventorygamerule is left at its default of false. - Corpse: The pack's testing with Corpse confirmed that accessory and Curios items are stored in the corpse with the rest of the death inventory. A ring in Curios and a lantern in the Accessories belt slot both appeared in the corpse, and nothing was left on the ground.
- Lanterns: Immersive Lanterns runs on the server only. It supplies the accessory tag that lets vanilla lanterns be worn in the belt slot, and clients can join without its client part.
- Totems: The Charm of Undying server settings keep the worn totem rendered on the player (
renderTotemis true), so a totem in the charm slot is visible to other players. A totem in the charm slot protects the wearer from death before a held totem is checked.