🗣️Multi-Language Support
The YSeries phone system provides multi-language support, allowing you to customize the phone interface for different languages and regions.
Adding New Languages
Step 1: Configure Language Entry
Navigate to
/config/config.locales.luaAdd a new entry to the
Config.Localesarray:
Config.Locales = {
{
value = "en",
label = "English"
},
{
value = "es",
label = "Español"
},
{
value = "fr",
label = "Français"
},
-- Add your new language here
{
value = "de",
label = "Deutsch"
}
}Step 2: Create Language File
Navigate to
/ui/build/locales/Create a new JSON file named exactly the same as the
valuefield from Step 1Example: For German, create
de.json
Step 3: Restart Server
Restart the server to apply the language changes.
Language File Structure
Basic Structure
Language files should follow this JSON structure:
Language Selection
User Language Selection
Players can typically change their language through:
Settings App: Navigate to Settings -> Language
Initial Setup: Language selection during first phone setup
Server Default Language
Configure the default server language in config/config.locales.lua:
Advanced Features
Dynamic Language Loading
The system supports dynamic language loading, meaning:
Languages can be switched without restart
New translations take effect immediately
Fallback to default language for missing translations
Translation Fallbacks
If a translation is missing:
System checks current language file
Falls back to default language (usually English)
Shows translation key if no fallback exists
Regional Variants
Support for regional language variants:
Troubleshooting
Common Issues
Translations not appearing:
Check file naming matches
valuefield exactlyVerify JSON syntax is valid
Ensure server restart was completed
Partial translations:
Check for missing translation keys
Verify JSON structure is complete
Test fallback language functionality
Language selection not working:
Verify locale configuration is correct
Check player language preference storage
Test with different language options
Debug Steps
File Validation: Use JSON validators for syntax checking
Console Logs: Check for language loading errors
UI Testing: Test interface with different languages
Player Testing: Have players test language switching
Last updated