Custom Server Messages

Custom Server Messages

A Minecraft mod to customize any server message, with support for text formatting and placeholders.

by
1.3K Downloads
fabricmanagement
Rent Server with this Mod

About this Mod

Server Messages

Static Badge
Static Badge
Static Badge

A Minecraft mod to customize any server message, with support for text formatting and placeholders.


What does it do?

This mod lets you modify any[1] server message to your liking. You can replace the
message itself, add or change the formatting,
and even use placeholders. The format is fully compatible with
the translated text format used by language files.

Common use cases include changing the color of messages like "You have been banned", adding information to the "You're
not whitelisted" message or customizing the kick notification. You could even use the mod to display some stats when a
player joins or leaves the server or make death messages appear in rainbow colors. The possibilities are endless!

badge
For anything chat related, I recommend using Styled Chat instead.
If you do, all related messages in this mod will be disabled to prevent conflicts.
You can then change them using Styled Chat.

How do I use it?

To modify a message, you simply add the corresponding
translation key
to the config and change its value to your liking. The text format is based on
the translated text format
and also supports the QuickText Format for text formatting
and global placeholders.
You can reload the config with /reload.

The format for placeholders is ${placeholder} and for most messages you can only use placeholders that do NOT depend
on a player/entity! So ${server:tps} and ${world:name} (overworld) are perfectly fine, but ${player:name} will
not always work.
For more information, see Placeholder Contexts.

The config format is compatible with the Minecraft language file format. So you could simply replace the config with a
language file (strongly discouraged) and it would work just fine. Note, however, that this would NOT overwrite the
language setting of the players! For reference, you can find a list of all language files currently available
here.

If you use translation keys manually
(QuickText / STF
or Text components), for example in chat messages or other mods,
they will also be affected by this mod and thus use the same formatting as specified in the config.
If you do not want this, you can either append r or raw to the
QuickText
/ STF
translation tags (<lang ...> -> <rlang ...>), or add #raw as the last argument to the translation arguments.
For example, <rawlang ...> is the same as <lang ... #raw> and will prevent the message from being modified.
For Text components, it would look like this:
{"translate": "...", "with": [..., "#raw"]}.

badge
Any other mod that modifies server messages (e.g. BanHammer), will most
certainly take precedence over changes made by this mod.

Example Config

{
  // only change formatting
  "multiplayer.disconnect.not_whitelisted": "<red><bold><lang multiplayer.disconnect.not_whitelisted></bold></red>",
  // replace message; use placeholder
  "multiplayer.disconnect.server_shutdown": "<green>We'll be right back!</green>\n<gray><underline>Uptime: </>${server:uptime}</gray>",
  // add text; use nested translation argument
  "multiplayer.player.joined": "<yellow><lang multiplayer.player.joined '%s'>. Good to see you!</yellow>",
  // replace message; use translation argument
  "multiplayer.player.left": "<yellow>See you soon, <bold>%s</bold>!</yellow>",
  // custom translation key; add reason to kick message
  "multiplayer.disconnect.kicked.reason": "<lang multiplayer.disconnect.kicked>\n<yellow>%s</yellow>"
}

badge
Don't copy this as is! The config is using the JSON format and JSON does NOT
support comments. The comments in the example are just for clarification. Do not copy the comments!

Supported Translation Keys

In theory, every translation key is supported when it is used explicitly (e.g. in
a translation tag).
But natively, the server only uses a few translations.
All translation keys, that are parsed on the server, are supported. That includes most of the messages you can see when
playing on a server.

For a more detailed list of supported keys,
see here.

badge
The information in this list may not be accurate!
Though it can be helpful to get a quick overview, it's only based on my findings and a lot of assumptions.

Placeholder Contexts

Contexts are additional information that allows different placeholders to work. For example, some mods like AfkPlus
require the player context for their placeholders to work. This may not always be available in every message,
so please check the additional contexts of your desired message in the list below.

All messages support the basic contexts, meaning
the Server
and the Overworld,
but NOT the Player.

Translation Key(s) Context Version Added
chat.type.advancement.* player 1.0
commands.ban.success player 1.1
commands.banip.success player 1.1
commands.deop.success player 1.1
commands.kick.success player 1.0
commands.op.success player 1.1
commands.pardon.success player 1.1
death.* player 1.0
multiplayer.disconnect.* player if the player was already on the server before the disconnect, otherwise profile.

Exceptions (non-exhaustive list)
.transfers_disabled, .outdated_client, .incompatible
These only have the default context (server).
1.1 (some 1.0)
multiplayer.player.joined player 1.0
multiplayer.player.joined.renamed player 1.0
multiplayer.player.left player 1.0

