I was thinking of the lag interpolation, that is to mask the packets of lost data with a lerp between the old position and the new one,I tried to implement it in my game, but I think I’m making holes in the water
I'd do this at a very low value (like 0.05) but also send "simulate control" events to the other clients. That way, even if the movement is a bit off, it will compensate for that.
"Left Arrow is down" then send Event 1 with "Left"
"Right Arrow is down" then send Event 1 with "Right"
"Up Arrow is pressed" then send Event 1 with "Up"
On Event 1
>Photon.EventData = "Left" then Simulate Control "Left"
>Photon.EventData = "Right" then Simulate Control "Right"
>Photon.EventData = "Up" then Simulate Control "Jump"
Every tick lerp Player.Position to Player.NewPosition