# Glows A **Glow** wraps the player in a colored glowing outline — the same effect as a Glowing potion (visible through walls), but in a color you choose. It's a full cosmetic type: owned in the vault, equipped from `/cosmetics`, and it stays on until unequipped. ## The Legacy-Color Limit Minecraft renders entity glow using **team colors**, and teams only accept the **16 legacy colors** — the dye/wool ones. **Hex codes do not work here.** The `value:` field must be the exact name of a Bukkit `ChatColor`: ``` BLACK, DARK_BLUE, DARK_GREEN, DARK_AQUA, DARK_RED, DARK_PURPLE, GOLD, GRAY, DARK_GRAY, BLUE, GREEN, AQUA, RED, LIGHT_PURPLE, YELLOW, WHITE ``` ## Configuration (`glows.yml`) ```yaml glows: aqua: display: "&bAqua Glow" # shown in menus value: "AQUA" # EXACT ChatColor name — never a hex icon: PRISMARINE_CRYSTALS permission: celestial.cosmetics.glow.aqua red: display: "&cRed Glow" value: "RED" icon: REDSTONE permission: celestial.cosmetics.glow.red ``` The default file ships one entry for each of the 16 legacy colors. | Field | Required | Meaning | |---|---|---| | `display` | yes | Name shown in menus | | `value` | yes | The legacy `ChatColor` name used for the outline | | `icon` | yes | Menu icon material (or `PLAYER_HEAD` + `texture:`) | | `permission` | no | Defaults to `celestial.cosmetics.glow.` | ## Equipping - **Players:** open `/cosmetics`, pick the Glow category, click a glow you own. - **Admins:** `/cosmetics set glow ` force-equips it; `/cosmetics clear glow` removes it. Equipping applies the outline immediately; clearing removes it immediately. The glow re-applies automatically on rejoin while equipped. ## Placeholder ``` %celestial_glow% -> the display name of the equipped glow (empty if none) ``` ## Glow + TAB (PacketEvents) The glow color comes from the player's **scoreboard team**, and nametag plugins like **TAB** manage that same team — a player can only be in one team, so without help TAB overrides the color and the glow turns **white**. **Fix:** install **[PacketEvents](https://modrinth.com/plugin/packetevents)**. When present, the plugin intercepts outgoing team packets and forces the glow color even while TAB runs (console shows `Glow: PacketEvents hook active`) — **without ever touching who owns the team**. TAB keeps full control of the player's actual team membership (sorting, collision, nametag, rank badge/prefix all keep working exactly as TAB set them up); we only repaint the color field on the packets TAB itself sends. Without PacketEvents, the plugin falls back to putting the player in its own team directly — this still colors the glow, but on a server running TAB it costs the player their TAB-managed badge/prefix while glowing, since a player can only be in one team. Glow color changes apply **instantly** to every already-connected viewer — no need to reconnect to see a new color. > Because glow and nametag share the team color, coloring the glow can also color the player's nametag — that's a Minecraft limitation, not a bug. ## Notes - **You can't see your own glow** in first person — check from another player or third person (F5). - Glows can have a per-rank default (see [Rank System](Rank-System)) so members always have one even before unlocking their own. --- Next: [Join Messages](Join-Messages)