Looking for a developer knows how to deal with Packets

146344

Feedback score
0
Posts
22
Reactions
1
Resources
0
I'm having a problem with laggy players mainly when they are lagging their packets accumulate and then get processed at once and that causes unfair reach or fast move/teleporation.
I suppose the fix is if a player doesn't respond to a specific packet within a set amount of time it cancels their attacks/packets.

I know, it's all about Minecraft protocols and how it works.
But my server targets Middle East players and some of them their ping is not stable & bouncing, so thats will ruin the PVP experience for those who aren't lagging so that's why I'm looking for fix!

I'm not familiar with packets and how it works exactly so I'm looking for help from those who are experienced at this field. Maybe it's possible to do this with ProtocolLib?
THIS WILL BE PAID PROJECT for sure!
 
Type
Requesting
Provided by
Individual
Last edited:
PebbleHost
High performance, consistent uptime and fast support. Minecraft hosting that just works.

146344

Feedback score
0
Posts
22
Reactions
1
Resources
0
So you want to store time that packets are sent, and when packet is received in return and the delay is too large, it cancels the packet?
In simple way thats correct but, I've tried same as your logic using PacketPlayInPosition (ProtocolLib)
I figure out when the player is lagging the delay will be like 0 0 0 0 0 1 0 0 0 0 1 in milliseconds and then these delayed packets will get processed at once.
Normal player delay pattern should be like 49 50 49 50 49 50 49 50 50 in milliseconds.

I've tried to cancel the delay packets that are less than or equal 1 and then teleport the player to most recent successful packet location (which was the delay greater than 1)
That worked
but it seems not efficient.
Why I've choosed to teleport the player to most recent successful packet location rather than cancel the packets? because I've tried to cancel the packets but there are no result.

But we have a problem since my server targets Middle East players we will be facing tons of laggy players types...
Some of them their ping is kinda normal but in PacketPlayInPosition they are getting 0 or 1 delay sometimes (not spamming like those who are terrible lagging)
So if we cancelled every single packet that are less than or equal 1 that will affect some normal players.
I'm thinking if the delay is less than or equal 1 repeated atleast 5 times for example 0 0 1 1 0 it cancels the delayed packet and teleport the player to most recent successful packet location, but I don't know how to do it.

Maybe there is another logic better than this, so any ideas?
 
Last edited:
Top