Closed eddie-englund closed 3 years ago
Before placing blocks:
After placing:
Then leave and rejoin:
I can second this... But in addition to that, this issue has existed as long as I can remember. Pre 1.8?
I've never used any click helpers before so I just found out about it and I haven't found anything when I googled it, so I simply assumed it was a papermc thing considering that there's no issue tracker at mojang for it.
Is the click helper a client side mod? If so its probably not supported by paper as paper is built for vanilla Minecraft client. I think this cause block place is faster than paper expects and thus chunk/worldsave was not triggered properly/on time.
You could use schematica printer, and this will happen. You can also jitter click/use autoclicker and place blocks and this will happen. It's not just a single method
The above you have mentioned are mods. And I have stated previously (maybe not clear) that all mods in general are not supported by paper/spigot as it is a plugin based platform.
Jitter clicking is most definitely not a mod, unless you have a prosthetic pointer finger.
do you experience tps skipping or lag?
Lag isnt retroactive in my experience for this issue. Better performance obviously gonna prevent ghost blocks(or reverse ghost blocks technically). However in this issue, it is less of a factor. It still occurs on a 1player 20tps server with 20 chunks loaded. I'm thinking on the side of packets being sent then maybe not recieve or canceled and the server isnt updating the client
you are on paper 103 build, did you try the latest build of 143?
I've had this issue on versions as old as a few days ago. Can't check as of now but im in that build number ball park.
I still believe that it is something to do with the server maybe not receiving the packet, or canceling it.. either way the client isnt getting updated properly and therefore the ghost blocks are there. (Reverse ghost blocks)
ok sure, but did you change the max-auto-save-chunks-per-tick
or async-chunk
configs in paper or by any chance disable/change world save configs?
100% default config. But like I've said this isnt a new issue. This roots back to pre 1.8 and has existed on every version since.
I see, i don’t experience any of those issue tho.
Unfortunatly that helps ghost blocks from mining, not placing.
very sure it’s because of packets lost due to inconsistent or slow network (different from server performance). Can try change network compression threshold in server.properties
you are using your own computer to run the server?
I've done both. Dedi and personal. But the issue doesnt seem to be caused by lag. As there can be none and this will still happen. Seems like something paper/spigot needs to fix/prevent. Now connection lag maybe. But on the side of packets not being sent/recieve maybe. Not actual ping which may result in dropped packets and that's not a fair thing to blame on paper.
i suppose the short term fix is to limit clicks per second. And if it has not been fix since pre 1.8... not sure much can be done.
if you ping your server from separate network, do you experience packet loss?
I havent tested my ping that in-depth, but my latency is around 15 to 50. My only thing I can think of is updating the client magically on that packet drop or cancellation or whatever is happening. And the issue IS NOT too bad or game breaking. It is annoying at most. Maybe sending a block radius update when the client sends a keep alive. I don't know the best way to do this efficiently. But there is a way.
hmm ok. Tho not latency is just a small part of looking at network reliability. Also it’s not game breaking as you said, so that’s prob why it want fixed for so long.
Yeah. At this point I'm trying to think of a solution. And all I can think is to update the client. Now how that is does is the real issue. Checking for inconsistencies between the client and server then correcting, may be a option.
I've noticed ghost blocks like this can be caused with a totally vanilla client when placing lots of scaffolding (at a normal pace) if the player has a high ping. But like other comments have said, even just jitterclicking to place ordinary blocks rapidly can cause this. It's a problem even on vanilla servers since this is basically just a client desync issue, I'm not sure what could be done about this on the server end.
Alright let me clear some things up:
The tests that I did were 100% only me on the server with a ping on 9-15. I tried simply just starting a clicking script and this made half the blocks get placed and somehow I actually ran on these blocks which makes no sense, because the shouldn't be able to only exist on the client-side. Second I also tried without a script just right clicking really fast and the same issue appeared. Also, yes this might be a vanilla issue, but again since I didn't find an bug issue on the mojang forums I assumed it was a spigot/paper issue.
How fast is your clicks per second? Minecraft server runs at 20 ticks per second. Means that client and server only transmit 20 packets to each other. There is a possibility that due to this limitation of 20 packets, minecraft was unable to update the block place fast enough. (if your click per second is more than 20)
I've used the default speed (10 block/s)
Spigot/Paper has this
if (!checkLimit(packetplayinblockplace.timestamp)) return; // Spigot - check limit
in the block place handling (PlayerConnection.java, Line 1393). So when the client is trying to place too many blocks in some time period it is just cancelled but the client is not informed.
You could lower the incoming-packet-spam-threshold
in the paper.yml, so the client can send more packets until block placements are ignored.
Lowering it to 150 helped for us, tho the default value certainly breaks rare, but still decently normal player behaviour (and is also a lot less forgiving than Spigot's old hardcoded value)
I had a similar issue, but it actually happened because I set the incoming-packet-spam-threshold
very, very high thinking a higher number would result in allowing the clients to send more packets per second. It's not really clear which threshold is being set.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
I'd say the way forward is then to discuss just upping the default value?
I think so yes.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
This issue has been automatically closed because it has not had activity in a long time. If the issue still applies to the most recent supported version, please open a new issue referencing this original issue.
This is still happening for me on 1.18.2
You can already mitigate this using the servers config
You can already mitigate this using the servers config
What do I need to change and what file is it in?
I assume this incoming-packet-spam-threshold
has been renamed to incoming-packet-threshold
in newer versions of PaperMC now.
Actually what is the unit here, should I increase it or decrease it ?
What behavior is expected:
Block placing on client side to be in sync with server side.
What behavior is observed:
about every second to third block when I was using tweakaroo to place blocks quickly were only rendered client side (they were intractable). However, when the chunks were unloaded and the reloaded every second to third block went away.
Steps/models to reproduce:
Use concrete powder and tweakaroo and enable the fast right clicking. Walk straight forward and place blocks. Then leave area and return (or leave and rejoin)
Plugin list:
EssentiallsX Worldedit Asyncworldedit vault tab ShulkerRespawner
Paper build number:
git-paper-103 1.15.2