xNul / palworld-host-save-fix

Fixes the bug which forces a player to create a new character when they already have a save. Useful for migrating maps from co-op to dedicated servers and from one dedicated server to another.
MIT License
887 stars 68 forks source link

"properties.SaveData.value.LastTransform.value.Rotation.value.w" gets assigned wrong value, and prevents loading. #113

Closed Captain-Pumpkinhead closed 5 months ago

Captain-Pumpkinhead commented 5 months ago

(I'm not very familiar with either GitHub or with JSON stuff, so if this Issue or how I describe it could be improved, feedback is appreciated.)

I tried using this tool today, ran into an issue, and I believe I have found the cause and solution. After running this tool, I got stuck on the loading screen. There was no error, it did not kick me out to the lobby, it just hung at the loading screen. By converting my .sav files into JSON format (https://github.com/cheahjs/palworld-save-tools), I noticed that one of the values was suspiciously different.

image

On the left is the JSON file for my co-op host player, on the right is the converted server player. The variable "properties.SaveData.value.LastTransform.value.Rotation.value.w" was set one value off from what it should have been. After changing this value to be the same as my co-op player and converting the JSON back to .sav, it worked!

I have not looked into your code. I don't know why this mistake occurred. But hopefully this is enough info for you to figure it out. If you find yourself unable to replicate this issue, let me know and I can include a .zip of my co-op save.

xNul commented 5 months ago

Wow, that's strange. Not sure how the script would affect that, but appreciate the report nonetheless!

xNul commented 5 months ago

I'm going to close this issue because we have https://github.com/xNul/palworld-host-save-fix/issues/30 to account for the loading screen hang. I'll mention these findings in there too. If you would like to stay up to date with the bug, feel free to follow the issue.