Player data lost when moving from BDS to Singleplayer (and vice versa)
Summary:
Player data on a singleplayer world isn't used when that world is moved to/used with BDS.
Steps to reproduce:
- Create a new local world, give yourself a bunch of items and tame a pet
- Save and close the world
- Upload the world to a BDS install and start the server
- Join the server while still logged into the same account
- Note you enter as a new player, items and levels are gone, pets are no longer yours etc.
You can move the world back to singleplayer and progress while the world was on BDS will be lost but items etc from before the move will be back.
What I expected to happen:
My player data should be linked to my account, allowing me to move it between BDS and Singleplayer without losing progress
What actually happened:
Player data is stored differently for local and network players causing inconsistencies when moving between BDS and Singleplayer.
Some more detail (all educated assumption):
At the moment when playing a world in singleplayer, your data is stored under a local_player entry (with no link to your xbox account). When that same world is moved onto a BDS and you connect you instead get a new player_server_guid entry. Because your progress is stored under local_player its not applied to the player.
Realms is able to get around this by (I believe) "copying" the player data of the local_player to the owners player_server_guid account.
BDS isn't linked to an "owner" in the same way realms are so the same process may not be possible.
Linked Issues
is duplicated by5
Comments9
History17
Confirmation Status: Unconfirmed → Confirmed
Changed description:
I wanted to make a server of a world a friend and I played in so I didn't have to be online for him to be able to be online. So I made a server and I copiëd the save files to the save files of the server, I made sure the names were the same in the world file as well as in the server.properties file. When I
I wanted to make a server of a world a friend and I played in so I didn't have to be online for him to be able to be online. So I made a server and I copiëd the save files to the save files of the server, I made sure the names were the same in the world file as well as in the server.properties file. When I
Added is duplicated by link: BDS-5186[Win10] Inventory Loss Moving local world (1.14.60) to Windows Bedrock Dedicated Server (1.14.60.5)Duplicate
Added is duplicated by link: BDS-5688Player data mismatch when moving a world to and form BDS/local gameDuplicate
Changed description:
I wanted to make a server of a world a friend and I played in so I didn't have to be online for him to be able to be online. So I made a server and I copiëd the save files to the save files of the server, I made sure the names were the same in the world file as well as in the server.properties file. When I join the server my playerdata is not there but when my friend joins he does have his playerdata.
Summary:
Steps to reproduce:
- 0
- Create a new local world, give yourself a bunch of items and tame a pet
- Save and close the world
- Upload the world to a BDS install and start the server
- Join the server while still logged into the same account
- Note you enter as a new player, items and levels are gone, pets are no longer yours etc.
You can move the world back to singleplayer and progress while the world was on BDS will be lost but items etc from before the move will be back.
What I expected to happen:
What actually happened:
Some more detail (all educated assumption):
Realms is able to get around this by (I believe) "copying" the player data of the local_player to the owners player_server_guid account.
BDS isn't linked to an "owner" in the same way realms are so the same process may not be possible.
Changed summary:
Added is duplicated by link: BDS-7260Bedrock World moved to Bedrock Dedicated Server mismatch/duplicate xuidDuplicate
Added affects versions: 1.16.0
Added affects versions: 1.20.62
Hi Cirnel,
When you play a world locally you are considered the "local" player, however when you play on a BDS everyone is considered a "network" player. I'm assuming changing this would break worlds for people that play with no network connection etc. Your stuff is all still there, if you move the world back to a local instance all your stuff will be there still.
To work around the issue you need to place all items in a box before you transfer the world over to BDS.
Ionic
MEQS_WAI
I experienced the same issue. I confirm putting items into box does work but this is just a workaround.
I think this is bug and items should be kept because this happens when I use xbox account in both local computer and BDS.
So I suggest do not differentiate players based on local and network connection if they use the same account.
Inventory is one thing but you also lose your pets.
As a workaround if you are switching from single player to BDS, I found that uploading my world to a Realm before moving my world to a BDS copies the local player into the network player in my local world. This is a one way operation though, meaning if you go from BDS back to single player, your local player will not have all your data.
I ran into this when trying to transfer my son's preferred world to a server to make it easier to play with family members not in the same house. I managed to piece together a workaround that doesn't involve placing all your items in a box before transferring the world, and that preserves things like pets. It's a bit involved, but thanks to previous helpful people doing the hard work of writing Python bindings to the Bedrock database format, the difficult bit was working out what the various player_... UUIDs needed to be.
You can find my code in cjwatson/minecraft-convert-local-player on GitHub. I've tested it on exactly one world, and I've only implemented the local-to-BDS direction, so bear that in mind!
Having same problem
And found easy solution after hard work on online research. Let me know if you want to know how I fixed it easily.
adsummit what is your easy fix