UltimateTranslate
- Working from 1.8.9 to 1.13.2
Ultimate Translate is an advanced plugin to translate in real-time, all texts send to chat, based on player country provided by ip location of player.
Working again using the Google library for mobile!!
Features:
- Without API KEYs and without limit of words, this plugin will work forever without any limits (only connection to web)
- UUID support! Once you joined the server, you can chage your name and the language will be saved for ever using the uuid!
- Unlimited utilization and unlimited words translation!
- Easy configuration with Welcome message to the player language.
This plugin uses an advanced system to translate, and to get minum CPU and RAM of your server. This plugin translate in real time from an APi similar to Google API, and send directly to your server chat.
This plugin uses same system of Essentials and Authme to get player location from ip, and with this information, the plugin can determine from what language need to traslate to. To improve performance, this plugin will translate only if the country code is diferent from default code set on configuration server. If the code is the same, the message will be sended directly, and the plugin will disable for that player.
How to use GUIDE:
This plugin makes all for you! You only need to change default settings to work for all your server.
To use, follow this steps:
- If a Portuguese player join on server, all messages sent by this player will be translated from "PT-BR" to "default-translate-to"(see configuration).
- To send messages for a player with different location of the default server location, you have two options:
- The more simple is send your message with the player name beggining the message. Like this: FabioZumbi12 Hello man, hou are you? - And the mesage will be translated to the FabioZumbi12's location.
- Set your language "setto" to the player location.
- If you want to change a player(or your) language, use the command /lang setto <code> [player];
- You can use the code of country, or code of language! Eg.: You can use /lang setto ca to set the language from Canada.
Other options you can find on config file!
Permissions:
For players:
- ultimatetranslate.player - Dont needed, allowed by default. - To allow player to have your messages translated.
<sub>This permission is a group and contains the permission ultimatetranslate.user.</sub>
- ultimatetranslate.self - To allow player change your own language settings.
<sub>This permission is a group and inherit the permissions ultimatetranslate.user and ultimatetranslate.set .</sub>
For Admins/MODs:
- ultimatetranslate.* - Give permission to all commands, including commands to set player from/to translations and reload.
<sub>This permission is a group and inherit the permissions ultimatetranslate.user, ultimatetranslate.set and ultimatetranslate.admin.</sub>
You need to give only one of the group permissions!
If you want to give your player only usage, give the permission ultimatetranslate.player, but is not needed becaude this permission is given by default.
If you want your player usage, and allow change your own language settings, give the permission ultimatetranslate.self.
If you want administration, give the permission ultimatetranslate.* to set other players language and info, and reload.
Single perms (without group):
- ultimatetranslate.user
- ultimatetranslate.set
- ultimatetranslate.admin (With ultimatetranslate.set by default)
Commands:
You can use this aliases: [ut, utrans, trans, translate, lang, language]
Tip: <> - needed | [] - optional
Command | Description | Permission |
---|---|---|
/lang info | See your language settings | ultimatetranslate.user |
/lang setfrom <Code> | Set your own language settings "From" | ultimatetranslate.set |
/lang setto <Code> | Set your own language settings "To" | ultimatetranslate.set |
/lang info [Player] | See other player language settings | ultimatetranslate.admin |
/lang setfrom <Code> [Player] | Set the language setting for "translate from" | ultimatetranslate.admin |
/lang setto <Code> [Player] | Set the language settings for "translate to" | ultimatetranslate.admin |
/lang reload | Reload the configurations | ultimatetranslate.admin |
Configuration:
#Default language if the player language is undefined or invalid. default-translate-from: en_us #Default language of server, to translate all languages to this language. default-translate-to: pt_br #Write/change this message following your default local code, and will be translated to the player location. welcome-message: '- Our server use a translation plugin, and your chat messages will be translated from' #Tag to indicates if a message is translated. translated-symbol: '*' #Send the original message back to sender(without translation). send-self-unstranslated: true
Download
Download from Download Page!
Change Logs:
See all change logs here: Click Here!
API:
If you, developer, wants to make your plugin global, and without additional lang.yml or other language systems, you can use this API to makes you logger messages translated to the player language, or server default language.
Visite the API page for more info.
Hay alguna forma de que haga traduccion a los demas plugins, para lo que digan los npc que creo se diga en español?
aw, all you need to is fix your getOnlinePlayers to use a Set vs. a List and you'd be good for 1.9
@FabioZumbi12
I think he means that it's translating his chat even when he is talking in English to English. Perhaps the plugin/service can determine if the player is speaking in English, and as such not auto-translate his message (I haven't used this plugin yet but considering it).
@LokeYourLord
The plugin will not translate if the default langue is equals the player language! The set que player language to the same as server default(set on config file).
And how do i disable translation for some users? Its not like everyone that is from somewhere else beside the US or England that does speak english. Its kind of annoying, i am from Norway and still my chat gets translated even if i speak english
@unclemark
Thanks :)
This is a great plugin ~ Simply awesome. I wished it worked with auto-detect language for people behind VPN's ~ but that would probably bee too intensive, but it looks like CloudeLecaw has the right idea. Totally sweet ! Thank you.
@BAI1
This plugin detect player locale from player ip. If messages come from other chat with offline players, probally dont work! This plugin catch the "player.getMessage()" translate and send the message using "player.setMessage(translation)". If other plugin dont use this method, probally dont work too!
@CloudeLecaw
Shure, i will add ;)
@CloudeLecaw
Permission ultimatetranslate.user:
Permission ultimatetranslate.admin:
@CloudeLecaw
Ok, answering you:
1. Only show null, but still translating to de because all plugin messages still be translating to de. And, on all my testes i did not reproduce this bug and i never get null. Erros on console?
2. Complaim this to Google ;)
3. Following guide, if the "From" and "To" is equals, plugin disable for that player! Is obvious, if the "from" and "to" is the same, dont need translation ><
Problem 1: Look commands and perms section! The player need ultimatetranslate.admin (or ultimatetranslate.*) to use this commands. On first join, the code "to" of that player will be set to "default-language-to" from configuration, only "from" will be set with detected player code.
Problem 2: Reload is never recommended, but now i think i fixed this, saving all player settings on disable plugin. I will upload this update soon.
The player without admin perm can use only "/lang info".
@CloudeLecaw
Hello,
Try the update!! Now you can use only the name of that player beggining you messages for send to the player location!
@CloudeLecaw
My plugin uses an API like Google API translator... then, google can translate from some local slangs too. Try for yourserlf, go to Google translator page and translate "Hallo" and see the result" Its the same :P
@CloudeLecaw
I think isnt a bug because, if you set en to de, will translate from English to De, and English dont have acentuations, then, if you use "ü ä ö i" the plugin will not recoginize as En language.