Skip to content

Frequently Asked Questions

Common questions and answers about Chamelingo.


General Questions

What is Chamelingo?

Chamelingo is a complete localization solution for Unity that simplifies translating your game into multiple languages. It provides an editor interface, automatic translation integration, and flexible text management.

Does Chamelingo work with TextMeshPro?

Yes! Chamelingo has dedicated components for both TextMeshPro (ChamelingoTMP) and legacy Unity Text (ChamelingoUnityText).

Can I use Chamelingo in commercial projects?

Yes, Chamelingo is licensed per Unity account and can be used in unlimited commercial and non-commercial projects.


Setup & Configuration

Which data format should I choose: JSON or CSV?

Choose JSON if: - You have a small to medium-sized project - You want easy manual editing - You prefer simple file structure

Choose CSV if: - You work with spreadsheet tools (Excel, Google Sheets) - You have large translation databases - You collaborate with external translators

You can switch formats anytime—Chamelingo handles the migration automatically.

Can I change the data format after I've started?

Yes! Chamelingo automatically migrates your translations when you change data formats in Project Settings.

Do translation files need to be included in builds?

Yes, translation files in Assets/Resources/Translations must be included in your build. They are automatically included when building your game.


Translation Services

Are translation API keys secure?

Yes. API keys are stored in EditorPrefs (Windows Registry on Windows), not in your project files. This means: - Keys are never committed to version control - Keys are not accessible in builds - Each developer must configure their own API key - DeadLock Development never has access to your keys

Do I need a translation service to use Chamelingo?

No. Translation services are optional. You can manually enter all translations or import them from external sources. Auto-translation is a convenience feature.

Which translation service should I use?

We recommend DeepL Free for most users: - High quality translations - 500,000 characters/month free - Easy setup with just an API key

For production projects with high volume, DeepL PRO offers the best quality.

Will auto-translation overwrite my existing translations?

Yes, when you use the auto-translate feature, it will replace existing translations without confirmation. Always back up important translations before using bulk translate operations.

What happens if my translation service quota is exceeded?

Chamelingo will log an error in the Unity Console. Your existing translations remain intact, but new auto-translations will fail until your quota resets or you upgrade your plan.


Language Management

Why does Chamelingo use language codes like "en" instead of "en-US"?

Chamelingo uses IETF BCP 47 neutral culture codes (e.g., en, de, fr) rather than region-specific codes. This simplifies localization for most games where regional differences aren't critical. Most games don't need separate translations for "English (US)" vs "English (UK)".

How does language selection work at runtime?

Chamelingo automatically selects languages with this priority: 1. User's previously saved language choice 2. Device system language 3. Your configured default language 4. First available language

The selection is saved to PlayerPrefs and persists across app restarts.

Can I add or remove languages after release?

Yes. Adding languages won't affect existing translations. When removing languages, enable the backup option in Project Settings to create .bckp files you can restore later if needed.


Using Chamelingo

Why are my translations showing as empty strings?

Common causes: - The translation key exists but has no text for the current language - The language is not properly configured in Project Settings - Translation files are missing or not in the correct location

Check the Translations View for missing translations.

How do I localize text that changes at runtime?

Use Composite Text with runtime parameters:

// Set parameter value
textComponent.SetParameter("playerName", "Alice");
textComponent.SetParameter("score", "1250");

Or use Component References to automatically pull values from other components.

Can I localize text that includes player names or dynamic values?

Yes, use Composite Text. Create a template like {greeting}, {playerName}! and configure the parameters.

How do I ignore certain text components from localization?

Right-click the component in the Dashboard and select "Ignore Component". You can add a note explaining why it shouldn't be localized.

What's the difference between Normal and Composite Text mode?

  • Normal Mode: Simple one-to-one translation. Static text that doesn't change.
  • Composite Text Mode: Templates with multiple parameters. For dynamic text with runtime values, player names, scores, etc.

Working with External Translators

Can I export translations for external translators?

Yes. Translations are stored as JSON or CSV files in Assets/Resources/Translations. You can send these files to translators and import them back.

What format is best for external translation workflows?

CSV is generally easier for translators: - CSV (Single File): All languages in one spreadsheet—good for small projects - CSV (Multiple Files): One file per language—better for large projects and parallel translation

Will importing translations overwrite my existing work?

Chamelingo detects when files are added or modified and updates accordingly. Make backups before importing large translation batches.


Performance

Does Chamelingo impact runtime performance?

Chamelingo has minimal runtime overhead: - Translation lookups are dictionary-based (O(1) complexity) - Text updates only happen on language change or parameter update - No continuous polling unless you explicitly enable it for Component References

Should I use polling or events for Component References?

Use events whenever possible (UnityEvent). Polling introduces continuous overhead and should only be used when events aren't available.

How large can my translation database be?

Chamelingo handles thousands of translation keys efficiently. File size depends on your data format and number of languages, but even large projects (5000+ keys, 20+ languages) work smoothly.


Troubleshooting

The Chamelingo Hub won't open

Try these steps: 1. Check Unity Console for errors 2. Restart Unity 3. Reimport the Chamelingo package 4. Check that you're using Unity 2021.3 or later

Translation keys aren't showing in the dropdown

The dropdown filters based on your input. Clear the input field to see all available keys. If keys are still missing, check that they're created in the Translations View.

Language dropdown is empty

Ensure you've added languages in Project Settings → Languages.

Auto-translation isn't working

Check these common issues: - Translation service is configured correctly - API key is valid and has quota remaining - Source language has translation text - Check Unity Console for specific error messages

Components show as "Error" in the Dashboard

Common causes: - Missing or invalid translation key - Broken component references in composite text - Configuration conflicts

Check the Inspector Decorator for the specific error message.


Best Practices

Use hierarchical dot notation:

menu.start
menu.settings
ui.health
ui.score
dialog.welcome.title
dialog.welcome.message

This keeps keys organized and easy to manage as your project grows.

Should I translate everything?

No. Some text doesn't need localization: - Debug labels - Developer-only UI - Placeholder text that will be replaced

Use the "Ignore" feature for these components and add notes for your team.

How often should I test language switching?

Test regularly during development, especially after: - Adding new translation keys - Changing composite text templates - Modifying language configurations - Before any release or milestone


Integration

Can I use Chamelingo with other localization systems?

Chamelingo is designed as a complete solution. Using multiple localization systems simultaneously is not recommended and may cause conflicts.

Does Chamelingo support pluralization?

Not currently. This feature is planned for a future update. For now, create separate translation keys for singular/plural cases.

Does Chamelingo support right-to-left (RTL) languages?

Chamelingo handles text translation but doesn't automatically handle RTL layout. You'll need to handle layout changes separately, typically with Unity's UI system or TextMeshPro RTL support.


Support

Where can I get help?

How do I report a bug?

  1. Open Chamelingo Hub → Help tab
  2. Copy system information using the copy button
  3. Go to our Issue Tracker
  4. Describe the issue and paste your system information

Are updates free?

Yes, updates are provided free through the Unity Asset Store for all customers.


Still Have Questions?

Check the complete documentation: - Getting Started Guide - User Guide - API Reference - Technical Documentation

Or report an issue if you need further assistance.