I've been reading this article:
http://www.gamedev.net/reference/articles/article1138.asp
(Really good article btw for anyone looking to start internet games programming)
Anyway, I was curious about this statement on out of order packets and using delta packeting:
"Out of order and missing packets. The trick here is to only treat one symptom and ignore the other. If you number your game packets (when we talk about packets here, I mean game server frame packets - IE the packet that contains a complete frame update from the server) as they go out to the client, the client can know if it gets an out of order packet. The simplest solution is to dump it, and treat it as a missed packet entirely. Doing this is a must if you are dealing with deltaed packets, since the delta values in the packet refer to the frame that came before."
I don't understand how you can simply drop an out of order packet when using delta-time since it would make the game go out of sync.
Also, how can you ensure that the client receives essential packets (such as a new object being created) without having to acknowledge every packet since that would reduce back to TCP?
Thanks in advance
http://www.gamedev.net/reference/articles/article1138.asp
(Really good article btw for anyone looking to start internet games programming)
Anyway, I was curious about this statement on out of order packets and using delta packeting:
"Out of order and missing packets. The trick here is to only treat one symptom and ignore the other. If you number your game packets (when we talk about packets here, I mean game server frame packets - IE the packet that contains a complete frame update from the server) as they go out to the client, the client can know if it gets an out of order packet. The simplest solution is to dump it, and treat it as a missed packet entirely. Doing this is a must if you are dealing with deltaed packets, since the delta values in the packet refer to the frame that came before."
I don't understand how you can simply drop an out of order packet when using delta-time since it would make the game go out of sync.
Also, how can you ensure that the client receives essential packets (such as a new object being created) without having to acknowledge every packet since that would reduce back to TCP?
Thanks in advance