
PiranMOTO Translate connects to your local LFS and uses DeepL's AI language translation to automatically translate chat in other languages to yours, and to translate your own chat into other languages.

You will need a DeepL API account. DeepL allows you to translate 500,000 characters for free each month with a free account, or charges EUR 20 per 1,000,000 characters for a paid account. 

When running, any player text in a language other than your set language will be automatically identified and translated, and written to your local chat along with a language identifier.

  *<FLYING ET : mi è scoppiata una gomma
  IT: my tire blew out

To speak in another language, use the /o command to send your message to only your InSim. The first parameter should be the identifier of the target language, and the rest of the message will be translated. For example:

  /o CS I can speak Czech, I learned it from a book

The text will be translated and sent to the server as you:

  [PM] Jam 616: umím česky, naučil jsem se to z knihy
  
Have fun!


Setup:
 - Create an account with DeepL.com (API type, https://www.deepl.com/pro/change-plan#developer)
 
 - Unzip files to a suitable directory
 
 - Configure the PiranMOTO_Translate.cfg file with:
   host         - LFS IP
   port         - LFS port
   adminpass    - LFS admin password, if set
   lfsname      - LFS username
   language     - Your default language
   apikey       - DeepL API key
   translateurl - DeepL translation URL (different URL is required for free/paid accounts)
   
 - Run PiranMOTO_Translate.exe 
   
   
Notes:
  - It's AI. The best description of its ability is Dlocky's "close but no". It is helpful, it is not perfect. (You can make it better by constructing your sentences carefully.)
  
  - DeepL only counts characters that are translated. All input spoken by other players is sent for translation, but only the input which is detected to be a different language and translated is counted towards your use. Usage can be checked live at the DeepL website.
  
  - PiranMOTO_Translate will keep track of text that produced no translation, and will ignore repetitions. The list is reset with every program start.
  
  - Languages are limited by DeepL support and some character code issues. Please report any issues you encounter in a language listed as supported.
  
  
Known bugs:
  - Sometimes a 'curl error' occurs (after many days of constant use). Restarting will resolve the issue.
      
      
Supported Languages by code:
  CS    Czech
  DA    Danish
  DE    German
  EN    English (British)
  ES    Spanish
  ET    Estonian
  FI    Finnish
  FR    French
  HU    Hungarian
  IT    Italian
  LV    Latvian
  NL    Dutch
  PL    Polish
  PT    Portuguese (European)
  PT-BR Portuguese (Brazilian)
  RO    Romanian
  SK    Slovak
  SL    Slovenian

Partial support:
  LT    Lithuanian
  SV    Swedish

Unsupported:
  BG    Bulgarian
  EL    Greek
  EN-US English (American)
  RU    Russian
  JA    Japanese
  ZH    Chinese