// Multi-language (i18n) definitions for GaC-srtool // Covers all 13 official languages supported by Honkai: Star Rail export const SUPPORTED_LANGUAGES = [ { code: 'th', name: 'ภาษาไทย', flag: '🇹🇭' }, { code: 'en', name: 'English', flag: '🇺🇸' }, { code: 'zh-CN', name: '简体中文', flag: '🇨🇳' }, { code: 'zh-TW', name: '繁體中文', flag: '🇹🇼' }, { code: 'ja', name: '日本語', flag: '🇯🇵' }, { code: 'ko', name: '한국어', flag: '🇰🇷' }, { code: 'vi', name: 'Tiếng Việt', flag: '🇻🇳' }, { code: 'id', name: 'Bahasa Indonesia', flag: '🇮🇩' }, { code: 'es', name: 'Español', flag: '🇪🇸' }, { code: 'fr', name: 'Français', flag: '🇫🇷' }, { code: 'de', name: 'Deutsch', flag: '🇩🇪' }, { code: 'ru', name: 'Русский', flag: '🇷🇺' }, { code: 'pt', name: 'Português', flag: '🇧🇷' } ]; export const TRANSLATIONS = { "th": { "appName": "GaC-Srtool", "appSubtitle": "Star Rail FreeSR & Server Controller", "online": "เชื่อมต่อแล้ว", "offline": "ออฟไลน์", "checking": "กำลังตรวจสอบ...", "refresh": "🔄 รีเฟรช", "connectFailed": "เชื่อมต่อไม่สำเร็จ", "tabDashboard": "📊 แดชบอร์ด & จัดทีม", "tabAvatars": "👥 ตัวละคร", "tabEquipment": "🗡️ กรวยแสง & รีลิกส์", "tabPersistent": "💾 จัดการเซฟ GaC", "tabExrank": "⚡ สกิลพิเศษ Ex-Rank", "tabJson": "📝 จัดการไฟล์ JSON", "tabSettings": "⚙️ ตั้งค่า", "statAvatars": "ตัวละครที่ครอบครอง", "statLightcones": "กรวยแสง", "statRelics": "รีลิกส์", "serverStatusTitle": "📍 สถานะเซิร์ฟเวอร์ & พิกัดปัจจุบัน", "lblServerModeActive": "โหมดเซิร์ฟเวอร์ที่ใช้งาน", "lblApiEndpoint": "API Gateway Endpoint", "lblPlaneId": "Plane ID", "lblFloorId": "Floor ID", "coords": "พิกัดตัวละคร XYZ", "quickActionsTitle": "⚡ ดำเนินการด่วน", "quickActionsSubtitle": "ส่งคำสั่งไปยังเซิร์ฟเวอร์ทันที", "btnMaxAll": "⭐ ปรับเลเวล 80 & ปลด E6 ตัวละครทั้งหมด", "btnSyncPersistent": "💾 ซิงค์ข้อมูล Persistent ล่าสุด", "currentLineupTitle": "🎮 ทีมปัจจุบัน", "slot": "ตำแหน่งที่", "slotEmpty": "ว่าง (คลิกเพื่อเพิ่ม)", "slotTooltip": "คลิกเพื่อเลือกตัวละครลงตำแหน่งนี้", "removeFromTeam": "นำออกจากทีม", "searchPlaceholder": "🔍 ค้นหาชื่อหรือ ID ตัวละคร...", "filterAllRarity": "ทุกระดับดาว", "filter5Star": "5 ดาว", "filter4Star": "4 ดาว", "filterAllElements": "ทุกธาตุ", "filterAllPaths": "ทุกประเภท", "btnReload": "🔄 รีโหลด", "avatarsLoading": "กำลังดึงข้อมูลตัวละคร...", "noAvatarsFound": "ไม่พบตัวละครที่ตรงกับเงื่อนไข", "eidolonLabel": "Eidolon:", "confirmMaxAll": "ยืนยันปรับตัวละครทั้งหมดให้เป็นเลเวล 80 และปลด E6 หรือไม่?", "maxAllSuccess": "ปรับเต็มทุกตัวละครสำเร็จแล้ว!", "avatarRankSuccess": "ปรับตัวละคร {id} เป็น E{rank} สำเร็จ", "eqLcTitle": "🗡️ กรวยแสงในคลัง", "eqLcSubtitle": "รายการกรวยแสงทั้งหมดจาก freesr-data.json", "eqLcLoading": "กำลังโหลดข้อมูลกรวยแสง...", "eqRelicTitle": "🛡️ รีลิกส์ในคลัง", "eqRelicSubtitle": "รายการรีลิกส์ทั้งหมดจาก freesr-data.json", "eqRelicLoading": "กำลังโหลดข้อมูลรีลิกส์...", "itemCount": "{n} ชิ้น", "notEquipped": "ไม่ได้สวมใส่", "equippedBy": "สวมใส่โดย", "noLcData": "ยังไม่มีข้อมูลกรวยแสง", "noRelicData": "ยังไม่มีข้อมูลรีลิกส์", "persistentTitle": "💾 จัดการไฟล์เซฟ GaC", "persistentBadge": "เซิร์ฟเวอร์ของเราเอง", "persistentSubtitle": "ไฟล์ persistent เก็บการตั้งค่าสถานะผู้เล่นเฉพาะของเซิร์ฟเวอร์ GaC เช่น เพศ/ธาตุตัวเอก, สเตตัส March 7th, สวิตช์ฟังก์ชัน Global ต่างๆ", "persistentTbM7Title": "👤 ผู้บุกเบิก & March 7th", "lblTbGenderElement": "เพศ & ธาตุของตัวเอก", "lblM7Path": "สายของ March 7th", "btnSaveCharSettings": "💾 บันทึกการตั้งค่าตัวละคร", "persistentGlobalTitle": "⚙️ สวิตช์ระบบพิเศษของ GaC", "swGlobalDesc": "เปิดใช้งานฟังก์ชันพิเศษ SW ทั่วทั้งเซิร์ฟเวอร์", "castoriceGlobalDesc": "เปิดใช้งานฟังก์ชันพิเศษ Castorice ทั่วทั้งเซิร์ฟเวอร์", "btnSaveGlobalSwitch": "💾 บันทึกสวิตช์ Global", "exrankTitle": "⚡ ระบบปลดล็อค Ex-Rank Skill", "exrankSubtitle": "เปิดใช้งานพรสวรรค์และกลไกพิเศษ Ex-Rank สำหรับตัวละครเฉพาะใน FreeSR (เช่น Jing Yuan โดน CC ไม่หยุดชะงัก, Dan Heng IL, Acheron)", "btnEnableAll": "เปิด Ex-Rank ทั้งหมด", "btnDisableAll": "ปิด Ex-Rank ทั้งหมด", "exrankToggleSuccess": "{name}: {status} Ex-Rank สำเร็จ", "exrankAllSuccess": "{status} Ex-Rank ทุกตัวละครสำเร็จ", "enabled": "เปิดใช้งาน", "disabled": "ปิดใช้งาน", "btnFreesr": "📄 freesr-data.json", "btnPersistent": "💾 ไฟล์เซฟ persistent", "btnBeautify": "✨ จัดรูปแบบ JSON", "btnDownload": "📥 ดาวน์โหลดสำรอง", "btnUpload": "📤 อัปโหลดไฟล์", "btnSaveServer": "💾 บันทึกไปยังเซิร์ฟเวอร์", "jsonTip": "คำแนะนำ: สามารถแก้ไขค่าดิบแล้วกด 'บันทึกไปยังเซิร์ฟเวอร์' ได้ทันที", "jsonStatusReady": "พร้อมใช้งาน", "jsonStatusOpening": "กำลังเปิด: {name}", "jsonSaveSuccess": "บันทึกไฟล์ {name} เรียบร้อยแล้ว", "jsonInvalid": "รูปแบบ JSON ไม่ถูกต้อง", "apiSettingsTitle": "⚙️ ตั้งค่าการเชื่อมต่อ API Gateway", "apiSettingsSubtitle": "ปรับเปลี่ยนพอร์ตหรือ IP ได้ตามไฟล์ server.json ของคุณ", "lblServerMode": "โหมดเซิร์ฟเวอร์", "lblApiGatewayUrl": "REST API Gateway URL", "lblPingInterval": "ความถี่ในการตรวจสอบสถานะ (วินาที)", "btnSaveSettings": "💾 บันทึกการตั้งค่า", "btnResetDefault": "คืนค่าเริ่มต้น", "modalTitleCharEdit": "ปรับแต่งตัวละคร", "modalBtnMaxAllChar": "⭐ ปรับเต็มทั้งหมด", "modalTabSkills": "⚡ สกิลและร่องรอย", "modalTabStatus": "⚙️ เลเวล & Eidolon", "modalTabLightcone": "🗡️ กรวยแสง", "modalSkillCombatTitle": "ระดับสกิลต่อสู้", "modalBtnMaxSkills": "⭐ ปรับสกิลเต็ม 10/10", "modalSkillBasic": "โจมตีปกติ", "modalSkillSkill": "สกิลต่อสู้", "modalSkillUltra": "ท่าไม้ตาย", "modalSkillTalent": "พรสวรรค์", "modalTracesTitle": "ร่องรอยและเทคนิค", "modalTraceTechnique": "⚡ เทคนิค — เปิดใช้งานก่อนเริ่มการต่อสู้", "traceA2": "🌟 ร่องรอยพิเศษ A2", "traceA4": "🌟 ร่องรอยพิเศษ A4", "traceA6": "🌟 ร่องรอยพิเศษ A6", "traceStatNodes": "💎 โหนดสเตตัสเสริมทั้งหมด (10 โหนด)", "lblLevelRange": "ระดับเลเวล (1-80)", "lblPromotionRange": "การเลื่อนขั้น (0-6)", "lblEidolonLevel": "ระดับ Eidolon", "btnResetE0": "รีเซ็ต E0", "btnMaxE6": "⭐ ปลดเต็ม E6", "modalEnergyTitle": "พลังงานท่าไม้ตาย", "modalEnergy50": "ตั้งค่า 50%", "modalEnergy100": "เต็ม 100%", "modalLcTitle": "กรวยแสงที่สวมใส่", "modalBtnMaxLc": "⭐ ปรับกรวยแสงเต็มขั้น", "lblLcId": "ID กรวยแสง", "modalLcIdPlaceholder": "เช่น 21002 หรือ 24001", "lblLcLevel": "เลเวลกรวยแสง (1-80)", "lblLcRank": "ระดับการขัดเกลา", "modalBtnClose": "✕ ปิด", "modalBtnSave": "💾 บันทึกตัวละคร", "pickerTitle": "เลือกตัวละครเข้าทีม", "pickerSearchPlaceholder": "🔍 ค้นหาตัวละครเพื่อลงทีม...", "apiModalTitle": "⚙️ ตั้งค่าการเชื่อมต่อ API Server", "btnCancel": "ยกเลิก", "btnSaveTest": "บันทึก & ทดสอบ", "toastSlotUpdated": "อัปเดตทีม Slot {slot} เป็น: {name}", "toastCharMaxed": "⭐ ปรับ {name} เป็น Lv. 80 E6 เรียบร้อย", "toastCharSaved": "บันทึกตัวละคร {name} เรียบร้อย", "toastAllSkillsMaxed": "⭐ ปรับสกิลและร่องรอยเต็มทั้งหมดแล้ว", "toastServerSwitched": "สลับโหมดเซิร์ฟเวอร์เป็น: {mode}", "tbOptions": { "MalePhysical": "ผู้บุกเบิกชาย - กายภาพ", "FemalePhysical": "ผู้บุกเบิกหญิง - กายภาพ", "MalePreservation": "ผู้บุกเบิกชาย - ไฟ", "FemalePreservation": "ผู้บุกเบิกหญิง - ไฟ", "MaleHarmony": "ผู้บุกเบิกชาย - ประสาน", "FemaleHarmony": "ผู้บุกเบิกหญิง - ประสาน", "MaleRemembrance": "ผู้บุกเบิกชาย - ความทรงจำ", "FemaleRemembrance": "ผู้บุกเบิกหญิง - ความทรงจำ" }, "marchOptions": { "MarchHunt": "March 7th - ล่าสังหาร", "MarchPreservation": "March 7th - อนุรักษ์" }, "elements": { "Physical": "กายภาพ", "Fire": "ไฟ", "Ice": "น้ำแข็ง", "Lightning": "สายฟ้า", "Wind": "ลม", "Quantum": "ควอนตัม", "Imaginary": "จินตภาพ", "Unknown": "ไม่ระบุ" }, "paths": { "Destruction": "ทำลายล้าง", "Hunt": "ล่าสังหาร", "Erudition": "ปัญญา", "Harmony": "ประสาน", "Nihility": "ลบล้าง", "Preservation": "อนุรักษ์", "Abundance": "เฟื่องฟู", "Remembrance": "ความทรงจำ", "Unknown": "ไม่ระบุ", "Elation": "ปีติ" }, "settingsSaved": "บันทึกการตั้งค่าสำเร็จ!", "settingsReset": "คืนค่าเริ่มต้นเรียบร้อย" }, "en": { "appName": "GaC-Srtool", "appSubtitle": "Star Rail FreeSR & Server Controller", "online": "Connected", "offline": "Offline", "checking": "Checking...", "refresh": "🔄 Refresh", "connectFailed": "Connection Failed", "tabDashboard": "📊 Dashboard & Party", "tabAvatars": "👥 Characters", "tabEquipment": "🗡️ Lightcones & Relics", "tabPersistent": "💾 GaC Save Manager", "tabExrank": "⚡ Ex-Rank Skills", "tabJson": "📝 JSON Management", "tabSettings": "⚙️ Settings", "statAvatars": "Owned Characters", "statLightcones": "Lightcones", "statRelics": "Relics", "serverStatusTitle": "📍 Server Status & Coordinates", "lblServerModeActive": "Active Server Mode", "lblApiEndpoint": "API Gateway Endpoint", "lblPlaneId": "Plane ID", "lblFloorId": "Floor ID", "coords": "Character Coordinates XYZ", "quickActionsTitle": "⚡ Quick Actions", "quickActionsSubtitle": "Send commands to server instantly", "btnMaxAll": "⭐ Max Level 80 & E6 All Characters", "btnSyncPersistent": "💾 Sync Latest Persistent Save", "currentLineupTitle": "🎮 Current Lineup", "slot": "Slot", "slotEmpty": "Empty (Click to add)", "slotTooltip": "Click to select a character for this slot", "removeFromTeam": "Remove from team", "searchPlaceholder": "🔍 Search character name or ID...", "filterAllRarity": "All Rarities", "filter5Star": "5-Star", "filter4Star": "4-Star", "filterAllElements": "All Elements", "filterAllPaths": "All Paths", "btnReload": "🔄 Reload", "avatarsLoading": "Loading characters...", "noAvatarsFound": "No matching characters found", "eidolonLabel": "Eidolon:", "confirmMaxAll": "Upgrade all characters to Level 80 and unlock E6?", "maxAllSuccess": "All characters maximized successfully!", "avatarRankSuccess": "Updated character {id} to E{rank}", "eqLcTitle": "🗡️ Lightcones in Inventory", "eqLcSubtitle": "All lightcones from freesr-data.json", "eqLcLoading": "Loading lightcone data...", "eqRelicTitle": "🛡️ Relics in Inventory", "eqRelicSubtitle": "All relics from freesr-data.json", "eqRelicLoading": "Loading relic data...", "itemCount": "{n} items", "notEquipped": "Not equipped", "equippedBy": "Equipped by", "noLcData": "No lightcone data available", "noRelicData": "No relic data available", "persistentTitle": "💾 GaC Save Manager", "persistentBadge": "Our Custom Server", "persistentSubtitle": "The persistent save stores GaC-specific player states like Trailblazer gender/element, March 7th path, and server-wide global features.", "persistentTbM7Title": "👤 Trailblazer & March 7th", "lblTbGenderElement": "Trailblazer Gender & Element", "lblM7Path": "March 7th Path", "btnSaveCharSettings": "💾 Save Character Settings", "persistentGlobalTitle": "⚙️ GaC Special Features", "swGlobalDesc": "Enable server-wide Silver Wolf global mechanic", "castoriceGlobalDesc": "Enable server-wide Castorice global mechanic", "btnSaveGlobalSwitch": "💾 Save Global Toggles", "exrankTitle": "⚡ Ex-Rank Skills System", "exrankSubtitle": "Toggle special Ex-Rank talents and perks in FreeSR (e.g. Jing Yuan CC immunity, Dan Heng IL, Acheron)", "btnEnableAll": "Enable All Ex-Ranks", "btnDisableAll": "Disable All Ex-Ranks", "exrankToggleSuccess": "{name}: Ex-Rank {status}", "exrankAllSuccess": "All characters Ex-Rank {status}", "enabled": "enabled", "disabled": "disabled", "btnFreesr": "📄 freesr-data.json", "btnPersistent": "💾 persistent save", "btnBeautify": "✨ Beautify JSON", "btnDownload": "📥 Download Backup", "btnUpload": "📤 Upload File", "btnSaveServer": "💾 Save to Server", "jsonTip": "Tip: Edit raw JSON and click 'Save to Server' to apply instantly", "jsonStatusReady": "Ready", "jsonStatusOpening": "Opening: {name}", "jsonSaveSuccess": "File {name} saved successfully", "jsonInvalid": "Invalid JSON format", "apiSettingsTitle": "⚙️ API Gateway Connection Settings", "apiSettingsSubtitle": "Adjust port or IP according to your server.json", "lblServerMode": "Server Mode", "lblApiGatewayUrl": "REST API Gateway URL", "lblPingInterval": "Health Check Interval (seconds)", "btnSaveSettings": "💾 Save Settings", "btnResetDefault": "Reset Defaults", "modalTitleCharEdit": "Character Customization", "modalBtnMaxAllChar": "⭐ Max All", "modalTabSkills": "⚡ Skills & Traces", "modalTabStatus": "⚙️ Level & Eidolon", "modalTabLightcone": "🗡️ Lightcone", "modalSkillCombatTitle": "Combat Skill Levels", "modalBtnMaxSkills": "⭐ Max All Skills (10/10)", "modalSkillBasic": "Basic ATK", "modalSkillSkill": "Skill", "modalSkillUltra": "Ultimate", "modalSkillTalent": "Talent", "modalTracesTitle": "Traces & Technique", "modalTraceTechnique": "⚡ Technique — Pre-battle active", "traceA2": "🌟 Bonus Trace A2", "traceA4": "🌟 Bonus Trace A4", "traceA6": "🌟 Bonus Trace A6", "traceStatNodes": "💎 All Stat Bonus Nodes (10 nodes)", "lblLevelRange": "Level (1-80)", "lblPromotionRange": "Ascension / Promotion (0-6)", "lblEidolonLevel": "Eidolon Level", "btnResetE0": "Reset E0", "btnMaxE6": "⭐ Max E6", "modalEnergyTitle": "Ultimate Energy", "modalEnergy50": "Set 50%", "modalEnergy100": "Full 100%", "modalLcTitle": "Equipped Lightcone", "modalBtnMaxLc": "⭐ Max Lightcone (Lv.80 S5)", "lblLcId": "Lightcone ID", "modalLcIdPlaceholder": "e.g. 21002 or 24001", "lblLcLevel": "Lightcone Level (1-80)", "lblLcRank": "Superimposition (S1-S5)", "modalBtnClose": "✕ Close", "modalBtnSave": "💾 Save Character", "pickerTitle": "Select Character for Lineup", "pickerSearchPlaceholder": "🔍 Search character to add...", "apiModalTitle": "⚙️ API Server Connection Settings", "btnCancel": "Cancel", "btnSaveTest": "Save & Test", "toastSlotUpdated": "Updated Slot {slot} to: {name}", "toastCharMaxed": "⭐ Maxed {name} to Lv. 80 E6", "toastCharSaved": "Saved character {name}", "toastAllSkillsMaxed": "⭐ All skills and traces maxed", "toastServerSwitched": "Switched server mode to: {mode}", "tbOptions": { "MalePhysical": "Trailblazer (Male) - Physical", "FemalePhysical": "Trailblazer (Female) - Physical", "MalePreservation": "Trailblazer (Male) - Fire", "FemalePreservation": "Trailblazer (Female) - Fire", "MaleHarmony": "Trailblazer (Male) - Harmony", "FemaleHarmony": "Trailblazer (Female) - Harmony", "MaleRemembrance": "Trailblazer (Male) - Remembrance", "FemaleRemembrance": "Trailblazer (Female) - Remembrance" }, "marchOptions": { "MarchHunt": "March 7th - The Hunt", "MarchPreservation": "March 7th - Preservation" }, "elements": { "Physical": "Physical", "Fire": "Fire", "Ice": "Ice", "Lightning": "Lightning", "Wind": "Wind", "Quantum": "Quantum", "Imaginary": "Imaginary", "Unknown": "Unknown" }, "paths": { "Destruction": "Destruction", "Hunt": "Hunt", "Erudition": "Erudition", "Harmony": "Harmony", "Nihility": "Nihility", "Preservation": "Preservation", "Abundance": "Abundance", "Remembrance": "Remembrance", "Unknown": "Unknown", "Elation": "Elation" }, "settingsSaved": "Settings saved successfully!", "settingsReset": "Reset to default settings" }, "zh-CN": { "appName": "GaC-Srtool", "appSubtitle": "星穹铁道 FreeSR 与服务器控制器", "online": "已连接", "offline": "离线", "checking": "检查中...", "refresh": "🔄 刷新", "connectFailed": "连接失败", "tabDashboard": "📊 仪表盘与配队", "tabAvatars": "👥 角色列表", "tabEquipment": "🗡️ 光锥与遗器", "tabPersistent": "💾 GaC 存档管理", "tabExrank": "⚡ Ex-Rank 特殊技能", "tabJson": "📝 JSON 文件管理", "tabSettings": "⚙️ 系统设置", "statAvatars": "已拥有角色", "statLightcones": "光锥", "statRelics": "遗器", "serverStatusTitle": "📍 服务器状态与当前坐标", "lblServerModeActive": "当前运行模式", "lblApiEndpoint": "API 网关端点", "lblPlaneId": "地图位面 (Plane ID)", "lblFloorId": "楼层 (Floor ID)", "coords": "角色坐标 XYZ", "quickActionsTitle": "⚡ 快捷操作", "quickActionsSubtitle": "立即向服务器发送指令", "btnMaxAll": "⭐ 全角色升至80级并满命E6", "btnSyncPersistent": "💾 同步最新 Persistent 存档", "currentLineupTitle": "🎮 当前队伍阵容", "slot": "槽位", "slotEmpty": "空位 (点击添加)", "slotTooltip": "点击选择角色加入此位置", "removeFromTeam": "移出队伍", "searchPlaceholder": "🔍 搜索角色名称或 ID...", "filterAllRarity": "全部稀有度", "filter5Star": "5 星", "filter4Star": "4 星", "filterAllElements": "全部属性", "filterAllPaths": "全部命途", "btnReload": "🔄 重新载入", "avatarsLoading": "正在获取角色数据...", "noAvatarsFound": "未找到符合条件的角色", "eidolonLabel": "星魂:", "confirmMaxAll": "确定将全部角色升至80级并解锁满命E6吗?", "maxAllSuccess": "全角色养成满级成功!", "avatarRankSuccess": "已调整角色 {id} 为星魂 {rank}", "eqLcTitle": "🗡️ 背包中的光锥", "eqLcSubtitle": "来自 freesr-data.json 的所有光锥列表", "eqLcLoading": "正在加载光锥数据...", "eqRelicTitle": "🛡️ 背包中的遗器", "eqRelicSubtitle": "来自 freesr-data.json 的所有遗器列表", "eqRelicLoading": "正在加载遗器数据...", "itemCount": "{n} 件", "notEquipped": "未装备", "equippedBy": "装备者", "noLcData": "暂无光锥数据", "noRelicData": "暂无遗器数据", "persistentTitle": "💾 GaC 存档管理", "persistentBadge": "独家自定义服务器", "persistentSubtitle": "persistent 存档保存 GaC 特有的玩家状态(主角性别/属性、三月七命途、全局开关等)", "persistentTbM7Title": "👤 开拓者与三月七", "lblTbGenderElement": "主角性别与属性", "lblM7Path": "三月七命途形态", "btnSaveCharSettings": "💾 保存主角设定", "persistentGlobalTitle": "⚙️ GaC 特殊功能开关", "swGlobalDesc": "开启全服银狼专属机制", "castoriceGlobalDesc": "开启全服 Castorice 专属机制", "btnSaveGlobalSwitch": "💾 保存全局开关", "exrankTitle": "⚡ Ex-Rank 特殊技能系统", "exrankSubtitle": "在 FreeSR 中开启特定角色的 Ex-Rank 专属天赋与强化机制(例如景元免疫受控、饮月、黄泉)", "btnEnableAll": "开启全部 Ex-Rank", "btnDisableAll": "关闭全部 Ex-Rank", "exrankToggleSuccess": "{name}: Ex-Rank 已{status}", "exrankAllSuccess": "全角色 Ex-Rank 已{status}", "enabled": "启用", "disabled": "禁用", "btnFreesr": "📄 freesr-data.json", "btnPersistent": "💾 persistent 存档", "btnBeautify": "✨ 格式化 JSON", "btnDownload": "📥 下载备份", "btnUpload": "📤 上传文件", "btnSaveServer": "💾 保存至服务器", "jsonTip": "提示: 可直接修改原始 JSON 并点击 '保存至服务器' 生效", "jsonStatusReady": "就绪", "jsonStatusOpening": "正在打开: {name}", "jsonSaveSuccess": "文件 {name} 已成功保存", "jsonInvalid": "JSON 格式无效", "apiSettingsTitle": "⚙️ API 网关连接设置", "apiSettingsSubtitle": "可根据您的 server.json 配置修改端口或 IP", "lblServerMode": "服务器模式", "lblApiGatewayUrl": "REST API Gateway URL", "lblPingInterval": "状态检测频率 (秒)", "btnSaveSettings": "💾 保存设置", "btnResetDefault": "恢复默认", "modalTitleCharEdit": "角色养成与配装", "modalBtnMaxAllChar": "⭐ 全部升至满级", "modalTabSkills": "⚡ 技能与行迹", "modalTabStatus": "⚙️ 等级与星魂", "modalTabLightcone": "🗡️ 光锥", "modalSkillCombatTitle": "战斗技能等级", "modalBtnMaxSkills": "⭐ 技能全满 (10/10)", "modalSkillBasic": "普攻", "modalSkillSkill": "战技", "modalSkillUltra": "终结技", "modalSkillTalent": "天赋", "modalTracesTitle": "行迹与秘技", "modalTraceTechnique": "⚡ 秘技 — 进入战斗前生效", "traceA2": "🌟 额外能力 A2", "traceA4": "🌟 额外能力 A4", "traceA6": "🌟 额外能力 A6", "traceStatNodes": "💎 全部属性加成节点 (10个)", "lblLevelRange": "角色等级 (1-80)", "lblPromotionRange": "晋阶等级 (0-6)", "lblEidolonLevel": "星魂等级", "btnResetE0": "重置 E0", "btnMaxE6": "⭐ 满魂 E6", "modalEnergyTitle": "终结技能量", "modalEnergy50": "设为 50%", "modalEnergy100": "满能量 100%", "modalLcTitle": "装备的光锥", "modalBtnMaxLc": "⭐ 满级满叠光锥 (Lv.80 叠影5)", "lblLcId": "光锥 ID", "modalLcIdPlaceholder": "例如 21002 或 24001", "lblLcLevel": "光锥等级 (1-80)", "lblLcRank": "叠影阶数 (S1-S5)", "modalBtnClose": "✕ 关闭", "modalBtnSave": "💾 保存角色", "pickerTitle": "选择上阵角色", "pickerSearchPlaceholder": "🔍 搜索要加入队伍的角色...", "apiModalTitle": "⚙️ API 服务器连接设置", "btnCancel": "取消", "btnSaveTest": "保存并测试", "toastSlotUpdated": "已更新槽位 {slot} 为: {name}", "toastCharMaxed": "⭐ 已将 {name} 升至 Lv. 80 E6", "toastCharSaved": "已保存角色 {name}", "toastAllSkillsMaxed": "⭐ 所有技能与行迹已升满", "toastServerSwitched": "已切换服务器模式为: {mode}", "tbOptions": { "MalePhysical": "开拓者 (男) - 物理", "FemalePhysical": "开拓者 (女) - 物理", "MalePreservation": "开拓者 (男) - 火", "FemalePreservation": "开拓者 (女) - 火", "MaleHarmony": "开拓者 (男) - 同谐", "FemaleHarmony": "开拓者 (女) - 同谐", "MaleRemembrance": "开拓者 (男) - 记忆", "FemaleRemembrance": "开拓者 (女) - 记忆" }, "marchOptions": { "MarchHunt": "三月七 - 巡猎", "MarchPreservation": "三月七 - 存护" }, "elements": { "Physical": "物理", "Fire": "火", "Ice": "冰", "Lightning": "雷", "Wind": "风", "Quantum": "量子", "Imaginary": "虚数", "Unknown": "未知" }, "paths": { "Destruction": "毁灭", "Hunt": "巡猎", "Erudition": "智识", "Harmony": "同谐", "Nihility": "虚无", "Preservation": "存护", "Abundance": "丰饶", "Remembrance": "记忆", "Unknown": "未知", "Elation": "欢愉" }, "settingsSaved": "设置已成功保存!", "settingsReset": "已恢复默认设置" }, "zh-TW": { "appName": "GaC-Srtool", "appSubtitle": "星穹鐵道 FreeSR 與伺服器控制器", "online": "已連線", "offline": "離線", "checking": "檢查中...", "refresh": "🔄 重新整理", "connectFailed": "連線失敗", "tabDashboard": "📊 儀表板與配隊", "tabAvatars": "👥 角色列表", "tabEquipment": "🗡️ 光錐與遺器", "tabPersistent": "💾 GaC 存檔管理", "tabExrank": "⚡ Ex-Rank 特殊技能", "tabJson": "📝 JSON 檔案管理", "tabSettings": "⚙️ 系統設定", "statAvatars": "已擁有角色", "statLightcones": "光錐", "statRelics": "遺器", "serverStatusTitle": "📍 伺服器狀態與當前座標", "lblServerModeActive": "當前運行模式", "lblApiEndpoint": "API 閘道端點", "lblPlaneId": "地圖位面 (Plane ID)", "lblFloorId": "樓層 (Floor ID)", "coords": "角色座標 XYZ", "quickActionsTitle": "⚡ 快捷操作", "quickActionsSubtitle": "立即向伺服器發送指令", "btnMaxAll": "⭐ 全角色升至80級並滿魂E6", "btnSyncPersistent": "💾 同步最新 Persistent 存檔", "currentLineupTitle": "🎮 當前隊伍陣容", "slot": "欄位", "slotEmpty": "空位 (點擊新增)", "slotTooltip": "點擊選擇角色加入此位置", "removeFromTeam": "移出隊伍", "searchPlaceholder": "🔍 搜尋角色名稱或 ID...", "filterAllRarity": "全部稀有度", "filter5Star": "5 星", "filter4Star": "4 星", "filterAllElements": "全部屬性", "filterAllPaths": "全部命途", "btnReload": "🔄 重新載入", "avatarsLoading": "正在獲取角色資料...", "noAvatarsFound": "未找到符合條件的角色", "eidolonLabel": "星魂:", "confirmMaxAll": "確定將全部角色升至80級並解鎖滿魂E6嗎?", "maxAllSuccess": "全角色養成滿級成功!", "avatarRankSuccess": "已調整角色 {id} 為星魂 {rank}", "eqLcTitle": "🗡️ 背包中的光錐", "eqLcSubtitle": "來自 freesr-data.json 的所有光錐列表", "eqLcLoading": "正在載入光錐資料...", "eqRelicTitle": "🛡️ 背包中的遺器", "eqRelicSubtitle": "來自 freesr-data.json 的所有遺器列表", "eqRelicLoading": "正在載入遺器資料...", "itemCount": "{n} 件", "notEquipped": "未裝備", "equippedBy": "裝備者", "noLcData": "暫無光錐資料", "noRelicData": "暫無遺器資料", "persistentTitle": "💾 GaC 存檔管理", "persistentBadge": "獨家自訂伺服器", "persistentSubtitle": "persistent 存檔儲存 GaC 特有的玩家狀態(主角性別/屬性、三月七命途、全域開關等)", "persistentTbM7Title": "👤 開拓者與三月七", "lblTbGenderElement": "主角性別與屬性", "lblM7Path": "三月七命途型態", "btnSaveCharSettings": "💾 儲存主角設定", "persistentGlobalTitle": "⚙️ GaC 特殊功能開關", "swGlobalDesc": "開啟全服銀狼專屬機制", "castoriceGlobalDesc": "開啟全服 Castorice 專屬機制", "btnSaveGlobalSwitch": "💾 儲存全域開關", "exrankTitle": "⚡ Ex-Rank 特殊技能系統", "exrankSubtitle": "在 FreeSR 中開啟特定角色的 Ex-Rank 專屬天賦與強化機制(例如景元免疫受控、飲月、黃泉)", "btnEnableAll": "開啟全部 Ex-Rank", "btnDisableAll": "關閉全部 Ex-Rank", "exrankToggleSuccess": "{name}: Ex-Rank 已{status}", "exrankAllSuccess": "全角色 Ex-Rank 已{status}", "enabled": "啟用", "disabled": "停用", "btnFreesr": "📄 freesr-data.json", "btnPersistent": "💾 persistent 存檔", "btnBeautify": "✨ 格式化 JSON", "btnDownload": "📥 下載備份", "btnUpload": "📤 上傳檔案", "btnSaveServer": "💾 儲存至伺服器", "jsonTip": "提示: 可直接修改原始 JSON 並點擊 '儲存至伺服器' 生效", "jsonStatusReady": "就緒", "jsonStatusOpening": "正在開啟: {name}", "jsonSaveSuccess": "檔案 {name} 已成功儲存", "jsonInvalid": "JSON 格式無效", "apiSettingsTitle": "⚙️ API 閘道連線設定", "apiSettingsSubtitle": "可根據您的 server.json 配置修改連接埠或 IP", "lblServerMode": "伺服器模式", "lblApiGatewayUrl": "REST API Gateway URL", "lblPingInterval": "狀態檢測頻率 (秒)", "btnSaveSettings": "💾 儲存設定", "btnResetDefault": "恢復預設值", "modalTitleCharEdit": "角色養成與配裝", "modalBtnMaxAllChar": "⭐ 全部升至滿級", "modalTabSkills": "⚡ 技能與行跡", "modalTabStatus": "⚙️ 等級與星魂", "modalTabLightcone": "🗡️ 光錐", "modalSkillCombatTitle": "戰鬥技能等級", "modalBtnMaxSkills": "⭐ 技能全滿 (10/10)", "modalSkillBasic": "普攻", "modalSkillSkill": "戰技", "modalSkillUltra": "終結技", "modalSkillTalent": "天賦", "modalTracesTitle": "行跡與秘技", "modalTraceTechnique": "⚡ 秘技 — 進入戰鬥前生效", "traceA2": "🌟 額外能力 A2", "traceA4": "🌟 額外能力 A4", "traceA6": "🌟 額外能力 A6", "traceStatNodes": "💎 全部屬性加成節點 (10個)", "lblLevelRange": "角色等級 (1-80)", "lblPromotionRange": "晉階等級 (0-6)", "lblEidolonLevel": "星魂等級", "btnResetE0": "重設 E0", "btnMaxE6": "⭐ 滿魂 E6", "modalEnergyTitle": "終結技能量", "modalEnergy50": "設為 50%", "modalEnergy100": "滿能量 100%", "modalLcTitle": "裝備的光錐", "modalBtnMaxLc": "⭐ 滿級滿疊光錐 (Lv.80 疊影5)", "lblLcId": "光錐 ID", "modalLcIdPlaceholder": "例如 21002 或 24001", "lblLcLevel": "光錐等級 (1-80)", "lblLcRank": "疊影階數 (S1-S5)", "modalBtnClose": "✕ 關閉", "modalBtnSave": "💾 儲存角色", "pickerTitle": "選擇上陣角色", "pickerSearchPlaceholder": "🔍 搜尋要加入隊伍的角色...", "apiModalTitle": "⚙️ API 伺服器連線設定", "btnCancel": "取消", "btnSaveTest": "儲存並測試", "toastSlotUpdated": "已更新欄位 {slot} 為: {name}", "toastCharMaxed": "⭐ 已將 {name} 升至 Lv. 80 E6", "toastCharSaved": "已儲存角色 {name}", "toastAllSkillsMaxed": "⭐ 所有技能與行跡已升滿", "toastServerSwitched": "已切換伺服器模式為: {mode}", "tbOptions": { "MalePhysical": "開拓者 (男) - 物理", "FemalePhysical": "開拓者 (女) - 物理", "MalePreservation": "開拓者 (男) - 火", "FemalePreservation": "開拓者 (女) - 火", "MaleHarmony": "開拓者 (男) - 同諧", "FemaleHarmony": "開拓者 (女) - 同諧", "MaleRemembrance": "開拓者 (男) - 記憶", "FemaleRemembrance": "開拓者 (女) - 記憶" }, "marchOptions": { "MarchHunt": "三月七 - 巡獵", "MarchPreservation": "三月七 - 存護" }, "elements": { "Physical": "物理", "Fire": "火", "Ice": "冰", "Lightning": "雷", "Wind": "風", "Quantum": "量子", "Imaginary": "虛數", "Unknown": "未知" }, "paths": { "Destruction": "毀滅", "Hunt": "巡獵", "Erudition": "智識", "Harmony": "同諧", "Nihility": "虛無", "Preservation": "存護", "Abundance": "豐饒", "Remembrance": "記憶", "Unknown": "未知", "Elation": "歡愉" }, "settingsSaved": "設定已成功儲存!", "settingsReset": "已恢復預設設定" }, "ja": { "appName": "GaC-Srtool", "appSubtitle": "スターレイル FreeSR & サーバーコントローラー", "online": "接続完了", "offline": "オフライン", "checking": "確認中...", "refresh": "🔄 更新", "connectFailed": "接続失敗", "tabDashboard": "📊 ダッシュボード・編成", "tabAvatars": "👥 キャラクター", "tabEquipment": "🗡️ 光円錐と遺物", "tabPersistent": "💾 GaC セーブ管理", "tabExrank": "⚡ Ex-Rank 特殊スキル", "tabJson": "📝 JSON 管理", "tabSettings": "⚙️ 設定", "statAvatars": "所持キャラクター", "statLightcones": "光円錐", "statRelics": "遺物", "serverStatusTitle": "📍 サーバー状態と現在座標", "lblServerModeActive": "稼働中のサーバーモード", "lblApiEndpoint": "API ゲートウェイエンドポイント", "lblPlaneId": "マップ平面 (Plane ID)", "lblFloorId": "フロア (Floor ID)", "coords": "キャラクター座標 XYZ", "quickActionsTitle": "⚡ クイック操作", "quickActionsSubtitle": "サーバーへ即時コマンドを送信", "btnMaxAll": "⭐ 全キャラ Lv.80 & 完凸E6にする", "btnSyncPersistent": "💾 最新 Persistent データを同期", "currentLineupTitle": "🎮 現在の編成", "slot": "枠", "slotEmpty": "空き (クリックして追加)", "slotTooltip": "クリックしてこの枠にキャラクターを選択", "removeFromTeam": "編成から外す", "searchPlaceholder": "🔍 キャラ名またはIDで検索...", "filterAllRarity": "すべてのレアリティ", "filter5Star": "★5", "filter4Star": "★4", "filterAllElements": "すべての属性", "filterAllPaths": "すべての運命", "btnReload": "🔄 再読み込み", "avatarsLoading": "キャラクターデータを読み込み中...", "noAvatarsFound": "該当するキャラクターが見つかりません", "eidolonLabel": "星魂:", "confirmMaxAll": "全キャラクターをレベル80・星魂E6まで育成しますか?", "maxAllSuccess": "全キャラクターの最大化が完了しました!", "avatarRankSuccess": "キャラクター {id} を星魂 {rank} に変更しました", "eqLcTitle": "🗡️ 所持光円錐一覧", "eqLcSubtitle": "freesr-data.json からの全光円錐一覧", "eqLcLoading": "光円錐データを読み込み中...", "eqRelicTitle": "🛡️ 所持遺物一覧", "eqRelicSubtitle": "freesr-data.json からの全遺物一覧", "eqRelicLoading": "遺物データを読み込み中...", "itemCount": "{n} 個", "notEquipped": "未装備", "equippedBy": "装備者", "noLcData": "光円錐データがありません", "noRelicData": "遺物データがありません", "persistentTitle": "💾 GaC セーブ管理", "persistentBadge": "専用カスタムサーバー", "persistentSubtitle": "persistent ファイルには、開拓者の性別/属性、三月なのかの運命、グローバル機能スイッチなど GaC 専用設定が保存されます", "persistentTbM7Title": "👤 開拓者 & 三月なのか", "lblTbGenderElement": "開拓者の性別・属性", "lblM7Path": "三月なのかの運命形態", "btnSaveCharSettings": "💾 設定を保存", "persistentGlobalTitle": "⚙️ GaC 特殊機能スイッチ", "swGlobalDesc": "サーバー全体で銀狼の特殊機能を有効化", "castoriceGlobalDesc": "サーバー全体で Castorice の特殊機能を有効化", "btnSaveGlobalSwitch": "💾 グローバル設定を保存", "exrankTitle": "⚡ Ex-Rank 特殊スキルシステム", "exrankSubtitle": "FreeSR で特定キャラの Ex-Rank 専用天賦や特殊メカニクスを有効化(景元の行動制限無効、飲月、黄泉など)", "btnEnableAll": "全 Ex-Rank を有効化", "btnDisableAll": "全 Ex-Rank を無効化", "exrankToggleSuccess": "{name}: Ex-Rank を{status}にしました", "exrankAllSuccess": "全キャラの Ex-Rank を{status}にしました", "enabled": "有効", "disabled": "無効", "btnFreesr": "📄 freesr-data.json", "btnPersistent": "💾 persistent セーブ", "btnBeautify": "✨ JSON を整形", "btnDownload": "📥 バックアップ保存", "btnUpload": "📤 ファイル読込", "btnSaveServer": "💾 サーバーへ保存", "jsonTip": "ヒント: 生の JSON を編集して「サーバーへ保存」で即時反映できます", "jsonStatusReady": "準備完了", "jsonStatusOpening": "読み込み中: {name}", "jsonSaveSuccess": "{name} の保存に成功しました", "jsonInvalid": "無効な JSON 形式です", "apiSettingsTitle": "⚙️ API ゲートウェイ接続設定", "apiSettingsSubtitle": "server.json に合わせてポートやIPを変更できます", "lblServerMode": "サーバーモード", "lblApiGatewayUrl": "REST API Gateway URL", "lblPingInterval": "ヘルスチェック頻度 (秒)", "btnSaveSettings": "💾 設定を保存", "btnResetDefault": "デフォルトに戻す", "modalTitleCharEdit": "キャラクター育成・カスタマイズ", "modalBtnMaxAllChar": "⭐ すべてMAXにする", "modalTabSkills": "⚡ スキルと軌跡", "modalTabStatus": "⚙️ レベル & 星魂", "modalTabLightcone": "🗡️ 光円錐", "modalSkillCombatTitle": "戦闘スキルレベル", "modalBtnMaxSkills": "⭐ スキル全MAX (10/10)", "modalSkillBasic": "通常攻撃", "modalSkillSkill": "戦闘スキル", "modalSkillUltra": "必殺技", "modalSkillTalent": "天賦", "modalTracesTitle": "軌跡と秘技", "modalTraceTechnique": "⚡ 秘技 — 戦闘突入前に有効化", "traceA2": "🌟 追加能力 A2", "traceA4": "🌟 追加能力 A4", "traceA6": "🌟 追加能力 A6", "traceStatNodes": "💎 全ステータスボーナス (10個)", "lblLevelRange": "レベル (1-80)", "lblPromotionRange": "昇格段階 (0-6)", "lblEidolonLevel": "星魂段階", "btnResetE0": "E0にリセット", "btnMaxE6": "⭐ 完凸 E6", "modalEnergyTitle": "必殺技EP", "modalEnergy50": "50% に設定", "modalEnergy100": "100% (MAX)", "modalLcTitle": "装備中の光円錐", "modalBtnMaxLc": "⭐ 光円錐MAX (Lv.80 重畳5)", "lblLcId": "光円錐 ID", "modalLcIdPlaceholder": "例: 21002 または 24001", "lblLcLevel": "光円錐レベル (1-80)", "lblLcRank": "重畳段階 (S1-S5)", "modalBtnClose": "✕ 閉じる", "modalBtnSave": "💾 キャラクター保存", "pickerTitle": "編成キャラクターを選択", "pickerSearchPlaceholder": "🔍 編成するキャラクターを検索...", "apiModalTitle": "⚙️ API サーバー接続設定", "btnCancel": "キャンセル", "btnSaveTest": "保存 & テスト", "toastSlotUpdated": "枠 {slot} を {name} に更新しました", "toastCharMaxed": "⭐ {name} を Lv.80 E6 に育成完了", "toastCharSaved": "{name} の設定を保存しました", "toastAllSkillsMaxed": "⭐ 全スキルと軌跡を最大化しました", "toastServerSwitched": "サーバーモードを {mode} に切り替えました", "tbOptions": { "MalePhysical": "開拓者 (男) - 物理", "FemalePhysical": "開拓者 (女) - 物理", "MalePreservation": "開拓者 (男) - 炎", "FemalePreservation": "開拓者 (女) - 炎", "MaleHarmony": "開拓者 (男) - 調和", "FemaleHarmony": "開拓者 (女) - 調和", "MaleRemembrance": "開拓者 (男) - 記憶", "FemaleRemembrance": "開拓者 (女) - 記憶" }, "marchOptions": { "MarchHunt": "三月なのか - 巡狩", "MarchPreservation": "三月なのか - 存護" }, "elements": { "Physical": "物理", "Fire": "炎", "Ice": "氷", "Lightning": "雷", "Wind": "風", "Quantum": "量子", "Imaginary": "虚数", "Unknown": "不明" }, "paths": { "Destruction": "壊滅", "Hunt": "巡狩", "Erudition": "知恵", "Harmony": "調和", "Nihility": "虚無", "Preservation": "存護", "Abundance": "豊穣", "Remembrance": "記憶", "Unknown": "不明", "Elation": "愉悦" }, "settingsSaved": "設定を保存しました!", "settingsReset": "デフォルト設定に戻しました" }, "ko": { "appName": "GaC-Srtool", "appSubtitle": "스타레일 FreeSR & 서버 컨트롤러", "online": "연결됨", "offline": "오프라인", "checking": "확인 중...", "refresh": "🔄 새로고침", "connectFailed": "연결 실패", "tabDashboard": "📊 대시보드 및 파티", "tabAvatars": "👥 캐릭터", "tabEquipment": "🗡️ 광추 및 유물", "tabPersistent": "💾 GaC 세이브 관리", "tabExrank": "⚡ Ex-Rank 특수 스킬", "tabJson": "📝 JSON 관리", "tabSettings": "⚙️ 설정", "statAvatars": "보유 캐릭터", "statLightcones": "광추", "statRelics": "유물", "serverStatusTitle": "📍 서버 상태 및 현재 좌표", "lblServerModeActive": "활성 서버 모드", "lblApiEndpoint": "API 게이트웨이 엔드포인트", "lblPlaneId": "플레인 ID", "lblFloorId": "층 ID", "coords": "캐릭터 좌표 XYZ", "quickActionsTitle": "⚡ 빠른 작업", "quickActionsSubtitle": "서버로 즉시 명령 전송", "btnMaxAll": "⭐ 모든 캐릭터 80레벨 및 6성흔 달성", "btnSyncPersistent": "💾 최신 Persistent 데이터 동기화", "currentLineupTitle": "🎮 현재 파티", "slot": "슬롯", "slotEmpty": "비어 있음 (클릭하여 추가)", "slotTooltip": "이 슬롯에 캐릭터를 선택하려면 클릭", "removeFromTeam": "파티에서 제거", "searchPlaceholder": "🔍 캐릭터 이름 또는 ID 검색...", "filterAllRarity": "모든 희귀도", "filter5Star": "5성", "filter4Star": "4성", "filterAllElements": "모든 속성", "filterAllPaths": "모든 운명의 길", "btnReload": "🔄 다시 로드", "avatarsLoading": "캐릭터 데이터를 불러오는 중...", "noAvatarsFound": "조건에 맞는 캐릭터가 없습니다", "eidolonLabel": "성흔:", "confirmMaxAll": "모든 캐릭터를 레벨 80 및 성흔 6으로 육성하시겠습니까?", "maxAllSuccess": "모든 캐릭터 최대치 달성 완료!", "avatarRankSuccess": "캐릭터 {id} 성흔을 {rank}(으)로 변경했습니다", "eqLcTitle": "🗡️ 보유 광추 목록", "eqLcSubtitle": "freesr-data.json의 모든 광추 목록", "eqLcLoading": "광추 데이터 불러오는 중...", "eqRelicTitle": "🛡️ 보유 유물 목록", "eqRelicSubtitle": "freesr-data.json의 모든 유물 목록", "eqRelicLoading": "유물 데이터 불러오는 중...", "itemCount": "{n}개", "notEquipped": "미장착", "equippedBy": "장착 캐릭터", "noLcData": "광추 데이터가 없습니다", "noRelicData": "유물 데이터가 없습니다", "persistentTitle": "💾 GaC 세이브 관리", "persistentBadge": "자체 커스텀 서버", "persistentSubtitle": "persistent 파일은 개척자 성별/속성, Mar. 7th 운명의 길, 전역 기능 스위치 등 GaC 전용 설정을 저장합니다", "persistentTbM7Title": "👤 개척자 & Mar. 7th", "lblTbGenderElement": "개척자 성별 및 속성", "lblM7Path": "Mar. 7th 운명의 길 형태", "btnSaveCharSettings": "💾 캐릭터 설정 저장", "persistentGlobalTitle": "⚙️ GaC 특수 기능 스위치", "swGlobalDesc": "서버 전체 은랑 특수 메커니즘 활성화", "castoriceGlobalDesc": "서버 전체 Castorice 특수 메커니즘 활성화", "btnSaveGlobalSwitch": "💾 전역 스위치 저장", "exrankTitle": "⚡ Ex-Rank 특수 스킬 시스템", "exrankSubtitle": "FreeSR에서 특정 캐릭터의 Ex-Rank 특성 활성화 (경원 제어 면역, 단항 음월, 아케론 등)", "btnEnableAll": "모든 Ex-Rank 활성화", "btnDisableAll": "모든 Ex-Rank 비활성화", "exrankToggleSuccess": "{name}: Ex-Rank {status}", "exrankAllSuccess": "모든 캐릭터 Ex-Rank {status}", "enabled": "활성화됨", "disabled": "비활성화됨", "btnFreesr": "📄 freesr-data.json", "btnPersistent": "💾 persistent 파일", "btnBeautify": "✨ JSON 정리", "btnDownload": "📥 백업 다운로드", "btnUpload": "📤 파일 업로드", "btnSaveServer": "💾 서버에 저장", "jsonTip": "팁: 원본 JSON을 직접 수정한 후 '서버에 저장'을 누르면 즉시 적용됩니다", "jsonStatusReady": "준비 완료", "jsonStatusOpening": "열기 중: {name}", "jsonSaveSuccess": "{name} 파일이 저장되었습니다", "jsonInvalid": "올바르지 않은 JSON 형식입니다", "apiSettingsTitle": "⚙️ API 게이트웨이 연결 설정", "apiSettingsSubtitle": "server.json에 맞춰 포트 및 IP 변경 가능", "lblServerMode": "서버 모드", "lblApiGatewayUrl": "REST API Gateway URL", "lblPingInterval": "상태 확인 간격 (초)", "btnSaveSettings": "💾 설정 저장", "btnResetDefault": "기본값 복원", "modalTitleCharEdit": "캐릭터 육성 및 세팅", "modalBtnMaxAllChar": "⭐ 모두 최대치로 육성", "modalTabSkills": "⚡ 스킬 및 행적", "modalTabStatus": "⚙️ 레벨 & 성흔", "modalTabLightcone": "🗡️ 광추", "modalSkillCombatTitle": "전투 스킬 레벨", "modalBtnMaxSkills": "⭐ 모든 스킬 최대치 (10/10)", "modalSkillBasic": "일반 공격", "modalSkillSkill": "전투 스킬", "modalSkillUltra": "필살기", "modalSkillTalent": "특성", "modalTracesTitle": "행적 및 비술", "modalTraceTechnique": "⚡ 비술 — 전투 진입 전 활성화", "traceA2": "🌟 추가 능력 A2", "traceA4": "🌟 추가 능력 A4", "traceA6": "🌟 추가 능력 A6", "traceStatNodes": "💎 모든 스탯 보너스 노드 (10개)", "lblLevelRange": "레벨 (1-80)", "lblPromotionRange": "승급 단계 (0-6)", "lblEidolonLevel": "성흔 레벨", "btnResetE0": "E0 초기화", "btnMaxE6": "⭐ 풀성흔 E6", "modalEnergyTitle": "필살기 에너지", "modalEnergy50": "50% 설정", "modalEnergy100": "100% 충전", "modalLcTitle": "장착된 광추", "modalBtnMaxLc": "⭐ 광추 최대치 (80레벨 중첩5)", "lblLcId": "광추 ID", "modalLcIdPlaceholder": "예: 21002 또는 24001", "lblLcLevel": "광추 레벨 (1-80)", "lblLcRank": "중첩 단계 (S1-S5)", "modalBtnClose": "✕ 닫기", "modalBtnSave": "💾 캐릭터 저장", "pickerTitle": "파티 배치 캐릭터 선택", "pickerSearchPlaceholder": "🔍 배치할 캐릭터 검색...", "apiModalTitle": "⚙️ API 서버 연결 설정", "btnCancel": "취소", "btnSaveTest": "저장 및 테스트", "toastSlotUpdated": "{slot}번 슬롯을 {name}(으)로 업데이트했습니다", "toastCharMaxed": "⭐ {name}을(를) 80레벨 6성흔으로 육성 완료", "toastCharSaved": "{name} 캐릭터 저장 완료", "toastAllSkillsMaxed": "⭐ 모든 스킬과 행적이 최대치로 설정되었습니다", "toastServerSwitched": "서버 모드를 {mode}(으)로 변경했습니다", "tbOptions": { "MalePhysical": "개척자 (남) - 물리", "FemalePhysical": "개척자 (여) - 물리", "MalePreservation": "개척자 (남) - 화염", "FemalePreservation": "개척자 (여) - 화염", "MaleHarmony": "개척자 (남) - 화합", "FemaleHarmony": "개척자 (여) - 화합", "MaleRemembrance": "개척자 (남) - 기억", "FemaleRemembrance": "개척자 (여) - 기억" }, "marchOptions": { "MarchHunt": "Mar. 7th - 수렵", "MarchPreservation": "Mar. 7th - 보존" }, "elements": { "Physical": "물리", "Fire": "화염", "Ice": "얼음", "Lightning": "번개", "Wind": "바람", "Quantum": "양자", "Imaginary": "허수", "Unknown": "미확인" }, "paths": { "Destruction": "파멸", "Hunt": "수렵", "Erudition": "지식", "Harmony": "화합", "Nihility": "공허", "Preservation": "보존", "Abundance": "풍요", "Remembrance": "기억", "Unknown": "미확인", "Elation": "환락" }, "settingsSaved": "설정이 저장되었습니다!", "settingsReset": "기본 설정으로 복원되었습니다" }, "vi": { "appName": "GaC-Srtool", "appSubtitle": "Bộ điều khiển máy chủ & FreeSR Star Rail", "online": "Đã kết nối", "offline": "Ngoại tuyến", "checking": "Đang kiểm tra...", "refresh": "🔄 Làm mới", "connectFailed": "Kết nối thất bại", "tabDashboard": "📊 Tổng quan & Đội hình", "tabAvatars": "👥 Nhân vật", "tabEquipment": "🗡️ Nón Ánh Sáng & Di Vật", "tabPersistent": "💾 Quản lý lưu GaC", "tabExrank": "⚡ Kỹ Năng Ex-Rank", "tabJson": "📝 Quản lý JSON", "tabSettings": "⚙️ Cài đặt", "statAvatars": "Nhân vật sở hữu", "statLightcones": "Nón Ánh Sáng", "statRelics": "Di Vật", "serverStatusTitle": "📍 Trạng thái máy chủ & Tọa độ", "lblServerModeActive": "Chế độ máy chủ hoạt động", "lblApiEndpoint": "Điểm cuối API Gateway", "lblPlaneId": "Plane ID", "lblFloorId": "Floor ID", "coords": "Tọa độ nhân vật XYZ", "quickActionsTitle": "⚡ Thao tác nhanh", "quickActionsSubtitle": "Gửi lệnh đến máy chủ ngay lập tức", "btnMaxAll": "⭐ Đạt cấp 80 & E6 tất cả nhân vật", "btnSyncPersistent": "💾 Đồng bộ tệp lưu Persistent mới nhất", "currentLineupTitle": "🎮 Đội hình hiện tại", "slot": "Vị trí", "slotEmpty": "Trống (Nhấp để thêm)", "slotTooltip": "Nhấp để chọn nhân vật cho vị trí này", "removeFromTeam": "Xóa khỏi đội", "searchPlaceholder": "🔍 Tìm kiếm nhân vật hoặc ID...", "filterAllRarity": "Tất cả độ hiếm", "filter5Star": "5 Sao", "filter4Star": "4 Sao", "filterAllElements": "Tất cả thuộc tính", "filterAllPaths": "Tất cả Vận Mệnh", "btnReload": "🔄 Tải lại", "avatarsLoading": "Đang tải dữ liệu nhân vật...", "noAvatarsFound": "Không tìm thấy nhân vật phù hợp", "eidolonLabel": "Tinh Hồn:", "confirmMaxAll": "Nâng cấp tất cả nhân vật lên Cấp 80 và Tinh Hồn 6?", "maxAllSuccess": "Tối đa tất cả nhân vật thành công!", "avatarRankSuccess": "Đã chỉnh nhân vật {id} thành Tinh Hồn {rank}", "eqLcTitle": "🗡️ Nón Ánh Sáng trong kho", "eqLcSubtitle": "Tất cả Nón Ánh Sáng từ freesr-data.json", "eqLcLoading": "Đang tải dữ liệu Nón Ánh Sáng...", "eqRelicTitle": "🛡️ Di Vật trong kho", "eqRelicSubtitle": "Tất cả Di Vật từ freesr-data.json", "eqRelicLoading": "Đang tải dữ liệu Di Vật...", "itemCount": "{n} món", "notEquipped": "Chưa trang bị", "equippedBy": "Trang bị bởi", "noLcData": "Chưa có dữ liệu Nón Ánh Sáng", "noRelicData": "Chưa có dữ liệu Di Vật", "persistentTitle": "💾 Quản lý lưu GaC", "persistentBadge": "Máy chủ tùy chỉnh độc quyền", "persistentSubtitle": "Tệp persistent lưu trữ trạng thái người chơi của GaC như giới tính/thuộc tính nhân vật chính, March 7th, công tắc toàn cục", "persistentTbM7Title": "👤 Nhà Khai Phá & March 7th", "lblTbGenderElement": "Giới tính & Thuộc tính nhân vật chính", "lblM7Path": "Dạng Vận Mệnh của March 7th", "btnSaveCharSettings": "💾 Lưu cài đặt nhân vật", "persistentGlobalTitle": "⚙️ Công tắc tính năng đặc biệt GaC", "swGlobalDesc": "Bật cơ chế Silver Wolf toàn máy chủ", "castoriceGlobalDesc": "Bật cơ chế Castorice toàn máy chủ", "btnSaveGlobalSwitch": "💾 Lưu công tắc toàn cục", "exrankTitle": "⚡ Hệ thống kỹ năng Ex-Rank", "exrankSubtitle": "Kích hoạt thiên phú và đặc quyền Ex-Rank trong FreeSR (ví dụ: Jing Yuan kháng khống chế, Dan Heng IL, Acheron)", "btnEnableAll": "Bật tất cả Ex-Rank", "btnDisableAll": "Tắt tất cả Ex-Rank", "exrankToggleSuccess": "{name}: Ex-Rank {status}", "exrankAllSuccess": "Tất cả nhân vật Ex-Rank {status}", "enabled": "đã bật", "disabled": "đã tắt", "btnFreesr": "📄 freesr-data.json", "btnPersistent": "💾 persistent", "btnBeautify": "✨ Định dạng JSON", "btnDownload": "📥 Tải xuống Backup", "btnUpload": "📤 Tải lên tệp", "btnSaveServer": "💾 Lưu vào máy chủ", "jsonTip": "Mẹo: Chỉnh sửa trực tiếp JSON và nhấn 'Lưu vào máy chủ'", "jsonStatusReady": "Sẵn sàng", "jsonStatusOpening": "Đang mở: {name}", "jsonSaveSuccess": "Lưu tệp {name} thành công", "jsonInvalid": "Định dạng JSON không hợp lệ", "apiSettingsTitle": "⚙️ Cài đặt kết nối API Gateway", "apiSettingsSubtitle": "Điều chỉnh cổng hoặc IP theo server.json của bạn", "lblServerMode": "Chế độ máy chủ", "lblApiGatewayUrl": "URL REST API Gateway", "lblPingInterval": "Tần suất kiểm tra (giây)", "btnSaveSettings": "💾 Lưu cài đặt", "btnResetDefault": "Khôi phục mặc định", "modalTitleCharEdit": "Tùy chỉnh nhân vật", "modalBtnMaxAllChar": "⭐ Nâng tối đa tất cả", "modalTabSkills": "⚡ Kỹ Năng & Vết Tích", "modalTabStatus": "⚙️ Cấp & Tinh Hồn", "modalTabLightcone": "🗡️ Nón Ánh Sáng", "modalSkillCombatTitle": "Cấp kỹ năng chiến đấu", "modalBtnMaxSkills": "⭐ Tối đa kỹ năng (10/10)", "modalSkillBasic": "Tấn Công Thường", "modalSkillSkill": "Chiến Kỹ", "modalSkillUltra": "Tuyệt Kỹ", "modalSkillTalent": "Thiên Phú", "modalTracesTitle": "Vết Tích & Bí Kỹ", "modalTraceTechnique": "⚡ Bí Kỹ — Kích hoạt trước trận", "traceA2": "🌟 Vết Tích Phụ A2", "traceA4": "🌟 Vết Tích Phụ A4", "traceA6": "🌟 Vết Tích Phụ A6", "traceStatNodes": "💎 Tất cả nhánh tăng chỉ số (10 nhánh)", "lblLevelRange": "Cấp độ (1-80)", "lblPromotionRange": "Đột phá (0-6)", "lblEidolonLevel": "Cấp Tinh Hồn", "btnResetE0": "Đặt lại E0", "btnMaxE6": "⭐ Tối đa E6", "modalEnergyTitle": "Năng lượng Tuyệt Kỹ", "modalEnergy50": "Đặt 50%", "modalEnergy100": "Đầy 100%", "modalLcTitle": "Nón Ánh Sáng đã trang bị", "modalBtnMaxLc": "⭐ Tối đa Nón Ánh Sáng (Lv.80 S5)", "lblLcId": "ID Nón Ánh Sáng", "modalLcIdPlaceholder": "VD: 21002 hoặc 24001", "lblLcLevel": "Cấp Nón Ánh Sáng (1-80)", "lblLcRank": "Bậc Tích Lũy (S1-S5)", "modalBtnClose": "✕ Đóng", "modalBtnSave": "💾 Lưu nhân vật", "pickerTitle": "Chọn nhân vật vào đội hình", "pickerSearchPlaceholder": "🔍 Tìm kiếm nhân vật để thêm...", "apiModalTitle": "⚙️ Cài đặt kết nối máy chủ API", "btnCancel": "Hủy", "btnSaveTest": "Lưu & Kiểm tra", "toastSlotUpdated": "Đã cập nhật vị trí {slot} thành: {name}", "toastCharMaxed": "⭐ Đã nâng {name} lên Lv. 80 E6", "toastCharSaved": "Đã lưu nhân vật {name}", "toastAllSkillsMaxed": "⭐ Đã nâng tối đa kỹ năng và vết tích", "toastServerSwitched": "Đã chuyển chế độ máy chủ sang: {mode}", "tbOptions": { "MalePhysical": "Nhà Khai Phá (Nam) - Vật Lý", "FemalePhysical": "Nhà Khai Phá (Nữ) - Vật Lý", "MalePreservation": "Nhà Khai Phá (Nam) - Hỏa", "FemalePreservation": "Nhà Khai Phá (Nữ) - Hỏa", "MaleHarmony": "Nhà Khai Phá (Nam) - Hòa Hợp", "FemaleHarmony": "Nhà Khai Phá (Nữ) - Hòa Hợp", "MaleRemembrance": "Nhà Khai Phá (Nam) - Ký Ức", "FemaleRemembrance": "Nhà Khai Phá (Nữ) - Ký Ức" }, "marchOptions": { "MarchHunt": "March 7th - Săn Bắn", "MarchPreservation": "March 7th - Bảo Hộ" }, "elements": { "Physical": "Vật Lý", "Fire": "Hỏa", "Ice": "Băng", "Lightning": "Lôi", "Wind": "Phong", "Quantum": "Lượng Tử", "Imaginary": "Số Ảo", "Unknown": "Chưa rõ" }, "paths": { "Destruction": "Hủy Diệt", "Hunt": "Săn Bắn", "Erudition": "Tri Thức", "Harmony": "Hòa Hợp", "Nihility": "Hư Vô", "Preservation": "Bảo Hộ", "Abundance": "Trù Phú", "Remembrance": "Ký Ức", "Unknown": "Chưa rõ", "Elation": "Vui Vẻ" }, "settingsSaved": "Đã lưu cài đặt thành công!", "settingsReset": "Đã khôi phục cài đặt mặc định" }, "id": { "appName": "GaC-Srtool", "appSubtitle": "Pengontrol Server & FreeSR Star Rail", "online": "Terhubung", "offline": "Offline", "checking": "Memeriksa...", "refresh": "🔄 Segarkan", "connectFailed": "Koneksi Gagal", "tabDashboard": "📊 Dasbor & Tim", "tabAvatars": "👥 Karakter", "tabEquipment": "🗡️ Light Cone & Relic", "tabPersistent": "💾 Pengelola Simpan GaC", "tabExrank": "⚡ Keahlian Ex-Rank", "tabJson": "📝 Manajemen JSON", "tabSettings": "⚙️ Pengaturan", "statAvatars": "Karakter Dimiliki", "statLightcones": "Light Cone", "statRelics": "Relic", "serverStatusTitle": "📍 Status Server & Koordinat", "lblServerModeActive": "Mode Server Aktif", "lblApiEndpoint": "Endpoint API Gateway", "lblPlaneId": "Plane ID", "lblFloorId": "Floor ID", "coords": "Koordinat Karakter XYZ", "quickActionsTitle": "⚡ Tindakan Cepat", "quickActionsSubtitle": "Kirim perintah ke server secara instan", "btnMaxAll": "⭐ Maksimalkan Semua Karakter Lv. 80 & E6", "btnSyncPersistent": "💾 Sinkronkan Simpanan Persistent Terbaru", "currentLineupTitle": "🎮 Susunan Tim Saat Ini", "slot": "Slot", "slotEmpty": "Kosong (Klik untuk tambah)", "slotTooltip": "Klik untuk memilih karakter di slot ini", "removeFromTeam": "Hapus dari tim", "searchPlaceholder": "🔍 Cari nama karakter atau ID...", "filterAllRarity": "Semua Kelangkaan", "filter5Star": "Bintang 5", "filter4Star": "Bintang 4", "filterAllElements": "Semua Elemen", "filterAllPaths": "Semua Path", "btnReload": "🔄 Muat Ulang", "avatarsLoading": "Memuat data karakter...", "noAvatarsFound": "Tidak ada karakter yang cocok", "eidolonLabel": "Eidolon:", "confirmMaxAll": "Tingkatkan semua karakter ke Lv. 80 dan buka E6?", "maxAllSuccess": "Semua karakter berhasil dimaksimalkan!", "avatarRankSuccess": "Karakter {id} diperbarui ke E{rank}", "eqLcTitle": "🗡️ Light Cone di Inventaris", "eqLcSubtitle": "Semua light cone dari freesr-data.json", "eqLcLoading": "Memuat data light cone...", "eqRelicTitle": "🛡️ Relic di Inventaris", "eqRelicSubtitle": "Semua relic dari freesr-data.json", "eqRelicLoading": "Memuat data relic...", "itemCount": "{n} item", "notEquipped": "Tidak terpasang", "equippedBy": "Dipasang oleh", "noLcData": "Tidak ada data light cone", "noRelicData": "Tidak ada data relic", "persistentTitle": "💾 Pengelola Simpan GaC", "persistentBadge": "Server Kustom Kami", "persistentSubtitle": "File persistent menyimpan status pemain khusus GaC seperti gender/elemen Trailblazer, jalur March 7th, dan fitur global", "persistentTbM7Title": "👤 Trailblazer & March 7th", "lblTbGenderElement": "Gender & Elemen Trailblazer", "lblM7Path": "Path March 7th", "btnSaveCharSettings": "💾 Simpan Pengaturan Karakter", "persistentGlobalTitle": "⚙️ Saklar Fitur Khusus GaC", "swGlobalDesc": "Aktifkan fungsi khusus Silver Wolf di seluruh server", "castoriceGlobalDesc": "Aktifkan fungsi khusus Castorice di seluruh server", "btnSaveGlobalSwitch": "💾 Simpan Saklar Global", "exrankTitle": "⚡ Sistem Keahlian Ex-Rank", "exrankSubtitle": "Buka bakat khusus Ex-Rank di FreeSR (mis. kekebalan CC Jing Yuan, Dan Heng IL, Acheron)", "btnEnableAll": "Aktifkan Semua Ex-Rank", "btnDisableAll": "Nonaktifkan Semua Ex-Rank", "exrankToggleSuccess": "{name}: Ex-Rank {status}", "exrankAllSuccess": "Semua karakter Ex-Rank {status}", "enabled": "aktif", "disabled": "nonaktif", "btnFreesr": "📄 freesr-data.json", "btnPersistent": "💾 persistent save", "btnBeautify": "✨ Rapikan JSON", "btnDownload": "📥 Unduh Cadangan", "btnUpload": "📤 Unggah File", "btnSaveServer": "💾 Simpan ke Server", "jsonTip": "Tips: Edit JSON mentah dan klik 'Simpan ke Server'", "jsonStatusReady": "Siap", "jsonStatusOpening": "Membuka: {name}", "jsonSaveSuccess": "File {name} berhasil disimpan", "jsonInvalid": "Format JSON tidak valid", "apiSettingsTitle": "⚙️ Pengaturan Koneksi API Gateway", "apiSettingsSubtitle": "Sesuaikan port atau IP sesuai dengan server.json Anda", "lblServerMode": "Mode Server", "lblApiGatewayUrl": "URL REST API Gateway", "lblPingInterval": "Interval Cek Status (detik)", "btnSaveSettings": "💾 Simpan Pengaturan", "btnResetDefault": "Kembalikan Default", "modalTitleCharEdit": "Kustomisasi Karakter", "modalBtnMaxAllChar": "⭐ Maksimalkan Semua", "modalTabSkills": "⚡ Skill & Traces", "modalTabStatus": "⚙️ Level & Eidolon", "modalTabLightcone": "🗡️ Light Cone", "modalSkillCombatTitle": "Level Skill Pertempuran", "modalBtnMaxSkills": "⭐ Maksimalkan Semua Skill (10/10)", "modalSkillBasic": "Basic ATK", "modalSkillSkill": "Skill", "modalSkillUltra": "Ultimate", "modalSkillTalent": "Talent", "modalTracesTitle": "Traces & Technique", "modalTraceTechnique": "⚡ Technique — Aktif sebelum tempur", "traceA2": "🌟 Bonus Trace A2", "traceA4": "🌟 Bonus Trace A4", "traceA6": "🌟 Bonus Trace A6", "traceStatNodes": "💎 Semua Node Bonus Stat (10 node)", "lblLevelRange": "Level (1-80)", "lblPromotionRange": "Promosi (0-6)", "lblEidolonLevel": "Tingkat Eidolon", "btnResetE0": "Reset E0", "btnMaxE6": "⭐ Maksimal E6", "modalEnergyTitle": "Energi Ultimate", "modalEnergy50": "Set 50%", "modalEnergy100": "Penuh 100%", "modalLcTitle": "Light Cone Terpasang", "modalBtnMaxLc": "⭐ Maksimalkan Light Cone (Lv.80 S5)", "lblLcId": "ID Light Cone", "modalLcIdPlaceholder": "Contoh: 21002 atau 24001", "lblLcLevel": "Level Light Cone (1-80)", "lblLcRank": "Superimposisi (S1-S5)", "modalBtnClose": "✕ Tutup", "modalBtnSave": "💾 Simpan Karakter", "pickerTitle": "Pilih Karakter untuk Tim", "pickerSearchPlaceholder": "🔍 Cari karakter untuk ditambahkan...", "apiModalTitle": "⚙️ Pengaturan Koneksi API Server", "btnCancel": "Batal", "btnSaveTest": "Simpan & Uji", "toastSlotUpdated": "Memperbarui Slot {slot} menjadi: {name}", "toastCharMaxed": "⭐ {name} dimaksimalkan ke Lv. 80 E6", "toastCharSaved": "Karakter {name} tersimpan", "toastAllSkillsMaxed": "⭐ Semua skill dan trace telah dimaksimalkan", "toastServerSwitched": "Beralih mode server ke: {mode}", "tbOptions": { "MalePhysical": "Trailblazer (Pria) - Fisik", "FemalePhysical": "Trailblazer (Wanita) - Fisik", "MalePreservation": "Trailblazer (Pria) - Fire", "FemalePreservation": "Trailblazer (Wanita) - Fire", "MaleHarmony": "Trailblazer (Pria) - Harmony", "FemaleHarmony": "Trailblazer (Wanita) - Harmony", "MaleRemembrance": "Trailblazer (Pria) - Remembrance", "FemaleRemembrance": "Trailblazer (Wanita) - Remembrance" }, "marchOptions": { "MarchHunt": "March 7th - The Hunt", "MarchPreservation": "March 7th - Preservation" }, "elements": { "Physical": "Fisik", "Fire": "Api", "Ice": "Es", "Lightning": "Petir", "Wind": "Angin", "Quantum": "Kuantum", "Imaginary": "Imajinasi", "Unknown": "Tidak Diketahui" }, "paths": { "Destruction": "Destruction", "Hunt": "Hunt", "Erudition": "Erudition", "Harmony": "Harmony", "Nihility": "Nihility", "Preservation": "Preservation", "Abundance": "Abundance", "Remembrance": "Remembrance", "Unknown": "Tidak Diketahui", "Elation": "Elation" }, "settingsSaved": "Pengaturan berhasil disimpan!", "settingsReset": "Pengaturan dikembalikan ke default" }, "es": { "appName": "GaC-Srtool", "appSubtitle": "Controlador de servidor y FreeSR de Star Rail", "online": "Conectado", "offline": "Desconectado", "checking": "Comprobando...", "refresh": "🔄 Actualizar", "connectFailed": "Conexión fallida", "tabDashboard": "📊 Panel y equipo", "tabAvatars": "👥 Personajes", "tabEquipment": "🗡️ Conos de luz y artefactos", "tabPersistent": "💾 Gestor de guardado GaC", "tabExrank": "⚡ Habilidades Ex-Rank", "tabJson": "📝 Gestión de JSON", "tabSettings": "⚙️ Ajustes", "statAvatars": "Personajes en posesión", "statLightcones": "Conos de luz", "statRelics": "Artefactos", "serverStatusTitle": "📍 Estado del servidor y coordenadas", "lblServerModeActive": "Modo de servidor activo", "lblApiEndpoint": "Punto de enlace API Gateway", "lblPlaneId": "ID de plano", "lblFloorId": "ID de piso", "coords": "Coordenadas del personaje XYZ", "quickActionsTitle": "⚡ Acciones rápidas", "quickActionsSubtitle": "Enviar comandos al servidor al instante", "btnMaxAll": "⭐ Nivel 80 y E6 a todos los personajes", "btnSyncPersistent": "💾 Sincronizar guardado persistent", "currentLineupTitle": "🎮 Alineación actual", "slot": "Posición", "slotEmpty": "Vacío (Haz clic para añadir)", "slotTooltip": "Haz clic para seleccionar un personaje en esta casilla", "removeFromTeam": "Quitar del equipo", "searchPlaceholder": "🔍 Buscar por nombre o ID de personaje...", "filterAllRarity": "Todas las rarezas", "filter5Star": "5 Estrellas", "filter4Star": "4 Estrellas", "filterAllElements": "Todos los elementos", "filterAllPaths": "Todas las vías", "btnReload": "🔄 Recargar", "avatarsLoading": "Cargando personajes...", "noAvatarsFound": "No se encontraron personajes coincidentes", "eidolonLabel": "Eidolon:", "confirmMaxAll": "¿Subir todos los personajes a nivel 80 y desbloquear E6?", "maxAllSuccess": "¡Todos los personajes maximizados con éxito!", "avatarRankSuccess": "Personaje {id} actualizado a E{rank}", "eqLcTitle": "🗡️ Conos de luz en inventario", "eqLcSubtitle": "Todos los conos de luz de freesr-data.json", "eqLcLoading": "Cargando datos de conos de luz...", "eqRelicTitle": "🛡️ Artefactos en inventario", "eqRelicSubtitle": "Todos los artefactos de freesr-data.json", "eqRelicLoading": "Cargando datos de artefactos...", "itemCount": "{n} objetos", "notEquipped": "No equipado", "equippedBy": "Equipado por", "noLcData": "No hay datos de conos de luz", "noRelicData": "No hay datos de artefactos", "persistentTitle": "💾 Gestor de guardado GaC", "persistentBadge": "Servidor personalizado propio", "persistentSubtitle": "El archivo persistent guarda configuraciones específicas de GaC como género/elemento del Trazacaminos, vía de Siete de Marzo e interruptores globales", "persistentTbM7Title": "👤 Trazacaminos y Siete de Marzo", "lblTbGenderElement": "Género y elemento del Trazacaminos", "lblM7Path": "Vía de Siete de Marzo", "btnSaveCharSettings": "💾 Guardar ajustes de personaje", "persistentGlobalTitle": "⚙️ Funciones especiales de GaC", "swGlobalDesc": "Activar función global de Silver Wolf en todo el servidor", "castoriceGlobalDesc": "Activar función global de Castorice en todo el servidor", "btnSaveGlobalSwitch": "💾 Guardar interruptores globales", "exrankTitle": "⚡ Sistema de habilidades Ex-Rank", "exrankSubtitle": "Activa talentos especiales Ex-Rank en FreeSR (inmunidad CC de Jing Yuan, Dan Heng IL, Acheron)", "btnEnableAll": "Activar todos los Ex-Rank", "btnDisableAll": "Desactivar todos los Ex-Rank", "exrankToggleSuccess": "{name}: Ex-Rank {status}", "exrankAllSuccess": "Todos los personajes Ex-Rank {status}", "enabled": "activado", "disabled": "desactivado", "btnFreesr": "📄 freesr-data.json", "btnPersistent": "💾 persistent", "btnBeautify": "✨ Formatear JSON", "btnDownload": "📥 Descargar copia", "btnUpload": "📤 Cargar archivo", "btnSaveServer": "💾 Guardar en el servidor", "jsonTip": "Consejo: Edite el JSON y haga clic en 'Guardar en el servidor'", "jsonStatusReady": "Listo", "jsonStatusOpening": "Abriendo: {name}", "jsonSaveSuccess": "Archivo {name} guardado con éxito", "jsonInvalid": "Formato JSON no válido", "apiSettingsTitle": "⚙️ Ajustes de conexión API Gateway", "apiSettingsSubtitle": "Ajuste el puerto o la IP según su server.json", "lblServerMode": "Modo de servidor", "lblApiGatewayUrl": "URL REST API Gateway", "lblPingInterval": "Frecuencia de comprobación (segundos)", "btnSaveSettings": "💾 Guardar ajustes", "btnResetDefault": "Restablecer valores iniciales", "modalTitleCharEdit": "Personalización de personaje", "modalBtnMaxAllChar": "⭐ Maximizar todo", "modalTabSkills": "⚡ Habilidades y rastros", "modalTabStatus": "⚙️ Nivel y Eidolon", "modalTabLightcone": "🗡️ Cono de luz", "modalSkillCombatTitle": "Nivel de habilidades de combate", "modalBtnMaxSkills": "⭐ Habilidades al máximo (10/10)", "modalSkillBasic": "Ataque básico", "modalSkillSkill": "Habilidad básica", "modalSkillUltra": "Habilidad definitiva", "modalSkillTalent": "Talento", "modalTracesTitle": "Rastros y técnica", "modalTraceTechnique": "⚡ Técnica — Activa antes de la batalla", "traceA2": "🌟 Habilidad adicional A2", "traceA4": "🌟 Habilidad adicional A4", "traceA6": "🌟 Habilidad adicional A6", "traceStatNodes": "💎 Todos los nodos de atributos (10 nodos)", "lblLevelRange": "Nivel (1-80)", "lblPromotionRange": "Ascensión (0-6)", "lblEidolonLevel": "Nivel de Eidolon", "btnResetE0": "Restablecer E0", "btnMaxE6": "⭐ E6 al máximo", "modalEnergyTitle": "Energía definitiva", "modalEnergy50": "Poner 50%", "modalEnergy100": "Llenar 100%", "modalLcTitle": "Cono de luz equipado", "modalBtnMaxLc": "⭐ Cono al máximo (Nv.80 Superp.5)", "lblLcId": "ID de cono de luz", "modalLcIdPlaceholder": "ej. 21002 o 24001", "lblLcLevel": "Nivel de cono de luz (1-80)", "lblLcRank": "Superposición (S1-S5)", "modalBtnClose": "✕ Cerrar", "modalBtnSave": "💾 Guardar personaje", "pickerTitle": "Seleccionar personaje para el equipo", "pickerSearchPlaceholder": "🔍 Buscar personaje para añadir...", "apiModalTitle": "⚙️ Ajustes de conexión de servidor API", "btnCancel": "Cancelar", "btnSaveTest": "Guardar y probar", "toastSlotUpdated": "Casilla {slot} actualizada a: {name}", "toastCharMaxed": "⭐ {name} al máximo (Nv. 80 E6)", "toastCharSaved": "Personaje {name} guardado", "toastAllSkillsMaxed": "⭐ Habilidades y rastros al máximo", "toastServerSwitched": "Modo de servidor cambiado a: {mode}", "tbOptions": { "MalePhysical": "Trazacaminos (Masculino) - Físico", "FemalePhysical": "Trazacaminos (Femenino) - Físico", "MalePreservation": "Trazacaminos (Masculino) - Fuego", "FemalePreservation": "Trazacaminos (Femenino) - Fuego", "MaleHarmony": "Trazacaminos (Masculino) - Armonía", "FemaleHarmony": "Trazacaminos (Femenino) - Armonía", "MaleRemembrance": "Trazacaminos (Masculino) - Reminiscencia", "FemaleRemembrance": "Trazacaminos (Femenino) - Reminiscencia" }, "marchOptions": { "MarchHunt": "Siete de Marzo - Cacería", "MarchPreservation": "Siete de Marzo - Conservación" }, "elements": { "Physical": "Físico", "Fire": "Fuego", "Ice": "Hielo", "Lightning": "Rayo", "Wind": "Viento", "Quantum": "Cuántico", "Imaginary": "Imaginario", "Unknown": "Desconocido" }, "paths": { "Destruction": "Destrucción", "Hunt": "Cacería", "Erudition": "Erudición", "Harmony": "Armonía", "Nihility": "Inexistencia", "Preservation": "Conservación", "Abundance": "Abundancia", "Remembrance": "Reminiscencia", "Unknown": "Desconocido", "Elation": "Exultación" }, "settingsSaved": "¡Ajustes guardados con éxito!", "settingsReset": "Ajustes restablecidos por defecto" }, "fr": { "appName": "GaC-Srtool", "appSubtitle": "Contrôleur de serveur et FreeSR Star Rail", "online": "Connecté", "offline": "Hors ligne", "checking": "Vérification...", "refresh": "🔄 Actualiser", "connectFailed": "Échec de connexion", "tabDashboard": "📊 Tableau de bord et équipe", "tabAvatars": "👥 Personnages", "tabEquipment": "🗡️ Cônes de lumière et reliques", "tabPersistent": "💾 Gestionnaire de sauvegarde GaC", "tabExrank": "⚡ Compétences Ex-Rank", "tabJson": "📝 Gestion JSON", "tabSettings": "⚙️ Paramètres", "statAvatars": "Personnages possédés", "statLightcones": "Cônes de lumière", "statRelics": "Reliques", "serverStatusTitle": "📍 État du serveur et coordonnées", "lblServerModeActive": "Mode de serveur actif", "lblApiEndpoint": "Point de terminaison API Gateway", "lblPlaneId": "ID de plan", "lblFloorId": "ID d'étage", "coords": "Coordonnées du personnage XYZ", "quickActionsTitle": "⚡ Actions rapides", "quickActionsSubtitle": "Envoyer des commandes au serveur instantanément", "btnMaxAll": "⭐ Niv. 80 et E6 tous les personnages", "btnSyncPersistent": "💾 Synchroniser la sauvegarde persistent", "currentLineupTitle": "🎮 Équipe actuelle", "slot": "Emplacement", "slotEmpty": "Vide (Cliquer pour ajouter)", "slotTooltip": "Cliquer pour sélectionner un personnage pour cet emplacement", "removeFromTeam": "Retirer de l'équipe", "searchPlaceholder": "🔍 Rechercher par nom ou ID de personnage...", "filterAllRarity": "Toutes les raretés", "filter5Star": "5 Étoiles", "filter4Star": "4 Étoiles", "filterAllElements": "Tous les éléments", "filterAllPaths": "Toutes les voies", "btnReload": "🔄 Recharger", "avatarsLoading": "Chargement des personnages...", "noAvatarsFound": "Aucun personnage correspondant trouvé", "eidolonLabel": "Eidolon:", "confirmMaxAll": "Améliorer tous les personnages au niveau 80 et débloquer E6 ?", "maxAllSuccess": "Tous les personnages sont maximisés avec succès !", "avatarRankSuccess": "Personnage {id} mis à jour au rang E{rank}", "eqLcTitle": "🗡️ Cônes de lumière dans l'inventaire", "eqLcSubtitle": "Tous les cônes de lumière de freesr-data.json", "eqLcLoading": "Chargement des cônes de lumière...", "eqRelicTitle": "🛡️ Reliques dans l'inventaire", "eqRelicSubtitle": "Toutes les reliques de freesr-data.json", "eqRelicLoading": "Chargement des reliques...", "itemCount": "{n} objets", "notEquipped": "Non équipé", "equippedBy": "Équipé par", "noLcData": "Aucune donnée de cône de lumière", "noRelicData": "Aucune donnée de relique", "persistentTitle": "💾 Gestionnaire de sauvegarde GaC", "persistentBadge": "Serveur personnalisé", "persistentSubtitle": "Le fichier persistent stocke les paramètres GaC spécifiques comme le sexe/élément du Pionnier, la voie de March 7th et les options globales", "persistentTbM7Title": "👤 Pionnier et March 7th", "lblTbGenderElement": "Sexe et élément du Pionnier", "lblM7Path": "Voie de March 7th", "btnSaveCharSettings": "💾 Enregistrer les réglages du personnage", "persistentGlobalTitle": "⚙️ Fonctions spéciales GaC", "swGlobalDesc": "Activer la fonction globale de Silver Wolf sur tout le serveur", "castoriceGlobalDesc": "Activer la fonction globale de Castorice sur tout le serveur", "btnSaveGlobalSwitch": "💾 Enregistrer les options globales", "exrankTitle": "⚡ Système de compétences Ex-Rank", "exrankSubtitle": "Active les bonus spéciaux Ex-Rank dans FreeSR (ex: immunité au contrôle de Jing Yuan, Dan Heng IL, Acheron)", "btnEnableAll": "Activer tous les Ex-Rank", "btnDisableAll": "Désactiver tous les Ex-Rank", "exrankToggleSuccess": "{name}: Ex-Rank {status}", "exrankAllSuccess": "Tous les personnages Ex-Rank {status}", "enabled": "activé", "disabled": "désactivé", "btnFreesr": "📄 freesr-data.json", "btnPersistent": "💾 persistent", "btnBeautify": "✨ Mettre en forme le JSON", "btnDownload": "📥 Télécharger la sauvegarde", "btnUpload": "📤 Importer un fichier", "btnSaveServer": "💾 Enregistrer sur le serveur", "jsonTip": "Astuce : Modifiez le JSON et cliquez sur 'Enregistrer sur le serveur'", "jsonStatusReady": "Prêt", "jsonStatusOpening": "Ouverture : {name}", "jsonSaveSuccess": "Fichier {name} enregistré avec succès", "jsonInvalid": "Format JSON non valide", "apiSettingsTitle": "⚙️ Paramètres de connexion API Gateway", "apiSettingsSubtitle": "Ajustez le port ou l'IP selon votre server.json", "lblServerMode": "Mode serveur", "lblApiGatewayUrl": "URL REST API Gateway", "lblPingInterval": "Intervalle de vérification (secondes)", "btnSaveSettings": "💾 Enregistrer les paramètres", "btnResetDefault": "Restaurer par défaut", "modalTitleCharEdit": "Personnalisation du personnage", "modalBtnMaxAllChar": "⭐ Tout maximiser", "modalTabSkills": "⚡ Compétences et traces", "modalTabStatus": "⚙️ Niveau et Eidolon", "modalTabLightcone": "🗡️ Cône de lumière", "modalSkillCombatTitle": "Niveaux de compétences de combat", "modalBtnMaxSkills": "⭐ Compétences au max (10/10)", "modalSkillBasic": "Attaque normale", "modalSkillSkill": "Compétence", "modalSkillUltra": "Ultime", "modalSkillTalent": "Talent", "modalTracesTitle": "Traces et technique", "modalTraceTechnique": "⚡ Technique — Active avant le combat", "traceA2": "🌟 Capacité bonus A2", "traceA4": "🌟 Capacité bonus A4", "traceA6": "🌟 Capacité bonus A6", "traceStatNodes": "💎 Tous les nœuds de statistiques (10 nœuds)", "lblLevelRange": "Niveau (1-80)", "lblPromotionRange": "Élévation (0-6)", "lblEidolonLevel": "Niveau d'Eidolon", "btnResetE0": "Réinitialiser E0", "btnMaxE6": "⭐ E6 au max", "modalEnergyTitle": "Énergie ultime", "modalEnergy50": "Régler 50%", "modalEnergy100": "Plein 100%", "modalLcTitle": "Cône de lumière équipé", "modalBtnMaxLc": "⭐ Cône au max (Niv.80 S5)", "lblLcId": "ID de cône de lumière", "modalLcIdPlaceholder": "ex. 21002 ou 24001", "lblLcLevel": "Niveau du cône (1-80)", "lblLcRank": "Superposition (S1-S5)", "modalBtnClose": "✕ Fermer", "modalBtnSave": "💾 Enregistrer le personnage", "pickerTitle": "Sélectionner un personnage pour l'équipe", "pickerSearchPlaceholder": "🔍 Rechercher un personnage...", "apiModalTitle": "⚙️ Paramètres de connexion au serveur API", "btnCancel": "Annuler", "btnSaveTest": "Enregistrer et tester", "toastSlotUpdated": "Emplacement {slot} mis à jour avec : {name}", "toastCharMaxed": "⭐ {name} au max (Niv. 80 E6)", "toastCharSaved": "Personnage {name} enregistré", "toastAllSkillsMaxed": "⭐ Compétences et traces au max", "toastServerSwitched": "Mode serveur basculé sur : {mode}", "tbOptions": { "MalePhysical": "Pionnier (Homme) - Physique", "FemalePhysical": "Pionnière (Femme) - Physique", "MalePreservation": "Pionnier (Homme) - Feu", "FemalePreservation": "Pionnière (Femme) - Feu", "MaleHarmony": "Pionnier (Homme) - Harmonie", "FemaleHarmony": "Pionnière (Femme) - Harmonie", "MaleRemembrance": "Pionnier (Homme) - Souvenir", "FemaleRemembrance": "Pionnière (Femme) - Souvenir" }, "marchOptions": { "MarchHunt": "March 7th - La Chasse", "MarchPreservation": "March 7th - La Préservation" }, "elements": { "Physical": "Physique", "Fire": "Feu", "Ice": "Glace", "Lightning": "Foudre", "Wind": "Vent", "Quantum": "Quantique", "Imaginary": "Imaginaire", "Unknown": "Inconnu" }, "paths": { "Destruction": "La Destruction", "Hunt": "La Chasse", "Erudition": "L'Érudition", "Harmony": "L'Harmonie", "Nihility": "La Nihilité", "Preservation": "La Préservation", "Abundance": "L'Abondance", "Remembrance": "Le Souvenir", "Unknown": "Inconnu", "Elation": "L'Allégresse" }, "settingsSaved": "Paramètres enregistrés avec succès !", "settingsReset": "Paramètres réinitialisés par défaut" }, "de": { "appName": "GaC-Srtool", "appSubtitle": "Star Rail FreeSR- & Server-Controller", "online": "Verbunden", "offline": "Offline", "checking": "Prüfen...", "refresh": "🔄 Aktualisieren", "connectFailed": "Verbindung fehlgeschlagen", "tabDashboard": "📊 Dashboard & Team", "tabAvatars": "👥 Charaktere", "tabEquipment": "🗡️ Lichtkegel & Relikte", "tabPersistent": "💾 GaC-Speicher-Manager", "tabExrank": "⚡ Ex-Rank-Fähigkeiten", "tabJson": "📝 JSON-Verwaltung", "tabSettings": "⚙️ Einstellungen", "statAvatars": "Charaktere im Besitz", "statLightcones": "Lichtkegel", "statRelics": "Relikte", "serverStatusTitle": "📍 Serverstatus & Koordinaten", "lblServerModeActive": "Aktiver Servermodus", "lblApiEndpoint": "API-Gateway-Endpunkt", "lblPlaneId": "Ebenen-ID", "lblFloorId": "Stockwerk-ID", "coords": "Charakterkoordinaten XYZ", "quickActionsTitle": "⚡ Schnellaktionen", "quickActionsSubtitle": "Befehle sofort an den Server senden", "btnMaxAll": "⭐ Alle Charaktere auf St. 80 & E6", "btnSyncPersistent": "💾 Persistent-Speicherstand synchronisieren", "currentLineupTitle": "🎮 Aktuelles Team", "slot": "Platz", "slotEmpty": "Leer (Klicken zum Hinzufügen)", "slotTooltip": "Klicken, um einen Charakter für diesen Platz auszuwählen", "removeFromTeam": "Aus dem Team entfernen", "searchPlaceholder": "🔍 Nach Name oder ID suchen...", "filterAllRarity": "Alle Seltenheiten", "filter5Star": "5 Sterne", "filter4Star": "4 Sterne", "filterAllElements": "Alle Elemente", "filterAllPaths": "Alle Pfade", "btnReload": "🔄 Neu laden", "avatarsLoading": "Charaktere werden geladen...", "noAvatarsFound": "Keine passenden Charaktere gefunden", "eidolonLabel": "Eidolon:", "confirmMaxAll": "Alle Charaktere auf Stufe 80 aufwerten und E6 freischalten?", "maxAllSuccess": "Alle Charaktere erfolgreich maximiert!", "avatarRankSuccess": "Charakter {id} auf E{rank} aktualisiert", "eqLcTitle": "🗡️ Lichtkegel im Inventar", "eqLcSubtitle": "Alle Lichtkegel aus freesr-data.json", "eqLcLoading": "Lichtkegeldaten werden geladen...", "eqRelicTitle": "🛡️ Relikte im Inventar", "eqRelicSubtitle": "Alle Relikte aus freesr-data.json", "eqRelicLoading": "Reliktdaten werden geladen...", "itemCount": "{n} Gegenstände", "notEquipped": "Nicht ausgerüstet", "equippedBy": "Ausgerüstet von", "noLcData": "Keine Lichtkegeldaten verfügbar", "noRelicData": "Keine Reliktdaten verfügbar", "persistentTitle": "💾 GaC-Speicher-Manager", "persistentBadge": "Eigener benutzerdefinierter Server", "persistentSubtitle": "Die persistent-Datei speichert GaC-spezifische Einstellungen wie Geschlecht/Element des Trailblazers, Pfad von 7. März und globale Schalter", "persistentTbM7Title": "👤 Trailblazer & 7. März", "lblTbGenderElement": "Geschlecht & Element des Trailblazers", "lblM7Path": "Pfad von 7. März", "btnSaveCharSettings": "💾 Charaktereinstellungen speichern", "persistentGlobalTitle": "⚙️ GaC-Sonderfunktionsschalter", "swGlobalDesc": "Serverweite Silver Wolf-Spezialmechanik aktivieren", "castoriceGlobalDesc": "Serverweite Castorice-Spezialmechanik aktivieren", "btnSaveGlobalSwitch": "💾 Globale Schalter speichern", "exrankTitle": "⚡ Ex-Rank-Fähigkeitensystem", "exrankSubtitle": "Aktiviert spezielle Ex-Rank-Talente in FreeSR (z.B. CC-Immunität für Jing Yuan, Dan Heng IL, Acheron)", "btnEnableAll": "Alle Ex-Ranks aktivieren", "btnDisableAll": "Alle Ex-Ranks deaktivieren", "exrankToggleSuccess": "{name}: Ex-Rank {status}", "exrankAllSuccess": "Alle Charaktere Ex-Rank {status}", "enabled": "aktiviert", "disabled": "deaktiviert", "btnFreesr": "📄 freesr-data.json", "btnPersistent": "💾 persistent", "btnBeautify": "✨ JSON formatieren", "btnDownload": "📥 Backup herunterladen", "btnUpload": "📤 Datei hochladen", "btnSaveServer": "💾 Auf Server speichern", "jsonTip": "Tipp: JSON bearbeiten und auf 'Auf Server speichern' klicken", "jsonStatusReady": "Bereit", "jsonStatusOpening": "Öffnen: {name}", "jsonSaveSuccess": "Datei {name} erfolgreich gespeichert", "jsonInvalid": "Ungültiges JSON-Format", "apiSettingsTitle": "⚙️ API-Gateway-Verbindungseinstellungen", "apiSettingsSubtitle": "Passen Sie Port oder IP gemäß Ihrer server.json an", "lblServerMode": "Servermodus", "lblApiGatewayUrl": "REST API Gateway URL", "lblPingInterval": "Prüfintervall (Sekunden)", "btnSaveSettings": "💾 Einstellungen speichern", "btnResetDefault": "Auf Standard zurücksetzen", "modalTitleCharEdit": "Charakteranpassung", "modalBtnMaxAllChar": "⭐ Alles maximieren", "modalTabSkills": "⚡ Fähigkeiten & Spuren", "modalTabStatus": "⚙️ Stufe & Eidolon", "modalTabLightcone": "🗡️ Lichtkegel", "modalSkillCombatTitle": "Kampffertigkeitsstufe", "modalBtnMaxSkills": "⭐ Alle Fähigkeiten max. (10/10)", "modalSkillBasic": "Standardangriff", "modalSkillSkill": "Fertigkeit", "modalSkillUltra": "Ultimate", "modalSkillTalent": "Talent", "modalTracesTitle": "Spuren & Technik", "modalTraceTechnique": "⚡ Technik — Vor dem Kampf aktiv", "traceA2": "🌟 Zusatzfähigkeit A2", "traceA4": "🌟 Zusatzfähigkeit A4", "traceA6": "🌟 Zusatzfähigkeit A6", "traceStatNodes": "💎 Alle Attributs-Bonus-Knoten (10 Knoten)", "lblLevelRange": "Stufe (1-80)", "lblPromotionRange": "Aufstieg (0-6)", "lblEidolonLevel": "Eidolon-Stufe", "btnResetE0": "Auf E0 zurücksetzen", "btnMaxE6": "⭐ Voll E6", "modalEnergyTitle": "Ultimate-Energie", "modalEnergy50": "50% setzen", "modalEnergy100": "Voll 100%", "modalLcTitle": "Ausgerüsteter Lichtkegel", "modalBtnMaxLc": "⭐ Lichtkegel max. (St.80 Überl.5)", "lblLcId": "Lichtkegel-ID", "modalLcIdPlaceholder": "z.B. 21002 oder 24001", "lblLcLevel": "Lichtkegel-Stufe (1-80)", "lblLcRank": "Überlagerung (S1-S5)", "modalBtnClose": "✕ Schließen", "modalBtnSave": "💾 Charakter speichern", "pickerTitle": "Charakter für das Team auswählen", "pickerSearchPlaceholder": "🔍 Charakter zum Hinzufügen suchen...", "apiModalTitle": "⚙️ API-Server-Verbindungseinstellungen", "btnCancel": "Abbrechen", "btnSaveTest": "Speichern & Testen", "toastSlotUpdated": "Platz {slot} auf {name} aktualisiert", "toastCharMaxed": "⭐ {name} auf St. 80 E6 maximiert", "toastCharSaved": "Charakter {name} gespeichert", "toastAllSkillsMaxed": "⭐ Alle Fertigkeiten und Spuren maximiert", "toastServerSwitched": "Servermodus gewechselt zu: {mode}", "tbOptions": { "MalePhysical": "Trailblazer (Männlich) - Physisch", "FemalePhysical": "Trailblazer (Weiblich) - Physisch", "MalePreservation": "Trailblazer (Männlich) - Feuer", "FemalePreservation": "Trailblazer (Weiblich) - Feuer", "MaleHarmony": "Trailblazer (Männlich) - Harmonie", "FemaleHarmony": "Trailblazer (Weiblich) - Harmonie", "MaleRemembrance": "Trailblazer (Männlich) - Erinnerung", "FemaleRemembrance": "Trailblazer (Weiblich) - Erinnerung" }, "marchOptions": { "MarchHunt": "7. März - Die Jagd", "MarchPreservation": "7. März - Die Bewahrung" }, "elements": { "Physical": "Physisch", "Fire": "Feuer", "Ice": "Eis", "Lightning": "Blitz", "Wind": "Wind", "Quantum": "Quanten", "Imaginary": "Imaginär", "Unknown": "Unbekannt" }, "paths": { "Destruction": "Die Zerstörung", "Hunt": "Die Jagd", "Erudition": "Die Gelehrsamkeit", "Harmony": "Die Harmonie", "Nihility": "Die Nichtigkeit", "Preservation": "Die Bewahrung", "Abundance": "Der Überfluss", "Remembrance": "Das Gedenken", "Unknown": "Unbekannt", "Elation": "Der Frohsinn" }, "settingsSaved": "Einstellungen erfolgreich gespeichert!", "settingsReset": "Auf Standardeinstellungen zurückgesetzt" }, "ru": { "appName": "GaC-Srtool", "appSubtitle": "Контроллер сервера и FreeSR Star Rail", "online": "Подключено", "offline": "Не в сети", "checking": "Проверка...", "refresh": "🔄 Обновить", "connectFailed": "Ошибка подключения", "tabDashboard": "📊 Панель и отряд", "tabAvatars": "👥 Персонажи", "tabEquipment": "🗡️ Световые конусы и реликвии", "tabPersistent": "💾 Управление сохранениями GaC", "tabExrank": "⚡ Особые навыки Ex-Rank", "tabJson": "📝 Управление JSON", "tabSettings": "⚙️ Настройки", "statAvatars": "Полученные персонажи", "statLightcones": "Световые конусы", "statRelics": "Реликвии", "serverStatusTitle": "📍 Статус сервера и координаты", "lblServerModeActive": "Активный режим сервера", "lblApiEndpoint": "Конечная точка API Gateway", "lblPlaneId": "ID плоскости", "lblFloorId": "ID этажа", "coords": "Координаты персонажа XYZ", "quickActionsTitle": "⚡ Быстрые действия", "quickActionsSubtitle": "Мгновенная отправка команд на сервер", "btnMaxAll": "⭐ Все персонажи 80 ур. и E6", "btnSyncPersistent": "💾 Синхронизировать сохранение Persistent", "currentLineupTitle": "🎮 Текущий отряд", "slot": "Слот", "slotEmpty": "Пусто (нажмите для добавления)", "slotTooltip": "Нажмите, чтобы выбрать персонажа в этот слот", "removeFromTeam": "Убрать из отряда", "searchPlaceholder": "🔍 Поиск по имени или ID...", "filterAllRarity": "Все редкости", "filter5Star": "5 Звёзд", "filter4Star": "4 Звезды", "filterAllElements": "Все элементы", "filterAllPaths": "Все Пути", "btnReload": "🔄 Перезагрузить", "avatarsLoading": "Загрузка данных персонажей...", "noAvatarsFound": "Персонажи не найдены", "eidolonLabel": "Эйдолон:", "confirmMaxAll": "Повысить всех персонажей до 80 уровня и разблокировать E6?", "maxAllSuccess": "Все персонажи успешно прокачаны!", "avatarRankSuccess": "Персонаж {id} повышен до эйдолона {rank}", "eqLcTitle": "🗡️ Световые конусы в инвентаре", "eqLcSubtitle": "Все световые конусы из freesr-data.json", "eqLcLoading": "Загрузка конусов...", "eqRelicTitle": "🛡️ Реликвии в инвентаре", "eqRelicSubtitle": "Все реликвии из freesr-data.json", "eqRelicLoading": "Загрузка реликвий...", "itemCount": "{n} шт.", "notEquipped": "Не экипировано", "equippedBy": "Экипировано на", "noLcData": "Нет данных о конусах", "noRelicData": "Нет данных о реликвиях", "persistentTitle": "💾 Управление сохранениями GaC", "persistentBadge": "Наш собственный сервер", "persistentSubtitle": "Файл persistent хранит уникальные настройки GaC: пол/путь Первопроходца, путь Март 7 и глобальные переключатели", "persistentTbM7Title": "👤 Первопроходец и Март 7", "lblTbGenderElement": "Пол и путь Первопроходца", "lblM7Path": "Путь Март 7", "btnSaveCharSettings": "💾 Сохранить настройки персонажей", "persistentGlobalTitle": "⚙️ Особые функции GaC", "swGlobalDesc": "Включить особую механику Серебряного Волка на всем сервере", "castoriceGlobalDesc": "Включить особую механику Castorice на всем сервере", "btnSaveGlobalSwitch": "💾 Сохранить глобальные переключатели", "exrankTitle": "⚡ Система навыков Ex-Rank", "exrankSubtitle": "Включение уникальных талантов Ex-Rank в FreeSR (иммунитет Цзин Юаня к контролю, Дань Хэн Пожиратель Луны, Ахерон)", "btnEnableAll": "Включить все Ex-Rank", "btnDisableAll": "Выключить все Ex-Rank", "exrankToggleSuccess": "{name}: Ex-Rank {status}", "exrankAllSuccess": "Все персонажи Ex-Rank {status}", "enabled": "включен", "disabled": "выключен", "btnFreesr": "📄 freesr-data.json", "btnPersistent": "💾 persistent", "btnBeautify": "✨ Форматировать JSON", "btnDownload": "📥 Скачать копию", "btnUpload": "📤 Загрузить файл", "btnSaveServer": "💾 Сохранить на сервере", "jsonTip": "Совет: измените JSON и нажмите 'Сохранить на сервере'", "jsonStatusReady": "Готово", "jsonStatusOpening": "Открытие: {name}", "jsonSaveSuccess": "Файл {name} успешно сохранен", "jsonInvalid": "Неверный формат JSON", "apiSettingsTitle": "⚙️ Настройки подключения к API Gateway", "apiSettingsSubtitle": "Измените порт или IP в соответствии с вашим server.json", "lblServerMode": "Режим сервера", "lblApiGatewayUrl": "URL REST API Gateway", "lblPingInterval": "Интервал проверки (секунды)", "btnSaveSettings": "💾 Сохранить настройки", "btnResetDefault": "Сбросить по умолчанию", "modalTitleCharEdit": "Настройка персонажа", "modalBtnMaxAllChar": "⭐ Максимум всего", "modalTabSkills": "⚡ Навыки и следы", "modalTabStatus": "⚙️ Уровень и Эйдолоны", "modalTabLightcone": "🗡️ Световой конус", "modalSkillCombatTitle": "Уровни боевых навыков", "modalBtnMaxSkills": "⭐ Все навыки на макс. (10/10)", "modalSkillBasic": "Базовая атака", "modalSkillSkill": "Навык", "modalSkillUltra": "Сверхспособность", "modalSkillTalent": "Талант", "modalTracesTitle": "Следы и техника", "modalTraceTechnique": "⚡ Техника — Активна перед боем", "traceA2": "🌟 Доп. способность A2", "traceA4": "🌟 Доп. способность A4", "traceA6": "🌟 Доп. способность A6", "traceStatNodes": "💎 Все узлы усиления параметров (10 узлов)", "lblLevelRange": "Уровень (1-80)", "lblPromotionRange": "Возвышение (0-6)", "lblEidolonLevel": "Уровень Эйдолона", "btnResetE0": "Сбросить на E0", "btnMaxE6": "⭐ Макс E6", "modalEnergyTitle": "Энергия сверхспособности", "modalEnergy50": "Задать 50%", "modalEnergy100": "100% (Макс)", "modalLcTitle": "Экипированный конус", "modalBtnMaxLc": "⭐ Макс. конус (Ур.80 Н5)", "lblLcId": "ID светового конуса", "modalLcIdPlaceholder": "напр. 21002 или 24001", "lblLcLevel": "Уровень конуса (1-80)", "lblLcRank": "Наложение (S1-S5)", "modalBtnClose": "✕ Закрыть", "modalBtnSave": "💾 Сохранить персонажа", "pickerTitle": "Выбор персонажа в отряд", "pickerSearchPlaceholder": "🔍 Поиск персонажа...", "apiModalTitle": "⚙️ Настройки подключения к серверу API", "btnCancel": "Отмена", "btnSaveTest": "Сохранить и проверить", "toastSlotUpdated": "Слот {slot} изменён на: {name}", "toastCharMaxed": "⭐ {name} прокачан до 80 ур. E6", "toastCharSaved": "Персонаж {name} сохранен", "toastAllSkillsMaxed": "⭐ Все навыки и следы на максимуме", "toastServerSwitched": "Режим сервера переключен на: {mode}", "tbOptions": { "MalePhysical": "Первопроходец (Муж.) - Физический", "FemalePhysical": "Первопроходец (Жен.) - Физический", "MalePreservation": "Первопроходец (Муж.) - Огненный", "FemalePreservation": "Первопроходец (Жен.) - Огненный", "MaleHarmony": "Первопроходец (Муж.) - Гармония", "FemaleHarmony": "Первопроходец (Жен.) - Гармония", "MaleRemembrance": "Первопроходец (Муж.) - Память", "FemaleRemembrance": "Первопроходец (Жен.) - Память" }, "marchOptions": { "MarchHunt": "Март 7 - Охота", "MarchPreservation": "Март 7 - Сохранение" }, "elements": { "Physical": "Физический", "Fire": "Огненный", "Ice": "Ледяной", "Lightning": "Электрический", "Wind": "Ветряной", "Quantum": "Квантовый", "Imaginary": "Мнимый", "Unknown": "Неизвестно" }, "paths": { "Destruction": "Разрушение", "Hunt": "Охота", "Erudition": "Эрудиция", "Harmony": "Гармония", "Nihility": "Небытие", "Preservation": "Сохранение", "Abundance": "Изобилие", "Remembrance": "Память", "Unknown": "Неизвестно", "Elation": "Радость" }, "settingsSaved": "Настройки успешно сохранены!", "settingsReset": "Настройки сброшены по умолчанию" }, "pt": { "appName": "GaC-Srtool", "appSubtitle": "Controlador de Servidor e FreeSR de Star Rail", "online": "Conectado", "offline": "Offline", "checking": "Verificando...", "refresh": "🔄 Atualizar", "connectFailed": "Falha na Conexão", "tabDashboard": "📊 Painel e Equipe", "tabAvatars": "👥 Personagens", "tabEquipment": "🗡️ Cones de Luz e Relíquias", "tabPersistent": "💾 Gerenciador de Salvamento GaC", "tabExrank": "⚡ Habilidades Ex-Rank", "tabJson": "📝 Gerenciamento de JSON", "tabSettings": "⚙️ Configurações", "statAvatars": "Personagens Obtidos", "statLightcones": "Cones de Luz", "statRelics": "Relíquias", "serverStatusTitle": "📍 Status do Servidor e Coordenadas", "lblServerModeActive": "Modo de Servidor Ativo", "lblApiEndpoint": "Ponto de Extremidade da API Gateway", "lblPlaneId": "ID do Plano", "lblFloorId": "ID do Andar", "coords": "Coordenadas do Personagem XYZ", "quickActionsTitle": "⚡ Ações Rápidas", "quickActionsSubtitle": "Enviar comandos para o servidor instantaneamente", "btnMaxAll": "⭐ Todos os personagens Nv. 80 e E6", "btnSyncPersistent": "💾 Sincronizar salvamento Persistent", "currentLineupTitle": "🎮 Equipe Atual", "slot": "Espaço", "slotEmpty": "Vazio (Clique para adicionar)", "slotTooltip": "Clique para escolher um personagem para este espaço", "removeFromTeam": "Remover da equipe", "searchPlaceholder": "🔍 Buscar por nome ou ID de personagem...", "filterAllRarity": "Todas as raridades", "filter5Star": "5 Estrelas", "filter4Star": "4 Estrellas", "filterAllElements": "Todos os elementos", "filterAllPaths": "Todos os caminhos", "btnReload": "🔄 Recarregar", "avatarsLoading": "Carregando personagens...", "noAvatarsFound": "Nenhum personagem correspondente encontrado", "eidolonLabel": "Eidolon:", "confirmMaxAll": "Evoluir todos os personagens para o Nível 80 e desbloquear E6?", "maxAllSuccess": "Todos os personagens foram maximizados com sucesso!", "avatarRankSuccess": "Personagem {id} atualizado para E{rank}", "eqLcTitle": "🗡️ Cones de Luz no Inventário", "eqLcSubtitle": "Todos os cones de luz de freesr-data.json", "eqLcLoading": "Carregando dados dos cones de luz...", "eqRelicTitle": "🛡️ Relíquias no Inventário", "eqRelicSubtitle": "Todas as relíquias de freesr-data.json", "eqRelicLoading": "Carregando dados das relíquias...", "itemCount": "{n} itens", "notEquipped": "Não equipado", "equippedBy": "Equipado por", "noLcData": "Nenhum dado de cone de luz disponível", "noRelicData": "Nenhum dado de relíquia disponível", "persistentTitle": "💾 Gerenciador de Salvamento GaC", "persistentBadge": "Nosso Servidor Personalizado", "persistentSubtitle": "O arquivo persistent armazena configurações específicas do GaC, como gênero/elemento do Desbravador, caminho de 7 de Março e opções globais", "persistentTbM7Title": "👤 Desbravador e 7 de Março", "lblTbGenderElement": "Gênero e Elemento do Desbravador", "lblM7Path": "Caminho de 7 de Março", "btnSaveCharSettings": "💾 Salvar Configurações de Personagem", "persistentGlobalTitle": "⚙️ Recursos Especiais do GaC", "swGlobalDesc": "Ativar recurso global da Silver Wolf em todo o servidor", "castoriceGlobalDesc": "Ativar recurso global da Castorice em todo o servidor", "btnSaveGlobalSwitch": "💾 Salvar Interruptores Globais", "exrankTitle": "⚡ Sistema de Habilidades Ex-Rank", "exrankSubtitle": "Ativa talentos especiais Ex-Rank no FreeSR (ex: imunidade a CC de Jing Yuan, Dan Heng IL, Acheron)", "btnEnableAll": "Ativar todos os Ex-Ranks", "btnDisableAll": "Desativar todos os Ex-Ranks", "exrankToggleSuccess": "{name}: Ex-Rank {status}", "exrankAllSuccess": "Todos os personagens Ex-Rank {status}", "enabled": "ativado", "disabled": "desativado", "btnFreesr": "📄 freesr-data.json", "btnPersistent": "💾 persistent", "btnBeautify": "✨ Formatar JSON", "btnDownload": "📥 Baixar Backup", "btnUpload": "📤 Carregar Arquivo", "btnSaveServer": "💾 Salvar no Servidor", "jsonTip": "Dica: Edite o JSON e clique em 'Salvar no Servidor'", "jsonStatusReady": "Pronto", "jsonStatusOpening": "Abrindo: {name}", "jsonSaveSuccess": "Arquivo {name} salvo com sucesso", "jsonInvalid": "Formato JSON inválido", "apiSettingsTitle": "⚙️ Configurações de Conexão com API Gateway", "apiSettingsSubtitle": "Ajuste a porta ou o IP de acordo com seu server.json", "lblServerMode": "Modo de Servidor", "lblApiGatewayUrl": "URL REST API Gateway", "lblPingInterval": "Intervalo de verificação (segundos)", "btnSaveSettings": "💾 Salvar Configurações", "btnResetDefault": "Restaurar Padrão", "modalTitleCharEdit": "Personalização de Personagem", "modalBtnMaxAllChar": "⭐ Maximizar Tudo", "modalTabSkills": "⚡ Habilidades e Rastros", "modalTabStatus": "⚙️ Nível e Eidolon", "modalTabLightcone": "🗡️ Cone de Luz", "modalSkillCombatTitle": "Níveis de Habilidade de Combate", "modalBtnMaxSkills": "⭐ Todas as habilidades no máx. (10/10)", "modalSkillBasic": "ATQ Básico", "modalSkillSkill": "Perícia", "modalSkillUltra": "Perícia Suprema", "modalSkillTalent": "Talento", "modalTracesTitle": "Rastros e Técnica", "modalTraceTechnique": "⚡ Técnica — Ativa pré-combate", "traceA2": "🌟 Habilidade Bônus A2", "traceA4": "🌟 Habilidade Bônus A4", "traceA6": "🌟 Habilidade Bônus A6", "traceStatNodes": "💎 Todos os nós de atributos bônus (10 nós)", "lblLevelRange": "Nível (1-80)", "lblPromotionRange": "Ascensão (0-6)", "lblEidolonLevel": "Nível de Eidolon", "btnResetE0": "Redefinir E0", "btnMaxE6": "⭐ E6 Máximo", "modalEnergyTitle": "Energia Suprema", "modalEnergy50": "Definir 50%", "modalEnergy100": "Cheio 100%", "modalLcTitle": "Cone de Luz Equipado", "modalBtnMaxLc": "⭐ Cone no máx. (Nv.80 S5)", "lblLcId": "ID do Cone de Luz", "modalLcIdPlaceholder": "ex. 21002 ou 24001", "lblLcLevel": "Nível do Cone (1-80)", "lblLcRank": "Sobreposição (S1-S5)", "modalBtnClose": "✕ Fechar", "modalBtnSave": "💾 Salvar Personagem", "pickerTitle": "Selecionar Personagem para a Equipe", "pickerSearchPlaceholder": "🔍 Buscar personagem para adicionar...", "apiModalTitle": "⚙️ Configurações de Conexão do Servidor API", "btnCancel": "Cancelar", "btnSaveTest": "Salvar e Testar", "toastSlotUpdated": "Espaço {slot} atualizado para: {name}", "toastCharMaxed": "⭐ {name} maximizado para Nv. 80 E6", "toastCharSaved": "Personagem {name} salvo", "toastAllSkillsMaxed": "⭐ Todas as habilidades e rastros maximizados", "toastServerSwitched": "Modo de servidor alterado para: {mode}", "tbOptions": { "MalePhysical": "Desbravador (Masc.) - Físico", "FemalePhysical": "Desbravadora (Fem.) - Físico", "MalePreservation": "Desbravador (Masc.) - Fogo", "FemalePreservation": "Desbravadora (Fem.) - Fogo", "MaleHarmony": "Desbravador (Masc.) - Harmonia", "FemaleHarmony": "Desbravadora (Fem.) - Harmonia", "MaleRemembrance": "Desbravador (Masc.) - A Recordação", "FemaleRemembrance": "Desbravadora (Fem.) - A Recordação" }, "marchOptions": { "MarchHunt": "7 de Março - A Caça", "MarchPreservation": "7 de Março - A Preservação" }, "elements": { "Physical": "Físico", "Fire": "Fogo", "Ice": "Gelo", "Lightning": "Raio", "Wind": "Vento", "Quantum": "Quântico", "Imaginary": "Imaginário", "Unknown": "Desconhecido" }, "paths": { "Destruction": "A Destruição", "Hunt": "A Caça", "Erudition": "A Erudição", "Harmony": "A Harmonia", "Nihility": "A Inexistência", "Preservation": "A Preservação", "Abundance": "A Abundância", "Remembrance": "A Recordação", "Unknown": "Desconhecido", "Elation": "A Alegria" }, "settingsSaved": "Configurações salvas com sucesso!", "settingsReset": "Configurações restauradas para o padrão" } }; let currentLang = typeof localStorage !== 'undefined' ? (localStorage.getItem('gac_srtool_lang') || 'th') : 'th'; export function getCurrentLanguage() { return currentLang; } export function setLanguage(langCode) { if (TRANSLATIONS[langCode]) { currentLang = langCode; if (typeof localStorage !== 'undefined') { localStorage.setItem('gac_srtool_lang', langCode); } } } export function t(key, vars = {}) { const dict = TRANSLATIONS[currentLang] || TRANSLATIONS.en || TRANSLATIONS.th; let text = dict[key] || TRANSLATIONS.en[key] || TRANSLATIONS.th[key] || key; // Substitute variables e.g. {id}, {rank}, {name}, {slot}, {mode}, {n} for (const [vKey, vVal] of Object.entries(vars)) { text = text.replace(new RegExp(`\\{${vKey}\\}`, 'g'), vVal); } return text; } export function translateElement(elem) { const dict = TRANSLATIONS[currentLang] || TRANSLATIONS.en; return dict.elements?.[elem] || TRANSLATIONS.en.elements?.[elem] || elem; } export function translatePath(path) { const dict = TRANSLATIONS[currentLang] || TRANSLATIONS.en; return dict.paths?.[path] || TRANSLATIONS.en.paths?.[path] || path; }