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 69 forks source link

Latest script leaves Coop Host back at character creation screen. Workaround in my post seems to work, but transfer of guild needed. #60

Closed CommandoCat closed 7 months ago

CommandoCat commented 7 months ago

The latest Python script still doesn't work for me. Still leaves the Coop Host back at character creation screen.

What worked was a comment in the Reddit thread which was:

"After character creation on the dedicated server, it overrides your player save. Take that new file, grab your backed up old local file, put it into the folder where you're running your script. Rerun script.

ONLY copy the new player file back to the server."

What I had to do was AFTER following all your instructions 'til the end: -start the dedicated server again, try to join, see the character creation screen again, create character, pick up stone/log, drop stone/log(to make sure the coophostplayerGUID.sav is generated again) quit, close dedicated server. -take the new coophostplayerGUID.sav that was saved in PalServer/Pal/Saved/SaveGames/0/(savefoldername)/Players, take 00000000000000000000000000000001.sav from PalServer/Pal/Saved/SaveGames/0/(savefoldername)/backup/world/(latestdate)/Players, put both files back to the TEMP folder/(savefoldername)/Players (overwrite where needed) -Run the script again -Copy ONLY the latest coophostplayerGUID.sav back to PalServer/Pal/Saved/SaveGames/0/(savefoldername)/Players -Restart dedicated server.

End Result: No character creation screen, I spawn back exactly where I logged out in my Singleplayer save file, with all inventory items/my level/paldeck entries unlocked.

The already-built Palbox no longer belongs to me though, but my friend is offline and I can't test transferring the guild to him.

Building a new Palbox shows that all my Pals are there though.

But I guess doing the Guild Bug Fix should sort this out. Will test it in about 8 hours when my friend is back online.

indus3a commented 7 months ago

Same issue, spent 3 hours, everything works fine, can confirm right world, connection, initial guid, new guid, same moment as script successuflly finishes (even without temporary order directly in pal server) server force new character registration WITH SAME GUID

indus3a commented 7 months ago

hint from above doesnt work, joining dedicated server creates only LocalData.sav in the local folder which is not required at the server

CommandoCat commented 7 months ago

Sorry, I forgot to add that in the first step, I continued creating the character as per usual and picking up a log/stone and dropping it to make sure the coophostplayerGUID.sav is generated again

hint from above doesnt work, joining dedicated server creates only LocalData.sav in the local folder which is not required at the server

huntergregal commented 7 months ago

This worked for me - thank you.

CommandoCat commented 7 months ago

This worked for me - thank you.

Can I check with you, did you do the transfer guild bug fix?

huntergregal commented 7 months ago

The Guild is owned by another player (not co-op host). I think transferring the guild to any other player prior to moving the offline world to the server would also work.

After i did your fix to get the co-op host's player ported over - he was in his own guild.

So I simply had him run up to me (im still in old guild) and join the guild on me. This fixed it.

I still could not hold left click to swing - so i then left the guild, and joined back on him (co-op host) and it fixed it.

Note: I suspect doing your co-op host transfer with him being the owner of the guild would BREAK the guild. As the co-op host loses his guild in the transfer process

CommandoCat commented 7 months ago

The Guild is owned by another player (not co-op host). I think transferring the guild to any other player prior to moving the offline world to the server would also work.

After i did your fix to get the co-op host's player ported over - he was in his own guild.

So I simply had him run up to me (im still in old guild) and join the guild on me. This fixed it.

I still could not hold left click to swing - so i then left the guild, and joined back on him (co-op host) and it fixed it.

Great, so the guild bug fix would work. sweet.

I think my friend fell asleep so I still can't transfer the guild to him to test lol.

huntergregal commented 7 months ago

The Guild is owned by another player (not co-op host). I think transferring the guild to any other player prior to moving the offline world to the server would also work. After i did your fix to get the co-op host's player ported over - he was in his own guild. So I simply had him run up to me (im still in old guild) and join the guild on me. This fixed it. I still could not hold left click to swing - so i then left the guild, and joined back on him (co-op host) and it fixed it.

Great, so the guild bug fix would work. sweet.

I think my friend fell asleep so I still can't transfer the guild to him to test lol.

hah yeah unfortunately it takes 2 to do it. I had to wait for my friend as well. It may be possible to unpack the .sav files and force move people to other guild positions. but i dont feel like testing

huntergregal commented 7 months ago

okay so:

I had to do this method (using backup/UID.sav -> rename 00...01.sav) for every player. Copying over only the new .sav to the server and not the world.sav files

Then having the new player (now guildless!) rejoin the old guild

xNul commented 7 months ago

I'm glad you guys figured it out. I think it has to do with the the fix for the guild bug not applying correctly so I'm going to close this issue and point everyone to the mega issue I've created for this problem in https://github.com/xNul/palworld-host-save-fix/issues/22