Fr33dan / GPSaveConverter

Utility to transfer save files between the games installed from the Xbox app and other storefronts. https://ko-fi.com/fr33dan
297 stars 33 forks source link

Forza Horizon 5 - Transfered liveries don't seem to work #7

Open SBRK opened 2 years ago

SBRK commented 2 years ago

I have transfered my Xbox Profile save for FH5 to the Steam version, and the save works fine, but immediately I noticed the cars that had custom liveries appeared as an all white thumbnail in the garage, and when I selected one, the livery didn't appear, it was just a stock paint color. I have no idea how, but when launching the game later on, the liveries did work. But then I played the game on another computer (a Steam Deck, not that it should matter) and boom, liveries gone again (and this time, they never showed up again). Any idea what's going on and if there's a fix ?

Fr33dan commented 2 years ago

I have heard that only the profile data transfers correctly resulting in the liveries not working.

The person who reported (on reddit) this was satisfied and didn't want to debug further, but mention something along the lines of things syncing in the background.

Based on this, my guess is that only the profile data is correctly opened by the game, the game itself finds the matching save data in Microsoft's cloud save data and begins syncing it, resulting in your liveries working later.

I don't have a Steam deck, but this means you are either using SteamOS's Proton compatibility layer or you have installed Windows. It is my understanding that running Windows on the device has some strange compatibility issues. My guess is whichever of these two is at play here this is preventing the cloud syncing of the liveries.

This is purely a guess on my part and as of right now I can't think of a fix or way to test the theory.

SBRK commented 1 year ago

Some more info: I noticed in the save folder on the Steam Deck, many files were missing (including the old livery files). I manually copied them from my desktop save folder and now they work. I looked at the remotecache.vdf from the desktop and noticed all of those files had persiststate 1 (while the files that appear on the Steam Deck save folder had persiststate 0. I tried putting 0 everywhere but no luck. Do you have an idea how to force Steam to take those files in the cloud save ?

Fr33dan commented 1 year ago

I'm afraid I don't know that much.

I always it was a fairly simple system that tracked an entire folder without any filtration, although as I'm typing this out I realize that would be a ridiculous security hole so they must have something that picks out what files to upload.

Doing some research here and seeing on the SteamDB page for FH5 that it does not have AutoCloud configured and thus must use the CloudAPI, meaning the game executable itself tells steam which files to sync.

If my understanding is correct this means it's either a bug, or an intentional choice to backup different files depending on the platform.

SBRK commented 1 year ago

My guess is the Steam version of FH5 never created those files, so it never said to back them up. I guess I'd have to individually edit each livery so that it saves it and mark it to be saved 🙃

yungdangus commented 1 year ago

Thanks for this tool! It worked great for the user data. I am having the same livery issue but actually unsure how to even transfer the livery. When I try it says theres no path. Any ideas?

DuckTheCow commented 1 year ago

You need to create a corrisponding file with the same name to create the livery, tune, etc. files. Even doing that though the files themselves don't work in game. My guess personally from some testing is that while what is equipped is stored in your main save data what liveries, tunes, etc. you have downloaded is stored remotely on a MS server thus not allowing you to transfer them as I can't seem to find any file that I haven't copied.