top of page

1,752 posts in one day: how our devblog learned twelve new languages šŸŒ

Writer: Marcel Dütscher
Marcel Dütscher
15 hours ago
3 min read

November 7, 2026


In August our game learned fourteen languages in a week. The devblog lagged behind for a long time. If you opened the site in French or Japanese, the blog page only told you that there were no posts in this language. The language switcher above every article offered all fourteen languages, but twelve of them led to an error page. šŸ™ˆ Since October 3, that's over.


The numbers. Back then the blog had 146 articles, each in German and English. In a single day twelve languages joined them: French, Spanish, Italian, Portuguese, Dutch, Polish, Turkish, Russian, Ukrainian, Japanese, Korean and Chinese. That's 146 Ɨ 12 = 1,752 new posts, plus 72 translated categories. Every translation carries the date of the German original. A post from June 20 is dated June 20 in Polish too, not October 3. All versions are linked to each other, so the language switcher now takes you to the same article in the other language.


Why not just press the translate button? Our website runs on Wix, and Wix can translate posts by itself. For us, though, that would have meant clicking "Translate" 1,752 times and then changing the date by hand 1,752 times. Our credit wouldn't have come close either: we would have needed around 746,000 words and had about 43,000. And a general-purpose machine translation doesn't know the words our game uses.


The game as a dictionary. So we built it ourselves. A small program fetches every post through Wix's interface (an API, a door through which programs instead of people talk to the website) and splits it into paragraphs. The AI translates paragraph by paragraph and gets the game's own language files as a dictionary. That way the workbench in the blog has the same name as the button in the game. Commands like /tp, key names, version numbers and names stay as they are. Then a checker program compares every translation with the original. It makes sure the paragraph count, the links, the numbers and the version numbers all match, and that the script is right. Japanese has to really be in Japanese characters. Only when everything matches does a post go online.


A second look at sensitive topics. Around 25 posts per language got a second review: everything about children and the school club, about child safety, about our licence and about the story. In those posts one wrong word can do real harm. Afterwards we checked those 300 posts once more on the live site.


The expensive lesson. šŸ’ø On the first try every package had a translator and a reviewer. Both were AI agents that gathered their files on their own. That cost around 10 million tokens per package (tokens are the little word pieces AI is billed by), and after 6 % of the work our account hit its limit. On the second try we prepared everything: each package got one compact input file with the texts and exactly the matching dictionary entries. The AI wrote its translation in a few big pieces, followed by a single check run. A smaller, faster model (Sonnet) was enough for that. We never ran more than five agents at once, or our AI account's per-minute limit kicks in. That way 98 agents ran through without a single error, and everything together cost about as much as one single package had before. The lesson goes far beyond the blog: AI is fast and cheap when you lay out everything it needs. It gets expensive when it has to go looking for itself.


It isn't flawless. Machines translate amazingly well, but not perfectly. In the game's texts a bench once turned into a workbench and a hangar into a bay on the sea, in eight languages at once. For the blog we explicitly ask the translators not to infer anyone's gender from a first name. In some languages they did it anyway, in Russian, Polish and French for example. So we now check those spots ourselves.


Since then it just runs along. Every new post, every update post included, is translated into the twelve other languages once it's out in German and English, and published with the same date. If we later change something in the German text, the system notices which translations are out of date and translates them again. And since version 2026.10.4, the "What's new?" window in the game shows the news in your language too.


If you speak one of these languages and trip over a sentence, tell us: in the game with F1 (F2 in the browser) or on GitHub. šŸ™

Recent Posts

See All
Justus' laptop is our yardstick šŸ’»

November 7, 2026 Our strategy contains one question every new idea has to pass: Does it still run in a browser tab? For us, performance isn't a clean-up phase at the end. It's a feature of the game, a

Ā 
Ā 

Comments


Commenting on this post isn't available anymore. Contact the site owner for more info.
bottom of page