Global Çapta Oyun Yerelleştirilmesinin Temel 10 Kuralı! Bir oyunun belli bir bölgede yayınlanmasıyla birlikte global çapta da başarı elde etmesi oyun geliştiricileri için önemli bir adımdır. Bu adımın ilk aşaması ise oyunun yerelleştirmesinden geçer.
Bu nedenle geliştirme aşamasında bazı kurallar, oyun geliştiricileri için yerelleştirme sürecinin kolaylaştırılmasını sağlar. Peki bu kurallar nelerdir?
1. Yerelleştirilme yapılacak dilleri önceden seçilmesi
Yerelleştirme başlanılmadan önce potansiyel dillerin belirlenmesi doğru hedef kitleye ulaşılması açısında büyük önem taşıyor. Bununla birlikte rakip oyun yerelleştirmeleri de bu konuda doğru adımlar da etkili olabilir.
Bununla birlikte, yerelleştirme planı ne olursa olsun, gelecek çevirileri kolaylaştırmak için kaynak dilin İngilizce yapılması büyük önem taşır. Oyunu geliştirirken daha ilk günden onu en az iki dilde çıkarılması diğer dillerde yerelleştirme adımlarına ışık tutar.
2. Arayüzü olası dillere göre ayarlanması
Arayüz öğelerini tasarlarken, başka diller için %30 veya daha fazla oranda ekstra boşluk planlamak genel olarak iyi bir fikir olarak değerlendirilir. Bu durum özellikle de kısa stringler (menü öğeleri, kullanıcı arayüzü, vb.) için geçerlidir.
Bununla birlikte, eğer Kural #1’i hesaba katılırsa ve oyun çevirisi için olası dillerin ön bir listesini çıkarıldıysa arayüz olası en zor dile göre ayarlanmalıdır.
Örneğin, metnin Almanca versiyonu, İngilizce versiyona göre ortalama %30 daha uzun olacaktır. Rusça versiyon ise yaklaşık %10 daha uzun olacaktır. Aynı şey genellikle Arapça versiyon için de geçerlidir. Diğer yandan, geleneksel Çince karakterler İngilizce metinlere göre genellikle %30 daha az yer kaplar.
Baytlardan bahsedecek olursak, bir Latin alfabe karakteri bir bayta eşitken, Kiril ve Arapça karakterler iki katı boyutta olacaktır; bu yüzden veri alanını planlarken bunlar da göz önünde bulundurulmalıdır.
3. Metin dizilerini kodun içine gömülmesi
Metni çeviriye uygun hale getirirken, bu sabit kodlanmış (hard-coded) diziler kaybolur. Tüm çevrilebilir stringler, kodun hiçbir parçasına dokunmadan düzenlenebilir halde olmalıdır.
4. Zaman, tarih, ölçü birimleri ve sayıların da yerelleştirilmesi
Yerelleştirme yapılabilmesi için sayısal bilgiler de kodun içinden çıkarılabilir halde olmalıdır, bu yüzden onlarda da sabit kodlama yapmaktan kaçınılmalıdır.
Arayüzdeki sayıları da yeniden tasarlamaya hazır olunmalıdır. Tarih formatlarının ve ölçü birimlerinin neredeyse her dilde farklı olmasının üstünde ayrıca durulmalıdır.
5. Kodu ulaşılabilir hale getirmek için yer tutucuların ve formatörlerin kullanılması
Söz konusu yerelleştirme, çeviri ya da metin düzenlemeden ibaret olduğunda; yer tutucu kullanmak bazen sabit kodlamaya güzel bir alternatif olarak görülebilir. Ancak yer tutuculara erişim sağlanılmazsa bu durum iki tarafı da keskin bir bıçağa dönüşür.
Bu sorunun temelinde, farklı bir dillerde kelime ya da cümle sıralamasının tamamen farklı olması yatar. Bu yüzden bu konudaki tavsiye, bağlam içine yerleştirilebilmeleri için yer tutucuları cümlenin bir parçası haline getirmektir.
6. Metinlerde görsellere yer verilmemesi
Eğer oyunda görseller kullanılacaksa, onların da yerelleştirilmesi gerekir; özellikle de metin içeriyorlarsa. Bu da tüm görselin sıfırdan tasarlanması anlamına gelir.
Görselleri ve kreatif varlıkları yeniden tasarlamak bazen iyi bir fikir olabilir, böylece hedef bölgenin renk ve karakter standartlarını karşılanabilir. Ancak amaç yeniden tasarım yerine yalnızca çevrilmiş metni görsele yerleştirmekse, bu hem çok zaman hem de çaba gerektirecektir.
7. Doğru yazı tipleri ve şifreleme (encoding) kullanımı
Eğer string sınıfıza uymayan, “ç,ş,é,ä” vb. gibi belirli bir dile özel karakterlere ihtiyacınız varsa şifreleme sorunları yaşamak kaçınılmazdır. Eğer hedef dilde yerelleştirme yapıldıktan sonra bir şifreleme uyuşmazlığı varsa, ��� şeklinde beliren karakterleri düzeltmek baya bir zaman ve çaba gerektirir.
Aynı sorun yazı tipleri için de geçerlidir. Özellikle de oyunlarda kullanılan bazı ilginç yazı tipleri, her dile uygun özel karakterler içermez. Sonuç olarak farklı diller için farklı yazı tipleri seçmek gerekebilir; aksi halde alt yazı yerine (□□□) şeklinde kutular görme riskini almış olursunuz.
Mümkün olduğunca ASCII yerine Unicode kullanılması önemlidir. UTF-8, en yaygın ve boşluk açısından verimli şifrelemedir. Kısacası veri dosyalarınızın doğru bir şekilde şifrelendiğinden emin olunmalıdır.
8. Yerelleştirmeye hazırlanınca, deneme çevirisi yapılması
Son olarak ise, bir deneme çevirisi yapılmalıdır. İnternet üzerinde, ara yüzünü sanki başka bir dile çevrilmiş gibi taklit eden çok sayıda harika “sözde-çeviri” aracı bulunuyor. Bu araçlara metin uzunluğunu uyarlamak, şifrelemeyi ve sabit kodlanmış dizileri kontrol etmek gibi işlevler de buna dahildir.
Bu araçlar temelde hedef dili taklit eden bir programcık çalıştırır ve bir build oluşturur, ardından da yerelleştirilmemiş build ile aynı süreçten geçerek kalite değerlendirilmesi yapılır.
9.Terim sözlüğünüzü olabildiğince erken oluşturmaya başlayın
Terim sözlüğü, oyunun her aşamasında tutarlı kalması gereken terimleri ve kavramları içeren bir derlemedir. Genellikle obje, karakter, eser ve durum isimlerini içerir.
Terim sözlüğü ile oyunun her alanında tutarlılık sağlamak olmazsa olmazdır. Oyunda geçen belirli bir terimin, bir noktada “iksir”, bir noktada ise “ilaç” olarak çevrildiği düşünülebilir. Bu durum oyuncular açısından kafa karıştırıcı olacaktır.
10. Bağlam bilgisi sağlamaya hazır olun
En az terim sözlüğü kadar önemli olan başka bir unsur varsa, o da yerelleştirme ekibine ihtiyaç duyabilecekleri bağlam bilgisini sağlamaktır. Bağlam bilgisi; çevirmenler, yerelleştirme proje yöneticileri ve oyun geliştiricileri arasında iletişim kanalları oluşturularak sağlanabilir.
Bu amaç için genellikle Crowdin’i öneririz, böylece ekipler arası iletişim olabildiğince pratik ve verimli bir şekilde kurulabilir.
Umarız bu basit ipuçları, oyun yerelleştirmesi aşamasında size yardımcı olur.