Help with implenting a missing string table entry checking function

Hi Everyone,

Recently we have been seeing a bunch of these kind of warnings, most likely due to someone deleting or or renaming a String Table at some point.

LogStringTable: Warning: Failed to find string table entry for '<string table path>' '<key>'. Did you forget to add a string table redirector?I was wondering if there is a way to iterate through all of the text references with localization set on them, and then check to see if the table and/or key exists?

By text reference I mean things like an Text variable in a blueprint, or a text field on a UI widget etc. (see below).

[Image Removed]

It looks like it might be possible to just do something similar to the FTextHistory_StringTableEntry::FStringTableReferenceData::ResolveStringTableEntry() function, but I haven’t been able to think of a way to get a reference to all the text references in order to do this - so I would appreciate if someone could point me in the right direction.

Steps to Reproduce

Hi,

I’d recommend giving the Asset Search Plugin a try here, as I believe (if I’m remembering correctly) it was written to solve a similar problem of needing to track down scattered string references. Once the plugin finishes scanning your project and building it’s database, it should be able to quickly generate a list of places where a given string appears, including things like variables and blueprint nodes. Let me know if that doesn’t work for you and we’ll explore other options.

Best,

Cody

Hi Cody,

I was hoping that it would be possibly to do this programatically.

I did have a look at the Asset Search plugin, but it looks like you can only search for things by name.

In my use case, I need to either find text references that are referencing a string table that no longer exists, or are referencing a key that no longer exists.

Or at the very least, I need a way to find all the text references used throughout the assets in the project, so that I can manually check if their text references are valid.