Bir PlayDrop oyununu ve oyun sayfasını yerelleştir
Oyuncunun dilini sdk.host.language ile oku, 20 dilden hangilerini destekleyeceğini seç, oyun sayfasını ve görsellerini listingLocalizations ile çevir.
PlayDrop’un web sitesi ve uygulamaları 20 dil konuşur. Bir oyun, oyuncunun dilini iki ayrı yerde izleyebilir: kodda çevirdiğin oyunun kendisinde ve catalogue.json içinde çevirdiğin oyun sayfasında.
İngilizce artı bir dille başla
İngilizceyi ve farklıysa kullanıcının dilini sun. O oyunculara ulaşmayı planladığında daha fazla dil ekle. Yarım bir çeviri iyi bir İngilizce oyundan daha kötü hissettirir; bu yüzden ekranları bütün olarak çevir.
Oyunu çevir
sdk.host.language, oyuncunun PlayDrop’un 20 dili arasındaki dilidir: en, fr, de, es, pt-BR, it, nl, sv, nb, fi, pl, tr, ar, th, vi, id, ja, ko, zh-Hans ve zh-Hant.
const STRINGS = { en: { play: "Play" }, fr: { play: "Jouer" } };
let language = "en";
try { language = sdk.host.language; } catch { /* older host */ }
const t = STRINGS[language] ?? STRINGS[language.split("-")[0]] ?? STRINGS.en;sdk.host.locale eski değerdir; ilk on dille sınırlıdır ve diğerleri için en döndürür; language değerini tercih et. İkisi de çok eski ana uygulamalarda host_locale_unavailable fırlatabilir. Arapça sağdan sola yazılır: oynanışı değil düzeni aynala ve Almanca ile Fincedeki uzun kelimeleri test et.
Oyun sayfasını çevir
sourceLocale değerini oyun sayfasının yazıldığı dile ayarla, sonra listingLocalizations içine dile göre anahtarlanmış, her dil için eksiksiz bir çeviri ekle:
{
"sourceLocale": "en",
"displayName": "Moon Jump",
"description": "Jump between lunar platforms and reach the flag.",
"listingLocalizations": {
"fr": {
"displayName": "Saut lunaire",
"subtitle": "Des plateformes lunaires contre la montre",
"description": "Sautez de plateforme en plateforme et atteignez le drapeau.",
"controls": "Touchez ou appuyez sur Espace pour sauter.",
"listing": { "heroLandscape": "listing/locales/fr/hero-landscape.png" }
}
}
}- Her çevirinin kendi
displayNamedeğeri olmalıdır.subtitle,description,inspirationPrompt,controls,makingOfvereleaseNotesalanlarını da çevirebilir. - Başlığı çevrilmiş bir ana görsel gibi çevrilmiş görseller, ana oyun sayfası ile aynı alanları kullanarak çevirinin
listingnesnesine girer. - PlayDrop her çevirinin kaynak metnin hangi sürümüyle eşleştiğini kaydeder. Kaynak oyun sayfası değiştiğinde çevirileri aynı yüklemede güncelle.
Çevrilmiş bir oyun sayfası oyunu çevirmez, çevrilmiş bir oyun da oyun sayfasını çevirmez. Yalnızca oyunun gerçekten desteklediği dilleri listele.
Oyuncular ve arama
Web sitesi her dili, sürümler arasında bağlantılarla kendi adresinde sunar; böylece arama motorları okuyucunun dilini önerebilir. Oyuncular PlayDrop dilleriyle eşleşen çeviriyi, yoksa kaynak dili görür.