Skip to content

Localization and Start Screen Canvas Organization

Whiiizz edited this page Jun 13, 2025 · 1 revision

Support for Multiple Languages

In order to add support for English, Spanish, and other languages, localization package by Unity is used to organize the project. The starting screen for the users are completely organized in this way, with support for English and Spanish. To add more support for other languages, there will be more revisions than adding entries to the table.

To add more questions, including other translated variants, go into the Unity project. Go to Window > Asset Management > Localization Tables and navigate to the HEXAD string table collection. Add the new key, which should be the id of the question, and then include all the supported language translations. By doing so, the questionnaire on the start screen for new users will see these new questions without needing extra code revisions and updates.

After adding new entries, make sure to update the build. Go to Window > Asset Management > Addressables > Groups. Navigate to the top right tab called Build and choose Update a previous build. If there are any errors, resolve them.

Similarly since the texts on the start screen scenes are also organized this way, follow the same steps detailed above and choose the correct start screen string table to modify a text.

Here is the organization of the start screen to home screen when user launches the project. Important files that modify items in these screens :

Assets/Users/Settings/settings_list.csv

Contains a list of the settings that will be implemented in the project and can be disabled or enabled based on the questions answered by the user. The scrollview object holding these optional features must have the button gameobjects that lead to these features as the same name in this file. Look at the diagram for more clear organization.

Assets/BadgeSystem/badges.csv

Contains a list of the available badges that the user can obtain. Currently, the headers are id, name, description, and rarity.

id - should be unique to each badge entry.

name - the name of the badge as seen by the user.

description - the description of the badge, may include how it can be obtained.

rarity - the value of the badge obtained, as some are easier than others to get. This also determines the badge asset used for showing the user their badge collection.

To obtain a badge, call the BadgeSystem.ObtainBadge(int badgeID) somewhere appropriate in the scene (There should be a BadgeManager on the scene, as obtain badge is not a static method).

Canvas_Diagram

Clone this wiki locally