Assets with Tilde (~) in their name are not recognized

I have a lot of assets (textures and materials) in several projects which have inherited their name from an exporting process from another package. This other package exports everything with DOS 8.3 short names and truncates the long names in the form shortn~1.ext

I have been updating Unreal Engine until version 4.10 with no problem with these projects. Now I updated UE from 4.10 to 4.17 and, when updating these projects all these assets give load error and are not recognized. In order to fix these UE4 projects I have to do the following process, in Windows:

1- Replace the name of all these .uasset files, changing the tilde by a dash (-).

2- Do a binary search and replace inside all the .uasset files, performing the same change.

Strangely, a few of these assets need their tilded version file to be also present for them to work.

Thanks.

To better clarify my previous post:

  • The assets with tilde in their names are already .uasset materials and textures, working with no problem in previous versions of UE4.
  • It happens when first opening a project from say version 4.10 in the new 4.17 version.

Hey -

The behavior your seeing in 4.17 is expected, the ~ character is not meant to be an accepted character. This was reported and changed in 4.14 (Unreal Engine Issues and Bug Tracker (UE-12908)) .

Cheers

Thank you, .
I didn’t find that previous thread because it hasn’t the word “tilde” in it.

I’m not objecting the developer’s decisions but they should not forget that the tilde sign is not an uncommon character in the world. There must be millions of resource files with the tilde in their names, because one time it was a mandatory character and it is still used by many utilities and design programs with old exporting algorithms.

Thanks again.