เอนจินคู่มือคำถามที่พบบ่อยPatreonDiscordดาวน์โหลด
เข้าสู่ระบบ
RuneTranslate · แปลเกมญี่ปุ่นครบวงจร
เอนจินคู่มือเปรียบเทียบข้อความในภาพตัวแก้ไขเซฟโหมดโกงคำถามที่พบบ่อยดาวน์โหลดการเปลี่ยนแปลงTrustpilotPatreonDiscordYouTubeความเป็นส่วนตัวข้อกำหนดติดต่อ
โพสต์ทั้งหมด
yu-ris · engine

วิธีแปลวิชวลโนเวล YU-RIS เป็นภาษาอังกฤษ

25 มิ.ย. 2569·6 นาทีในการอ่าน

RuneTranslate แปลวิชวลโนเวล YU-RIS (raiL-soft) เป็นภาษาอังกฤษและอีก 30+ ภาษา — อ่านแพ็กเกจ .ypf และสคริปต์ YSTB ที่คอมไพล์แล้วด้วย pure TypeScript กู้คีย์ XOR ของแต่ละสคริปต์ และส่งออกสคริปต์ที่แปลแล้วแบบหลวม เป็นแบบพยายามอย่างเต็มที่

RuneTranslate อ่านอีกเอนจินหนึ่งที่เป็นกำแพงกั้นนักแปลแฟนมานาน: YU-RIS เอนจินสคริปต์บน Windows โดย raiL-soft ที่อยู่เบื้องหลังวิชวลโนเวลญี่ปุ่นทั้งแบบโดจินและเชิงพาณิชย์นับร้อยเรื่อง หากคุณเคยเปิดโฟลเดอร์เกม YU-RIS แล้วพบไดเรกทอรี pac/ ที่เต็มไปด้วยอาร์ไคฟ์ .ypf และ ysbin.ypf ที่ไม่มีอะไรอ่านได้อยู่ข้างใน แล้วยอมแพ้ นั่นแหละคือเอนจินนี้ RuneTranslate ตรวจจับมัน เปิดแพ็กเกจเหล่านั้นด้วย pure TypeScript อ่านบทสนทนาออกจากสคริปต์ที่คอมไพล์แล้ว และส่งออกสำเนาที่แปลแล้วซึ่งเกมโหลดได้เอง

ส่วนที่ตรงไปตรงมาก่อน: การรองรับ YU-RIS เพิ่งสร้างขึ้นใหม่และ ยัง ไม่ได้รับการตรวจสอบข้ามเกมจริงมากมาย ดังนั้นหากคุณชี้ RuneTranslate ไปที่เกม YU-RIS แล้วมันตรวจจับไม่ได้ เปิดไม่ได้ หรือส่งออกสิ่งที่เกมโหลดไม่ได้ โปรดบอกเรา รายละเอียดเพิ่มเติมท้ายบทความ

เอนจิน YU-RIS จริง ๆ แล้วคืออะไร

YU-RIS (บางครั้งเขียนว่า ゆーりす) เป็นเอนจินสคริปต์วิชวลโนเวลญี่ปุ่นโดย raiL-soft เกมที่เสร็จแล้วคือไฟล์ .exe บน Windows บวกกับชุดอาร์ไคฟ์แพ็กเกจ .ypf มักอยู่ในโฟลเดอร์ pac/ ที่เก็บภาพศิลป์ เสียง และสคริปต์ บทถูก คอมไพล์ เป็นรูปแบบไบนารีที่เรียกว่า YSTB เก็บเป็นไฟล์ .ybn ภายใน ysbin.ypf (ที่พาธภายในอย่าง ysbin/yst00000.ybn) การจับคู่ “บทที่คอมไพล์แล้วภายในอาร์ไคฟ์ที่แพ็ก” นั้นคือสิ่งที่ทำให้แคตตาล็อกเก่าจำนวนมากของเอนจินนี้อยู่นอกเอื้อมของเครื่องมือแปลด้วยเครื่องทั่วไป

ทำไมเกม YU-RIS ถึงแปลยากนัก

