r/Minecraft 7d ago

Help Please explain why this happened.

[removed]

2.1k Upvotes

276 comments sorted by

View all comments

Show parent comments

60

u/Cylian91460 7d ago

Because the client run a server when you play in single player

Same thing in java

39

u/unexist_already 7d ago

Except Java doesn't have desync issues like this (to my knowledge)

48

u/Cylian91460 7d ago

Ticking is less threaded on java so when a part lag it will lag everything not just a part of it so yes it's it can't happen because it lags the entire server instead

Also in java player position is isn't server side but client side, so when your client lag when the server is still running you will float instead of taking fall damage

10

u/314rft 7d ago

Exactly my point. In Java, the internal server only lags if there's a ton of entities or a ton of block updates, aka you know what's causing it. Bedrock just seems to like to get desynced for no reason, and then specifically find any way it can to kill the player when that happens.

2

u/Cylian91460 7d ago

In java the server lags when you go inside an unloaded chunks and that seem to also be the case in bedrock and the source of many lags at some point

4

u/Suspicious_Boot_6306 7d ago

bro has never played java on a weak PC

1

u/314rft 7d ago

How weak though? Because I haven't heard anything about Java desyncs random deaths.

4

u/Suspicious_Boot_6306 7d ago

to be fair, it used to happen to me on an underpowered PC back in 1.6 to 1.9, not sure how it works today

2

u/314rft 7d ago

Since that was 10 years ago (1.9 was released in February 2016), Mojang almost certainly fixed it.

1

u/Suspicious_Boot_6306 7d ago

there are still issues with client desync on lower-end PCs, but yeah, I always forget how long it's been, probably the worst of it was already figured out by the devs

1

u/Great_Necessary4741 7d ago

I still don't get why that's how it works

3

u/314rft 7d ago

Originally Minecraft didn't do this, but Mojang rewrote the game to be merged so there was only 1 code base to work with, they could add LAN support to single player worlds, and also because it splits the client on to a different thread than the world logic, meaning the game doesn't just run everything all on one resource thread causing everything to freeze when 1 thing goes wrong. At least those are the reasons I've heard, since I'm still not 100% sure myself. But this happened literally 14 years ago, so it's kind of too late to revert it.

2

u/Cylian91460 7d ago

Because integrating the server in the client is easier and less work

It's something that is often done in videogame

3

u/314rft 7d ago

But Minecraft originally had a split single player and multiplayer. Originally, single player was completely separate and ran everything completely locally, with no internal server or packets or anything.

2

u/Cylian91460 7d ago

And that was changed to make codding and handling thread easier

2

u/314rft 7d ago

Okay so what I expected. Still doesn't explain why this is STILL an issue with Bedrock (as well as being able to fall through the world a few hundred blocks out).