Behavior: Ship models do not update properly when updated/modified if the period character is present in the ship names. For example, when updating the "Katyusha Mk.1" to the "Katyusha Mk.2", the model for the latter remains that of the former, though the items themselves update. When altering the latter design, the new parts are still displayed in the bottom icon row below the ship mass, but are not displayed on the main ship model. It seems probable that this behavior is linked to the filenames generated in the Designs folder in the user Documents directory where GalCiv3 user data is stored - the filenames generated for the three files are "Katyusha Mk.1_[Hex ID].PNG"; "Katyusha Mk.1_[Hex ID].ship"; and "Katyusha Mk.objgfxcfg", with particular attention to be paid to the inconsistent filename of the object GFX configuration file. This behavior is not exhibited when ship names are used without the period character (e.g., the "Katyusha Mk1"), where all three files have consistent file names.
Reproduce: Design any ship with any name that includes a period. Design another ship with a name identical preceding the period, followed by any number or kind of characters. On my end, I tested also with the "Blargle.xyzzy" and "Blargle.quijybo", as well as the "Rhythm", "Rhythm.", and "Rhythm.syzygy", to confirm that the issue was not restricted to numeric characters alone. The former case immediately exhibited the same behavior as above. The latter only exhibited the above behavior when moving from the second to the third ship design; the first ship design, with no period, generated full ship filenames with the proper unique hex codes and remained distinct from the latter two even when modifications were made.
Workaround: Do not use the period character in any ship names.
Correction: Two possibilities immediately present themselves to me.
- Block the user from using the period character in ship names. Quick, dirty, effective.
- Modify the generating code for the ship filenames to either replace period characters with a dummy character or to maintain the period character, but not end after the first period is reached.