aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--client/global.gd64
-rw-r--r--client/settings.gd114
-rw-r--r--locale/ar.ini14
-rw-r--r--locale/de.ini14
-rw-r--r--locale/en.ini73
-rw-r--r--locale/es.ini14
-rw-r--r--locale/eu.ini14
-rw-r--r--locale/fi.ini14
-rw-r--r--locale/fr.ini14
-rw-r--r--locale/he.ini14
-rw-r--r--locale/ja.ini14
-rw-r--r--locale/pl.ini14
-rw-r--r--locale/pt.ini14
-rw-r--r--locale/tools/src/main.rs23
-rw-r--r--locale/tr.ini14
-rw-r--r--locale/zh_Hans.ini14
-rw-r--r--locale/zh_Hant.ini14
17 files changed, 210 insertions, 246 deletions
diff --git a/client/global.gd b/client/global.gd
index e85bf697..6d41dc31 100644
--- a/client/global.gd
+++ b/client/global.gd
@@ -38,7 +38,7 @@ var default_profile := {
"has_seen_join_while_running": false
}
}
-var languages := language_array()
+
var using_joypad := false
var using_touch := false
@@ -136,20 +136,21 @@ func on_vulkan() -> bool:
return ProjectSettings.get_setting("rendering/rendering_device/driver") == "vulkan"
func get_setting(key: String):
- if !Global.settings.has(key):
+ if !settings.has(key):
push_error("Tried to access setting \"%s\", which does not exist (missing key)" % key)
return null
- return Global.settings[key]
+ return settings[key]
func set_setting_unchecked(key: String, value):
- if value is Array:
- Global.settings[key] = value.duplicate(true)
- else:
- Global.settings[key] = value
- Global.save_settings()
+ value = value.duplicate(true) if value is Array else value
+ if key in settings and settings[key] == value: return
+ settings[key] = value
+ if Settings.change_hooks_display.get(key) != null: Settings.change_hooks_display.get(key).call(value)
+ if Settings.change_hooks_apply.get(key) != null: Settings.change_hooks_apply.get(key).call(value)
+ save_settings()
func set_setting(key: String, value):
- if !Global.settings.has(key):
+ if !settings.has(key):
push_error("Tried to set setting \"%s\", which does not yet exist (missing key)" % key)
return
else: set_setting_unchecked(key, value)
@@ -208,43 +209,8 @@ func find_menu(node: Node) -> Menu:
if node is Menu: return node
else: return find_menu(node.get_parent())
-const NATIVE_LANGUAGE_NAMES = {
- "en": "English",
- "de": "Deutsch",
- "fr": "Français",
- "es": "Español",
- "eu": "euskara",
- "ja": "日本語",
- "he": "עִברִית",
- "tr": "Türkçe",
- "fi": "suomen",
- "ar": "العربية",
- "zh_Hans": "中文 (简化字)",
- "zh_Hant": "中文 (繁體字)",
- "pl": "Polski",
- "pt": "Português",
-}
-
-func language_display(l: String): return "%s (%s)" % [NATIVE_LANGUAGE_NAMES[l], l]
-func language_array() -> Array:
- var lang: Array = [["system", tr("System default")]]
- var to_order: Array = []
- for l in TranslationServer.get_loaded_locales():
- to_order.append([l, language_display(l)])
- to_order.append(["en", language_display("en")])
- to_order = sort_language_array(to_order)
- for i in to_order:
- lang.append(i)
- return lang
-
-func sort_language_array(lang: Array) -> Array:
- var sorting_array: Array = []
- var sorted_lang: Array = []
- for i in lang.size():
- sorting_array.append(lang[i][0])
- sorting_array.sort()
- for shorthand in sorting_array:
- for arr in lang:
- if arr[0] == shorthand:
- sorted_lang.append(arr)
- return sorted_lang
+func language_list():
+ var a = TranslationServer.get_loaded_locales()
+ a.sort()
+ a.insert(0, "system")
+ return a
diff --git a/client/settings.gd b/client/settings.gd
index cb8f9cf0..ade51262 100644
--- a/client/settings.gd
+++ b/client/settings.gd
@@ -30,36 +30,9 @@ static func get_root():
]),
SettingsCategory.new("graphics", [
PresetRow.new("preset", {
- "low": {
- "ui_blur": true,
- "aa": 0,
- "ssao": false,
- "taa": false,
- "shadows": false,
- "glow": false,
- "grass_amount": 0,
- "lq_trees": true
- },
- "medium": {
- "ui_blur": true,
- "aa": 1,
- "ssao": false,
- "taa": false,
- "shadows": true,
- "glow": false,
- "grass_amount": 0,
- "lq_trees": false
- },
- "high": {
- "ui_blur": true,
- "aa": 2,
- "ssao": true,
- "taa": false,
- "shadows": true,
- "glow": true,
- "grass_amount": 16,
- "lq_trees": false
- }
+ "low": {"ui_blur": true, "aa": "disabled", "ssao": false, "taa": false, "shadows": false, "glow": false, "grass_amount": 0, "lq_trees": true},
+ "medium": {"ui_blur": true, "aa": "fx", "ssao": false, "taa": false, "shadows": true, "glow": false, "grass_amount": 0, "lq_trees": false},
+ "high": {"ui_blur": true, "aa": "ms2x", "ssao": true, "taa": false, "shadows": true, "glow": true, "grass_amount": 16, "lq_trees": false}
}),
DropdownSetting.new("fullscreen", "keep", ["keep", "always", "never"]),
DropdownSetting.new("aa", "ms2x" if Global.on_high_end() else "disabled", ["disabled", "fx", "ms2x", "ms4x"]),
@@ -80,7 +53,7 @@ static func get_root():
]),
SettingsCategory.new("ui", [
DropdownSetting.new("touch_controls", 0, ["automatic", "enabled", "disabled"]),
- DropdownSetting.new("language", "system", Global.languages.map(func(e): return e[1])),
+ DropdownSetting.new("language", "system", Global.language_list()),
DropdownSetting.new("scale_mode", "resize", ["resize", "disabled"]),
RangeSetting.new("scale_factor", 1. if not Global.on_mobile() else 1.5, 0.5, 1.5, 3),
]),
@@ -94,16 +67,23 @@ static func get_root():
])
static func hook_changed(key: String, callable: Callable):
- change_hooks[key] = callable
+ change_hooks_display[key] = callable
static func hook_changed_init(key: String, callable: Callable):
hook_changed(key, callable)
callable.call(Global.get_setting(key))
-static var change_hooks = {
+static var change_hooks_display = {}
+static var change_hooks_apply = {
"graphics.aa": h_aa,
"graphics.taa": h_taa,
+ "graphics.fullscreen": h_fullscreen,
"ui.scale_mode": h_scale_mode,
+ "ui.scale_factor": h_scale_factor,
+ "ui.language": h_language,
+ "audio.master_volume": h_volume_master,
+ "audio.music_volume": h_volume_music,
+ "audio.sfx_volume": h_volume_sfx,
}
static func h_aa(mode):
@@ -128,52 +108,40 @@ static func h_aa(mode):
static func h_taa(enabled):
Global.get_viewport().use_taa = enabled
-static func h_scale_mode(mode: int):
+static func h_scale_mode(mode: String):
match mode:
- 0:
- Global.get_tree().root.content_scale_mode = Window.CONTENT_SCALE_MODE_CANVAS_ITEMS
- 1:
- Global.get_tree().root.content_scale_mode = Window.CONTENT_SCALE_MODE_DISABLED
+ "scale": Global.get_tree().root.content_scale_mode = Window.CONTENT_SCALE_MODE_CANVAS_ITEMS
+ "disabled": Global.get_tree().root.content_scale_mode = Window.CONTENT_SCALE_MODE_DISABLED
-# func apply_settings():
-# update_fullscreen()
-# update_language()
+static func h_scale_factor(value: float):
+ Global.get_tree().root.content_scale_factor = value
-# # UI scale factor
-# get_tree().root.content_scale_factor = get_setting("ui_scale_factor")
+static func h_volume_master(value: float): Sound.set_volume(0, value)
+static func h_volume_music(value: float): Sound.set_volume(1, value)
+static func h_volume_sfx(value: float): Sound.set_volume(2, value)
-# # Hints
+static func h_touch(mode: String):
+ match mode:
+ "enabled": Global.using_touch = true
+ "disabled": Global.using_touch = false
+ Global.using_touch_change.emit()
+
+static func h_language(language: String):
+ print("STELANG ", language)
+ if language == "system": language = OS.get_locale_language()
+ TranslationServer.set_locale(language)
+
+static func h_fullscreen(mode: String):
+ match mode:
+ "keep": pass
+ "always": DisplayServer.window_set_mode(DisplayServer.WINDOW_MODE_FULLSCREEN)
+ "never": if DisplayServer.window_get_mode() == DisplayServer.WINDOW_MODE_FULLSCREEN:
+ DisplayServer.window_set_mode(DisplayServer.WINDOW_MODE_WINDOWED)
+
+# TODO whatever this does
# if not get_setting("tutorial_started"):
# for k in profile["hints"].keys():
# set_hint(k, false)
-# # Sets all volumes
-# Sound.set_volume(0, get_setting("master_volume"))
-# Sound.set_volume(1, get_setting("music_volume"))
-# Sound.set_volume(2, get_setting("sfx_volume"))
-
-# # Touch controls
-# match get_setting("touch_controls"):
-# # 0: Automatically adjusted
-# 1: # Enabled
-# using_touch = true
-# 2: # Disabled
-# using_touch = false
-# using_touch_change.emit()
-
-# # Input settings
+# TODO update input map for *all* input with a single hook
# InputManager.apply_input_map(InputManager.settings_dictionary_to_input_map(get_category_settings("input")))
-
-# settings_changed.emit()
-
-# func update_language():
-# var language = languages[get_setting("language")][0]
-# if language == "system": language = OS.get_locale_language()
-# TranslationServer.set_locale(language)
-
-# func update_fullscreen():
-# match get_setting("fullscreen"):
-# 0: pass
-# 1: DisplayServer.window_set_mode(DisplayServer.WINDOW_MODE_FULLSCREEN)
-# 2: if DisplayServer.window_get_mode() == DisplayServer.WINDOW_MODE_FULLSCREEN:
-# DisplayServer.window_set_mode(DisplayServer.WINDOW_MODE_WINDOWED)
diff --git a/locale/ar.ini b/locale/ar.ini
index 5e4869c9..90b67a3f 100644
--- a/locale/ar.ini
+++ b/locale/ar.ini
@@ -86,7 +86,7 @@ c.settings.graphics.fullscreen.always=دائماً
c.settings.graphics.fullscreen.keep=كما هو
c.settings.graphics.fullscreen.never=أبداً
c.settings.gameplay=
-c.settings.gameplay.extend_boost=قم دائمًا بتمديد الجري إلى أقصى مدة
+c.settings.gameplay.latch_boost=قم دائمًا بتمديد الجري إلى أقصى مدة
c.settings.graphics.gi=إضاءة عالمية
c.settings.graphics.gi.sdfgi=SDFGI
c.settings.graphics.gi.voxelgi=Voxel GI
@@ -104,10 +104,10 @@ c.settings.graphics.preset.high=عالي
c.settings.graphics.preset.low=ضعيف
c.settings.graphics.preset.medium=متوسط
c.settings.other.server_data=دليل الـserver data (اتركوه فارغًا للبحث التلقائي)
-c.settings.other.server_path=ملف للـserver binary (اتركوه فارغًا للبحث في PATH)
-c.settings.other.server_path.placeholder=مسار الملف
+c.settings.other.server_binary=ملف للـserver binary (اتركوه فارغًا للبحث في PATH)
+c.settings.other.server_binary.placeholder=مسار الملف
c.settings.graphics.shadows=ظلال
-c.settings.gameplay.smooth_camera=سلّس حركة الكاميرا
+c.settings.gameplay.interpolate_camera_rotation=سلّس حركة الكاميرا
c.settings.ui=الإسم
c.settings.ui.scale_factor=عامل حجم واجهة المستخدم
c.settings.ui.scale_mode=طريقة تحجيم واجهة المستخدم
@@ -139,14 +139,14 @@ unknown464=-
unknown476=مفتاح الإزاحة/ العالي/SHIFT
unknown484=عصا التحكم اليسرى
unknown488=مفتاح الفراغ/SPACE
-unknown49=عكّس حركة الكاميرا
+c.settings.gameplay.invert_camera=عكّس حركة الكاميرا
unknown494=اضغطوا على %s لالتقاط الأغراض واضغطوا باستمرار على %s للتفاعل مع الأدوات
unknown506=مفتاحا صفحة لأعلى(PageUp)/صفحة لأسفل(PageDown)
unknown510=استخدموا %s لتدوير الكاميرا
unknown514=مفاتيح الأسهم(Arrow keys)
unknown518=عصا التحكم اليمنى
unknown524=يمكن إظهار/إخفاء الأسماء في الإعدادات
-unknown53=اسماء اللاعبين
+c.settings.gameplay.usernames=اسماء اللاعبين
unknown530=اضغطوا على %s وانقروا على "انضم إلى اللعبة" للانضمام إلى اللعبة أثناء تشغيلها
unknown534=مفتاح الهروب/Esc
unknown538=زر القائمة/الهمبرغر/Menu
@@ -157,7 +157,7 @@ unknown576=الاصوات
c.settings.gameplay.setup_completed=تم الانتهاء من الإعداد الأولي. (إزيلوا علامة الإختيار وأعدوا التشغيل لإعادة الدخول)
unknown622=يجب عليكم ملء جميع الحقول.
unknown626=حسنا
-unknown63=بدأ البرنامج التعليمي
+c.settings.gameplay.tutorial_started=بدأ البرنامج التعليمي
unknown732=
unknown736=
unknown740=مشاهدين
diff --git a/locale/de.ini b/locale/de.ini
index 4a52d1c8..e557a635 100644
--- a/locale/de.ini
+++ b/locale/de.ini
@@ -86,7 +86,7 @@ c.settings.graphics.fullscreen.always=Immer
c.settings.graphics.fullscreen.keep=Beibehalten
c.settings.graphics.fullscreen.never=Nie
c.settings.gameplay=Spiel
-c.settings.gameplay.extend_boost=Schub immer bis zum Anschlag verlängern
+c.settings.gameplay.latch_boost=Schub immer bis zum Anschlag verlängern
c.settings.graphics.gi=Globale Beleuchtung
c.settings.graphics.gi.sdfgi=SDFGI
c.settings.graphics.gi.voxelgi=Voxel GlobaleBeleuchtung
@@ -104,10 +104,10 @@ c.settings.graphics.preset.high=Hoch
c.settings.graphics.preset.low=Niedrig
c.settings.graphics.preset.medium=Mittel
c.settings.other.server_data=Server Datenverzeichnis (leer lassen, um automatisch zu erkennen)
-c.settings.other.server_path=Pfad zum Server (leer lassen, um PATH zu durchsuchen)
-c.settings.other.server_path.placeholder=Pfad eingeben
+c.settings.other.server_binary=Pfad zum Server (leer lassen, um PATH zu durchsuchen)
+c.settings.other.server_binary.placeholder=Pfad eingeben
c.settings.graphics.shadows=Schatten aktivieren
-c.settings.gameplay.smooth_camera=Kameradrehung glätten
+c.settings.gameplay.interpolate_camera_rotation=Kameradrehung glätten
c.settings.ui=Benutzeroberfläche
c.settings.ui.scale_factor=Benutzeroberflächen Skalierungs Faktor
c.settings.ui.scale_mode=Benutzeroberflächen Skalierungs Modus
@@ -139,14 +139,14 @@ unknown464=-
unknown476=UMSCHALTEN
unknown484=linken Stick
unknown488=LEERTASTE
-unknown49=Kamerabewegung invertieren
+c.settings.gameplay.invert_camera=Kamerabewegung invertieren
unknown494=Drücke %s, um Gegenstände aufzuheben und halte %s gedrückt, um mit Utensilien zu interagieren
unknown506=BildHoch/BildRunter
unknown510=Nutze %s, um die Kameraansicht zurückzusetzen
unknown514=Pfeiltasten
unknown518=rechten Stick
unknown524=Die Anzeige von Nutzernamen kann in den Einstellungen ein- und ausgeschaltet werden
-unknown53=Benutzernamen anzeigen
+c.settings.gameplay.usernames=Benutzernamen anzeigen
unknown530=Drücken Sie %s und klicken Sie „Beitreten“, um beizutreten, während das Spiel läuft
unknown534=ESCAPE
unknown538=Menü-Knopf
@@ -157,7 +157,7 @@ unknown576=Soundeffekte
c.settings.gameplay.setup_completed=Ersteinrichtung abgeschlossen (Deaktivieren und Spiel neu starten zum Neueinrichten)
unknown622=Sie müssen alle verlangten Felder ausfüllen.
unknown626=Akzeptieren
-unknown63=Anleitung gestartet
+c.settings.gameplay.tutorial_started=Anleitung gestartet
unknown732=Zurück
unknown736=Nächstes
unknown740=Beitreten / Zuschauen
diff --git a/locale/en.ini b/locale/en.ini
index 38dcff81..3f094e84 100644
--- a/locale/en.ini
+++ b/locale/en.ini
@@ -1,21 +1,4 @@
[hurrycurry]
-c.controls.boost=Boost movement
-c.controls.camera_down=Rotate camera downwards
-c.controls.camera_left=Rotate camera to the left
-c.controls.camera_reset=Reset camera view
-c.controls.camera_right=Rotate camera to the right
-c.controls.camera_up=Rotate camera upwards
-c.controls.chat=Toggle chat
-c.controls.fullscreen=Toggle fullscreen
-c.controls.interact=Interact
-c.controls.move_backward=Move backwards
-c.controls.move_forward=Move forwards
-c.controls.move_left=Move left
-c.controls.move_right=Move right
-c.controls.zoom_in_discrete=Zoom in (discrete)
-c.controls.zoom_in=Zoom in
-c.controls.zoom_out_discrete=Zoom out (discrete)
-c.controls.zoom_out=Zoom out
c.credits.developed_by=developed by
c.credits.thanks=Thank You For Playing
c.credits.title=Hurry Curry! - a game about cooking
@@ -75,12 +58,16 @@ c.settings.audio.master_volume=Master Volume
c.settings.audio.music_volume=Music Volume
c.settings.audio.sfx_volume=SFX Volume
c.settings.audio=Audio
-c.settings.graphics.debug_info=Display debug info (Framerate, etc.)
-c.settings.gameplay.extend_boost=Always extend boost to maximum duration
+c.settings.gameplay.interpolate_camera_rotation=Smooth camera rotation
+c.settings.gameplay.invert_camera=Invert camera movement
+c.settings.gameplay.latch_boost=Always extend boost to maximum duration
+c.settings.gameplay.setup_completed=Initial setup complete. (Uncheck and restart to reenter)
+c.settings.gameplay.tutorial_started=Tutorial started
+c.settings.gameplay.usernames=Show username tags
c.settings.gameplay=Gameplay
-c.settings.graphics.glow=Enable glow
c.settings.graphics.aa=Anti-aliasing
c.settings.graphics.ao=Ambient occlusion
+c.settings.graphics.debug_info=Display debug info (Framerate, etc.)
c.settings.graphics.fullscreen.always=Always
c.settings.graphics.fullscreen.keep=Keep
c.settings.graphics.fullscreen.never=Never
@@ -88,14 +75,18 @@ c.settings.graphics.fullscreen=Fullscreen
c.settings.graphics.gi.sdfgi=SDFGI
c.settings.graphics.gi.voxelgi=Voxel GI
c.settings.graphics.gi=Global illumination
+c.settings.graphics.ssao=Screen-space ambient occlusion (SSAO)
+c.settings.graphics.glow=Enable glow
+c.settings.graphics.grass_amount=3D grass amount per grass tile
c.settings.graphics.lq_trees=Low-poly trees
c.settings.graphics.preset.high=High
c.settings.graphics.preset.low=Low
c.settings.graphics.preset.medium=Medium
c.settings.graphics.preset=Load preset
+c.settings.graphics.shadows=Enable shadows
c.settings.graphics.taa=Temporal Anti-Aliasing
+c.settings.graphics.ui_blur=Enable UI blur
c.settings.graphics=Graphics
-c.settings.graphics.grass_amount=3D grass amount per grass tile
c.settings.input.add=Add new
c.settings.input.joypad_axis=Joypad axis %s
c.settings.input.joypad=%s (Joypad)
@@ -103,16 +94,38 @@ c.settings.input.keyboard=%s (Keyboard)
c.settings.input.mouse_button=Mouse button %s
c.settings.input.other_event=Other event
c.settings.input.press_any_key=Press any key...
+c.settings.input.scroll_down=Scroll down
+c.settings.input.scroll_up=Scroll up
+c.settings.input.scroll_down_discrete=Scroll down (discrete)
+c.settings.input.scroll_up_discrete=Scroll up (discrete)
+c.settings.input.forwards=Move Forwards
+c.settings.input.backwards=Move Backwards
+c.settings.input.left=Move Left
+c.settings.input.right=Move Right
+c.settings.input.rotate_left=Rotate camera left
+c.settings.input.rotate_right=Rotate camera right
+c.settings.input.rotate_up=Rotate camera up
+c.settings.input.rotate_down=Rotate camera down
+c.settings.input.interact=Interact
+c.settings.input.boost=Boost movement
+c.settings.input.zoom_in=Zoom in
+c.settings.input.zoom_out=Zoom out
+c.settings.input.zoom_in_discrete=Zoom in (discrete)
+c.settings.input.zoom_out_discrete=Zoom out (discrete)
+c.settings.input.chat=Toggle chat
+c.settings.input.reset=Reset camera
+c.settings.input.fullscreen=Toggle fullscreen
+c.settings.input.previous=Select previous item
+c.settings.input.next=Select next item
+c.settings.input.start_game=Start game
+c.settings.input.join_spectate=Join/Spectate
c.settings.input=Controls
+c.settings.other.server_data=Server data directory (leave empty to auto-detect)
+c.settings.other.server_binary.placeholder=Enter path
+c.settings.other.server_binary=Server binary (leave empty to search PATH)
+c.settings.other=Other
c.settings.ui.language.system=System default
c.settings.ui.language=Language
-c.settings.other=Other
-c.settings.other.server_data=Server data directory (leave empty to auto-detect)
-c.settings.other.server_path.placeholder=Enter path
-c.settings.other.server_path=Server binary (leave empty to search PATH)
-c.settings.graphics.shadows=Enable shadows
-c.settings.gameplay.smooth_camera=Smooth camera rotation
-c.settings.graphics.ui_blur=Enable UI blur
c.settings.ui.scale_factor=UI scale factor
c.settings.ui.scale_mode.resize=Resize
c.settings.ui.scale_mode=UI scale mode
@@ -147,14 +160,12 @@ unknown464=-
unknown476=SHIFT
unknown484=left stick
unknown488=SPACE
-unknown49=Invert camera movement
unknown494=Press %s to pick up items and hold %s to interact with tools
unknown506=PageUp/PageDown
unknown510=Use %s to rotate the camera view
unknown514=arrow keys
unknown518=right stick
unknown524=Username tags can be enabled/disabled in the settings
-unknown53=Show username tags
unknown530=Press %s and click "Join" to join the game while it is running
unknown534=ESCAPE
unknown538=Menu button
@@ -163,11 +174,9 @@ unknown564=Server and client versions do not match. Server: %d.%d, Client: %d.%d
unknown568=Hairstyle %d
unknown572=Models
unknown576=Sounds
-c.settings.gameplay.setup_completed=Initial setup complete. (Uncheck and restart to reenter)
unknown598=[/table]%n%n%n
unknown622=You must fill out all requested fields.
unknown626=Accept
-unknown63=Tutorial started
unknown732=Previous
unknown736=Next
unknown740=Join / Spectate
diff --git a/locale/es.ini b/locale/es.ini
index 8af6d014..4bbbe45b 100644
--- a/locale/es.ini
+++ b/locale/es.ini
@@ -86,7 +86,7 @@ c.settings.graphics.fullscreen.always=Siempre
c.settings.graphics.fullscreen.keep=Mantener
c.settings.graphics.fullscreen.never=Jamás
c.settings.gameplay=
-c.settings.gameplay.extend_boost=Siempre extienda el impulso a la duración máxima
+c.settings.gameplay.latch_boost=Siempre extienda el impulso a la duración máxima
c.settings.graphics.gi=Iluminación global
c.settings.graphics.gi.sdfgi=SDFGI
c.settings.graphics.gi.voxelgi=Voxel GI
@@ -104,10 +104,10 @@ c.settings.graphics.preset.high=Alto
c.settings.graphics.preset.low=Bajo
c.settings.graphics.preset.medium=Medio
c.settings.other.server_data=Directorio de datos del servidor (deja vacío para detectar automáticamente)
-c.settings.other.server_path=Binario del servidor (deja vacío para buscar RUTA)
-c.settings.other.server_path.placeholder=Pone ruta
+c.settings.other.server_binary=Binario del servidor (deja vacío para buscar RUTA)
+c.settings.other.server_binary.placeholder=Pone ruta
c.settings.graphics.shadows=Activar sombras
-c.settings.gameplay.smooth_camera=Interpolar la rotación de la cámara
+c.settings.gameplay.interpolate_camera_rotation=Interpolar la rotación de la cámara
c.settings.ui=Nombre de usuario
c.settings.ui.scale_factor=Escala de interfaz de usuario
c.settings.ui.scale_mode=Modo d’escala de interfaz de usuario
@@ -139,14 +139,14 @@ unknown464=-
unknown476=CAMBIO
unknown484=palo izquierdo
unknown488=BARRA ESPACIADORA
-unknown49=Invertir el movimiento de la cámara
+c.settings.gameplay.invert_camera=Invertir el movimiento de la cámara
unknown494=Presione %s para recoger elementos y mantenga presionado %s para interactuar con útiles
unknown506=RePág/AvPág
unknown510=Usa %s para restablecer la cámara
unknown514=teclas de flechas
unknown518=palo derecho
unknown524=Los nombres de usuarios se pueden habilitar/deshabilitar en la configuración
-unknown53=Mostrar nombres de usuarios
+c.settings.gameplay.usernames=Mostrar nombres de usuarios
unknown530=Presiona %s y haz clic en "Unirse" para unirte al juego
unknown534=ESCAPAR
unknown538=Botón de menú
@@ -157,7 +157,7 @@ unknown576=Sonidos
c.settings.gameplay.setup_completed=Configuración inicial completa. (Desmarque y recomenza para reentrar)
unknown622=Debes completar todos los requisitos.
unknown626=Aceptar
-unknown63=Tutorial comenzó
+c.settings.gameplay.tutorial_started=Tutorial comenzó
unknown732=
unknown736=
unknown740=Observar
diff --git a/locale/eu.ini b/locale/eu.ini
index 534dda8c..e88c3589 100644
--- a/locale/eu.ini
+++ b/locale/eu.ini
@@ -86,7 +86,7 @@ c.settings.graphics.fullscreen.always=Beti
c.settings.graphics.fullscreen.keep=Mantendu
c.settings.graphics.fullscreen.never=Inoiz ez
c.settings.gameplay=Jokoa
-c.settings.gameplay.extend_boost=Beti luzatu bultzada iraupen luzeenera
+c.settings.gameplay.latch_boost=Beti luzatu bultzada iraupen luzeenera
c.settings.graphics.gi=Argiztapen orokorra
c.settings.graphics.gi.sdfgi=SDFGI
c.settings.graphics.gi.voxelgi=Voxel GI
@@ -104,10 +104,10 @@ c.settings.graphics.preset.high=Altua
c.settings.graphics.preset.low=Baxua
c.settings.graphics.preset.medium=Erdikoa
c.settings.other.server_data=Zerbitzariaren datu direktorioa (hutsik utzi automatikoki bilatzeko)
-c.settings.other.server_path=Zerbitzari exekutagarria (hutsik utzi PATH-en bilatzeko)
-c.settings.other.server_path.placeholder=Sartu bidea
+c.settings.other.server_binary=Zerbitzari exekutagarria (hutsik utzi PATH-en bilatzeko)
+c.settings.other.server_binary.placeholder=Sartu bidea
c.settings.graphics.shadows=Gaitu itzalak
-c.settings.gameplay.smooth_camera=Kamera biraketa leuna
+c.settings.gameplay.interpolate_camera_rotation=Kamera biraketa leuna
c.settings.ui=Erab. Interfazea
c.settings.ui.scale_factor=UI eskalatze faktorea
c.settings.ui.scale_mode=UI eskalatze modua
@@ -139,14 +139,14 @@ unknown464=-
unknown476=SHIFT
unknown484=ezker palanka
unknown488=HUTSUNEA
-unknown49=Kamera mugimendua alderantzikatu
+c.settings.gameplay.invert_camera=Kamera mugimendua alderantzikatu
unknown494=Sakatu %s objektuak hartzeko eta eutsi %s tresnekin lan egiteko
unknown506=PageUp/PageDown
unknown510=Erabili %s kamera bista biratzeko
unknown514=gezi teklak
unknown518=eskuin palanka
unknown524=Erabiltzaile etiketak ezarpenetan gaitu/desgaitu daitezke
-unknown53=Erakutsi erabiltzaile izen etiketak
+c.settings.gameplay.usernames=Erakutsi erabiltzaile izen etiketak
unknown530=Sakatu %s eta klikatu "Batu" martxan dagoen joko batean batzeko
unknown534=ESCAPE
unknown538=Menu botoia
@@ -157,7 +157,7 @@ unknown576=Soinuak
c.settings.gameplay.setup_completed=Hasierako konfigurazioa osatuta. (Marka kendu eta berrabiarazi berriz sartzeko)
unknown622=Eskatutako eremu guztiak bete behar dituzu.
unknown626=Onartu
-unknown63=Tutoriala hasi da
+c.settings.gameplay.tutorial_started=Tutoriala hasi da
unknown732=Aurrekoa
unknown736=Hurrengoa
unknown740=Batu / Ikusi
diff --git a/locale/fi.ini b/locale/fi.ini
index 271d533e..0ea8e48e 100644
--- a/locale/fi.ini
+++ b/locale/fi.ini
@@ -86,7 +86,7 @@ c.settings.graphics.fullscreen.always=
c.settings.graphics.fullscreen.keep=
c.settings.graphics.fullscreen.never=
c.settings.gameplay=
-c.settings.gameplay.extend_boost=
+c.settings.gameplay.latch_boost=
c.settings.graphics.gi=
c.settings.graphics.gi.sdfgi=
c.settings.graphics.gi.voxelgi=
@@ -104,10 +104,10 @@ c.settings.graphics.preset.high=
c.settings.graphics.preset.low=
c.settings.graphics.preset.medium=
c.settings.other.server_data=
-c.settings.other.server_path=
-c.settings.other.server_path.placeholder=
+c.settings.other.server_binary=
+c.settings.other.server_binary.placeholder=
c.settings.graphics.shadows=
-c.settings.gameplay.smooth_camera=
+c.settings.gameplay.interpolate_camera_rotation=
c.settings.ui=
c.settings.ui.scale_factor=
c.settings.ui.scale_mode=
@@ -139,14 +139,14 @@ unknown464=
unknown476=
unknown484=
unknown488=
-unknown49=
+c.settings.gameplay.invert_camera=
unknown494=
unknown506=
unknown510=
unknown514=
unknown518=
unknown524=
-unknown53=
+c.settings.gameplay.usernames=
unknown530=
unknown534=
unknown538=
@@ -157,7 +157,7 @@ unknown576=
c.settings.gameplay.setup_completed=
unknown622=
unknown626=
-unknown63=
+c.settings.gameplay.tutorial_started=
unknown732=
unknown736=
unknown740=
diff --git a/locale/fr.ini b/locale/fr.ini
index 836989aa..dede783a 100644
--- a/locale/fr.ini
+++ b/locale/fr.ini
@@ -86,7 +86,7 @@ c.settings.graphics.fullscreen.always=Toujours
c.settings.graphics.fullscreen.keep=Garder
c.settings.graphics.fullscreen.never=Jamais
c.settings.gameplay=
-c.settings.gameplay.extend_boost=Toujours prolonger le boost jusqu’à la durée maximale
+c.settings.gameplay.latch_boost=Toujours prolonger le boost jusqu’à la durée maximale
c.settings.graphics.gi=Luminosité générale
c.settings.graphics.gi.sdfgi=SDFGI
c.settings.graphics.gi.voxelgi=IG Voxel
@@ -104,10 +104,10 @@ c.settings.graphics.preset.high=Élevé
c.settings.graphics.preset.low=Faible
c.settings.graphics.preset.medium=Moyen
c.settings.other.server_data=Répertoire de données du serveur (laisser vide pour la détection automatique)
-c.settings.other.server_path=Binaire du serveur (laisser vide pour rechercher le chemin)
-c.settings.other.server_path.placeholder=Entrez le chemin
+c.settings.other.server_binary=Binaire du serveur (laisser vide pour rechercher le chemin)
+c.settings.other.server_binary.placeholder=Entrez le chemin
c.settings.graphics.shadows=Activer les ombres
-c.settings.gameplay.smooth_camera=Interpoler la rotation de la caméra
+c.settings.gameplay.interpolate_camera_rotation=Interpoler la rotation de la caméra
c.settings.ui=Nom d’utilisateur
c.settings.ui.scale_factor=Taille de l’interface utilisateur
c.settings.ui.scale_mode=Mode d’échelle de l’interface utilisateur
@@ -139,14 +139,14 @@ unknown464=-
unknown476=MAJUSCULE
unknown484=stick gauche
unknown488=BARRE D’ESPACE
-unknown49=Inverser le mouvement de caméra
+c.settings.gameplay.invert_camera=Inverser le mouvement de caméra
unknown494=Appuyez sur %s pour attraper des objets et maintenez %s enfoncé pour interagir avec les outils
unknown506=Page précédente/Page suivante
unknown510=Utilisez %s pour orienter le point de vue de la caméra
unknown514=Touches fléchées
unknown518=stick droit
unknown524=Les noms d’utilisateurs peuvent être activées/désactivées dans les paramètres
-unknown53=Montrer les noms d’utilisateur
+c.settings.gameplay.usernames=Montrer les noms d’utilisateur
unknown530=Appuyez sur %s et cliquez sur "Rejoindre" pour rejoindre le partie lorsqu’elle est en route
unknown534=ÉCHAP
unknown538=Bouton de menu
@@ -157,7 +157,7 @@ unknown576=Sons
c.settings.gameplay.setup_completed=Configuration initiale terminée. (Décochez et recommencer pour entrer à nouveau)
unknown622=Vous devez remplir tous les champs requis.
unknown626=Accepter
-unknown63=Tutoriel commencé
+c.settings.gameplay.tutorial_started=Tutoriel commencé
unknown732=
unknown736=
unknown740=Regarder
diff --git a/locale/he.ini b/locale/he.ini
index e20a6a24..bd8ab350 100644
--- a/locale/he.ini
+++ b/locale/he.ini
@@ -86,7 +86,7 @@ c.settings.graphics.fullscreen.always=תמיד
c.settings.graphics.fullscreen.keep=שמור
c.settings.graphics.fullscreen.never=אף פעם
c.settings.gameplay=
-c.settings.gameplay.extend_boost=תמיד הארך דחיפה לזמן המירבי
+c.settings.gameplay.latch_boost=תמיד הארך דחיפה לזמן המירבי
c.settings.graphics.gi=תאורה גלובאלית
c.settings.graphics.gi.sdfgi=SDFGI
c.settings.graphics.gi.voxelgi=
@@ -104,10 +104,10 @@ c.settings.graphics.preset.high=גבוה
c.settings.graphics.preset.low=נמוך
c.settings.graphics.preset.medium=
c.settings.other.server_data=תקיית המידע של השרת (השאר ריק על מנת לזהות אוטומטית)
-c.settings.other.server_path=קובץ הרצה של השרת (השאר ריק על מנת לחפש ב PATH)
-c.settings.other.server_path.placeholder=הכנס נתיב
+c.settings.other.server_binary=קובץ הרצה של השרת (השאר ריק על מנת לחפש ב PATH)
+c.settings.other.server_binary.placeholder=הכנס נתיב
c.settings.graphics.shadows=אפשר צללים
-c.settings.gameplay.smooth_camera=
+c.settings.gameplay.interpolate_camera_rotation=
c.settings.ui=שם משתמש
c.settings.ui.scale_factor=
c.settings.ui.scale_mode=
@@ -139,14 +139,14 @@ unknown464=
unknown476=SHIFT
unknown484=ג'ויסטיק שמאלי
unknown488=רווח
-unknown49=הפוך תזוזת מצלמה
+c.settings.gameplay.invert_camera=הפוך תזוזת מצלמה
unknown494=
unknown506=PageUp/PageDown
unknown510=
unknown514=חיצים
unknown518=ג'ויסטיק ימני
unknown524=
-unknown53=הראה שמות משתמשים
+c.settings.gameplay.usernames=הראה שמות משתמשים
unknown530=
unknown534=Escape
unknown538=כפתור התפריט
@@ -157,7 +157,7 @@ unknown576=
c.settings.gameplay.setup_completed=אתחול ראשוני נגמר. (הורד סימון והדלק מחדש על מנת להכנס מחדש)
unknown622=אנא מלאו את כל השדות הנדרשים.
unknown626=אשר
-unknown63=הדרכה התחילה
+c.settings.gameplay.tutorial_started=הדרכה התחילה
unknown732=
unknown736=
unknown740=צפייה
diff --git a/locale/ja.ini b/locale/ja.ini
index a6597d93..bfa36fe3 100644
--- a/locale/ja.ini
+++ b/locale/ja.ini
@@ -86,7 +86,7 @@ c.settings.graphics.fullscreen.always=いつも
c.settings.graphics.fullscreen.keep=保つ
c.settings.graphics.fullscreen.never=決して
c.settings.gameplay=
-c.settings.gameplay.extend_boost=ブーストを常に最大限に拡張する
+c.settings.gameplay.latch_boost=ブーストを常に最大限に拡張する
c.settings.graphics.gi=グローバルイルミネーション
c.settings.graphics.gi.sdfgi=SDFGI
c.settings.graphics.gi.voxelgi=Voxel GI
@@ -104,10 +104,10 @@ c.settings.graphics.preset.high=高
c.settings.graphics.preset.low=悪い
c.settings.graphics.preset.medium=正常
c.settings.other.server_data=サーバーデータディレクトリ(させて空の -> 自動検出)
-c.settings.other.server_path=サーバーバイナリ(させて空の ->「パス」)
-c.settings.other.server_path.placeholder=パスを入力
+c.settings.other.server_binary=サーバーバイナリ(させて空の ->「パス」)
+c.settings.other.server_binary.placeholder=パスを入力
c.settings.graphics.shadows=影を有効に
-c.settings.gameplay.smooth_camera=カメラの回転を補間
+c.settings.gameplay.interpolate_camera_rotation=カメラの回転を補間
c.settings.ui=ユーザー名
c.settings.ui.scale_factor=UIスケール
c.settings.ui.scale_mode=UIスケール
@@ -139,14 +139,14 @@ unknown464=-
unknown476=「シフト」
unknown484=左スティック
unknown488=「スペース」
-unknown49=カメラの動きを反転
+c.settings.gameplay.invert_camera=カメラの動きを反転
unknown494=%s キーを押すとアイテムを拾い、 %s キーを押したままにするとツールを操作できます
unknown506=ページアップ/ページダウン
unknown510=カメラをリセットするには %s を使用して
unknown514=矢印キー
unknown518=右スティック
unknown524=ユーザー名は設定で有効/無効にできます
-unknown53=ユーザー名を表示
+c.settings.gameplay.usernames=ユーザー名を表示
unknown530=ゲームに参加するには、 %s を押して「参加」をクリック
unknown534=「エスケープ」
unknown538=メニューボタン
@@ -157,7 +157,7 @@ unknown576=サウンド
c.settings.gameplay.setup_completed=初期設定完了。(チェックを外して再起動して)
unknown622=要求されたフィールドをすべて入力する必要があります。
unknown626=アクセプト
-unknown63=チュートリアルを開始
+c.settings.gameplay.tutorial_started=チュートリアルを開始
unknown732=
unknown736=
unknown740=観戦
diff --git a/locale/pl.ini b/locale/pl.ini
index 7c12a3d7..dd07997a 100644
--- a/locale/pl.ini
+++ b/locale/pl.ini
@@ -86,7 +86,7 @@ c.settings.graphics.fullscreen.always=Zawsze
c.settings.graphics.fullscreen.keep=Zachowaj
c.settings.graphics.fullscreen.never=Nigdy
c.settings.gameplay=
-c.settings.gameplay.extend_boost=Zawsze wydłużaj przyspieszenie do maksymalnego czasu trwania
+c.settings.gameplay.latch_boost=Zawsze wydłużaj przyspieszenie do maksymalnego czasu trwania
c.settings.graphics.gi=Globalne oświetlenie
c.settings.graphics.gi.sdfgi=SDF
c.settings.graphics.gi.voxelgi=Oświetlenie wokselowe
@@ -104,10 +104,10 @@ c.settings.graphics.preset.high=Wysokie
c.settings.graphics.preset.low=Niskie
c.settings.graphics.preset.medium=Średnie
c.settings.other.server_data=Folder danych serwera (pozostaw puste aby wykryć automatycznie)
-c.settings.other.server_path=Plik wykonywalny serwera (pozostaw puste aby przeszukać ścieżkę PATH)
-c.settings.other.server_path.placeholder=Podaj ścieżkę
+c.settings.other.server_binary=Plik wykonywalny serwera (pozostaw puste aby przeszukać ścieżkę PATH)
+c.settings.other.server_binary.placeholder=Podaj ścieżkę
c.settings.graphics.shadows=Cienie
-c.settings.gameplay.smooth_camera=Gładki obrót kamery
+c.settings.gameplay.interpolate_camera_rotation=Gładki obrót kamery
c.settings.ui=Nazwa użytkownika
c.settings.ui.scale_factor=Stopień skalowania interfejsu
c.settings.ui.scale_mode=Skalowanie interfejsu
@@ -139,14 +139,14 @@ unknown464=-
unknown476=SHIFT
unknown484=lewy dżojstik
unknown488=SPACJA
-unknown49=Odwrócone sterowanie kamerą
+c.settings.gameplay.invert_camera=Odwrócone sterowanie kamerą
unknown494=Wciśnij %s aby podnieść przedmioty i przytrzymaj %s aby użyć narzędzia
unknown506=PageUp/PageDown
unknown510=Użyj %s aby obrócić kamerę
unknown514=klawisze strzałek
unknown518=prawy dżojstik
unknown524=Tagi z nazwą użytkownika możesz włączyć/wyłączyć w ustawieniach
-unknown53=Pokazywanie tagów z nazwą użytkownika
+c.settings.gameplay.usernames=Pokazywanie tagów z nazwą użytkownika
unknown530=Wciśnij %s i wybierz "Dołącz" aby dołączyć do gry w toku
unknown534=ESCAPE
unknown538=przycisk menu
@@ -157,7 +157,7 @@ unknown576=Oprawa dźwiękowa
c.settings.gameplay.setup_completed=Konfiguracja wstępna ukończona. (Odznacz i zrestartuj aby wykonać ponownie)
unknown622=Musisz wypełnić wymagane pola.
unknown626=Zatwierdź
-unknown63=Tutorial rozpoczęty
+c.settings.gameplay.tutorial_started=Tutorial rozpoczęty
unknown732=
unknown736=
unknown740=Oglądaj
diff --git a/locale/pt.ini b/locale/pt.ini
index 271d533e..0ea8e48e 100644
--- a/locale/pt.ini
+++ b/locale/pt.ini
@@ -86,7 +86,7 @@ c.settings.graphics.fullscreen.always=
c.settings.graphics.fullscreen.keep=
c.settings.graphics.fullscreen.never=
c.settings.gameplay=
-c.settings.gameplay.extend_boost=
+c.settings.gameplay.latch_boost=
c.settings.graphics.gi=
c.settings.graphics.gi.sdfgi=
c.settings.graphics.gi.voxelgi=
@@ -104,10 +104,10 @@ c.settings.graphics.preset.high=
c.settings.graphics.preset.low=
c.settings.graphics.preset.medium=
c.settings.other.server_data=
-c.settings.other.server_path=
-c.settings.other.server_path.placeholder=
+c.settings.other.server_binary=
+c.settings.other.server_binary.placeholder=
c.settings.graphics.shadows=
-c.settings.gameplay.smooth_camera=
+c.settings.gameplay.interpolate_camera_rotation=
c.settings.ui=
c.settings.ui.scale_factor=
c.settings.ui.scale_mode=
@@ -139,14 +139,14 @@ unknown464=
unknown476=
unknown484=
unknown488=
-unknown49=
+c.settings.gameplay.invert_camera=
unknown494=
unknown506=
unknown510=
unknown514=
unknown518=
unknown524=
-unknown53=
+c.settings.gameplay.usernames=
unknown530=
unknown534=
unknown538=
@@ -157,7 +157,7 @@ unknown576=
c.settings.gameplay.setup_completed=
unknown622=
unknown626=
-unknown63=
+c.settings.gameplay.tutorial_started=
unknown732=
unknown736=
unknown740=
diff --git a/locale/tools/src/main.rs b/locale/tools/src/main.rs
index 1ae59c83..1082581e 100644
--- a/locale/tools/src/main.rs
+++ b/locale/tools/src/main.rs
@@ -31,6 +31,23 @@ enum Args {
},
}
+static NATIVE_LANGUAGE_NAMES: &[(&'static str, &'static str)] = &[
+ ("en", "English"),
+ ("de", "Deutsch"),
+ ("fr", "Français"),
+ ("es", "Español"),
+ ("eu", "euskara"),
+ ("ja", "日本語"),
+ ("he", "עִברִית"),
+ ("tr", "Türkçe"),
+ ("fi", "suomen"),
+ ("ar", "العربية"),
+ ("zh_Hans", "中文 (简化字)"),
+ ("zh_Hant", "中文 (繁體字)"),
+ ("pl", "Polski"),
+ ("pt", "Português"),
+];
+
fn main() -> Result<()> {
let args = Args::parse();
match args {
@@ -39,9 +56,13 @@ fn main() -> Result<()> {
input,
output,
} => {
- let ini = load_ini(&input)?;
+ let mut ini = load_ini(&input)?;
let id_map = id_map.map(|path| load_ini(&path)).transpose()?;
+ for &(code, name) in NATIVE_LANGUAGE_NAMES {
+ ini.insert(format!("c.settings.ui.language.{code}"), name.to_owned());
+ }
+
File::create(output)?.write_all(
format!(
r#"
diff --git a/locale/tr.ini b/locale/tr.ini
index 271d533e..0ea8e48e 100644
--- a/locale/tr.ini
+++ b/locale/tr.ini
@@ -86,7 +86,7 @@ c.settings.graphics.fullscreen.always=
c.settings.graphics.fullscreen.keep=
c.settings.graphics.fullscreen.never=
c.settings.gameplay=
-c.settings.gameplay.extend_boost=
+c.settings.gameplay.latch_boost=
c.settings.graphics.gi=
c.settings.graphics.gi.sdfgi=
c.settings.graphics.gi.voxelgi=
@@ -104,10 +104,10 @@ c.settings.graphics.preset.high=
c.settings.graphics.preset.low=
c.settings.graphics.preset.medium=
c.settings.other.server_data=
-c.settings.other.server_path=
-c.settings.other.server_path.placeholder=
+c.settings.other.server_binary=
+c.settings.other.server_binary.placeholder=
c.settings.graphics.shadows=
-c.settings.gameplay.smooth_camera=
+c.settings.gameplay.interpolate_camera_rotation=
c.settings.ui=
c.settings.ui.scale_factor=
c.settings.ui.scale_mode=
@@ -139,14 +139,14 @@ unknown464=
unknown476=
unknown484=
unknown488=
-unknown49=
+c.settings.gameplay.invert_camera=
unknown494=
unknown506=
unknown510=
unknown514=
unknown518=
unknown524=
-unknown53=
+c.settings.gameplay.usernames=
unknown530=
unknown534=
unknown538=
@@ -157,7 +157,7 @@ unknown576=
c.settings.gameplay.setup_completed=
unknown622=
unknown626=
-unknown63=
+c.settings.gameplay.tutorial_started=
unknown732=
unknown736=
unknown740=
diff --git a/locale/zh_Hans.ini b/locale/zh_Hans.ini
index e5003956..e1dbaafa 100644
--- a/locale/zh_Hans.ini
+++ b/locale/zh_Hans.ini
@@ -86,7 +86,7 @@ c.settings.graphics.fullscreen.always=始终
c.settings.graphics.fullscreen.keep=保持
c.settings.graphics.fullscreen.never=从不
c.settings.gameplay=游戏玩法
-c.settings.gameplay.extend_boost=始终将加速延长至最大持续时间
+c.settings.gameplay.latch_boost=始终将加速延长至最大持续时间
c.settings.graphics.gi=全局照明
c.settings.graphics.gi.sdfgi=有符号距离场全局照明
c.settings.graphics.gi.voxelgi=体素全局照明
@@ -104,10 +104,10 @@ c.settings.graphics.preset.high=高
c.settings.graphics.preset.low=低
c.settings.graphics.preset.medium=中
c.settings.other.server_data=服务器数据目录(留空以自动检测)
-c.settings.other.server_path=服务器二进制文件(留空以搜索路径)
-c.settings.other.server_path.placeholder=输入路径
+c.settings.other.server_binary=服务器二进制文件(留空以搜索路径)
+c.settings.other.server_binary.placeholder=输入路径
c.settings.graphics.shadows=启用阴影
-c.settings.gameplay.smooth_camera=平滑的摄像头旋转
+c.settings.gameplay.interpolate_camera_rotation=平滑的摄像头旋转
c.settings.ui=用户界面
c.settings.ui.scale_factor=用户界面比例系数
c.settings.ui.scale_mode=用户界面缩放模式
@@ -139,14 +139,14 @@ unknown464=-
unknown476=Shift
unknown484=左摇杆
unknown488=空格键
-unknown49=反转摄像头移动
+c.settings.gameplay.invert_camera=反转摄像头移动
unknown494=按下 %s 可拾取物品,按住 %s 可与工具交互
unknown506=向上/向下翻页
unknown510=使用 %s 旋转摄像头视图
unknown514=方向键
unknown518=右摇杆
unknown524=可以在设置中启用/禁用用户名标签
-unknown53=显示用户名标签
+c.settings.gameplay.usernames=显示用户名标签
unknown530=按 %s 并单击“加入”以在游戏运行时加入游戏
unknown534=Esc
unknown538=菜单按钮
@@ -157,7 +157,7 @@ unknown576=声音
c.settings.gameplay.setup_completed=初始设置完成。(取消选中并重启以重新进入)
unknown622=您必须填写所有要求的字段。
unknown626=接受
-unknown63=教程已开始
+c.settings.gameplay.tutorial_started=教程已开始
unknown732=上一个
unknown736=下一个
unknown740=加入/旁观
diff --git a/locale/zh_Hant.ini b/locale/zh_Hant.ini
index 61aaa15a..047c59f6 100644
--- a/locale/zh_Hant.ini
+++ b/locale/zh_Hant.ini
@@ -86,7 +86,7 @@ c.settings.graphics.fullscreen.always=總是
c.settings.graphics.fullscreen.keep=保留
c.settings.graphics.fullscreen.never=永不
c.settings.gameplay=
-c.settings.gameplay.extend_boost=總是將加速延長至最長持續時間
+c.settings.gameplay.latch_boost=總是將加速延長至最長持續時間
c.settings.graphics.gi=全域照明
c.settings.graphics.gi.sdfgi=有符號距離場全域照明(SDFGI)
c.settings.graphics.gi.voxelgi=Voxel 全域照明
@@ -104,10 +104,10 @@ c.settings.graphics.preset.high=高
c.settings.graphics.preset.low=低
c.settings.graphics.preset.medium=中
c.settings.other.server_data=伺服器資料目錄(留空以自動偵測)
-c.settings.other.server_path=伺服器二進制檔案(留空以搜尋 PATH)
-c.settings.other.server_path.placeholder=輸入路徑
+c.settings.other.server_binary=伺服器二進制檔案(留空以搜尋 PATH)
+c.settings.other.server_binary.placeholder=輸入路徑
c.settings.graphics.shadows=啟用陰影
-c.settings.gameplay.smooth_camera=平滑的相機旋轉
+c.settings.gameplay.interpolate_camera_rotation=平滑的相機旋轉
c.settings.ui=使用者名稱
c.settings.ui.scale_factor=介面比例系數
c.settings.ui.scale_mode=介面縮放模式
@@ -139,14 +139,14 @@ unknown464=-
unknown476=SHIFT
unknown484=左搖桿
unknown488=空白鍵
-unknown49=反相相機移動
+c.settings.gameplay.invert_camera=反相相機移動
unknown494=按下 %s 來拾取物品並按住 %s 來與工具互動
unknown506=PageUp/PageDown
unknown510=使用 %s 來旋轉相機視角
unknown514=方向鍵
unknown518=右搖桿
unknown524=可以在設定中啟用/停用使用者名稱標籤
-unknown53=顯示使用者名稱標籤
+c.settings.gameplay.usernames=顯示使用者名稱標籤
unknown530=按下 %s 並點擊「加入」以在遊戲運行時加入
unknown534=ESCAPE
unknown538=選單按鈕
@@ -157,7 +157,7 @@ unknown576=聲音
c.settings.gameplay.setup_completed=初始設定完成。(取消勾選並重新啟動以重新進入)
unknown622=你必須填寫所有要求的欄位。
unknown626=接受
-unknown63=教程已啟動
+c.settings.gameplay.tutorial_started=教程已啟動
unknown732=
unknown736=
unknown740=旁觀