Touhou Patch Center:Tutorial

From Touhou Patch Center
Revision as of 16:10, 13 November 2021 by SaundglessDug (talk | contribs) (Created page with "===Chyngan dhe siyt langage=== Dhe langage o dhe siyt ''interface'' defauts tae dhe preferred content langage set in yer brouser settins automatic-liyk. Dhis settin's uised fo...")
Jump to navigation Jump to search

{{Project overview/Template:Pagelang}}

Seean as translaeters is by faur dhe maist important fowk in dhis fandom, we'v maed dhe process as eisie as possibel.

Register/Loggan in

  1. First, mak a accoont by gaun tae dhe tap richt link (or clickan dhe hiyperlink).
    If ye hae a accoont aareddie, skip tae step twa.
  2. Log intae yer accoont wi yer uisernaem an passwird at'll be in dhe saem bit dhe registraetion wis.
    (or click dhe hiyperlink)

Chyngan dhe siyt langage

Dhe langage o dhe siyt interface defauts tae dhe preferred content langage set in yer brouser settins automatic-liyk. Dhis settin's uised for tae set the initial target langage in the translaetion menu an aa. Thus, we recommend chyngan it til dhe langage ye want tae translaet intae - dhis wey, ye'll no wriyt ower existin translaets for anidher langage in a mistak.

To change this setting, click the Language Selector (the   ⧼kieli-load⧽ button at the top of the page) and enter the native name of your language, or its ISO 639-1 code.

This setting is stored as a cookie and saved to your user account if you're logged in.

Starting a translation into a language not yet on the site

Most of the time, this is no problem. Just select the language like you normally would, and the administration will create the necessary links and portal pages for integration into the Touhou Community Reliant Automatic Patcher shortly after.

In case your desired language is not present in the list, simply leave a message on the main talk page. Setting up a new language is a very quick process.

Editing text translations

