朱峰社區(qū)首頁 朱峰社區(qū)

搜索資源 注冊|登陸

等待

返回 展開菜單

游戲本地化易犯的7個錯誤及解決方法

MotionBuilder中文教程 觀看預(yù)覽

MotionBuilder中文教程

包含9節(jié)視頻教程
關(guān)注16.3萬

從零開始講解MotionBuilder的詳細(xì)教程,配合朱峰社區(qū)的模型詳細(xì)講解如何進(jìn)行運(yùn)動捕捉的動作裝配

關(guān)閉


引言
手機(jī)游戲開發(fā)者在向海外擴(kuò)張的過程中常會遇到巨大的障礙,我們將在本文討論開發(fā)者在進(jìn)行游戲本地化時易犯的7種錯誤做法以及對應(yīng)的解決方法。
1.將文本硬碼到源代碼中
為了節(jié)省時間,有些游戲開發(fā)者會將自己的游戲文本硬碼到源代碼中,例如:

  1.   /** Bad Example */

  2.   var language = getCurrentLanguage();
  3. function attackEnemy(event) {
  4. var message = document.getElementById(‘message’);

  5.   // Name of player and enemy decided by code logic
  6. var player_name = ‘…’;
  7. var enemy_name = ‘…’;

  8.   // To show a message on the screen
  9. if (language === ‘english’) {
  10. message.innerHTML = player_name + ‘ attacks ‘ + enemy_name + ‘.’;
  11. } else if (language === ‘chinese’) {
  12. message.innerHTML = player_name + ‘向’ + enemy_name + ‘作出攻擊!;
  13. }
  14. // Continues with other logic
  15. }
  16. // Attack Enemy by clicking a button
  17. var attackButton = document.getElementById(‘a(chǎn)ttack’);
  18. attackButton.addEventListener(‘click’, attackEnemy);
復(fù)制代碼

在這個例子中,攻擊信息“玩家攻擊敵人”嵌入了源代碼邏輯中。這種硬碼文本是個捷徑,但與許多捷徑一樣,你過后總會為此付出代價。
所有文本都嵌入代碼中,你過后每次都得重新追蹤你想修改或更新的翻譯內(nèi)容。這會拖慢你的翻譯進(jìn)度并且成本更昂貴。
如何解決?
一定要遵從符合國際慣例的最佳字符串包裝技巧。此外,當(dāng)你從源代碼中提取文本時,要全面考慮并將其放入資源文件夾(由關(guān)鍵/值匹配數(shù)據(jù)組成)。針對每種游戲語言保存資源文件夾。這樣更便于管理你的翻譯文本。
上述例子可以采用如下解決方法:
  1.   /** Good Example */

  2.   var locale = getCurrentLocale();
  3. // Some predefined translations
  4. var translations = {
  5. ‘en’: {
  6. ‘patrick’: ‘Patrick’,
  7. ‘slime’: ‘Slime’,
  8. ‘a(chǎn)ttack_message’: ‘{{ player }} attacks {{ enemy }}.’
  9. },
  10. ‘zh-HK’: {
  11. ‘patrick’: ‘帕特里克’,
  12. ‘slime’: ‘史萊姆’,
  13. ‘a(chǎn)ttack_message’: ‘{{ player }}向{{ enemy }}作出攻擊!
  14. }
  15. };

  16.   function getTranslation(identifier, params) {
  17. var string = translations[locale][identifier];
  18. // handle parameters substitution
  19. // …
  20. return string;
  21. }

  22.   function attackEnemy(event) {
  23. var message = document.getElementById(‘message’);
  24. var player_name = getTranslation(‘patrick’);
  25. var enemy_name = getTranslation(‘slime’);
  26. // To show a message on the screen
  27. message.innerHTML = getTranslation(‘a(chǎn)ttack_message’, {
  28. player: player_name,
  29. enemy: enemy_name
  30. });
  31. // Continues with other logic
  32. }

  33.   // Attack Enemy by clicking a button
  34. var attackButton = document.getElementById(‘a(chǎn)ttack’);
  35. attackButton.addEventListener(‘click’, attackEnemy);
復(fù)制代碼

