Skip to content

Translate and reword every message

Every string DiscordLogger says lives in lang.yml — 79 of them. Change any and run /discordlogger reload. No rebuild, no code.


Two sections that are not interchangeable

chat:      # shown IN GAME  — MiniMessage formatting
discord:   # posted TO DISCORD — plain text, Discord Markdown

A <green> tag in the discord: section is posted as the literal characters <green>. Discord renders Markdown, not MiniMessage. Getting this backwards is the single most common mistake.

Section Formatting that works
chat: <red>, <bold>, <gradient:red:blue>, <#ff8800>
discord: **bold**, *italic*, `code`, ~~strike~~

Placeholders

Written {player}, {message}, {killer}, and replaced before sending. Each message lists the ones it accepts, and they are not interchangeable{player} only works where the plugin has a player to put there.

A misspelled placeholder is left in the message rather than blanked, so a typo shows up as {palyer} joined instead of a sentence with a hole in it. That’s deliberate: a visible mistake is a fixable one.

You can also delete a placeholder entirely:

player-join: "{player} joined"     ->  "Steve joined"
player-join: "Someone joined"      ->  "Someone joined"

Translating

Work through discord: first — that’s what your community sees. chat: is staff-facing and matters less.

discord:
  player-join: "{player} a rejoint le serveur"
  player-quit: "{player} a quitté le serveur"
  player-chat: "**{player}**: {message}"
  death:
    description: "{player} est mort"
    cause-field: "Cause de la mort"
    causes:
      fall: "Est tombé de haut"
      lava: "A essayé de nager dans la lave"

The death causes are the bulk of it — 33 of the 79 keys. They’re also the most rewarding, because they’re the messages people actually read.


If you break something

What you did What happens
Deleted a message Falls back to the English inside the JAR
Deleted a whole key You see the key name, e.g. chat.reload-ok
Deleted the file Written again on next start
Broke the YAML Parse error logged on start, falls back to English

Nothing is unrecoverable. Check indentation first — it must be spaces, never tabs.


Console messages stay English

Deliberately. They’re not in lang.yml, so that searching an error or pasting it into a support thread still matches what everyone else sees.


Your file survives updates

lang.yml carries a schema version and is migrated forward exactly like config.yml — your wording is transplanted into the new file, comments and all, and the old one is kept as lang.old.yml. New messages arrive in English for you to translate; nothing you wrote is reset.


Next