Games Supported Languages with >95% coverage Languages started & in progress
Icon th06.png TH06 Embodiment of Scarlet Devil Inglis Literal English British English Chechen Google Translate English German French Spainish Italian Brazilian Portuguese Brazilian Portuguese troll translations Portuguese Indonesian Thai Tagalog Korean Polls Roushien Vietnamese Bulgairien Roumains Simplified Chinese Hungarian Ukrainian Croatian Arabic Esperanto Sakha Greek Traditional Chinese Bukvalni Srpski Azerbaijani Argentine Spanish 4Kids English Troll translations Yorkshire English Finnish Luxembourgish Malay Dutch Tiếng Việt (THVNFB translation) Norwegian Bokmål Toki Pona Czech Français québécois (familier oral) French troll translations Swaidish Turkish Scots Serbian
Icon th07.png TH07 Perfect Cherry Blossom Inglis British English Google Translate English German Spainish Arabic Italian Roushien Hindi Indonesian Greek Ukrainian Vietnamese Thai Korean Polls Brazilian Portuguese Brazilian Portuguese troll translations Bulgairien Simplified Chinese Hungarian Esperanto Croatian Traditional Chinese Argentine Spanish Literal English 4Kids English Yorkshire English Finnish French Luxembourgish Troll translations Tiếng Việt (THVNFB translation) Czech Persian Norwegian Bokmål Roumains Swaidish Portuguese Turkish Scots Toki Pona Macedonian Serbian Bukvalni Srpski Azerbaijani
Icon th075.png TH07.5 Immaterial and Missing Power Traditional Chinese Simplified Chinese
Icon th08.png TH08 Imperishable Night Inglis British English Google Translate English German Spainish Arabic Italian Hindi Korean Thai Bulgairien Vietnamese Polls Brazilian Portuguese Simplified Chinese Hungarian 4Kids English Greek Finnish French Indonesian Luxembourgish Dutch Portuguese Roushien Tagalog Swaidish Ukrainian Serbian Bukvalni Srpski Traditional Chinese Azerbaijani
Icon th09.png TH09 Phantasmagoria of Flower View Inglis British English German French Hindi Polls Thai Korean Simplified Chinese Hungarian Traditional Chinese 4Kids English Literal English Spainish Italian Luxembourgish Indonesian Tiếng Việt (THVNFB translation) Roushien Ukrainian Swaidish Brazilian Portuguese Turkish Bukvalni Srpski
Icon th095.png TH09.5 Shoot the Bullet Inglis British English German Roushien Indonesian Hindi Polls Thai Korean French Simplified Chinese Arabic Traditional Chinese 4Kids English Spainish Italian Lojban Dutch Brazilian Portuguese Chechen
Icon th10.png TH10 Mountain of Faith Inglis British English Google Translate English German Spainish Italian Brazilian Portuguese Roushien Hindi Bulgairien Indonesian Polls Vietnamese Thai Korean Simplified Chinese Czech Hungarian Esperanto Portuguese Traditional Chinese 4Kids English Greek Finnish French Luxembourgish Dutch Swaidish Roumains Ukrainian
Icon alcostg.png UB Uwabami Breakers Inglis British English German Spainish Italian Indonesian Yorkshire English Finnish Simplified Chinese Korean Malay Luxembourgish Traditional Chinese
Icon th105.png TH10.5 Scarlet Weather Rhapsody Simplified Chinese Inglis German Vietnamese Roushien French Français québécois (familier oral) Korean Thai Swaidish
Icon th11.png TH11 Subterranean Animism Inglis British English Google Translate English German Spainish Roushien Bulgairien Hindi Vietnamese Polls Ukrainian Thai Korean Simplified Chinese Hungarian Indonesian Traditional Chinese Brazilian Portuguese 4Kids English Greek Swiss German Finnish French Italian Luxembourgish Dutch Tiếng Việt (THVNFB translation) Swaidish Czech Esperanto
Icon th12.png TH12 Undefined Fantastic Object Inglis British English Google Translate English German Spainish Roushien Hindi Thai Vietnamese Korean Simplified Chinese Hungarian Serbian Traditional Chinese 4Kids English Finnish French Luxembourgish Brazilian Portuguese Indonesian Swaidish Czech Bukvalni Srpski Italian
Icon th123.png TH12.3 Touhou Hisoutensoku Simplified Chinese Inglis German Vietnamese Roushien Korean French Thai Spainish Swaidish
Icon th125.png TH12.5 Double Spoiler Inglis British English German Spainish Italian Hindi Korean Thai Simplified Chinese 4Kids English Yorkshire English French Hungarian Indonesian Luxembourgish Malay Dutch Brazilian Portuguese Roushien Chechen
Icon th128.png TH12.8 Fairy Wars Inglis British English Chechen Google Translate English German Spainish Italian Roushien Ukrainian Hungarian Hindi Vietnamese Korean Thai Simplified Chinese Esperanto 4Kids English Pirate English Luxembourgish Polls Dutch Brazilian Portuguese Hungarian French Indonesian Swaidish
Icon th13.png TH13 Ten Desires Inglis British English German Spainish Italian Roushien Vietnamese Hindi Korean Thai Simplified Chinese Hungarian 4Kids English Greek Yorkshire English Finnish French Italian Luxembourgish Malay Dutch Polls Brazilian Portuguese Indonesian Hindi Swaidish Portuguese
Icon th135.png TH13.5 Hopeless Masquerade Simplified Chinese Inglis German Vietnamese Korean Thai Roushien
Icon th14.png TH14 Double Dealing Character Inglis British English German Spainish Italian Polls Roushien Ukrainian Bulgairien Indonesian Thai Vietnamese Korean Simplified Chinese Czech Hungarian Brazilian Portuguese 4Kids English Swiss German Pirate English Troll translations Yorkshire English Finnish French Luxembourgish Mongolian Malay Norwegian Bokmål Dutch Portuguese Klingon Tiếng Việt (THVNFB translation) Traditional Chinese Hindi Swaidish Toki Pona Chechen Esperanto
Icon th143.png TH14.3 Impossible Spell Card Inglis British English German Bulgairien Roushien Korean Vietnamese Thai Simplified Chinese Arabic 4Kids English Spainish Finnish French Indonesian Italian Norwegian Bokmål Polls Portuguese Brazilian Portuguese Ukrainian Czech Swaidish
Icon th145.png TH14.5 Urban Legend in Limbo Inglis German Indonesian Vietnamese Korean Thai Simplified Chinese Hindi Brazilian Portuguese Swaidish
Icon th15.png TH15 Legacy of Lunatic Kingdom Inglis British English German Ukrainian French European Spanish (Suzunaan Blog translation) Roushien Thai Vietnamese Korean Simplified Chinese Czech Arabic Traditional Chinese Hungarian Argentine Spanish Brazilian Portuguese 4Kids English Esperanto Spainish Latin American Spanish Canadian French Indonesian Swaidish Portuguese Chechen Italian
Icon th155.png TH15.5 Antinomy of Common Flowers Inglis German Korean Vietnamese Thai Simplified Chinese Arabic Roushien Roumains Indonesian Spainish French French troll translations Brazilian Portuguese Swaidish Chechen
Icon th16.png TH16 Hidden Star in Four Seasons Inglis British English German European Spanish (Suzunaan Blog translation) Roushien Ukrainian French Czech Indonesian Vietnamese Thai Korean Simplified Chinese Hungarian Spainish Italian Brazilian Portuguese Swaidish Troll translations Portuguese Serbian troll translations
Icon th165.png TH16.5 Violet Detector Inglis German European Spanish (Suzunaan Blog translation) Vietnamese Thai Korean Simplified Chinese French Roushien Spainish Indonesian Brazilian Portuguese Swaidish
Icon th17.png TH17 Wily Beast and Weakest Creature Inglis German European Spanish (Suzunaan Blog translation) Brazilian Portuguese Roushien Czech Vietnamese Korean Indonesian Simplified Chinese French Italian Argentine Spanish Ukrainian Tagalog Swaidish Thai Bukvalni Srpski
Icon th175.png TH17.5 Touhou Gouyoku Ibun Inglis German Spainish Korean Vietnamese Simplified Chinese Brazilian Portuguese Roushien French Swaidish
Icon th18.png TH18 Unconnected Marketeers Inglis German European Spanish (Suzunaan Blog translation) Roushien Korean Vietnamese Simplified Chinese Italian Czech Hungarian Brazilian Portuguese Bulgairien Swaidish Thai French Literal English Bukvalni Srpski Indonesian
Icon th185.png TH18.5 100th Black Market Inglis Simplified Chinese European Spanish (Suzunaan Blog translation) Korean Vietnamese Roushien Brazilian Portuguese Thai French Traditional Chinese Swaidish
Icon th19.png TH19 Unfinished Dream of All Living Ghost Inglis European Spanish (Suzunaan Blog translation) Simplified Chinese Esperanto Spainish Literal English French Bukvalni Srpski Korean Indonesian Roushien Vietnamese Traditional Chinese Swaidish Italian
Icon nsml.png NSML New Super Marisa Land Inglis German Spainish Roushien French Korean
Icon megamari.png MegaMari MegaMari Inglis German Spainish Roushien Brazilian Portuguese Arabic Korean
Icon marilega.png MariLega MarisaLand Legacy
  1. Go to the main page which can accessed at anytime by clicking the logo.
    (Or again, click the hyperlink)
  2. Choose a game you wish to translate.
    On the right, you can see the list of translatable games, their progress in the respective languages, and whether they are finished.
  3. Choose a piece of translatable content you want to work on.
  4. Click on the small Translate this page label at the top of that page (Translate this page in your language).

    If the page you are on already has a translation, it will instead say

    This page is a translated version of the page X and the translation is X% complete.

    In that case, the first link will bring you to the translation interface.

  5. Verify that the correct language you want to translate into is selected in the Language drop-down menu.
    This will automatically be set to the language of the site interface. If you had to change it, don't forget clicking Fetch afterwards.
  6. Double-click the message boxes and begin typing your translation in.
  7. Hit Save.
  8. Then, just follow steps 6 + 7 for the remainder of the boxes.

