Chat Formatting

Minecraft's chat formatting system lets you add colors, styles, and interactive elements to your messages. When used with Command Maker aliases, you can create polished, professional-looking command feedback for your players.

The Section Sign (§)

All Minecraft formatting begins with the section sign (§), a special character that tells the game the next character is a color or format code. When typing in-game, you represent this with the ampersand symbol (&), which Command Maker automatically converts to the proper section sign.

Important Note

In Command Maker aliases and JSON configuration files, always use & (ampersand) instead of the actual § character. Command Maker handles the conversion automatically. In JSON files, you must also escape backslashes: ยง is the Unicode escape for the section sign.

Color Codes

Minecraft provides 16 standard colors, ranging from basic black to bright white. Each color is represented by a hex digit or letter after the section sign.

See the full Color Codes reference page for a complete table. Here are the most commonly used colors:

Code Color Common Use
&0 Black Separation lines, shadows
&1 Dark Blue Water-related messages
&2 Dark Green Nature, success messages
&3 Dark Aqua Information, tips
&4 Dark Red Errors, warnings, death
&5 Dark Purple Special items, magic
&6 Gold Ranks, premium features
&7 Gray Subtle hints, metadata
&8 Dark Gray Separators, timestamps
&9 Blue Links, notifications
&a Green Success, confirmation
&b Aqua Commands, highlights
&c Red Danger, errors, penalties
&d Light Purple Rare items, special events
&e Yellow Warnings, currency
&f White Default text, standard messages

Formatting Codes

Beyond colors, Minecraft supports special formatting codes that change text appearance:

Code Format Description
&l Bold Makes text thicker and heavier
&o Italic Slants text to the right
&n Underline Adds a line under the text
&m Strikethrough Adds a line through the text
&k Obfuscated Rapidly changing random characters
&r Reset Clears all formatting back to default white

Formatting Order Matters

Formatting codes must be applied after a color code. If you use &l without specifying a color first, the bold formatting may not appear correctly. Always use the pattern: color first, then formatting: &c&lRed Bold Text. Use &r to reset formatting before changing colors.

Combining Colors and Formats

You can stack color and formatting codes to create rich text. Each code applies to all text that follows it until another code overrides it:

# Simple colored message
/alias add colored say &aHello &eworld!

# Bold and colored
/alias add alert say &c&lWARNING: &r&7This is important!

# Multi-color formatted message
/alias add info say &9&nInfo: &r&bServer &ewill &crestart &rin &d10 &rminutes.

# Using obfuscated text for effect
/alias add secret say &5&k|||| &r&dSecret Message &5&k||||

JSON Text Components (tellraw)

For advanced formatting, Minecraft's /tellraw command uses JSON to create rich text with hover events, click actions, and nested components. You can use these in your Command Maker aliases for professional-looking output.

Basic tellraw Syntax

tellraw @a {"text":"Hello, world!","color":"gold","bold":true}

Multi-Component Messages

Use an array of JSON objects to build complex messages:

tellraw @a [
  {"text":"[SERVER] ","color":"gray"},
  {"text":"Welcome, ","color":"white"},
  {"text":"PlayerName","color":"gold","bold":true},
  {"text":"!","color":"white"}
]

Using tellraw in Command Maker Aliases

/cmd add welcome tellraw @a [
  {"text":"[SERVER] ","color":"gray"},
  {"text":"Welcome, ","color":"white"},
  {"text":"${player}","color":"gold","bold":true},
  {"text":"!","color":"white"}
]

Clickable Text

Make text interactive with click events. Supported actions:

Action Description Example
run_command Runs a command when clicked /spawn
suggest_command Fills the chat box with a command /msg
open_url Opens a URL in the browser https://example.com
copy_to_clipboard Copies text to clipboard An IP address
# Click to run a command
/alias add spawnlink tellraw @a [
  {"text":"[Click to Teleport to Spawn]","color":"green","bold":true,
   "clickEvent":{"action":"run_command","value":"/spawn"}}
]

# Click to suggest a command (fills chat, doesn't execute)
/alias add msg tellraw @a [
  {"text":"${player}, click to message a moderator: ","color":"white"},
  {"text":"[MESSAGE]","color":"yellow",
   "clickEvent":{"action":"suggest_command","value":"/msg "}}
]

