Formatting codes (also known as color codes) add color and modifications to text in-game.
Text in Minecraft can be formatted with the section sign (§
). In Bedrock Edition, the section sign can be used in signs, world names, book and quills, anvils and cartography tables (to rename items and maps), and in the chat input field (including in commands such as /say and /title). In Java Edition, section signs may be used in server.properties, pack.mcmeta, splashes.txt, language files, world titles, and server names. External programs can be used to insert it in other locations.
Usage[]
Text can be formatted using the section sign (§) followed by a character. A § symbol followed by a hex digit in the message tells the client to switch colors while displaying text. In Bedrock Edition, the § symbol can be used in any text input, while in Java Edition, it may be used in server.properties, pack.mcmeta, language files, world titles, and server names.
In Java Edition, if a color code is used after a formatting code, the formatting code is disabled beyond the color code point. For example, §cX§nY
displays as XY, whereas §nX§cY
displays as XY. Therefore, when using a color code in tandem with a formatting code, ensure the color code is used first and reuse the formatting code when changing colors. Also, you could put; e.g. "§#04280D NVBIS", in a anvil to rename an item it will be non-italic.
In Bedrock Edition, formatting codes persist after a color code. Furthermore, if an obfuscated code is used and a reset code is not used before the end of the line, the client GUI continues to obfuscate text past the MOTD and into the version number display.
Color codes[]
Messages sent from the server to the client can contain color codes, which allow the coloring of text for various purposes.
Code | Name | Foreground color | Background color | Equivalent ANSI escape code | Version | ||||||
---|---|---|---|---|---|---|---|---|---|---|---|
R | G | B | Hex | R | G | B | Hex | ||||
§0 | black | 0 | 0 | 0 | #000000 |
0 | 0 | 0 | #000000 |
\e[0;30m
|
|
§1 | dark_blue | 0 | 0 | 170 | #0000AA |
0 | 0 | 42 | #00002A |
\e[0;34m
|
|
§2 | dark_green | 0 | 170 | 0 | #00AA00 |
0 | 42 | 0 | #002A00 |
\e[0;32m
|
|
§3 | dark_aqua | 0 | 170 | 170 | #00AAAA |
0 | 42 | 42 | #002A2A |
\e[0;36m
|
|
§4 | dark_red | 170 | 0 | 0 | #AA0000 |
42 | 0 | 0 | #2A0000 |
\e[0;31m
|
|
§5 | dark_purple | 170 | 0 | 170 | #AA00AA |
42 | 0 | 42 | #2A002A |
\e[0;35m
|
|
§6 | gold | 255 | 170 | 0 | #FFAA00 |
42 | 42 | 0 | #2A2A00 |
\e[0;33m
|
[JE only] |
64 | 42 | 0 | #402A00 |
[BE only] | |||||||
§7 | gray | 170 | 170 | 170 | #AAAAAA |
42 | 42 | 42 | #2A2A2A |
\e[0;37m
|
|
§8 | dark_gray | 85 | 85 | 85 | #555555 |
21 | 21 | 21 | #151515 |
\e[0;90m
|
|
§9 | blue | 85 | 85 | 255 | #5555FF |
21 | 21 | 63 | #15153F |
\e[0;94m
|
|
§a | green | 85 | 255 | 85 | #55FF55 |
21 | 63 | 21 | #153F15 |
\e[0;92m
|
|
§b | aqua | 85 | 255 | 255 | #55FFFF |
21 | 63 | 63 | #153F3F |
\e[0;96m
|
|
§c | red | 255 | 85 | 85 | #FF5555 |
63 | 21 | 21 | #3F1515 |
\e[0;91m
|
|
§d | light_purple | 255 | 85 | 255 | #FF55FF |
63 | 21 | 63 | #3F153F |
\e[0;95m
|
|
§e | yellow | 255 | 255 | 85 | #FFFF55 |
63 | 63 | 21 | #3F3F15 |
\e[0;93m
|
|
§f | white | 255 | 255 | 255 | #FFFFFF |
63 | 63 | 63 | #3F3F3F |
\e[0;97m
|
|
§g | minecoin_gold | 221 | 214 | 5 | #DDD605 |
55 | 53 | 1 | #373501 |
— | [BE only] |
§h | material_quartz | 227 | 212 | 209 | #E3D4D1 |
56 | 53 | 52 | #383534 |
— | [BE only] |
§i | material_iron | 206 | 202 | 202 | #CECACA |
51 | 50 | 50 | #333232 |
— | [BE only] |
§j | material_netherite | 68 | 58 | 59 | #443A3B |
17 | 14 | 14 | #110E0E |
— | [BE only] |
§m | material_redstone | 151 | 22 | 7 | #971607 |
37 | 5 | 1 | #250501 |
— | [BE only] |
§n | material_copper | 180 | 104 | 77 | #B4684D |
45 | 26 | 19 | #2D1A13 |
— | [BE only] |
§p | material_gold | 222 | 177 | 45 | #DEB12D |
55 | 44 | 11 | #372C0B |
— | [BE only] |
§q | material_emerald | 17 | 160 | 54 | #47A036 |
4 | 40 | 13 | #04280D |
— | [BE only] |
§s | material_diamond | 44 | 186 | 168 | #2CBAA8 |
11 | 46 | 42 | #0B2E2A |
— | [BE only] |
§t | material_lapis | 33 | 73 | 123 | #21497B |
8 | 18 | 30 | #08121E |
— | [BE only] |
§u | material_amethyst | 154 | 92 | 198 | #9A5CC6 |
38 | 23 | 49 | #261731 |
— | [BE only] |
Formatting codes[]
Code | Name | Equivalent ANSI escape code | Compatible with Bedrock | Compatible with Java |
---|---|---|---|---|
§k | obfuscated/MTS* | \e[8m
|
Yes | Yes |
§l | bold | \e[1m
|
Yes | Yes |
§m | \e[9m
|
No[1] | Yes | |
§n | underline | \e[4m
|
No[1] | Yes |
§o | italic | \e[3m
|
Yes | Yes |
§r | reset | \e[0m
|
Yes | Yes |
§r§f | reset + add a color | \e[0m |
Yes | N/A |
The random characters placed after §k
are always the same width as the original characters. For example, any random character cycled through where the letter "m" would be wide characters while any random character in the spot of an "i" would be narrow characters.
*MTS: Magical Text Source; used in Minecraft source code (this.magictextsrc)
§r
resets the styles of following characters; e.g., §nXXX§rYYY
displays as XXXYYY.
Typing[]
- To enter "§" on Windows with most US/UK English keyboards type Alt + NUMPAD2NUMPAD1 (alt code on cp437) or Alt + NUMPAD7NUMPAD8NUMPAD9. For any other keyboard, the Windows ANSI version Alt + NUMPAD0NUMPAD1NUMPAD6NUMPAD7 often works.
- If
EnableHexNumpad
is enabled in the Windows registry, Alt + NUMPAD+ANUMPAD7 (using the main keyboard for "A") works for any language due to it being Unicode. - On a Mac with a US keyboard, type ⌥ Option + 6 (or ⌥ Option + 5 for US Extended). For any other keyboard, type ⌥ Option + 00a7.
- On Linux with the compose key activated, type Composeso. The symbol can also be typed by using Unicode shortcuts: Ctrl + ⇧ Shift + u00a7.
- To enter "§" on a Nintendo Switch, select languages (globe icon), scroll to the bottom to find the "Symbols" language, and then select Page 2 to find the symbol to the right in the bottom line.
- For various Android keyboards:
- Google Keyboard (GBoard): The "§" is in the More Symbols section the symbols. To access it, press the Numbers and Symbols button (?123), then press the More Symbols button (=\<). Note that on previous versions of GBoard, it was behind the Paragraph Symbol "¶" in the same position, but they were recently swapped so that now "¶" is behind "§".
- Samsung Keyboard: The "§" is under the "s" key. To access, hold down on the "s" and then slide over to the "§" mark.
- For iOS:
- On the iPad the "§" is under the percent sign. To access, tap the number/symbol button and then swipe down on the percent sign.
- On the iPhone the "§" is under the ampersand "&". To access, tap the number/symbol button then hold down the ampersand key and slide over to the "§" mark.
- For Xbox:
- On the Xbox One the "§" is under the paragraph mark "¶". To access, use , hold down while on ¶ until other options pop up. Move the cursor over to the "§" mark and use to select.
- One can also highlight the S key on the standard alphanumeric keyboard, then press and hold to reveal several "alternate" characters, including "§". This method also works on the Windows 10 version.
When part of JSON text, the symbol can be written as \u00A7
or \u00a7
.
Alternatively in Bedrock Edition, the character can be copied from this page (§
) and pasted into virtually any text field by pressing Ctrl + V (Windows) or ⌘ Cmd + V (macOS). If pasting does not work it may be necessary to use the JSON format or another method.
While in chat in Java Edition, usage of this character disconnects the user, even in 'offline' single player mode, and thus cannot be used directly in commands such as /say
.
In early Java Edition Classic versions, the character used was &
instead of §
.[2]
Sample text[]
The following text can be pasted into a book and quill (prior to 1.14) to produce what is shown in the picture:
Use in server.properties and pack.mcmeta[]
In order to get an MOTD colored or formatted, \u00A7
must be used instead of §
; for example, §5
would be \u00A75
. The full list of them is listed below.
Colors can be used in conjunction with formatting. The formatting must be done after the color.
Given that pack.mcmeta
files accept raw JSON text as descriptions, the usage of §
can be replaced by text components with different color and style, though using §
still works.
Code | Official Name | MOTD code | Note |
---|---|---|---|
§0 | Black | \u00A70 | |
§1 | Dark Blue | \u00A71 | |
§2 | Dark Green | \u00A72 | |
§3 | Dark Aqua | \u00A73 | |
§4 | Dark Red | \u00A74 | |
§5 | Dark Purple | \u00A75 | |
§6 | Gold | \u00A76 | |
§7 | Gray | \u00A77 | |
§8 | Dark Gray | \u00A78 | |
§9 | Blue | \u00A79 | |
§a | Green | \u00A7a | |
§b | Aqua | \u00A7b | |
§c | Red | \u00A7c | |
§d | Light Purple | \u00A7d | |
§e | Yellow | \u00A7e | |
§f | White | \u00A7f | |
§k | Obfuscated | \u00A7k | |
§l | Bold | \u00A7l | |
§m | \u00A7m | [Java Edition only] | |
§n | Underline | \u00A7n | [Java Edition only] |
§o | Italic | \u00A7o | |
§r | Reset | \u00A7r | |
§r and add a § and a letter (a,b,c,d,e,f,k,l,o,r) or a number (1-9) will make it different color and non-italic. (It only works on renaming items in an anvil. | Non-Italic text when renaming items. | \u00A7§r§<any letter or number listed on the code to the left |
Compatibility with older versions[]
Formatting codes can be used in the motd
line in a server.properties
file, but the section signs must be escaped as \u00A7
. If a section sign is entered directly, the server replaces it with \u00C2\u00A7
(§
); clients display the \u00C2
character as a question mark. Delete the \u00C2
character in the MOTD if it comes with a bunch of question marks: this happens if something is not compatible.
Use in custom language packs[]
Formatting codes can be used to color names and description in language files by using § then any of the numbers/letters displayed above. This is also used in end.txt and credits.txt. An example of this is §dDiamond
to make the name of a diamond appear as Diamond.
Since Java Edition 1.16, §r
can no longer be used to remove italics from custom translation tags within language files. For example, if the translation tag "item.example.test": "§rTest Item"
is applied to the Name
display data of a custom item ({display:{Name:'{translate:"item.example.test"}'}
), it still appears as Test Item
rather than simply Test Item
. This is not true of any other formatting options.
Use in world names[]
With the use of external tools, such as NBTExplorer, world names can have custom colors and formatting codes. To modify the name, choose the LevelName tag in the world's level.dat. In this example,[more information needed] LevelName is set to §1R§2e§3d§4s§5t§6o§7n§8e §9C§ar§be§ca§dt§ei§fo§1n§2s
.
Additionally, the player can rename the world's folder to contain one of the codes. In the world selection menu, the specified color or effect appears.
The player can also use a resource pack with a § already in the world name when creating a world and all the user has to do is to change or alter the color code after the §.
In Bedrock Edition, the player is allowed to use a § inside of the world name when creating the world. This allows for using custom colors and formatting codes inside of the world name without having to modify the game.
Use in server names[]
With the use of a third party tool such as NBTExplorer, server names can have custom colors. To utilize this functionality, select the Name
attribute in the servers.dat
file inside the .minecraft
directory using a third party tool. In the following example, the Name
tag is set to
§4§lMinecraft §6§lServer
:
History[]
Instructions: A conversion to history table with information about when it was added, when & was changed to §, when it was superseded, etc.
Obfuscated format §d
has changed 3 times in Java Edition after being introduced in Beta 1.8. On the right is an image of how the obfuscated text of 1234567890abcdefghijklmnopqrstuvwxyz~!@#$%^&*()-=_+{}[]
looks in 4 different versions. At first glance, they might look similar, but in reality, there are some differences. One major difference is that as font textures get updated with new characters and symbols, the obfuscated character cycles through more characters. That change can be clearly seen when any character gets obfuscated in versions 1.6.4-1.12.2. However, when 1.13 came out, if the obfuscated format was used on any character, it looped only through the ASCII character set. Nevertheless, an obfuscated character can still add a character to its loop. If a character that matches its dimensions was written into the chat by a player, it is inserted to the loop automatically. As for 1.13+, the whole system got reworked. All characters cycle through all characters that can be written in the game no matter what kind of character is getting obfuscated. The difference is that the condition that identifies similar characters, became more diverse in its identification, which made it include several unicode font characters. This can be spotted in one pixel width characters i!:;.
, which are the most used characters by players, as they display a unique effect when used with obfuscation rather than it being what it's for, "Obfuscation". Followed by @~
in older versions.
Trivia[]
- The color codes almost exactly match, in order, the 16 colors available using a Color Graphics Adapter (CGA), as released in 1981. Only color 6 differs; the value for color 6 in Minecraft –
#FFAA00 – differs from that made for CGA –
#AA5500. - Minecoin Gold (§g) doesn't display on PlayStation. Any text using it displays either as default, or transparent.
- Obfuscated format (§k) displays as dots in Bedrock Edition if any font except Mojangles is used.
References[]
- ↑ a b MCPE-41729
- ↑ IRC logs on Archive.org; #minecraft.20090619.log. "P7:43:58 <Notch> Quatroking: want to know a secret?" [...] "P7:44:44 <Notch> /say He&1llo&f, world! &bHOW ARE YOU!?" [...] "P7:45:52 <Notch> it's the ega palette, almost" (June 20, 2009, 00:43:58 UTC)
Help | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Menu screens |
| ||||||||||||||||||
Game customization | |||||||||||||||||||
Editions |
| ||||||||||||||||||
Miscellaneous |