From: Miguel A. B. L. <mig...@ho...> - 2003-04-29 07:34:10
|
>In my experience, TCP is not practical for realtime games. Works great for >chess or strategy/turn based games and chat, but a realtime MMORPG >requires timely packet reception and therefore UDP, otherwise everyone >will get seriously out of synch with one another (or you'll be in a nearly >perpetual state of hang). UDP packets are dropped if they get too old, >where TCP will always try to reach their destination no matter how old they >are (and will be resent if no response comes). Arianne is not a realtime game but turn based. I still think that TCP could do really good. Anyway, I recommend that you forget about geek features and do a real game, unless you want to repeat all my steps of course :D >For example: >Bob's packet fails to arrive >Jill updates >Tom updates > >in TCP, Bob is 1 packet out of synch which you wait to arrive before moving >on (if you skip it, you're basically using a high overhead UDP, because >you're still required to receive the packet and acknowledge it). >Essentially you have to hang the server waiting. > >in UDP, Jill and Tom move and Bob is skipped. > >Yes, that means that if Jill and Tom are beating on Bob, Bob won't be >fighting back (unless fighting is automated), but it's that, or ruin Jill >and Tom's fun because of Bob's crappy connection. That is wrong, Arianne server don't wait for laggy players, that would be really stupid. Simply u will recieve the package out of time and just that... not server problem, this is your problem. Anyway i have to agree that it is safer to do in UDP... but... Apart UDP tech will requiere that you handle the packet fragmentation, forget about just sending to the stream... packets in UDP has a limited size. _________________________________________________________________ The new MSN 8: smart spam protection and 2 months FREE* http://join.msn.com/?page=features/junkmail |