If you want a specific context added, please open an issue or
tell me on Discord.

Additional Translation Keys

This mod also adds some additional translation keys for use in the config.
They will let you customize some messages that you normally would not be able to change.

badge
These translation keys are not provided by Minecraft itself and only work when specified in the mod config.

Translation Key Context Notes Default Version Added
multiplayer.disconnect.kicked.reason player Sent to the kicked player(s), if there was a reason specified.

The reason is the only argument (%s).
See multiplayer.disconnect.banned.reason.
%s 1.1

Why do I need it?

Almost every text message, a vanilla server sends to its players, uses a translation key to display the corresponding
message. So instead of sending actual text (e.g. <Player> joined the game), it sends something
like translate[multiplayer.player.joined]. The client then converts this into actual text, using the player's selected
language. This way the game ensures that each player will see the message in their preferred language. While this is
pretty helpful, sometimes it may not be the behavior you want, because you cannot change the formatting of those
messages without forcing your players to use a custom resource pack. This is why this mod exists.

Usually those messages are displayed as plain old white text, which is pretty boring. So to spice things up, you need to
be able to change those messages server wide. For example, you can change the "not on whitelist" message to give your
new players some more information. You could also change the color of the "you have been banned" message to make it
stand out. There are a lot of those server messages that you may want to customize, so give it a try!

How does it work?

This mod replaces the translation key with the text you specified in the config, before the text is
sent to the player. This way the player receives your custom message instead of the default one. This does not
necessarily affect the translation of the messages. So you can add formatting to messages without losing the
auto translation feature (see example config).

To prevent infinite recursion, all translation keys used in your custom messages will have their default values and
formatting, not the values you provided.


[ 1 ]: There are some special cases where it might not work as expected due to how Minecraft
handles certain messages.
If you encounter one of those, please open an issue,
and I'll see what can be done to make them work too.
Player chat messages (also /me, etc.), unfortunately are not supported by this mod.
Use Styled Chat for these instead.

Available Versions

Custom Server Messages 1.1.1release
MC 26.1, 26.1.1, 26.1.2fabric
May 21, 2026
Custom Server Messages 1.1.0release
MC 26.1, 26.1.1, 26.1.2fabric
May 8, 2026
Custom Server Messages 1.0.4release
MC 26.1, 26.1.1, 26.1.2fabric
April 7, 2026
Custom Server Messages 1.0.4release
MC 1.21.9, 1.21.10, 1.21.11fabric
October 27, 2025
Custom Server Messages 1.0.4release
MC 1.21.6, 1.21.7, 1.21.8fabric
October 27, 2025

How to Install Custom Server Messages on Your Server

1

Order Server

Order a Minecraft Java server with at least 3 GB RAM (4 GB recommended).

2

Set fabric Loader

In the panel under "Egg", select the fabric loader and matching Minecraft version (26.1.2).

3

Install Mod

Open the mod browser in the dashboard and search for "Custom Server Messages". Click "Install" – done! Alternatively, upload the .jar via SFTP to the /mods folder.

Compatibility

Mod Loaders

fabric

Minecraft Versions

26.1.2, 26.1.1, 26.1 (+12 more)

Server-side

Required

Recommended RAM

4 GB(min. 3 GB)

Frequently Asked Questions

Custom Server Messages server crashes on startup – what to do?

Most common cause: wrong fabric version or insufficient RAM. Check the server log (latest.log) for "OutOfMemoryError" or "Mixin" errors. With Mado Hosting: ensure at least 3 GB RAM is allocated and the loader matches the mod version (26.1.2). You can switch loaders with one click in the panel.

Is Custom Server Messages compatible with fabric?

Custom Server Messages officially supports fabric for Minecraft 26.1.2, 26.1.1, 26.1. The Mado dashboard automatically detects incompatible loader combinations.

Server lagging with Custom Server Messages – how to optimize performance?

Recommended RAM: 4 GB (per 8 players). Use /spark profiler to check if Custom Server Messages consumes the most tick time. Common fixes: reduce server view-distance to 8-10, install "performant" or "starlight" as supplementary mods on Forge. With Mado Hosting, your server runs on NVMe SSDs with dedicated CPU cores for minimal latency.

Rent Modded Server

Install Custom Server Messages with just one click on your server.

Recommended RAM
4 GBab €8/mo
Min. 3 GB | +1 GB pro 8 Spieler
Create Server Now
1-Click Mod Install
NVMe SSD Storage
DDoS Protection included

Details

License
GNU General Public License v3.0 only
Server-side
Required

Supported Versions

26.1.226.1.126.11.21.111.21.101.21.91.21.81.21.71.21.61.21.5+5 more