# Cosmetic Types CelestialCosmetics has **14 cosmetic categories** (plus [Sets](Sets), which bundle them). Each is defined in its own file and can be toggled on/off in `config.yml` under `categories-enabled`. | Type | `` id | What it does | Page | |---|---|---|---| | Tag | `tag` | Chat tag next to the name | this page | | Rebirth Color | `rebirth` | Styles a dynamic prestige/level value | this page | | Custom Stat 1/2/3 | `customstat1`/`2`/`3` | Same as Rebirth, but pointed at **any** placeholder you choose | this page | | Name Color | `namecolor` | Colors the player's name | this page | | Rank Effect | `rankcolor` | The color/effect applied to the rank background | [Rank System](Rank-System) | | Rank Background | `rankbg` | The plate image behind the rank | [Rank Backgrounds](Rank-Backgrounds) | | Chat Color | `chatcolor` | Colors the player's chat message | this page | | Emoji | `emoji` | A glyph shown after the tag | this page | | Glow | `glow` | A colored glowing outline | [Glows](Glows) | | Join Message | `joinmessage` | A custom styled join broadcast | [Join Messages](Join-Messages) | | Leave Message | `leavemessage` | A custom styled leave broadcast | [Leave Messages](Leave-Messages) | | Chat Emoji | `chatemoji` | `:shortcode:` glyphs typed inline in chat | [Chat Emojis](Chat-Emojis) | Every cosmetic is a real, **stackable, ownable** item — see [Vault & Trading](Vault-and-Trading). ## Tags Shown in chat next to the name via `%celestial_tag%`. ```yaml # tags.yml tags: dragon: display: "&#fc6c00Dragon" # shown in menus value: "&#fc0000&l[&#fc6c00&lDRAGON&#fc0000&l]" # shown in chat icon: DRAGON_HEAD permission: celestial.cosmetics.tag.dragon ``` ## Name Color Colors the player's name via `%celestial_namecolor%`. Falls back to `namecolor-default` in `config.yml`. ```yaml # namecolors.yml name-colors: gold: display: "&6Gold" value: "&6" icon: GOLD_INGOT permission: celestial.cosmetics.namecolor.gold ``` ## Chat Color Colors the player's whole message via `%celestial_chatcolor%`. Falls back to `chatcolor-default`. ```yaml # chatcolors.yml chat-colors: aqua: display: "&bAqua" value: "&b" icon: LIGHT_BLUE_DYE permission: celestial.cosmetics.chatcolor.aqua ``` ## Emoji A glyph shown right after the tag, via `%celestial_emoji%`. `value` can be any Unicode glyph (vanilla font symbols, or ItemsAdder glyphs). ```yaml # emojis.yml emojis: heart: display: "&cHeart" value: "❤" icon: RED_DYE permission: celestial.cosmetics.emoji.heart ``` ## Rank Effect & Rank Background These two power the layered rank display. The **effect** (`rankcolor`) is a color/shader code; the **background** (`rankbg`) is the plate image it tints. Full docs: **[The Rank System](Rank-System)** and **[Rank Backgrounds](Rank-Backgrounds)**. ## Glow / Join Message / Leave Message / Chat Emoji Each has its own page: **[Glows](Glows)**, **[Join Messages](Join-Messages)**, **[Leave Messages](Leave-Messages)**, **[Chat Emojis](Chat-Emojis)**. ## Rebirth Color Styles a **dynamic number** (by default an EdDungeons rebirth/prestige level, but the source placeholder is configurable). Disabled by default in the vanilla build (it needs an external level placeholder). ```yaml # rebirth.yml rebirth-styles: classic: display: "&6Classic" icon: BLAZE_POWDER permission: celestial.cosmetics.rebirth.classic prefix: "&6[&e" text: "R{value}" # {value} = the resolved source placeholder suffix: "&6]" gradient: ["#fcd700", "#6cfc00"] # optional per-character gradient over `text` ``` Set the source in `config.yml` (`rebirth-source-placeholder`). Exposed via `%celestial_rebirth%`. ## Custom Stat 1 / 2 / 3 Three extra slots that work **exactly like Rebirth Color** — same prefix/text/suffix/gradient/bold styling, same in-game creation wizard, same rank-default support — but each one is pointed at **whatever placeholder you configure**, independently. They ship completely empty on purpose: nothing shows up until you set a source placeholder for a slot. Use these when you have a **second (or third) progression stat** you want displayed alongside Rebirth — for example a rankup/prestige value from a different plugin. ```yaml # config.yml customstat1-enabled: true customstat1-source-placeholder: '%pinnaprison_leveling_balance_rankup%' customstat1-default-style: rankup_simple ``` ```yaml # cosmetics/customstat1.yml customstat1-styles: rankup_simple: display: '&bRankup' icon: EMERALD permission: celestial.cosmetics.customstat1.rankup_simple prefix: '&b[' text: '{value}' # {value} = the resolved source placeholder suffix: '&b]' ``` Exposed via `%celestial_customstat1%` (and `2`/`3`) — place it anywhere in your chat format, e.g. right after `%celestial_rebirth%`: ```yaml "%celestial_rebirth% %celestial_customstat1% %celestial_namecolor%{name} ..." ``` Each slot has its own `categories-enabled.customstatN`, `customstatN-enabled` (legacy-style toggle, same pattern as `rebirth-enabled`), `customstatN-source-placeholder`, and `customstatN-default-style`. Config file: `cosmetics/customstatN.yml`, same shape as `rebirth.yml`. > **Not unlimited.** These are 3 fixed slots, not a dynamic/unlimited system — the underlying storage keeps one equipped selection per cosmetic type, so a true "unlimited custom placeholders" system would need a deeper data-layer change. 3 slots comfortably covers a second and third progression stat with room to spare. ## Icons: Custom Model Data & Player Heads Every `icon:` accepts a vanilla `Material`, or `PLAYER_HEAD` + a `texture:` value (paste any base64 **Value** from minecraft-heads.com). `custom-model-data` is supported on menu buttons for resource-pack servers — see [GUI Customization](GUI-Customization). ## Descriptions Any cosmetic can override its lore with a `description:` list; otherwise the `messages.yml` template is used. --- Next: [The Rank System](Rank-System)