Hi everyone,

We've had some great progress with the translations and we're excited to keep that going. We've got coordinators in place for a number of languages now! We've also heard from a few of you that you'd like to be able better to coordinate translations, and that some of you already have, so to make that easier we've set up a space on Discord for you to do so. Please message me, AlejoFBlack (461331989660958721), on Discord with the username or email address that you use here, or your BOTC app ID (any option is fine) and I'll add you to the space. I'm not sure how many requests I'm going to have to handle, so sorry if it takes a while for me to get back to you. Feel free to follow up if it's been a couple of days!

-Alejo

Component Approved Translated Unfinished Unfinished words Unfinished characters Untranslated Checks Suggestions Comments
App Interface 0 0 0 0 0 0 8
Game Content 44% 70% 277 4,448 25,012 82 61 1 174
Glossary Glossary 0 0 0 0 0 0 3
Script Tool 99% 0 0 0 0 0 0 0

Summary

Project website botc.app
Instructions for translators

This is the translation repository for the official Blood on the Clocktower app and accompanying game materials. English is the base language for the app and any currently untranslated text (both from app and game) will fall back to the English version in the app. Outdated translations will be marked as such in the translation interface. Whenever the app is updated, the most recent translations will be pulled from here and used in the app. The translations are split into 3 parts:

  • Glossary: this contains the general game terms that are being used across the app and game materials. It is (currently) not shown anywhere in the app, but being used to help translators use the same terms for important elements of the game.
  • Game Content: the actual game content that is also being used in the the printed board game. It consists of Edition descriptions, Character text, Reminder text (reminders are shared between different characters) and Jinxes. This content should rarely change and be stable, once translated.
  • App Interface: all interface text that is being used in the app. These will be updated as the app is undergoing further development, so expect frequent changes here and check back frequently.

How to translate

Select the component you want to translate and the language, if it's already been added. Languages that are officially translated (meaning there is a printed version of the game available in this language) require the "official translator" role for updating the game translation. Fan translators can update all game translations for unofficial languages and all app interface translations for all languages, except English. The translations need to follow a few important rules in order to be usable on the app:

  • General: Some translations contain line breaks (\n) and / or tab spaces (\t). These are used for visual formatting and it's recommended to use them appropriately in the translated text as well. Otherwise, the translated version might look weird in the app.
  • Game Content: Night reminder text (roles.[role].first and roles.[role].other) sometimes contain :reminder:as a placeholder for a Reminder token icon. DO NOT TRANSLATE this placeholder! Example: The Butler chooses a player. :reminder: -> Der Butler wählt einen Spieler. :reminder:
  • Game Content: Night reminder text (roles.[role].first and roles.[role].other) sometimes contain *SOMETHING* to mark text as bold. Translate the text, but keep the asterisks in place! Example: Show the Townsfolk character token. Point to both the *TOWNSFOLK* and *WRONG* players. -> Zeige das Bürger-Plättchen. Zeige auf den *BÜRGER* und auf den *FALSCH*en Spieler.
  • App Interface: Curly braces placeholders are being used throughout the app text and are either numbered ({0}, {1}, ...) or named ({link}). DO NOT TRANSLATE these placeholders! They are being used to insert formatting, HTML elements or dynamic information in their place. Example: Seat {0} -> Sitz {0}, Download the latest {label} version here. -> Lade die neueste {label} Version hier runter.
  • App Interface: Pluralized strings are defined with a vertical bar between each form of the string. The first form is singular, the second form is plural. Keep the vertical bar in place, but translate each form accordingly. If your language has a different form for zero and multiple, the correct form is zero something|one something|many something. Example: Demon|Demons -> Dämon|Dämonen, First Day|Day {n} -> Erster Tag|Tag {n} (pluralized strings might also contain curly braced placeholders)
Project maintainers3 User avatar AlejoFBlackUser avatar bra1nUser avatar oddGarrett
Project reviewers218 User avatar RaythewhateverUser avatar PoedersuikerUser avatar survivorkikiUser avatar kloofelUser avatar kpshkUser avatar CamiUser avatar AggieUser avatar coolseelUser avatar dj_dj_djUser avatar ScienceGuyUser avatar EardstapaArcticaUser avatar MalleUser avatar lostmorningUser avatar CaederisUser avatar h3oCharlesUser avatar castro732User avatar LuminatorUser avatar CarlitoMTUser avatar MavidUser avatar DianaJayUser avatar invalidCardsUser avatar jan_SolanuUser avatar elcerenUser avatar FarasCZUser avatar Asdepique
Language Dutch
Language code nl
Text direction Left to right
Case sensitivity Case-sensitive
Number of speakers 32,854,898
9 hours ago

String statistics

Strings percent Hosted strings Words percent Hosted words Characters percent Hosted characters
Total 2,156 18,380 104,621
Approved 75% 1,635 53% 9,833 54% 57,125
Waiting for review 11% 244 22% 4,099 21% 22,484
Translated 87% 1,879 75% 13,932 76% 79,609
Needs editing 9% 195 15% 2,886 15% 16,026
Read-only 0% 0 0% 0 0% 0
Failing checks 2% 61 4% 867 4% 4,867
Strings with suggestions 1% 1 1% 15 1% 82
Untranslated strings 3% 82 8% 1,562 8% 8,986

Quick numbers

18,380
Hosted words
2,156
Hosted strings
87%
Translated
and previous 30 days

Trends of last 30 days

+1%
Hosted words
+100%
+1%
Hosted strings
+100%
+2%
Translated
+84%
+57%
Contributors
+100%
User avatar weblate:commit

Changes committed

Changes committed yesterday
User avatar Clijmart

Translation approved

yesterday
User avatar Clijmart

Translation approved

yesterday
User avatar Clijmart

Translation approved

yesterday
User avatar Clijmart

Translation approved

yesterday
User avatar Clijmart

Translation approved

yesterday
User avatar Clijmart

Translation approved

yesterday
User avatar Clijmart

Translation approved

yesterday
User avatar Clijmart

Translation approved

yesterday
User avatar Clijmart

Translation approved

yesterday
Browse all changes for this language