2.未向翻譯人員提供足夠的情境信息
許多游戲開發(fā)者并沒有認(rèn)真對待游戲的本地化處理,只是給翻譯人員發(fā)送一個含有大量文本的表格,卻沒有提供任何圖片或其他情境化信息。
情境對于翻譯質(zhì)量來說很關(guān)鍵,如果翻譯人員不清楚該在某一情境下該如何用詞,就可能犯下嚴(yán)重的錯誤。
例如,將《現(xiàn)代戰(zhàn)爭2》從英文翻譯成日語時,翻譯人員偶然將“Remember, no Russians”譯成“他們是俄羅斯人,殺死他們”。如果了解更多情境,該日語翻譯人員就會清楚俄羅斯人并不是這個游戲環(huán)節(jié)的射擊目標(biāo)了。他們理解錯了,所以翻譯有誤。日本游戲玩家也被誤導(dǎo),結(jié)果射擊目標(biāo)就錯了。他們?yōu)榇藰O為不快。
解決方法
你的團(tuán)隊中必須有人負(fù)責(zé)本地化事項,例如本地化項目經(jīng)理。這個職位的人員的職責(zé)就是響應(yīng)翻譯人員的問題,并為之提供情境信息。(建議:如果你的團(tuán)隊很小,無法專門指派一個人監(jiān)管本地化事項,那就讓文案人員來負(fù)責(zé)這個項目)。
如果你為翻譯人員提供了良好的情境信息,就更有可能獲得良好的翻譯內(nèi)容。這些信息要包括:
*翻譯術(shù)語表
*風(fēng)格引導(dǎo)
*實(shí)用的視覺內(nèi)容,如截圖
*關(guān)于對話字幕的細(xì)節(jié)
*游戲主角的附錄
3.聘請了錯誤的游戲翻譯人員
游戲是一種獨(dú)特的內(nèi)容。不同游戲題材會帶來不同的翻譯挑戰(zhàn)。
研究型文本
許多游戲中含有俚語,這包括游戲行話(例如《英雄聯(lián)盟》中的gank一詞)。有些游戲還含有專用術(shù)語——例如FIFA游戲中的體育術(shù)語。這就要求翻譯人員進(jìn)行大量的研究調(diào)查,我們將此稱為研究型文本。
創(chuàng)意型文本
而像《QuizUp》或《Candy Crush》等其他類型的游戲則引進(jìn)了大量新的游戲概念,這樣翻譯人員在一定程度上也成了內(nèi)容創(chuàng)造者。我們將此稱為創(chuàng)意型文本。
一般來說,常規(guī)的翻譯人員并不總能與任務(wù)對口。如果選擇了錯誤的翻譯人員,你可能就會陷入一個漫長而昂貴并且不快的游戲本地化經(jīng)歷中。
解決方法
你要找的翻譯人員最好就是當(dāng)?shù)厝瞬⑶沂腔钴S游戲玩家,理想情況下,最好是你這種游戲類型的玩家。
要先想想你游戲內(nèi)容的細(xì)節(jié),它屬于研究型還是創(chuàng)意型的內(nèi)容?然后再查看游戲翻譯人員的履歷。看看對方之前翻譯過哪些游戲?對方玩什么類型的游戲?對方是否具有調(diào)查研究的經(jīng)驗?還是富有創(chuàng)造內(nèi)容的經(jīng)驗?
4.沒有在真正的設(shè)備上測試翻譯版本
有些開發(fā)者并不會測試本地化版本的游戲——而這可能給游戲的UI和圖像造成影響。
問題在于翻譯出來的字符串通常未必符合游戲畫面或UI元素。畢竟,翻譯會改變句子的長度。例如,一個句子在翻譯成德語之后一般會變得更長(所占空間比英語文本多50%),而翻譯成中文則會變得更短(中文的字符更緊湊)。
除此之外,翻譯完成后的翻譯,有些字符串也會因為硬碼而丟失。
解決方法
在真正的設(shè)備上測試翻譯版本!有一個方法就是偽碼本地化測試,即替換應(yīng)用中的文本元素。一個更簡單更有效的方法就是在設(shè)備上進(jìn)行本地化測試,這還有利于你觀察游戲本地化處理后的整體質(zhì)量,而不僅僅是發(fā)現(xiàn)故障。
你還可以將文本空間設(shè)置成自動調(diào)整格式,這可以避免出現(xiàn)一些常見的UI錯誤。
5.沒有注意文化上的差異
世界是多元化的,不同地區(qū)的玩家也有不同的游戲喜好。每個國家的發(fā)行和內(nèi)容規(guī)范也不盡相同。每個手機(jī)游戲市場都有其獨(dú)特的生態(tài)圈。
如果你沒有做好準(zhǔn)備,就可能被新市場的一些特點(diǎn)擋住去路(例如:中國的Google Play不支持IAP功能)。你的游戲內(nèi)容可能不適合特定的市場,你可能要調(diào)整游戲內(nèi)容。例如,原版PC游戲《帝國時代》登陸韓國時,它對日軍攻陷朝鮮半島的歷史描述激怒了該國政治決策者。最終《帝國時代》不得不創(chuàng)造了一個可下載補(bǔ)丁更改了該描述,以便安撫韓國官方的情緒。
解決方法
你一定不想因為文化差異而惹上麻煩。你可以向當(dāng)?shù)氐挠螒蛐屑,即翻譯人員尋求幫助。讓他們幫忙審核一下你的游戲內(nèi)容有何不妥之處。
6.翻譯內(nèi)容管理不當(dāng)
游戲開發(fā)者要處理大量不同類型的內(nèi)容:手工內(nèi)容,包裝或應(yīng)用商店描述,營銷文件,游戲內(nèi)界面文本,以及對話字幕等。
開發(fā)者有時候會在管理不同格式和文件上犯錯。因此不同內(nèi)容之間就可能產(chǎn)生一些錯誤翻譯,這就可能降低效率和增加成本。
解決方法
確保對翻譯內(nèi)容進(jìn)行集中管理。理想情況下要使用翻譯管理系統(tǒng),這有助于你組織和管理翻譯內(nèi)容,并對其進(jìn)行調(diào)整。
7.最后才考慮本地化事項
許多游戲開發(fā)者將本地化視為游戲開發(fā)周期的最后環(huán)節(jié)。對于他們來說,這相當(dāng)于一個額外步驟,所以會推到最后。
但實(shí)際上,這種想法并不明智。這種做法會讓你錯失海外市場機(jī)遇。你很可能在當(dāng)?shù)厥袌鲈庥龃罅可秸a(chǎn)品,并因此無功而返。如果你決定之后再對游戲進(jìn)行本地化處理,這會導(dǎo)致你不得不重新編寫源代碼并創(chuàng)建翻譯材料。
解決方法
要一開始就考慮本地化操作。在開發(fā)早期階段就要包裝字符串,以便進(jìn)行本地化處理。如果不這樣操作,至少也要盡量調(diào)整編碼方式以令其符合國際化標(biāo)準(zhǔn)。
世界上多數(shù)游戲玩家來自海外,而這個市場只會不斷發(fā)展。所以要適時做好本地化的準(zhǔn)備,這樣才有可能征服世界。
朱峰社區(qū)3dsmax2016模擬學(xué)習(xí)系統(tǒng) 朱峰社區(qū)3dsmax2016模擬學(xué)習(xí)系統(tǒng)

