MINECRAFT 1.21.1 TOOLTIP / TEXT FORMATTING REFERENCE
======================================================

This reference covers Minecraft's legacy formatting codes (§) commonly
used for item names, tooltips, GUI text, messages, and other text.

IMPORTANT
---------
The formatting symbol is: §

In Java strings, you normally write it as:
"§aGreen Text"

You can also use ChatFormatting in Java instead of manually writing § codes.

------------------------------------------------------
1. COLORS
------------------------------------------------------

§0  BLACK
    Dark black text.

§1  DARK_BLUE
    Dark blue text.

§2  DARK_GREEN
    Dark green text.

§3  DARK_AQUA
    Dark cyan/aqua text.

§4  DARK_RED
    Dark red text.

§5  DARK_PURPLE
    Dark purple text.

§6  GOLD
    Gold/orange text.
    Useful for rare, legendary, or valuable items.

§7  GRAY
    Gray text.
    Good for descriptions and secondary information.

§8  DARK_GRAY
    Dark gray text.
    Good for subtle information.

§9  BLUE
    Blue text.

§a  GREEN
    Bright green text.
    Commonly used for positive effects, success, or upgrades.

§b  AQUA
    Bright aqua/cyan text.
    Useful for magic, mana, water, or special abilities.

§c  RED
    Bright red text.
    Useful for damage, danger, requirements, or negative effects.

§d  LIGHT_PURPLE
    Light purple/pink text.
    Useful for magic, mystical effects, or special abilities.

§e  YELLOW
    Yellow text.
    Useful for warnings, important information, or highlights.

§f  WHITE
    White text.
    Normal/default-looking text.

------------------------------------------------------
2. TEXT STYLES
------------------------------------------------------

§k  OBFUSCATED
    Random-looking characters.
    Useful for mystery or hidden text.

§l  BOLD
    Makes text bold.

§m  STRIKETHROUGH
    Draws a line through the text.

§n  UNDERLINE
    Underlines the text.

§o  ITALIC
    Makes text italic.

§r  RESET
    Resets all formatting back to normal.

IMPORTANT:
A formatting code affects the text that follows it until another
formatting code changes or resets it.

Example:
"§cDanger §7Normal text"

The word "Danger" is red and "Normal text" is gray.

------------------------------------------------------
3. COMMON TOOLTIP COMBINATIONS
------------------------------------------------------

§6§l
    Gold + Bold
    Great for legendary item names.

§5§l
    Dark purple + Bold
    Great for epic/magical items.

§c§l
    Red + Bold
    Great for dangerous effects or requirements.

§a§l
    Green + Bold
    Great for positive effects.

§b§l
    Aqua + Bold
    Great for magical abilities.

§e§l
    Yellow + Bold
    Great for warnings or important abilities.

§7§o
    Gray + Italic
    Great for item descriptions.

§8§o
    Dark gray + Italic
    Great for flavor text.

§c§lWARNING
    Red + Bold warning.

§a§l+10% Speed
    Green + Bold positive stat.

------------------------------------------------------
4. EXAMPLE ITEM TOOLTIP
------------------------------------------------------

Example:

§6§lRuby Sword
§7A weapon forged from ruby.
§r
§c+10 Attack Damage
§a+15% Attack Speed
§bFire Resistance
§5§lRuby Power
§7Grants increased strength in combat.

The §r resets formatting before the next section.

------------------------------------------------------
5. EXAMPLE JAVA STRINGS
------------------------------------------------------

Basic colored text:

Component.literal("§cDanger!");

Green text:

Component.literal("§aSuccessfully upgraded!");

Gold bold text:

Component.literal("§6§lLegendary Sword");

Gray italic description:

Component.literal("§7§oForged in ancient fire.");

Multiple colors:

Component.literal("§cRed §aGreen §bAqua §6Gold");

Reset:

Component.literal("§cRed §rNormal");

------------------------------------------------------
6. RECOMMENDED RPG TOOLTIP COLORS
------------------------------------------------------

ITEM RARITY
-----------

Common:
§f White

Uncommon:
§a Green

Rare:
§9 Blue

Epic:
§5 Dark Purple

Legendary:
§6 Gold

Mythic:
§d Light Purple

Ancient / Divine:
§e Yellow or §b Aqua

------------------------------------------------------
7. RECOMMENDED STAT COLORS
------------------------------------------------------

Positive stat:
§a Green

Negative stat:
§c Red

Neutral stat:
§7 Gray

Magic:
§b Aqua

Mana:
§9 Blue or §b Aqua

Health:
§c Red

Defense:
§7 Gray or §a Green

Strength:
§c Red

Speed:
§e Yellow

Luck:
§d Light Purple

Fire:
§6 Gold or §c Red

Ice:
§b Aqua

Poison:
§2 Dark Green

Darkness:
§8 Dark Gray

Light:
§e Yellow

------------------------------------------------------
8. RECOMMENDED TOOLTIP STRUCTURE
------------------------------------------------------

A good RPG item tooltip can be structured like this:

§6§lRuby Sword

§7A powerful weapon forged from
§7pure ruby.

§c+10 Attack Damage
§e+15% Attack Speed

§5§lRuby Power
§7Increases your power while wearing
§7a complete Ruby armor set.

§8Rare weapon

This makes the important information easy to find.

------------------------------------------------------
9. CHATFORMATTING INSTEAD OF § CODES
------------------------------------------------------

NeoForge/Minecraft Java code can also use ChatFormatting.

Example:

Component.literal("Ruby Sword")
    .withStyle(ChatFormatting.GOLD, ChatFormatting.BOLD);

Other examples:

ChatFormatting.RED
ChatFormatting.GREEN
ChatFormatting.BLUE
ChatFormatting.YELLOW
ChatFormatting.GOLD
ChatFormatting.AQUA
ChatFormatting.LIGHT_PURPLE
ChatFormatting.WHITE
ChatFormatting.GRAY
ChatFormatting.DARK_GRAY
ChatFormatting.DARK_RED
ChatFormatting.DARK_GREEN
ChatFormatting.DARK_BLUE
ChatFormatting.DARK_PURPLE
ChatFormatting.DARK_AQUA

Styles include:

ChatFormatting.BOLD
ChatFormatting.ITALIC
ChatFormatting.UNDERLINE
ChatFormatting.STRIKETHROUGH
ChatFormatting.OBFUSCATED

Reset can be handled by changing the style of the next text component.

------------------------------------------------------
10. IMPORTANT § CODE REFERENCE TABLE
------------------------------------------------------

§0  Black
§1  Dark Blue
§2  Dark Green
§3  Dark Aqua
§4  Dark Red
§5  Dark Purple
§6  Gold
§7  Gray
§8  Dark Gray
§9  Blue
§a  Green
§b  Aqua
§c  Red
§d  Light Purple
§e  Yellow
§f  White

§k  Obfuscated
§l  Bold
§m  Strikethrough
§n  Underline
§o  Italic
§r  Reset

------------------------------------------------------
11. IMPORTANT NOTE FOR MODERN MINECRAFT
------------------------------------------------------

For modern NeoForge 1.21.1 mod development, it is generally better
to use Component and ChatFormatting rather than hard-coding § codes
throughout your Java code.

For example:

Component.literal("Ruby Power")
    .withStyle(ChatFormatting.GOLD, ChatFormatting.BOLD);

For translatable text, prefer:

Component.translatable("item.moreoresmod.ruby_sword");

Then put the actual text in en_us.json.

This makes your mod easier to translate and maintain.

======================================================
END OF REFERENCE
======================================================
