DEV Community

Cover image for I built a live MOTD designer for Minecraft servers and learned the color code system properly
PixelForge
PixelForge

Posted on

I built a live MOTD designer for Minecraft servers and learned the color code system properly

Your server's MOTD has about two seconds to earn a click in the server list. Most of us edit it blind: change motd= in server.properties, restart, open the multiplayer screen, squint, repeat. I did this loop for two years before I finally sat down and learned how the formatting system actually works. Then I built a designer tool around it so nobody has to do the blind loop again.

The 30-second version of Minecraft color codes

Formatting in MOTDs (and chat, and item names) runs on a single control character: § (U+00A7). Whatever follows it is an instruction, not text:

| Codes | Effect || Codes | Effect |
|---|---||---|---|
| §0-§9 | dark colors || §a-§f | bright colors |
| §l | bold || §o | italic |
| §n | underline || §m | strikethrough |
| §k | obfuscated || §r | reset |

Sixteen colors, six formatters, one reset. The palette is fixed by the game: you can't invent new ones in server.properties. What you can do, on 1.16+, is go hex:

§#ff6601Happy Hour §r- join now
Enter fullscreen mode Exit fullscreen mode

§#rrggbb gives you any of 16.7M colors, and it survives the server list. (Bedrock accepts the codes but renders a slightly different palette, so test on your version.)

The three gotchas that cost me an evening

1. The two-line limit is real. server.properties MOTD supports \n for a second line. A third line doesn't exist in the list, and no client-side mod changes that, because the list is rendered client-side.

2. Color carries over. After §6, everything stays orange until you §r or pick a new color. Most "broken" MOTDs I see are missing resets: the second line inherits the first line's formatting, and bold spreads across the dash you thought was plain.

3. Your editor is probably lying to you. The multiplayer list renders in a specific font with its own row layout. A MOTD that looks fine in a generic preview can wrap or clip in the real list. The only preview you can trust is one that reproduces the actual list row.

So I built the tool I wanted to exist

One HTML file. Type on the left, a faithful server-list preview updates live on the right: same row layout, same 16-color palette, obfuscated text actually animating. All codes are one click away in a palette, hex included. When it looks right, copy the codes into server.properties and you're done.

It's called MOTD Studio. It's $7.99, and the code LAUNCH20 takes 20% off until Nov 5 (the price rises after the first reviews). The demo is fully functional: pixelforgehq.sell.app/product/motd-studio

If you'd rather stay vanilla

You honestly don't need my tool. The table above is 90% of the system. Keep three rules and you're fine:

  • end every colored segment with §r unless you want carry-over
  • one \n, never two
  • check it in the real list, not in a plain-text editor

The tool is the difference between editing blind and editing with your eyes open. For something players see before they even join, I think that's worth two minutes.


Indie dev, building in public. More server-admin tools at pixelforgehq.sell.app. Questions about the code system or the preview renderer: comments are open.

Top comments (0)