Initial Configuration
Type of Installationโ
Before proceeding, it's important to not
There are two types of installation:
- Spigot standalone - You only have one Spigot server
- BungeeCord network - You have a BungeeCord network with multiple Spigot servers
With that in mind, let's get started.
If you're using Velocity instead of BungeeCord, you can follow the same configuration that's described for BungeeCord.
However, there are some limitations with Velocity that you should be aware, so take a look at
the Velocity Guide before continuing!
Before proceeding, if you've chosen the BungeeCord network approach,
you must enable bungeecord
on Triton's config.yml
for every
Spigot server.
bungeecord: true
Storage typeโ
Triton currently supports local (JSON) storage and MySQL storage. MongoDB support is in the works, but it's not supported at the moment.
If you want to use local storage, you don't need the make any changes, it's good to go out of the box.
However, if you want to use non-local storage, you have to change the storage type and fill in the information accordingly.
# This section controls the storage location of player data and translations.
# If using a database, the tables/collections will be created automatically for you.
# You can use '/triton database upload' to upload the local translations to a remote storage.
# This MUST match what is on BungeeCord
storage:
# Valid options: 'local', 'mysql', 'mongodb'
type: 'local'
# This should match the name of this server in BungeeCord's config.yml
# Used to filter translations for this server only
server-name: 'lobby'
# The options below this are for non-local storage only
host: 'localhost'
port: 3306
database: 'triton'
username: 'root'
password: ''
table-prefix: 'triton_'
The server-name
variable is only loaded when using non-local storage types
and it's used to filter translations that have entries in the server
field.
If you're using a server template system, it might not be possible to set this.
Leaving this empty will work correctly as long as you don't want to filter
translations by server.
If you're using the BungeeCord network approach, you must use the same storage configuration on all servers, including on BungeeCord itself. If you fail to do that, translations might not be loaded correctly.
If you're using MySQL storage with BungeeCord (or a proxy), you MUST have the same configuration for languages
on Triton's config on
all servers and on the proxy.
If you don't do this, translations will not be synced correctly between servers.
Languagesโ
Adding languages to the plugin is pretty straightforward.
All you have to do is add/modify a section within the languages
sections on config.yml
.
To get a flag code, follow the guide on generating flag codes.
Details about every variable below can be found in the config page.
# This will be ignored if 'bungeecord' is enabled.
languages:
# The language name. This will influence the language key in the translation files.
# It's recommended to follow this syntax: xx_XX
# It's also not recommended to change this after someone has joined your server,
# as their language will reset to default.
en_GB:
# This is the encoded flag code to show up the banner.
# To get a working code, you should visit https://www.needcoolshoes.com/banner and create your banner.
# When you finish, you should notice that the link as changed. Just copy the code generated by it.
# i.e. If the link is https://www.needcoolshoes.com/banner?=eapwplpnpmbzbj then the code will be eapwplpnpmbzbj
flag: eapwplpnpmbzbj
# The Minecraft code is the Minecraft language code. You can find a complete list here:
# https://minecraft.gamepedia.com/Language
minecraft-code: [en_GB]
# This display name. This will be the language name in non-code version. For example, en_UK should be English (UK)
# Feel free to use colours here!
display-name: '&aEnglish (UK)'
# Use this to run commands on language change.
# The commands must not start with a slash.
# Prefix with the desired type. Available types: 'PLAYER', 'SERVER'
# i. e. "PLAYER:say I'm using English now!"
# Please uncomment the lines below to start using this feature.
# Available variables:
# %player% - Replaced with the player's name.
# %uuid% - Replaced with the player's UUID (with dashes).
# commands:
# - 'SERVER:say %player% (%uuid%) has just changed their language!'
pt_PT:
flag: bacLlt
minecraft-code: [pt_PT]
display-name: '&aPortuguese (Portugal)'
# commands:
# - 'SERVER:say %player% (%uuid%) has just changed their language!'
If you're using the BungeeCord network approach with local storage, you only need to configure the languages on the BungeeCord server.
Translationsโ
The best way to add and edit translations easily is using TWIN. To use it, you must first get a TWIN token.
To get the token, you can either join our Discord server or DM me (Rexcantor64) on Spigot.
# To access TWIN, you need a special token.
twin-token: ''
If you're using the BungeeCord network approach, you don't need to put the token in any Spigot server.
After getting access to TWIN, follow the translating your first message guide.