3.2 KiB
3.2 KiB
🇹🇭 สัญญาทางเทคนิค: ระบบแปลภาษาไทยและม็อดตัวเกม (Thai Localization & Game Modding)
เอกสารนี้ระบุรายละเอียดของระบบแปลภาษาไทย 2 ระดับใน G-Launcher:
- Launcher UI Localization: การแปลภาษาบนหน้าจอและปุ่มควบคุมของตัว Launcher
- Game Asset Modding: ระบบติดตั้งและถอนการติดตั้งแพตช์ภาษาไทยลงในไฟล์ข้อมูลของตัวเกม
1. การแปลภาษาบนหน้าต่าง Launcher (UI Localization)
- เครื่องมือ:
i18next+react-i18next - ไฟล์ข้อมูลคำแปลภาษาไทย:
frontend/public/locales/th.json - การเปลี่ยนภาษาแบบทันที: คอมโพเนนต์
LanguageSwitcherช่วยให้ผู้ใช้สามารถสลับระหว่างภาษาไทย (th), อังกฤษ (en), จีน (zh), ญี่ปุ่น (ja), เกาหลี (ko), และเวียดนาม (vi) ได้ทันทีโดยไม่ต้องรีสตาร์ตโปรแกรม
2. ระบบติดตั้งม็อดภาษาไทยลงในตัวเกม (Game Asset Modding)
ใน internal/language-service/thai-patch.go บริการ LanguageService จัดการการแก้ไขไฟล์ไบนารี ExcelData ของเกม:
กฎความปลอดภัยในการแก้ไขไฟล์เกม (Mandatory Safety Rules):
- การสำรองไฟล์เดิม (Safe Backup): ก่อนจะเริ่มเขียนหรือแก้ไขไบต์ในไฟล์ข้อมูลเกม ระบบจะทำการคัดลอกไฟล์ต้นฉบับเก็บไว้เป็นนามสกุล
.backupเสมอ - การกู้คืนอัตโนมัติ (Atomic Restore): หากการเขียนไบต์ล้มเหลว หรือผู้ใช้กดปุ่ม "ถอนการติดตั้งม็อด" ระบบจะนำไฟล์
.backupกลับมาทับไฟล์เดิมทันที ทำให้ไฟล์ตัวเกมกลับสู่สถานะของแท้ 100% - การตรวจสอบสถานะ (Status Probe): ตรวจสอบว่ามีไฟล์
.backupหรือมาร์กเกอร์ของม็อดอยู่หรือไม่ เพื่อแสดงสถานะบน UI ว่าเกมนี้ลงม็อดภาษาไทยแล้วหรือยัง