เมื่อเทียบกับเอนจินที่ขับเคลื่อนด้วยซอร์สอย่าง Ren’Py, YU-RIS ซ่อนข้อความของมันไว้หลังหลายชั้น:

  • ทุกอย่างอยู่ภายในแพ็กเกจ `.ypf` สคริปต์ไม่ได้อยู่แบบหลวม มันถูกแพ็กเข้าไปในคอนเทนเนอร์ของ YU-RIS เองพร้อมชื่อไฟล์ที่ถูกทำให้อ่านยากและรายการที่บีบอัด zlib หากไม่มีตัวอ่านรูปแบบนั้น ก็ไม่มีอะไรให้แก้ไข
  • บทถูกคอมไพล์แล้ว ไม่ใช่ข้อความ ไฟล์ .ybn คือคอนเทนเนอร์ไบนารี YSTB ที่แบ่งเป็นสี่ส่วน (สตรีมคำสั่ง ตารางตัวอธิบายอาร์กิวเมนต์ ตารางสตริง หมายเลขบรรทัด) ภาษาญี่ปุ่นอยู่ในตารางสตริง อ้างอิงโดยตัวอธิบาย
  • สคริปต์ถูกเข้ารหัส XOR ทั้งสี่ส่วนของ YSTB แต่ละอันถูกสับด้วยคีย์ 4 ไบต์ที่ต่างกันไปในแต่ละเกม คุณต้องกู้มันก่อนจึงจะอ่านข้อความใดได้
  • ไม่ใช่ทุกสตริงคือบทสนทนา ตารางสตริงยังเก็บชื่อตัวแปร พาธแอสเซ็ต และตัวถูกดำเนินการนิพจน์ที่สคริปต์เปรียบเทียบด้วย แปลตัวหนึ่งแล้วโฟลว์จะพังเงียบ ๆ

ผลลัพธ์สุทธิ: แม้แต่ผู้อ่านที่คล่องก็ต้องแกะอาร์ไคฟ์เฉพาะทาง แยกวิเคราะห์ไบนารีที่คอมไพล์แล้ว ทลาย XOR แล้วจึงแยกบทสนทนาจากสตริงภายในของเอนจิน ก่อนที่บรรทัดใดจะได้รับการแปล นั่นคืองานที่ RuneTranslate ทำให้คุณ

RuneTranslate ทำอะไรตอนนี้

RuneTranslate จัดการทั้งไปป์ไลน์ด้วย pure TypeScript — ไม่มีเครื่องมือภายนอก ไม่มี Python sidecar ไม่มีอะไรต้องติดตั้ง:

  • อ่านแพ็กเกจ `.ypf` โดยตรง มันเปิดอาร์ไคฟ์ภายใน คลายการบีบอัดรายการ และกู้ชื่อไฟล์ที่ถูกทำให้อ่านยาก โดยไม่ต้องมี GARbro แกะเกมด้วยตัวเองแล้วเหรอ? โฟลเดอร์ ysbin/ แบบหลวมที่มีสคริปต์ .ybn ก็ถูกตรวจจับด้วย
  • แยกวิเคราะห์สคริปต์ `YSTB` ที่คอมไพล์แล้วและทลายการเข้ารหัส มันกู้คีย์ XOR 4 ไบต์ของแต่ละสคริปต์ โดยอัตโนมัติ จากตารางตัวอธิบายอาร์กิวเมนต์ ถอดตารางสตริง Shift-JIS และแสดงทุกบรรทัดภาษาญี่ปุ่น จัดกลุ่มตามไฟล์สคริปต์
  • รู้จักแยกบทสนทนาจากกลไก ชื่อตัวแปร พาธแอสเซ็ต และตัวถูกดำเนินการนิพจน์ถูกนำเสนอแต่ ถูกยกเว้นตามค่าเริ่มต้น เป็นแถวสีแดงแบบเลือกเข้า คุณจึงไม่แปลสตริงที่ตรรกะเรื่องราวเปรียบเทียบด้วย
  • รักษาโค้ดควบคุมแบบอินไลน์ โค้ดแบ็กสแลช (ขึ้นบรรทัดใหม่ สี ruby) และแท็กในวงเล็บถูกปิดบังไว้หลังตัวยึดตำแหน่งตัวเลขก่อนผู้ให้บริการเห็น แล้วคืนกลับเป๊ะ
  • ส่งออกโดยไม่ต้องแพ็กใหม่ มันสร้างแต่ละสคริปต์ที่แปลแล้วขึ้นใหม่ ปรับออฟเซ็ตตารางสตริงเพื่อให้คำแปลที่ยาวขึ้นหรือสั้นลงพอดี และใส่คีย์ XOR กลับ แล้วเขียน .ybn แบบหลวมที่พาธอาร์ไคฟ์เดิม YU-RIS เลือกไฟล์หลวมมากกว่าสำเนาที่แพ็ก เกมจึงอ่านคำแปลของคุณเลย ซึ่งเป็นการแทนที่ด้วยไฟล์หลวมแบบเดียวกับโฟลว์ Kirikiri และ Artemis ของเรา

