Integration
Languages
The game interface language is chosen per launch with the lang field of /playGame.do.
Codes#
lang is a standard BCP 47 code: en, de, pt-BR, zh-Hans, zh-Hant, es-419, … The platform normalises it before use:
- case does not matter (
PT-br→pt-BR), and_is accepted instead of-(pt_BR); - a few common variants are mapped to the code the games use:
| You send | Used as |
|---|---|
zh, zh-CN, zh-SG | zh-Hans |
zh-TW, zh-HK | zh-Hant |
nb, nn | no |
pt-PT | pt |
en-US, en-GB | en |
sr-Latn-RS | sr-Latn |
uz-Latn-UZ | uz-Latn |
The code is a 2–3 letter language followed by optional subtags separated by - or _ (letters and digits), at most 16 characters in total.
Which languages a game supports#
Each game accepts exactly the languages its client offers. The list is the languages array of the game in GET /games/health and the Languages column on the games list. Across the whole catalog there are 43 languages:
| Code | Language | Games |
|---|---|---|
ar | Arabic | 7 |
bg | Bulgarian | 308 |
cs | Czech | 305 |
da | Danish | 430 |
de | German | 445 |
el | Greek | 308 |
en | English | 446 |
es | Spanish | 445 |
et | Estonian | 308 |
fi | Finnish | 445 |
fr | French | 445 |
hi | Hindi | 80 |
hr | Croatian | 308 |
hu | Hungarian | 308 |
hy | Armenian | 235 |
id | Indonesian | 445 |
is | Icelandic | 73 |
it | Italian | 445 |
ja | Japanese | 445 |
ka | Georgian | 308 |
ko | Korean | 445 |
lt | Lithuanian | 308 |
lv | Latvian | 308 |
mk | Macedonian | 72 |
ms | Malay | 73 |
nl | Dutch | 308 |
no | Norwegian | 445 |
pl | Polish | 308 |
pt | Portuguese | 308 |
pt-BR | Brazilian Portuguese | 308 |
ro | Romanian | 445 |
ru | Russian | 446 |
sk | Slovak | 245 |
sr | Serbian | 73 |
sr-Latn | Serbian (Latin) | 7 |
sv | Swedish | 445 |
th | Thai | 445 |
tr | Turkish | 445 |
uk | Ukrainian | 320 |
uz-Latn | Uzbek (Latin) | 7 |
vi | Vietnamese | 445 |
zh-Hans | Simplified Chinese | 217 |
zh-Hant | Traditional Chinese | 445 |
Default language and errors#
- If
langis omitted, the project default language is used (admin panel → Projects → Technical settings; the panel offers Russian, English and Ukrainian). - If the code is malformed or the game does not offer it, the launch is answered with HTTP 400
UNSUPPORTED_LANGUAGE. Choose another language or omitlang.
Switching language#
Launch again with another lang. If the player has an unfinished round, the same session continues in the new language; otherwise a new session is created. The session stores the standard code and the game receives the code its own client expects.
The session language is returned in meta.language of the launch response.