Localization Dashboard Gather from CSV File

I’ve set up a CSV localization file that I load in C++ (following [this guide][1]) via

LOCTABLE_FROMFILE_GAME("UIWeaponTable", "UIWeapons", "Localization/UIWeaponTable.csv");

The strings in that table appear as valid options for FText localization

However, the keys and source text in that CSV file do not appear when I gather in the Localization Dashboard. What settings do I need to use to include those entries in the dashboard?

I believe Content/Localization is excluded from the gather by default, as it is only expected to contain the generated localization files. You can either remove the exclusion, or put your CSV String Tables elsewhere.

I am having this same issue and the moving my string table location didn’t work for me.

I can link my text fields to the .csv string table but the gatherer does not find it.

I am using LOCTABLE_FROM_FILE in my Project StartupModule, and I am including that file in the gatherer along with the .csv files and have included their file extensions.

Not sure what else to try.

It’s mandatory to point localization tool to correct folder and correct type of data to localize. .CSV files are not assets. They are not gathered as “assets” and they are not included by default when packaging. If mentioned subjects are above your knowledge, I suggest to stay with editor StringTable assets, and update it by importing again table when source .csv file is changed. The other subject is if the .csv table is just visible or correctly registered? I can be checked by function GetRegisteredStringTables. It will return array of names that can be used to identify the tables (very useful if you mix .csv files and editor StringTable assets as first one have to be called by name, the assets are called by relative path).

I have made notes on my blog about it (you have to Google Translate as it’s written in Polish), however it’s not full documentation, just some points for junior programmer I was helping with this subject. Setting up localization is for me one of the first steps when creating project, that’s more simple way to work and stay within correct Epic workflow.

However some tips:

  • putting .csv table in Localization folder is not good idea, it’s excluded from reading by default in Localization tool, however .csv files are not directly seen by Unreal Engine editor so it’s not big deal, but I woould suggest to make separate folder like stringsCSV under the /game/ folder (so in main catalog of the project)
  • how to initialize registering is documented in several places, the only thing to correct with newer versions of the engine is that some paths could change, so there is need to fix #include section
  • until you understand how it works on the C++ level of Unreal Engine I suggest to stay with assets from the editor and reimport them when .csv is changed. In this case there would be ‘reimport’ option but just import after opening the StringTable in Unreal Engine editor.