朱峰社區(qū)網(wǎng)頁版
朱峰社區(qū)網(wǎng)頁版(手機(jī)掃描-分享-添加到屏幕)


朱峰社區(qū)公眾號
朱峰社區(qū)微信公眾號(微信掃一掃-關(guān)注)

資源說明圖文教程無法下載,只能觀看圖片和文字。
版權(quán)規(guī)則本站圖文皆來自互聯(lián)網(wǎng)共享資源,如涉及到版權(quán)請查看版權(quán)規(guī)則。本平臺提供圖文僅可用于個人學(xué)習(xí),如用于商業(yè)請購買正版。您必須遵守的版權(quán)規(guī)則

未知用戶

未知用戶

2005-2025 朱峰社區(qū) 版權(quán)所有 遼ICP備2021001865號-1
2005-2025 ZhuFeng Community All Rights Reserved

VIP

朱峰社區(qū)微信公眾號

回頂部

1.復(fù)制文本發(fā)給您的QQ好友或群、微信等;好友點(diǎn)擊鏈接以后,轉(zhuǎn)發(fā)就成功了。 2.如朋友點(diǎn)擊您的鏈接,您需要需刷新一下才行;同一個好友僅能點(diǎn)擊一次。
購買VIP,觀看所有收費(fèi)教程!