創作內容

16 GP

Renpy漢化

作者:嘎~│2018-03-18 15:15:42│巴幣:1,128│人氣:13847
工具
renpy laucher : https://www.renpy.org/latest.html
python : https://www.python.org/
解rpa : rpatool or unren,google應該有。
編輯器 : (推薦)atom,可另外下載renpy語言高亮插件
photoshop(選修) : 可以修改圖片內的英文,蛋疼(之後再加入如何讓renpy在不同語言下顯示不同翻譯的圖片的方法)

@Renpy中文教學(雪凡):https://www.openfoundry.org/foss-programs/8811
@Renpy 官方指引 :https://www.renpy.org/doc/html/translation.html


@code請看google doc版(巴哈不會用XD):https://goo.gl/jyfMVJ
@我個人是採用保留英文原版的漢化法,也就是用語言選項,如果真的要的話也可以直接進原版(英文)script修改,不過我沒試過,走直接修改的路徑的話,你不需要步驟10~13,風險是你如果不懂code可能會讓遊戲出錯,至少看一下雪凡大神的教學,我個人為對作者保持尊重會留下英文版,以上。

1.首先打開renpy laucher

2.進入設定(右下角),更改遊戲專案目錄,所有你要用renpy做/漢化的遊戲都會在這裡,也就是說,renpy laucher只會讀這裡面的遊戲專案。

3.將你要漢化的遊戲放入你設定的專案目錄內。這裡用the visit作為代表

4.打開the visit,你會看到這樣,說明一下,所有我們要的都在game裡面,文字、圖片...等

5.打開game,會類似這樣,有save(遊戲存檔),tl(翻譯文檔),和很多的rpa檔,rpa檔是renpy為了遊戲發行後的執行速度之類的原因壓縮的檔案,作者可以自己命名,像是這裡是images(圖片)和scripts(腳本),大蓋可以猜出裡面的內容,有的作者會用rpyc這種比較進階的加密方法

6.這時我們需要解開rpa才可以自由編輯,我是用unren,將unren放入你的game資料夾內,右鍵系統管理員身分執行

(我都直接9下去,全部解開限制)
7.這時你的/game會變這樣

8.我們要打開遊戲讓unren解一次代碼(打開遊戲隨便玩個2句就好),然後game會變成這樣(這邊已經手動刪除unren產生的檔案了)。(如果不行的話用rpatool一個一個解開也行)

10.這邊我們先打開screens.rpy,這裡要添加語言選項至遊戲選單內
我都放在check下面,程式碼在下面,記得要對齊,說明:在此例中添加"CHT"這種選項,
該選項的字形以DroidSansFallback.tff(自訂)呈現,當cht被選中時,將會執行語言"TranditionalChinese",CHS的範例也是類似
請將字型放置於/game
                vbox:
                    style_prefix "radio"
                    label _("Language")
                    # Real languages should go alphabetical order by English name.
                    textbutton _("English") text_font "DejaVuSans.ttf" action Language(None)
                    textbutton _("CHT") text_font "DroidSansFallback.ttf" action Language("TranditionalChinese")
                    textbutton _("CHS") text_font "DroidSansFallback.ttf" action Language("SimplifiedChinese")

11.打開renpy laucher,左側選擇專案,右下角按產生翻譯檔(generate translation),你需要手動輸入你要翻譯語言的名子(須符合你上面的actionlanguage後面的名子),然後按產生翻譯檔(沒錯他是一個按鈕),renpy laucher會自動產生翻譯檔至/game/tl/TranditionalChinese


12.這時候進入/game/tl,你應該會看到TranditionalChinese的資料夾,點進去,會看見script(故事腳本),screen(功能選項),common(一般用字),options(這一般是遊戲名稱),全都要翻譯,不過如果你已經翻過一次了的話,下次可以用renpy laucher轉移這些翻譯到其他專案(就是用上面那張圖的extract string translations 和merge string translation,不過這之後再說,而且我只推薦用於遊戲設定這些東西的翻譯,故事文本的翻譯因為牽扯上下文所以還是要好好翻)
這裡用script做範例,解釋一下
# game/script.rpy:356                                                 #標是這句話在原始script的出處
translate TranditionalChinese begin_6d2b5115:                         #每一句都會這樣開頭請勿修改

    # "Hi, My name is Chris, and what follows is my story."           #原文
    "嗨,我叫Chris,接下來是我的故事。"                                  #翻譯