Things to know

  • If you're translating from another translation (most likely English), be sure to add the wiki page of this translation to your watchlist by clicking the star next to the search bar on the top. This will send you a notification whenever something has been changed and needs to be reflected in your language.
  • If any text of an existing translation (again, most likely English) would not change in your translation, leave the respective box empty and don't copy-paste the text. This way, everyone can take full advantage of patch stacking.
  • Refer to your language's portal page for stylistic guidelines.

Dialog

  • Line breaks are never done automatically. It's up to you to make sure that the text fits into the dialog box.
  • You can always use a maximum of two lines for every message box, even if there is only one line in the original. The opposite is also true. We went to great lengths to make this possible, so please do make use of this. ☺

Endings

Since these do not show up in replays, the patcher can provide an unlimited amount of text lines here.

  • There can always be a maximum of 5 lines at the screen at any time.

Character name translations are automatically taken from the respective translation group.

Editing graphics

Compared to the simple translation of plain text, multilingual image translation requires a rather involved workflow:

  • (Optimally, the original text should be transcribed first.)
  • A basic image editing project needs to be created, erasing the original text, recreating possible backgrounds and selecting appropriate fonts.
  • The required fonts should be noted down so that the editors for other languages can obtain them.
  • The original text needs to be translated.
  • Finally, the translated text needs to be edited into the base image, taking possible sprite boundary limits imposed by the game into account. (As of now, we couldn't change those limits without including the whole ANM file with all its original uncompressed image data, which would unnecessarily bloat the size of the patches.)

Fonts

Fonts should ideally have a sufficiently large Unicode coverage so that the same template can be used across multiple languages.

Unfortunately, the most appropriate fonts often happen to have a rather limited coverage - and finding one that looks similar and has a wider coverage can be an arduous, if not impossible task.

Hence, you don't need to care about this for any other language than your own (but other translators would certainly appreciate it if you did).

A consistent appearance across the languages would surely be nice thing to have, but this is not a requirement or official policy - each language is still free to choose whatever fonts the editors prefer.

If you do care, here's a test string with characters from some of our active languages which might be problematic, for your convenience:

ÁÉÍÓÚÀÈÌÒÙÂÊÄËÏÖÜÃÑÕŐŰĄĘŁŻ
áéíóúàèìòùâêäëïöüãñõőűąęłż
ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ
αβγδεζηθικλμνξοπρστυφχψω
АБВГДЕЖЗИЙКЛМНОӨПРСТУҮФХЦЧШЩЪЫЬЭЮЯ
абвгдежзийклмноөпрстуүфхцчшщъыьэюя
« » “ ” ‘ ’ “ „ …

Efficiently testing translations in-game

Select the skipgame patch in addition to your translation to remove all gameplay sections and reduce spell cards to a few seconds. This leaves only the dialogue and spell card names and allows you to quickly proofread everything without spending time on dodging bullets.

The separate instant_ending allows you to access all endings by making one single gameplay choice in one stage.

Editing Music

Follow the tutorial here.

In-game TL notes

In Team Shanghai Alice games, these can be inserted basically anywhere text is rendered, using the {{Tlnote}} template; check that page for details. Currently not supported for Tasofro games, so don't use the template on their pages!

Italics and bold formatting is not supported, but you could try a Unicode boldness generator for A-Z.

Advanced configuration either in global.js (for all games), <game ID> (for a specific game), or in your runconfig:

{
    "tlnotes": {
        "reference_resolution": [1280, 960], // Valid for all games, even the 640×480 ones. Font and region size are relative to this one. You typically don't need to change this.
        "region_topleft": [x, y],
        "region_size": [width, height],
        "read_speed": 35, // In UTF-8 bytes per second; determines the scrolling speed of longer TL notes that exceed the size of the region. Higher is faster.
        "fade_ms": 500, // Fade-in speed.
        "valign": "top" | "center" | "bottom", // Vertical alignment for notes that are shorter than the height of the TL note region. Default is "bottom".
        "font": "'MS Gothic' 32 0 400 DEFAULT_QUALITY", // Using the same font syntax used for fontrules, explained in https://github.com/thpatch/thcrap/blob/23fd91a/thcrap/src/textdisp.h. Also subject to those same replacement rules.
        "outline_radius": 2, // Capped at 15, because it's drawn on the CPU and actually not that fast, and everything larger just *really* looks bad.
    }
}

To disable TL notes completely, simply add , "tlnotes": "" before the last } of your configuration file, created by thcrap_configure.