mojira.dev

Benjamin Saulon

More than one avatar was detected! There might be multiple accounts sharing this same name.

Assigned

No issues.

Reported

BDS-22740 Setting online-mode to false does not allow offline players to join the server Awaiting Response BDS-18632 Movement corrections are not smoothed out on the client Community Consensus MCPE-122609 Server authorative block breaking behaviour when disabled in StartGame Incomplete MCPE-109220 Full Keyboard Gameplay can make pitch above 90 (or below -90) Incomplete

Comments

I would also like to note that this issue did not occur on the previous version of BDS for 1.21.80.

It seems that corrections are now smoothed in .81

This issue occurs in 1.20.14 as well.

BDS w/ server-auth-with-rewind: https://streamable.com/4p7yct

External Servers w/ movement predictions & corrections: https://clipchamp.com/watch/Jo8Rpjifn8m 

Yes, this still affects the current version v1.20.1

In this case, commands aren't being used - this issue is directed at MC:BE's protocol.

After being tested in a production server with 50+ players, PS4 players got kicked by an anti-cheat for not responding to a NetworkStackLatencyPacket sent by the server, regardless of sending back a RakNet ACK proving they received the packet.

Tickets to reference:

KEY:
tD -> client tick difference (measured with PlayerAuthInputPacket) of the last response to NetworkStackLatency packet and current client tick
tACK -> received RakNet ACKS for NetworkStackLatencyPacket
lMS -> latency in milliseconds measured with NetworkStackLatencyPacket - 0 because it is never sent back

1. https://tickettool.xyz/direct?url=https://cdn.discordapp.com/attachments/713626772180303913/837791720313454662/transcript-closed-2190.html

2. https://tickettool.xyz/direct?url=https://cdn.discordapp.com/attachments/713626772180303913/837768758788489216/transcript-closed-2193.html

3. https://tickettool.xyz/direct?url=https://cdn.discordapp.com/attachments/713626772180303913/837821185890582589/transcript-closed-2191.html

Reproduction Steps
1. Send a NetworkStackLatencyPacket to a PS4 client(timestamp=any, needsResponse=true)
(Optional) Make it so the client sends back an ACK to confirm when they receive the NetworkStackLatencyPacket
2. Wait until all matter in the universe is gone for the client to respond back with NetworkStackLatencyPacket.

Steps to reproduce:
(Server software used was PocketMine-MP, you could use any other server software and still get the same result)
1. When sending StartGamePacket, set the PlayerMovementType to 1 (or 2, doesn't matter), and ServerAuthoritativeBlockBreaking to false

2A. If you have server auth block breaking implemented, go into game and view what packets are sent - no InventoryTransaction packets are sent (they should be, considering server authorative block breaking is disabled)

or

2B (shown in video). Enjoy the unread bytes mess when breaking blocks

Video: https://streamable.com/mlls9w
MC Ver: 1.16.220