ญี่ปุ่น → อังกฤษ คือจุดที่ดีที่สุด แต่คุณเจาะเป้าได้ 30+ ภาษา

สิ่งที่คุณต้องมี

  • RuneTranslate สำหรับ Windows — ฟรี; ทุกเอนจินและผู้ให้บริการถูกปลดล็อก (ระดับฟรีถูกจำกัดที่ความเร็ว ไม่ใช่ฟีเจอร์)
  • โฟลเดอร์เกม YU-RIS — ไดเรกทอรีที่มีไฟล์ yu-ris.exe ของเกมและแพ็กเกจ .ypf (โดยทั่วไปอยู่ใน pac/ โดยสคริปต์อยู่ใน ysbin.ypf)
  • ภาษาปลายทาง — อังกฤษ สเปน ฝรั่งเศส เยอรมัน จีน และอีก 30+ ภาษา
  • ผู้ให้บริการหนึ่งราย Google Translate ฟรีใช้ได้เลย; DeepL มีระดับฟรี; OpenAI, Anthropic, โมเดลบนเครื่อง และ API ที่เข้ากันได้กับ OpenAI ต้องใช้คีย์ของคุณเอง เกม YU-RIS มีบทสนทนาเยอะ ดังนั้น LLM หรือ DeepL จึงอ่านได้ดีที่สุด

ขั้นที่ 1: เปิดโฟลเดอร์เกม

เปิด RuneTranslate คลิก New project แล้วชี้ไปที่ไดเรกทอรีเกม YU-RIS การตรวจจับทำงานอัตโนมัติ เมื่อมันเห็นแพ็กเกจ .ypf (หรือโฟลเดอร์ ysbin/ แบบหลวมที่มีสคริปต์ .ybn) มันจำแนกโปรเจกต์เป็น YU-RIS โฟลเดอร์เกมต้นฉบับของคุณจะไม่ถูกแก้ไขเลย

ขั้นที่ 2: สคริปต์ถูกอ่านอย่างไร

RuneTranslate เปิดแพ็กเกจ .ypf ดึงสคริปต์ YSTB ที่คอมไพล์แล้วออกจาก ysbin.ypf กู้คีย์ XOR ของแต่ละสคริปต์ และถอดตารางสตริง Shift-JIS โดยแสดงทุกบรรทัดภาษาญี่ปุ่นในตัวแก้ไข จัดกลุ่มตามไฟล์ สตริงภายในของเอนจิน (ชื่อตัวแปร พาธแอสเซ็ต ตัวถูกดำเนินการนิพจน์) ถูกแสดงแต่ยกเว้นตามค่าเริ่มต้น และโค้ดควบคุมแบบอินไลน์ถูกปิดบังไว้หลังตัวยึดตำแหน่งตัวเลข ผู้ให้บริการจึงไม่ทำมันเสีย

ขั้นที่ 3: แปล

เลือกผู้ให้บริการแล้วรัน LLM (OpenAI / Anthropic) ดีที่สุดสำหรับเสียงและโทนตัวละคร DeepL เร็วและสะอาดสำหรับการบรรยาย และ Google Translate ฟรี เหมาะกับสตริงเมนูสั้น ๆ และตัวเลือก ใส่นักแสดงของคุณลงอภิธานศัพท์ก่อนเพื่อให้ชื่อแสดงผลเหมือนกัน ดู Glossary 101 เมื่อเสร็จแล้ว รอบเสริมแบบไม่บังคับกับ ตัวขัดเกลาด้วย AI จะอ่านทวนแต่ละบรรทัดในบริบทและกระชับการใช้คำที่แข็งและตรงตัวซึ่ง MT มักทิ้งไว้

ขั้นที่ 4: ส่งออกสำเนาที่พร้อมรัน

