What is a string table redirector?

Hello.
I made a project in 4.16 and use the String Table Asset. I use it to store some sentences for a dialog system.
At the beginning of my game I read this string table and display a dialog between my characters.

When I play it is the editor, everything is working. When I package my game or try to test in in another process it does not work, the dialog do not display.

I looked into my log files and found this error :

[2017.05.25-17.43.54:833][ 59]LogStringTable:Warning: Failed to find string table entry for ‘/Game/BluePrints/DCG01.DCG01’ ‘’. Did you forget to add a string table redirector?

Beside I did not find any file called DCG01 in my packaged game. What should I do ?

Thank you


[EDIT] I created a package without “use Pak File” and I take a screenshoot of each of my directory (in the project and in the packaged directory)

139256-2017-05-26+13_31_11-blueprints.png


139257-2017-05-26+13_32_56-blueprints.png

It sounds like nothing is referencing your string table outside of code? This would result in it not being cooked, but you can add it to the list of “additional asset directories to cook” in your project settings, or alternatively use a CSV or C++ string table (rather than an asset).

It’s in my /content/Blueprints directory which is where all my BPs are. Can the cooking process forget any file in a directory?

ok some news :
I used the parameter Cook Everything in the project content directory : TRUE
and now, my DCG01.uasset and DCG01.uexp are build in the packaged game. But I still have the error in the log.

So I suppose now that it was looking for a file named DCG01.DCG01 when not played in the editor. (because in the editor, the .uasset seems sufficient).

I do not understand where my mistake is…

How are you accessing your string table entries in code?

The cooking process by default will only cook files that are referenced by something the editor can find (some kind of property reference from a map). If an asset is only referenced in code then the editor won’t find this, and won’t cook it. This is why those settings exist to allow you to specify additional directories to cook.

I’ve attached some documentation on string tables. This also explains how to declare string tables in C++ or CSV (as well as assets).

I have the same problem, how can I find which object is referencing the missing table Entry ?
I reference the text IDs in blueprint.

If you can see the missing string in the UI, then you could use the Widget Reflector to pick the element and find its source.