Skip to content

Multi-language support

NabBot allows you to pick the language you want for your server or for your private conversations with NabBot.

Changing the language

There are two different language settings: server language and personal language:

  • Server Language: This will be the language NabBot will use for all messages in the server. This can only be changed by members with the Manage Server permission.
  • Personal Language: This will be the language NabBot will use for any commands used in private messages. Note that in servers, the server language will always be used.

To change the language, use /settings language set in a server. To change your personal language for direct messages, use /user-language set in DMs.

Note

For the moment, NabBot's random messages for level ups and deaths are only available in English. If you want level-up and death messages in the configured language, you can turn on simple messages using /settings default-announcements set.

Contributing

You can contribute to NabBot's translations by visiting its Crowdin Project.

In Crowdin, you will see a list of the currently added languages, with their translation and approval progress percentage. By clicking on the desired language and selecting any of the strings.properties files, you may begin translating.

When translating, pay close attention to the context provided for the text. Sometimes this might include additional information, such as what is the text for or what is expected from the translation. Some texts might contain screenshots, showing you where the text belongs.

If you want to contribute with a language that is not listed, let us know.

General guidelines and tips

1. Placeholders

Some parts of the text are replaced by values by the bot. Do not translate or remove them.

Examples of placeholders:

  • {name} → named placeholder
  • {0} → numbered placeholder
  • {level, number}, {0, number} → placeholder for numbers
  • {date, date} or {time, time} → dates or times
  • {count, plural, one{…} other{…}} → singular vs plural forms

2. Consistency of case and punctuation

  • If the source text ends with a period, keep it.
  • Respect spaces before or after the text.
  • Match capitalization style. (Titles may follow English rules, but adapt naturally in your language.)
  • Keep punctuation marks such as ?, !, :.

3. Grammar and style

  • Adapt sentences to your language’s grammar rules.
  • It’s fine to restructure slightly if it reads more naturally.
  • Example: Account Information → Spanish: Información de cuenta.

4. Discord terminology

Translate these terms the same way the Discord client does in your language. Switch your client language to verify.

Examples: permission names, roles, channels, settings.

5. Formatting

Keep Markdown formatting intact in translations:

  • **bold**bold
  • *italic* or _italic_italic
  • __underline__underline
  • ~~strikethrough~~strikethrough
  • `code`code
  • Links: [text](url) must remain valid.

Reference guide.

6. Commands and arguments

Names, descriptions, and values for commands and command arguments have strict rules since they are uploaded to Discord to be shown in the UI. It is important to follow these rules to avoid errors.

These strings can be identified by their key.

Slash Command Names

Their keys begin with command., followed by the command name. If the command has subcommands, they are separated by a dot. They end with .name right after the command's name.

The following are the keys for the /house list command. There is a separate key for the parent command and one for the subcommand.

command.house.name=house
command.house.list.name=list

Discord Rules:

  • 1–32 characters.
  • No spaces.
  • Must be lowercase.
  • Only dashes (-), underscores (_), apostrophes ('), numbers and letters in any alphabet.

NabBot Rules:

  • Only use dashes (-) to separate words.

Sample translation:

command.house.name=дом
command.house.list.name=список

User and Message Command Names

These are the commands called by right-clicking on a user or a message. Their keys begin with userCommand. or messageCommand., followed by the command name.

Their rules are more relaxed than slash commands. They can have spaces and can be capitalized properly.

userCommand.whois.name=Who Is?
userCommand.whois.action.userNotFound=The selected user is no longer in this Discord server.

Discord Rules:

  • 1–32 characters.
  • Only dashes (-), underscores (_), apostrophes ('), question marks (?), numbers and letters in any alphabet.
  • Spaces are allowed.
  • Mixed case is allowed.

NabBot Rules:

  • Use natural capitalization and spaces, like a proper menu item.

Sample translation:

userCommand.whois.name=Quem é?
userCommand.whois.action.userNotFound=O usuário selecionado não está mais neste servidor do Discord.

Command Descriptions

Descriptions are shown under the command name in the Discord UI. They are used to explain what the command does. Their keys begin with command., followed by the command name. If the command has subcommands, they are separated by a dot. They end with .description right after the command's name.

command.levels.description=Show level-ups of registered characters.

Discord Rules:

  • 1-100 characters.

Command Arguments

Their keys start with the command's key structure, followed by .arguments, then by the argument's name, followed by either name or description.

Some commands might also offer choices to pick from. In this case, the argument's name will be followed by .choices, then by the choice's name.

command.world.list.arguments.location.name=location
command.world.list.arguments.location.description=Filter worlds by location.
command.world.list.arguments.location.choices.northAmerica=North America
command.world.list.arguments.location.choices.southAmerica=South America
command.world.list.arguments.location.choices.europe=Europe
command.world.list.arguments.location.choices.oceania=Oceania

Discord Rules for names:

  • 1–32 characters.
  • No spaces.
  • Must be lowercase.
  • Only dashes (-), underscores (_), apostrophes ('), numbers and letters in any alphabet.

NabBot rules for names:

  • Use underscores (_) to separate words.

Discord Rules for descriptions and choices:

  • 1–100 characters.

7. Tibia terms and untranslatable words

Certain words should never be translated because they are part of Tibia’s identity or are universally used by players in English.

  • Do not translate official Tibia terms such as vocations, items, cities, spells, or monsters.
    • Examples: Sorcerer, Paladin, Magic Plate Armor, Thais, Demon.
  • Leave community-standard terms as they are, even if your language has a dictionary equivalent.
    • Examples:
      • server save, respawn, loot → always in English.
      • Spanish: players say items, not artículos or objetos.
      • Portuguese: players say itens, not artigos or objetos.
  • Translating these terms differently can confuse players, since the Tibia client, fansites, and the community at large only use these forms.
  • If you’re unsure whether a term is translatable, check how players in your language actually refer to it on forums, Discord servers, or wikis — in most cases it will match the English form or a well-established borrowed form.

8. Neutral language

Translations should be clear and understandable for players from different countries who share the same language.

  • Avoid slang, memes, or overly casual expressions.
  • Do not use regional terms that are only common in one country. Prefer words that are widely recognized.
  • Example: in Portuguese, prefer computador instead of ordenador.
  • Example: in Spanish, avoid regionalisms like platicar (MX) if hablar is more universal.
  • Stick to standard grammar and spelling.
  • Aim for a tone that is straightforward, professional, and accessible.