Banyak proyek tidak berpikir tentang pelokalan sampai permainan selesai. Kemudian pelokalan dilakukan sebagai peretasan, dan jelas bahwa itu ditambahkan kemudian. Beberapa bidang khusus yang menjadi perhatian:
- String teks (jelas)
- Klip audio seperti musik dan / atau narasi
- Teks yang diberikan pada tekstur (misalnya label pada kotak)
- Teks yang diberikan dalam bingkai di film yang sudah dibuat sebelumnya
- Kumpulan font / karakter untuk berbagai bahasa
- Dll
Apa saja cara yang baik untuk mempersiapkan tantangan-tantangan ini pada tahap pengembangan awal, sehingga Anda dapat membuatnya lebih mudah tanpa menimbulkan terlalu banyak biaya di muka?
localization
kevin42
sumber
sumber
Jawaban:
Saya bukan ahli, tapi ini beberapa hal mendasar:
Pastikan string Anda dapat menangani lebih dari sekadar ASCII
Anda akan memerlukan beberapa karakter spécîål yang tidak sesuai dengan ASCII dan kelas string Anda sebaiknya tidak muntah pada mereka. UTF-8 adalah penyandian umum karena hemat-ruang. Apa pun yang Anda lakukan, uji awal dan selesaikan ketegaran.
Ini adalah ide yang sangat bagus untuk menggunakan kelas string yang sebenarnya dan tidak hanya di
char *
mana-mana atau Anda akan berada di dunia yang sakit.Jangan lupa font Anda. Pastikan semua font yang Anda gunakan memiliki karakter yang Anda butuhkan.
Tarik string Anda keluar dari kode
Ini yang paling penting. Pastikan string teks Anda semua disimpan di luar kode dalam beberapa file data yang dapat Anda tukar. Mempersiapkan pipa untuk ini bisa menjadi tugas berat di depan, tetapi akan menghemat waktu satu ton nanti. Anda akan menginginkan beberapa API sederhana sehingga setiap kali Anda membutuhkan string dalam kode, sesederhana:
Jangan menggabungkan atau membuat string dalam kode
Penting untuk tidak membuat asumsi tentang bagaimana sepotong teks dibangun dari kata-kata yang lebih kecil. Bahkan sesuatu yang tidak berbahaya seperti:
merupakan masalah karena bahasa lain dapat menempatkan tanda mata uang setelah nomor tersebut. Sebagai gantinya, gunakan format string yang dilokalkan seperti:
Dengan begitu, pelokalan dapat menyusun ulang kata dalam string format.
Minimalkan jumlah teks yang muncul dalam seni, terutama video
Aset seni forking adalah pekerjaan rumah. Anda mungkin harus melakukannya setidaknya sedikit untuk beberapa elemen UI, tetapi itu merepotkan. Forking FMV sangat menyakitkan karena sekarang Anda harus membuat dan menyimpan salinan duplikat FMV Anda.
Tes dalam berbagai bahasa secara menyeluruh
Di sebagian besar basis kode, terlalu mudah untuk mengatakan
printf("Hi there");
atauloadTexture("someTexture");
melupakan bahwa mereka harus melalui API pelokalan Anda. Seseorang akan lupa dan Anda akan berakhir dengan sesuatu yang benar dalam bahasa utama Anda tetapi salah pada yang lain. Satu-satunya cara untuk menemukan ini adalah memiliki tes penguji Anda dalam bahasa non-primer.Jadikan teks terlokalisasi yang hilang jelas
Anda biasanya menerjemahkan teks Anda di akhir siklus, jadi untuk sebagian besar waktu, tidak akan ada data untuk beberapa bahasa. Tidak apa-apa karena itu memungkinkan Anda beralih pada konten Anda tanpa harus terus menerjemahkan. Kelemahannya adalah itu berarti mudah bagi Anda untuk melewatkan sesuatu dan lupa menerjemahkan beberapa hal.
Satu hal murah yang dapat Anda lakukan adalah membuat teks yang hilang muncul dengan sangat jelas seperti "!!! TRANSLATION DIPERLUKAN UNTUK ID #blah blah !!!" dalam game saat itu hilang.
Desain UI Anda di sekitar bahasa kasus terburuk
Bahasa yang berbeda cenderung memiliki kata yang lebih panjang atau lebih pendek. UI yang terlihat cantik dalam bahasa Inggris mungkin memiliki teks yang melewati batas-batasnya, dipangkas, atau dibungkus dengan salah dalam bahasa yang lebih panjang. Anda harus membuat perubahan UI untuk mengakomodasi bahasa terburuk (atau bercabang UI Anda, tapi itu mungkin bukan yang ingin Anda lakukan.)
Anehnya, bahasa Inggris seringkali merupakan bahasa terpendek dari bahasa yang biasanya dilokalisasi, sehingga desainer Anda mungkin secara tidak sengaja merancang untuk kasus terbaik. Buat mereka menggunakan teks ekstra panjang untuk placeholder mereka saat mereka mendesain. Asumsikan setiap potongan teks dapat sekitar 30% lebih lama daripada dalam bahasa Inggris. Google Terjemahan dapat menjadi hal yang bagus untuk mendapatkan perkiraan teks untuk placeholder.
Waktu anggaran untuk terjemahan
Menerjemahkan teks biasanya terjadi terlambat ketika tim lelah dan tidak terlalu peduli. Meskipun demikian, Anda akan mendapatkan banyak bug saat itu terjadi. Kata-kata akan melewati batas, penerjemah akan membuat kesalahan, dll. Untuk memperburuk keadaan, waktu penyelesaian untuk pengulangan pada teks bisa lama jika Anda harus mengirim teks ke orang di luar negeri dan menunggu perubahannya. Alokasikan waktu untuk pekerjaan ini.
sumber
Selain saran lain, satu hal yang telah saya lakukan di masa lalu yang sangat membantu dalam menemukan teks yang diterjemahkan keluar dari komponen UI adalah memiliki mode bahasa khusus untuk permainan Anda yang, ketika menampilkan string apa pun, melihat semua bahasa dan memilih versi terpanjang dari string itu. Dengan begitu, setelah Anda membuat semua string sesuai dengan mode itu, Anda tahu bahwa Anda telah memperbaiki semua teks yang berdarah di setiap bahasa.
sumber
Lokalisasi permainan benar adalah sialan keras .
Anda dapat menjelajahi internet, membaca posting blog, atau jawaban StackOverflow; Anda dapat mempelajari kerangka kerja i18n tradisional seperti gettext ; baca halaman Wikipedia tentang internasionalisasi dan pelokalan game ; lihat panduan bahasa Microsoft yang bagus - tetapi melokalkan game sebenarnya lebih sulit dari itu. Bahkan, dengan gim mungkin lebih sulit daripada dengan aplikasi atau antarmuka web lainnya. Ini karena gimnya jauh lebih dinamis, lebih bersemangat, lebih hidup (yah, setidaknya gim bagus).
Lebih penting lagi, langkah-langkah berikut mungkin perlu diambil:
Tetapkan batas.
Anda ingin membuat keputusan yang sangat penting untuk bahasa mana yang ingin Anda dukung sejak dini. Semakin luas pilihan Anda, semakin banyak asumsi tentang bagaimana bahasa dapat berperilaku akan rusak. Seringkali asumsi-asumsi ini begitu tertanam dalam otak kita, sehingga kita bahkan tidak dapat membayangkan bahwa mereka mungkin salah tanpa seseorang menunjukkannya. Yang membawa kita ke poin berikutnya:
Temukan para ahli untuk setiap bahasa yang ingin Anda dukung.
Pakar berarti seseorang yang memiliki keterampilan analitik dan pengetahuan bahasa yang memadai, bahwa ia dapat menunjukkan kepada Anda asumsi mana yang digunakan oleh penutur bahasa Inggris yang tidak memiliki bahasa sendiri. Maka Anda harus membuat strategi bagaimana mengatasi asumsi-asumsi itu.
Sebagai contoh: dalam bahasa Barat kami membenarkan teks dalam paragraf dengan memasukkan ruang ekstra di antara kata-kata. Dalam bahasa Arab teks dibenarkan dengan memasukkan karakter kashida ke dalam kata-kata. Mungkin terlihat seperti ini .
Contoh lain: dalam bahasa Rusia, ada 2 bentuk jamak untuk sebagian besar kata. Jadi misalnya Anda akan menerjemahkan "1 koin" / "3 koin" / "5 koin" sebagai "1 монета", "3 монеты", tetapi "5 монеты". Prosedur aktual untuk memutuskan bentuk jamak yang benar terlihat seperti ini:
Buat modul terjemahan yang sadar konteks.
Anda mungkin sadar bahwa terjemahan selalu tergantung pada konteksnya. Dan Anda tahu bahwa konteks dalam game berubah sepanjang waktu. Apa yang terjadi jika kita menggabungkan kedua pernyataan ini? Secara umum terjemahan Anda harus sedinamis permainan Anda.
Misalnya, frasa sederhana "Saya setuju" diterjemahkan ke dalam bahasa Rusia sebagai salah satu dari "Я согласен" / "Я согласна" / "Я согласно", tergantung pada jenis kelamin penutur (pria / wanita / transgender | pertanyaan aneh). Jika ini adalah salah satu dari garis dialog Anda, maka modul bahasa harus memilih salah satu terjemahan yang mungkin pada saat run-time tergantung pada jenis kelamin karakter Anda (dengan asumsi Anda menawarkan pemain Anda pilihan seperti itu).
Ungkapan yang sama ketika diterjemahkan ke bahasa Jepang lagi akan memiliki terjemahan yang berbeda, tergantung pada tingkat formalitas hubungan antara pembicara dan pendengar. Jadi, jika Anda memperkenalkan ide reputasi, atau persahabatan, atau tingkat superioritas yang berbeda di permainan Anda (misalnya, karakter Anda dapat berevolusi dari Rookie ke Umum), maka Anda harus mempertimbangkan hal ini ketika membentuk terjemahan. (Sebenarnya, ini bukan khusus bahasa Jepang. Bahkan dalam bahasa Inggris, di ketentaraan Anda tidak pernah mengatakan "Tuan, ya, tuan!" Kepada seseorang yang berada di bawah Anda dalam peringkat.)
Punya cara untuk melompat ke dalam konteks.
Penerjemah Anda harus memiliki kemampuan untuk melihat konteks tempat frasa tertentu muncul. Terkadang konteksnya jelas, terkadang Anda harus melihat / mendengar / mengalaminya sendiri untuk menerjemahkan sesuatu dengan benar.
Bahkan kalimat sederhana seperti "Buku ini berwarna biru." tidak dapat diterjemahkan secara jelas tanpa saya melihat buku itu dan melihat warna biru yang mana.
Hindari permainan kata, permainan kata-kata, dan elemen khusus bahasa lainnya.
Atau mungkin tidak menghindari, tetapi setidaknya memiliki strategi dalam pikiran untuk apa yang harus dilakukan ketika permainan kata tidak dapat diterjemahkan. Karena mungkin tidak.
Paling tidak Anda tidak harus membuat objek pencarian / teka-teki / game yang bergantung pada kata-kata tertentu yang memiliki makna ganda, atau mirip dengan beberapa kata lain. Karena sekali diterjemahkan, Anda akan merusak gim Anda sendiri. (Misalnya, dalam game Fallout2 yang lama, pencarian utamanya adalah menemukan objek yang disebut GECK; ada juga banyak monster "Gecko" (kadal bermutasi) di sekitar game; tentu saja mereka menciptakan banyak referensi dan pencarian seputar kesamaan nama, yang membuat terjemahan yang baik sangat sulit).
Semangat!
Melokalkan game itu sulit. Tapi itu sulit untuk semua orang. Jika Anda melakukan upaya dan melakukannya dengan benar, itu tidak akan luput dari perhatian oleh kritik game di negara target Anda. Gim dengan terjemahan yang baik akan menonjol, dan mendapat untung lebih tinggi. Lagi pula, teks sama pentingnya untuk menciptakan suasana dalam gim, seperti halnya grafis (inilah sebabnya RPG berbasis teks lama begitu mendalam).
sumber
Wil Shipley sejauh ini memiliki panduan terbaik tentang pelokalan yang pernah saya baca. Sayangnya ini spesifik untuk iPhone, tetapi orang masih bisa mendapatkan informasi yang bermanfaat. Lebih jauh, dia membahas lokalisasi aset dan UI - dua tantangan terbesar dalam lokalisasi game yang bisa saya bayangkan.
sumber
Selalu, SELALU memperlakukan bahasa sumber sebagai bahasa lokal.
Jadi, jika bahasa sumber Anda adalah EN, maka simpan semua aset dan string EN dalam folder EN yang terpisah dan tarik dari sana.
Tarik aset EN melalui pipa lokalisasi yang Anda inginkan.
Dengan melakukan satu hal sederhana ini, Anda akan menangkap sekitar 80% masalah pelokalan dan ditetapkan untuk proses pelokalan yang jauh lebih mudah.
Saya telah melokalkan banyak game dan selalu memimpin dengan nugget ini.
sumber
Saya melihat beberapa tips yang sangat bagus di sini!
Saya akan mencoba membuat daftar kesalahan paling umum yang bisa berkisar dari membuat lokalisasi Anda lebih sulit hingga benar-benar merusak permainan Anda:
Pelokalan harus diintegrasikan ke pengembangan sedini mungkin dan Anda harus selalu mengingatnya saat merancang game.
Dengan perencanaan yang tepat dan riset pasar yang cermat, Anda akan menghemat banyak masalah dan pengeluaran lebih lanjut.
Saya kebetulan adalah pendiri perusahaan pelokalan gim dan kami membahas persiapan sebuah gim untuk pelokalan beberapa bulan yang lalu di blog kami.
Inilah infografis yang meringkas pos itu: https://magic.piktochart.com/output/18317297-9-steps-to-cheaper-game-development-with-localization
Tautan ke pos lengkap yang mencakup kiat-kiat itu secara lebih rinci ada di bagian bawahnya.
sumber