TinyLifeWeb/docs/articles/localization.md

4.9 KiB

Contributing Localizations

If you're interested in contributing new languages to Tiny Life's localization or editing the text of existing translations, it is greatly appreciated! Sadly, I don't have the ability to pay translators right now, so any work you do will be volunteer-based. That being said, you will, of course, be credited in the game's Credits Menu with a link to a social media profile of your choice, and you will greatly contribute to the community of people who play the game in the language you work on!

If you want to join the team of translators, the first step is to message Ellpeck, either privately after joining the Discord server, or in the #tinylife channel. You'll also need an account on the translation site, where you can log in directly with a Google account, or create a new account with any email address.

The following list contains a few bits of additional information that you should keep in mind when translating:

  • You don't need any kind of programming or advanced file editing experience, since you'll be translating on the previously mentioned translation site. When translating, you should set an existing language as your reference locale (preferably English), since most of the term names don't give much information about the actual content of the text they represent.
  • In this document, I'm using the words "translate" and "localize" semi-interchangeably, but it should be noted that this is a localization, meaning any jokes or references that don't make sense in the language you're translating for should be edited to make them sound logical.
    For example, a pun like Standing Up to Sitting might not work well in other languages, where "standing up to something" is not a valid figure of speech. As a result, the translation shouldn't literally reference the act of standing up if it doesn't also mean "making a defense against something".
  • I know that this is difficult to accomplish in some languages, but please try to keep gender-specific language to a minimum. If this is entirely impossible in your language, please try to use constructs that your place of residence usually sticks to, similar to the English "Latinx" or the German "Mitarbeiter*in".
  • Tiny Life is an inclusive game, for all genders, sexualities and identities. Even if the language you translate for belongs to a country where you fear that certain aspects of the game, like asexuality and aromance, might be ill-received or get the game banned, translations should not be altered to remove references to any such things.
  • Tiny Life should be suitable for as many audiences as possible, so please avoid using sexually explicit terms and stick to innuendo when it comes to fooling around and the like. In a lot of cases, this is less of a concern about the game's audience and more of a concern about the game's age ratings in stores.
  • There are several placeholders and formatting codes that should not be deleted or changed, notably:
    • {0}, {1}, etc. are placeholders for text that is fed into the localized term dynamically. The order of these placeholders is not important, but the number that they contain is.
      For example, in Should {0} really scrap their book {1}?, the {0} will be replaced with the person's name, and the {1} will be replaced with the name of a book. If your localization requires that the book's name is placed before the person's name in the sentence, all you have to do is swap the order of these placeholders.
    • <tb>, <i ...> and other constructs that are surrounded by < and > are formatting codes. These should be kept in place, and any additional text between the < and > should also be kept in place.
      For example, in You can rotate furniture by pressing <k Rotate>., the formatting code will be replaced with the key value of the keybind to rotate furniture and other objects. If the word Rotate in it was changed (or translated), the link to the keybind would be broken.
  • If the original translation of a term changes, the Needs Edit label will be added to it. Once you edit your translation to match the change, please remove the label from that term within your translation. You can see all terms that need editing by putting the label's name into the search field.
  • To test your translation, export it as JSON (not JSON Flat) and put it into the Content/Localization directory of the game's installation. If it's not part of it already, its name also has to be added to the LanguageNames.json file.
  • You don't need to finish the translation to your language, by any means! Since you're doing this for free, I don't expect you to, either. An incomplete translation means that some in-game text will be translated, and it also means that anyone who comes along after you will have less work to do!