# game/script.rpy:357
translate TranditionalChinese begin_a970bbf0:

    # "It all starts one morning when my mom tells me my aunt Nikki is coming to stay with us."
    ""                                                                 #全新的翻譯檔都會是想這樣嗷嗷待哺TAT


13.開始翻一點點(我會先翻screens,等等要確認中文顯示無誤)

14.打開/game/gui.rpy,尋找font,最簡單的方法是全部用DejaVuSans.ttf(請記得""),把它放到/game裡面就可以,然後開看看你的遊戲確認一下是否可以顯示中文(記得去改設定阿)
## Fonts and Font Sizes ########################################################

## The font used for in-game text.           #遊戲內字形
define gui.text_font = "DejaVuSans.ttf"

## The font used for character names.        #角色名字形
define gui.name_text_font = "DejaVuSans.ttf"

## The font used for out-of-game text.       #選單字形?
define gui.interface_text_font = "DejaVuSans.ttf"
15.顯示正常後,開始翻吧,一去不復返....(故事文檔可能會有變數)
像下面這樣有可能是{}或是[],不懂renpy語言的話保留即可,還有在翻譯時不要用 " 當強調語,要用  ' " 在程式內視為開始和結束。
@附註人名翻譯:我個人不喜歡翻人名,真的要翻的話請參考:https://lemmasoft.renai.us/forums/viewtopic.php?t=43333

16.請做bug測試,如果你是用語言選單的方法翻譯的話,遊戲應該不會出bug,除非是你在10和14這2步出錯。這裏我們要確認翻譯執行順暢。

17.如何發布,打開renpy launcher,執行Build distructions(建立釋出版),右上角選擇釋出版本,一般選windows,android有可能出bug除非你可以自行修改原始(英文)script內的程式碼,否則不建議。
按build,renpy laucher會自己打包成.zip,在專案目錄下,恭喜你完成漢化大業。

引用網址:https://home.gamer.com.tw/TrackBack.php?sn=3924592
All rights reserved. 版權所有,保留一切權利

相關創作

留言共 6 篇留言


受益良多,謝謝

最近在幫doki doki literature club作中文化

08-12 19:50

Ryu Hayabusa
出現bug說DroidSansFallback.tff找不到,但有把字型檔放入對應的位置了

10-27 15:58

番茄yuri
您好,請問選擇時出現方框該怎麼解決呢?

10-03 03:49

龍人
我也遇過樓上Ryu Hayabusa的問題喔!
雖然系統錯誤訊息是寫xxx.tff字體找不到,但是其實路徑是正確的,你也要把路徑寫進screens.rpy裡面喔!但我的問題不是路徑錯誤而已,而是英文字打錯。

後來才發現原來是我學版主把繁體中文的英文打成TranditionalChinese
但其實google翻譯的正確繁體中文沒有n,正確是TraditionalChinese
主要原因還是資料夾名稱跟screens.rpy裡面的下面這一行的Language括號裡面字串要對應到
```
textbutton _("繁體中文") text_font "fonts/TaipeiSansTCBeta-Regular.ttf" action Language("TraditionalChinese")
```
我本以為版主寫的方式有什麼地方遺漏了,但是並沒有,目前我使用版本7.3.5依然適用

11-05 13:34

傑克遜
想請問一下,翻譯之後文本顯示正常,但是選項內的文字變成空白的,該怎麼解決呢?

10-05 23:26

你絕對不知道
為什麼我翻譯完後還是原文?

06-19 10:46

我要留言提醒:您尚未登入,請先登入再留言

16喜歡★GIvanQT 可決定是否刪除您的留言,請勿發表違反站規文字。

追蹤私訊切換新版閱覽

作品資料夾

xcom0989所有大大
好久不見了,近期更新了一些創作,歡迎來踏踏~看更多我要大聲說昨天16:25


face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】