คลิก Export RuneTranslate เขียนสำเนาที่แปลแล้วของเกม โดยวางแต่ละ .ybn ที่สร้างใหม่แบบหลวมที่พาธอาร์ไคฟ์เดิม ควบคู่กับแพ็กเกจ .ypf ที่ไม่ถูกแตะต้อง ไม่มีการแพ็กใหม่ YU-RIS โหลดสคริปต์หลวมมากกว่าต้นฉบับที่แพ็ก เกมจึงอ่านคำแปลของคุณเลย รันมันแล้วมันก็เล่นในภาษาปลายทางของคุณ

ข้อจำกัดที่ทราบ

  • สตริง YU-RIS เป็น Shift-JIS (cp932) ภาษาอังกฤษและภาษาปลายทางอื่นที่แทนได้ใน cp932 ส่งออกได้สะอาด ภาษาปลายทางนอก cp932 — ซีริลลิกขยาย เกาหลี จีนตัวเต็ม — ต้องใช้การแฮ็กฟอนต์/การเข้ารหัสของเกมซึ่งยังไม่อัตโนมัติ
  • การแทนที่ด้วยไฟล์หลวมคือเส้นทางโหลดที่คาดหวัง และใช้ได้กับเกม YU-RIS ส่วนใหญ่เพราะเอนจินเลือกสคริปต์หลวมมากกว่าสำเนาที่แพ็ก ในเกมหายากที่ไม่ทำตามนั้น การส่งออกอาจต้องปรับ ซึ่งเป็นพฤติกรรมของเกมจริงที่เรายังยืนยันอยู่
  • ข้อความที่อบไว้ในภาพศิลป์ — หน้าจอไตเติลหรือปุ่มเมนูที่วาดเป็นบิตแมป — เป็นพิกเซล ไม่ใช่ข้อความสคริปต์ สำหรับกรณีนั้น ดู การแปลข้อความในภาพ
  • รูปแบบอาร์ไคฟ์และสคริปต์ที่แน่นอนอาจต่างกันไปในแต่ละการวางจำหน่าย ตรวจสอบบนสำเนาเฉพาะของคุณเสมอ

มันใหม่เอี่ยม — บอกเราว่าอะไรพัง

ขอย้ำอีกครั้ง: การรองรับ YU-RIS เป็น การเพิ่มใหม่ และ ยังไม่ได้ทดสอบข้ามเกมจริงมากมาย ตัวอ่าน .ypf ตัวแยกวิเคราะห์ YSTB และการกู้คีย์ ถูกสร้างและผ่านการทดสอบยูนิต แต่เอนจินนี้มีความแตกต่างของแต่ละสตูดิโอมาหลายปีที่เรายังไม่ได้เห็นทั้งหมด ดังนั้นหากคุณชี้ RuneTranslate ไปที่เกม YU-RIS แล้วมันตรวจจับไม่ได้ เปิดอาร์ไคฟ์ไม่ได้ ดึงออกไม่ได้เลย หรือส่งออกสิ่งที่เกมโหลดไม่ได้ โปรดรายงานบน Discord ของเรา ชื่อเกมและวิธีแพ็กช่วยให้เราทำให้มันแข็งแกร่งได้เร็วที่สุด

ดาวน์โหลด RuneTranslate ชี้มันไปที่ VN ของ YU-RIS ที่คุณอยากอ่าน แล้วลองดู สำหรับเอนจิน VN อีกตัวที่อิงอาร์ไคฟ์ อ่าน คู่มือ Artemis ต่อ

อ่านที่เกี่ยวข้อง
01

วิธีแปลเกม RPG Maker

rpg-makerhow-toenginecontrol-codes18 ส.ค. 2569 · 10 นาที
อ่าน →
02

วิธีแปลเกม Unreal Engine

unrealguidesenginelocalization18 ส.ค. 2569 · 9 นาที
อ่าน →
03

วิธีแปลไฟล์ .po และ .mo ของเกม (gettext)

gettextpomoenginetutorial4 ส.ค. 2569 · 7 นาที
อ่าน →

พร้อมลอง RuneTranslate ไหม

ระดับฟรีปลดล็อกทุกเอนจิน + ทุกผู้ให้บริการแปล Supporter ($3/mo) ปลดล็อกความเร็วเต็ม

ดาวน์โหลดสำหรับ Windows