JennyKmu / ROSE

A program to read, edit, and write save files for the game Railroads! Online
GNU General Public License v3.0
20 stars 3 forks source link

Issue with modified save #25

Closed JennyKmu closed 2 years ago

JennyKmu commented 2 years ago

The attached save is not loading properly in game once edited. Symptoms are:

Things noticed : One of the player's name contains special characters, which mess up the ui a bit.

JennyKmu commented 2 years ago

slot3.txt

(extension changed for updload)

JennyKmu commented 2 years ago

Unit tests on GVAS parser show that written file is different from parsed file:


- GVAS read vs write... FAILED
First diff occuring at address 0x4a1
JennyKmu commented 2 years ago

Problem found: The overall length of the ArrayProperty of the PlayerNameArray isn't correct, as well as the length value for the name containing special characters. Issue comes from the UEString and the size equivalent during parsing.

JennyKmu commented 2 years ago

Modifying the way UEStrings and StrProperty are written corrects partially the issue (sizes of the StrProperty array and of the UEString were incorrect), however there seems to be an inconsistency in the TextProperty array where empty entries start with 0x02000000 instead of 0x00000000 (not link to the modifications of UEStrings). This could be due to the file being exported by another editor before going through RROSE (under investigation)

JennyKmu commented 2 years ago

Confirmation that the differences in the rest of the file were from another editor being run on it before Rose. The hotfix on the UEStrings corrected the issue.