PendingTicks can build up outside of simulation distance
PendingTicks aren't processed outside of simulation distance. This can allow players to keep generating more and more pendingTicks in a chunk outside of simulation distance until the game crashes whenever that chunk is loaded. It then would require a third party program to remove. This however takes some time. The most noticable effect would be an incredibly large world size.
Players could encounter this while being AFK at a farm and not realising that they are still half-loading another redstone contraption, which could easily produce pendingTicks and make the world unusable.
I would expect the game to stop the amount of pendingTicks scheduled from exceeding a certain amount, or for pendingTicks to be processed outside of simulation distance.
Steps to reproduce:
- place lots of dispensers containing a lava bucket on the edge of simulation distance (more dispensers means you generate them faster, so do lots to speed things up)
- put them on a fast clock
- afk for a while and then note the large increase in your world size
There are other ways to produce pendingTicks, but this is one of the simplest.
Created Issue:
PendingTicks aren't processed outside of simulation distance
PendingTicks aren't processed outside of simulation distance. This can allow players to keep generating more and more pendingTicks in a chunk outside of simulation distance until the game crashes whenever that chunk is loaded.
Not only can this crash worlds, but it can be used for exploits. Plants use pendingTicks to break, meaning people can force plants to grow by generating a pendingTick for that plant while it's outside simulation distance and then moving the player so that chunk enters simulation distance.
I would expect pendingTicks to be processed outside of simulation distance.
To reproduce this bug, take anything that breaks using pendingTicks and try to get it to break while it's outside simulation distance. It won't break until you load it.
PendingTicks aren't processed outside of simulation distance. This can allow players to keep generating more and more pendingTicks in a chunk outside of simulation distance until the game crashes whenever that chunk is loaded.
Not only can this crash worlds, but it can be used for exploit
s. Plants use pendingTicks to break, meaning people can force plants to grow by generating a pendingTick for that plant while it's outside simulation distance and then moving the player so that chunk enters simulation distance.I would expect pendingTicks to be processed outside of simulation distance.
To reproduce this bug, take anything that breaks using pendingTicks and try to get it to break while it's outside simulation distance. It won't break until you load it.
PendingTicks aren't processed outside of simulation distance. This can allow players to keep generating more and more pendingTicks in a chunk outside of simulation distance until the game crashes whenever that chunk is loaded.
Not only can this crash worlds, but it can be used for an exploit. Plants use pendingTicks to break, meaning people can force plants to grow by generating a pendingTick for that plant while it's outside simulation distance and then moving the player so that chunk enters simulation distance.
I would expect pendingTicks to be processed outside of simulation distance.
To reproduce this bug, take anything that breaks using pendingTicks and try to get it to break while it's outside simulation distance. It won't break until you load it.
PendingTicksaren't processedoutside of simulation distancePendingTicks can build up outside of simulation distance
PendingTicks aren't processed outside of simulation distance. This can allow players to keep generating more and more pendingTicks in a chunk outside of simulation distance until the game crashes whenever that chunk is loaded.
Not only can this crash worlds, but it can be used for an exploit. Plants use pendingTicks to break, meaning people can force plants to grow by generating a pendingTick for that plant while it'soutside simulation distanceand then moving the player so that chunk enters simulation distance.
I would expect pendingTicks to be processedoutsideofsimulation distance.To reproduce this bug, take anything that breaks using pendingTicks and try to get it to break while it's outside simulation distance. It won't break until you load it.
PendingTicks aren't processed outside of simulation distance. This can allow players to keep generating more and more pendingTicks in a chunk outside of simulation distance until the game crashes whenever that chunk is loaded.
I would expect pendingTicks to be processed outside of simulation distance. Or at least the game should stop too many building up.
To reproduce this bug, take anything that breaks using pendingTicks and try to get it to break while it's outside simulation distance. It won't break until you load it.
PendingTicks aren't processed outside of simulation distance. This can allow players to keep generating more and more pendingTicks in a chunk outside of simulation distance until the game crashes whenever that chunk is loaded.
I would expect pendingTicks to be processed outside of simulation distance. Or at least the game should stop too many building up.
To reproduce this bug, take anything that breaks using pendingTicks and try to get it to break while it'soutside simulation distance.It won't break until you load it.PendingTicks aren't processed outside of simulation distance. This can allow players to keep generating more and more pendingTicks in a chunk outside of simulation distance until the game crashes whenever that chunk is loaded. It then would require a third party program to remove.
Players could encounter this while being AFK at a farm and not realising that they are still half-loading another redstone contraption, which could easily produce pendingTicks and make the world unusable.
I would expect the game to stop the amount of pendingTicks scheduled from exceeding a certain amount, or for pendingTicks to be processed outside of simulation distance.
Steps to reproduce:
- place lots of dispensers containing a lava bucket on the edge of simulation distance (more dispensers means you generate them faster, so do 100 to speed things up)
- put them on a fast clock
- afk until the game crashes (won't take long with lots of dispensers)
There are other ways to produce pendingTicks, but this is one of the simplest.
PendingTicks aren't processed outside of simulation distance. This can allow players to keep generating more and more pendingTicks in a chunk outside of simulation distance until the game crashes whenever that chunk is loaded. It then would require a third party program to remove.
Players could encounter this while being AFK at a farm and not realising that they are still half-loading another redstone contraption, which could easily produce pendingTicks and make the world unusable.
I would expect the game to stop the amount of pendingTicks scheduled from exceeding a certain amount, or for pendingTicks to be processed outside of simulation distance.
Steps to reproduce:
- place lots of dispensers containing a lava bucket on the edge of simulation distance (more dispensers means you generate them faster, so do
100to speed things up)- put them on a fast clock
- afk until the game crashes (won't take long with lots of dispensers)
There are other ways to produce pendingTicks, but this is one of the simplest.
PendingTicks aren't processed outside of simulation distance. This can allow players to keep generating more and more pendingTicks in a chunk outside of simulation distance until the game crashes whenever that chunk is loaded. It then would require a third party program to remove.
Players could encounter this while being AFK at a farm and not realising that they are still half-loading another redstone contraption, which could easily produce pendingTicks and make the world unusable.
I would expect the game to stop the amount of pendingTicks scheduled from exceeding a certain amount, or for pendingTicks to be processed outside of simulation distance.
Steps to reproduce:
- place lots of dispensers containing a lava bucket on the edge of simulation distance (more dispensers means you generate them faster, so do lots to speed things up)
- put them on a fast clock
- afk until the game crashes (won't take long with lots of dispensers)
There are other ways to produce pendingTicks, but this is one of the simplest.
PendingTicks aren't processed outside of simulation distance. This can allow players to keep generating more and more pendingTicks in a chunk outside of simulation distance until the game crashes whenever that chunk is loaded. It then would require a third party program to remove.
Players could encounter this while being AFK at a farm and not realising that they are still half-loading another redstone contraption, which could easily produce pendingTicks and make the world unusable.
I would expect the game to stop the amount of pendingTicks scheduled from exceeding a certain amount, or for pendingTicks to be processed outside of simulation distance.
Steps to reproduce:
- place lots of dispensers containing a lava bucket on the edge of simulation distance (more dispensers means you generate them faster, so do lots to speed things up)
- put them on a fast clock
- afk
until the game crashes (won't take long with lots of dispensers)There are other ways to produce pendingTicks, but this is one of the simplest.
PendingTicks aren't processed outside of simulation distance. This can allow players to keep generating more and more pendingTicks in a chunk outside of simulation distance until the game crashes whenever that chunk is loaded. It then would require a third party program to remove. This however takes some time. The most noticable effect would be an incredibly large world size.
Players could encounter this while being AFK at a farm and not realising that they are still half-loading another redstone contraption, which could easily produce pendingTicks and make the world unusable.
I would expect the game to stop the amount of pendingTicks scheduled from exceeding a certain amount, or for pendingTicks to be processed outside of simulation distance.
Steps to reproduce:
- place lots of dispensers containing a lava bucket on the edge of simulation distance (more dispensers means you generate them faster, so do lots to speed things up)
- put them on a fast clock
- afk for a while and then note the increase in your world size
There are other ways to produce pendingTicks, but this is one of the simplest.
PendingTicks aren't processed outside of simulation distance. This can allow players to keep generating more and more pendingTicks in a chunk outside of simulation distance until the game crashes whenever that chunk is loaded. It then would require a third party program to remove. This however takes some time. The most noticable effect would be an incredibly large world size.
Players could encounter this while being AFK at a farm and not realising that they are still half-loading another redstone contraption, which could easily produce pendingTicks and make the world unusable.
I would expect the game to stop the amount of pendingTicks scheduled from exceeding a certain amount, or for pendingTicks to be processed outside of simulation distance.
Steps to reproduce:
- place lots of dispensers containing a lava bucket on the edge of simulation distance (more dispensers means you generate them faster, so do lots to speed things up)
- put them on a fast clock
- afk for a while and then note the large increase in your world size
There are other ways to produce pendingTicks, but this is one of the simplest.
relates to
relates to
Suggestion: for issues like this and MCPE-75966, maybe a possible solution would be to tick chunks that border the simulation distance once every so often, on a rotating basis. Like maybe once every 20 game ticks, one of the chunks that borders the sim distance would get a tick.
The preferred solution to this bug for many players would not be to reduce spawning in sim4 to only 44 blocks from the player. Only having mobs spawn 24-44 blocks from the player limits mob farms quite a lot, because the area of the donut plain 24-44 blocks around the player is more than 40% smaller than the area of the donut plain 24-54 blocks around the player that we had previously. It also limits the number of mobs players encounter travelling across the world surface, because the distance ahead of the player that mobs can spawn is almost 20% shorter with r44 than with r54.
A better solution might be to implement some form of "lazy chunks" that are ticked partially and/or infrequently around the outside of simulation distance. These could be used to despawn mobs that happen to escape simulated chunks in sim4, in conjunction with an instant despawn radius somewhere between 54 and 63. (I've also suggested a form of lazy chunks to deal with some other bugs related to sim distance borders, MCPE-47212 and MCPE-75966.)
Try this one: https://drive.google.com/file/d/1wA4bpEIkJ5hiSDY7sVGU0YXgFa5aEIL4/view?usp=sharing
Using MCBERepair I found 2 chunks with massive pendingTick buildups, one around 400, Y, 330 (chunk 24, 20) and one around 420, Y, 760 (chunk 25, 47). The latter had a couple of leftover items floating on the ground. I'm guessing that this was where you cloned the builds from, and when you destroyed the old builds it activated observers that were then destroyed before they could complete their deactivation, leaving behind the pendingTick (which is basically an instruction to do a specific block update) which could not be completed. This is related to issues like MCPE-50175, MCPE-50602, and MCPE-64409, MCPE-75966, and MCPE-89260.
After identify the problem chunks I used UME to delete the pendingTick data from them.
As for copy-pasting into a clean world, you can export structures using structre blocks or the structure command on Windows 10, and then use a behavior pack to load them into another world. However, each structure is limite to 64 x 256 x 64, so that would be a tedious process to transfer your whole world that way.
Bryce Woodall: you mentioned a large kelp plot. That could be the culprit. Kelp farms were a factor behind MCPE-50175, which led to the changes in kelp ticking that caused problems with kelp growth in 1.14. All of that should be sorted by now, but depending on how you built the farm or how you harvest there could be issues. Perhaps if pistons are extending across a chunk border to break kelp, causing water to try to spread across the simulation distance boundary --see MCPE-75966.
Matthias: some redstone components do use pending ticks, so it could be that in your storage area. As far different XBox consoles I don't know anything and I've never owned and XBox. But, I think it is safe to say these pending tick crashes relate to a combination of cpu power, memory capacity, and memory management. The info about sound seems important. I'm no expert but I think it points to memory overload, e.g. if the entire available RAM is churning through the pending tick data then attempting to load separate process for the sound breaks it.
Please provide numbered steps to reproduce using a specific example. A screenshot, video, or world upload is also encouraged.
I can't tell from you description how this would impact a player who isn't trying to break the game.
It allows people to crash realms/servers easily and forces you to remove the pendingTicks using a third party program. I'll upload a test world or add some steps or something.
AFKing in the wrong location can cause pending ticks to build up. Using complex redstone devices can cause pending ticks to build up.
The issue is that only 100 pending ticks are processed during a game tick in a chunk, and it isn't hard to accidentally make something that generates more pending ticks than that per game tick. A full chunk farm with 256 plants will generate 256 pending ticks if a player automates it with redstone so they all break in the same GT. If someone builds a farm across chunk borders and then AFKs so that only part of the farm is loaded, they can generate pending ticks in the part of the farm that is not loaded.
Thus pending ticks build up faster than they are processed. If it goes on for too long, the pending tick record gets so big that it lags the server whenever it is read from or written to the database. Even if you take care of the issue causing the pending ticks, the problem of lag will prevent the game for processing all the ticks.
The fix is trivial to implement. Limit the pending tick queue in a chunk to something like 4096 ticks. If there are more ticks in the queue than that, the game should silently drop a pending tick request.
Thanks 77Tigers and Reed Cartwright for the updates. I think the issue is more clear now.
I have had MCPE-47212 linked as related to this ticket because it is also a kind of buildup to overload that occurs at the border of simulation distance. I suggested on that ticket that it might help with these issues to tick chunks that border the simulation distance on a rotating basis--for example, once every 15-25 game ticks (variable to limit exploits), tick a chunk that borders the simulation distance.
There are lots of villager-POI linking issues in Bedrock at the moment, and I'm not sure that MCPE-47212 is related to this one. I can run it by Yodalf and Hey Old Guy to see what they think. They know the village system better than I do.
Could we please see an example .mcworld?
ok
Having a bit of trouble uploading the world. I'll try again later. Hopefully the issue will go away.
Turns out minecraft didn't export the world properly.
Uploaded an example world. It uses a flushing mob farm that's partially outside simulation distance instead, but it just shows how easy it is for farms to accidentally create a build-up of pending ticks.
You may need to afk for a bit.
77Tigers, thanks for providing the world! Could you please give us some more info, maybe it was on realm? Could you upload a video?
We have been trying to repro but after 2 hours world is just 3,5MB.
Same thing happened to me. Server hosted on a 3rd party website. Had an XP farm with a cobble generator, carpet generator, and furnaces. The system did not have a true "off" switch, rather only an auto-mode, and basically every time the reserves of supplies got low it would activate circuits and refresh them.
I afk'ed for a little over an hour at a nearby creeper farm (no redstone) and when I came back I could not visit the chunk without crashing the server.
Thank you for your report!
However, this issue has been temporarily closed as Awaiting Response
Is this still an issue in the latest version? If so, please make sure the ticket description contains the following information:
If your ticket does not look like the example given here, then it's likely to be closed as incomplete.
This ticket will automatically reopen when you reply.
Quick Links:
📓 Issue Guidelines – 💬 Mojang Support – 📧 Suggestions – 📖 Minecraft Wiki
Cleaning up old tickets: This ticket had been set to 'Awaiting Response', but has not received a response from the reporter (~3 months+) so is being closed as Incomplete. If you feel this is still a valid issue then please comment, or create a new ticket following the Issue Guidelines which includes steps to reproduce the problem.
For any account or purchasing related issues, please contact Minecraft Customer Support directly, as we cannot assist with those here at the bug tracker.
Quick Links:
📓 Issue Guidelines – 💬 Mojang Support – 📧 Suggestions – 📖 Minecraft Wiki