# Click to copy text to clipboard
/alias add ip tellraw @a [
  {"text":"Server IP: ","color":"white"},
  {"text":"play.example.com","color":"gold","bold":true,
   "clickEvent":{"action":"copy_to_clipboard","value":"play.example.com"}}
]

Hover Text

Add tooltips that appear when players hover over text:

# Simple hover with text
/alias add hoverdemo tellraw @a [
  {"text":"Hover over me!","color":"gold",
   "hoverEvent":{"action":"show_text","value":"This is a tooltip!"}}
]

# Hover with an item tooltip
/alias add iteminfo tellraw @a [
  {"text":"[DIAMOND SWORD]","color":"aqua","bold":true,
   "hoverEvent":{
     "action":"show_item",
     "value":"{id:\"minecraft:diamond_sword\",Count:1,tag:{Enchantments:[{id:\"minecraft:sharpness\",lvl:5}]}}"
   }}
]

# Hover showing a player's info
/alias add playerinfo tellraw @a [
  {"text":"${player}","color":"gold",
   "hoverEvent":{"action":"show_text","value":"&7Click to teleport to &e${player}"},
   "clickEvent":{"action":"run_command","value":"/tp ${player}"}}
]

Using Formatting in Command Maker Aliases

Basic Color in Alias Target

/cmd add hello say &e[&6Server&e] &fHello &a${player}&f!

When a player runs /hello, they see: [Server] Hello PlayerName! in gold, white, and green.

Colored Syntax Feedback

Create a syntax pattern that gives colored feedback:

{
  "broadcast": {
    "pattern": "/broadcast <message>",
    "description": "Broadcast a colored announcement"
  }
}

# Alias using the syntax:
/alias add broadcast_cmd say &b[&3Announcement&b] &f${broadcast_message}

Rich Error Messages

/cmd add deny say &c&lDenied! &r&7You don't have permission to use this command.

Fancy Kill Feed

/alias add killmsg say &c${player} &7was slain by &c${killer}

Title and Subtitle Formatting

You can use color codes in /title and /subtitle commands too:

/cmd add jointitle title ${player} {"text":"&a&lWelcome!","bold":true,"color":"green"}

# With subtitle
/alias add joinsubtitle title ${player} {"text":"&a&lWelcome!"}
/alias add joinsubtitle subtitle ${player} {"text":"&eEnjoy your stay!","color":"gold"}

# Complete join sequence (runs both)
/alias add joinmsg title ${player} {"text":"&a&lWelcome!"}
/alias add joinmsg subtitle ${player} {"text":"&eEnjoy your stay!"}

JSON Components vs. Legacy Section-Sign Formatting

Feature Legacy (§ codes) JSON Components
Syntax &cText {"text":"Text","color":"red"}
Click Events Not supported Fully supported
Hover Events Not supported Fully supported
Simplicity Very simple More complex
Best For Quick messages, /say Interactive menus, tellraw

Pro Tip: Combine Both Approaches

You can use §-codes inside JSON text values! The game will render them as colors. This lets you write shorter JSON while keeping formatting: {"text":"&c&lError: &r&7Something went wrong"} is much shorter than building separate components.

Common Formatting Patterns

# Error message
say &c&lERROR: &r&7${error_message}

# Success message
say &a&lSUCCESS: &r&7${result}

# Information
say &9&lINFO: &r&7${info_text}

# Warning
say &e&lWARNING: &r&7${warning_text}

# Fancy header
say &8[&m                &8] &6&lSERVER NEWS &8[&m                &8]

# Prefix-based messages
say &8[&bServer&8] &f${player} &7joined the game!

# Colored coordinates announcement
say &e${player} &7is at &bX:${x} &aY:${y} &cZ:${z}

JSON in Aliases: Escaping

When using JSON text components in Command Maker aliases, be careful with quote escaping. If your JSON contains double quotes inside the alias command string, you may need to escape them. The safest approach is to define complex JSON in aliases.json directly, where you can use proper JSON escaping.

Further Reading