Ok, first off. Phew that was a long read, just spent a good half hour of my life reading all of the UDP vs TCP thread and i feel like ive gotten a little smarter about it…
I like every other programmer it seems want to make a game.
If i come anywhere near what i want to do it will be an MMO style FPS game. Where your mouse clicking speed is of utmost importance. Like any other fps game out there.
What i want to do is have a bunch of players in the same world (MMO) shooting at each other and gaining levels. Where the shooting is done like any other FPS game where you aim your cursor at the player and click of a few rounds.
After reading all of the 5(or so) pages ive basically come to the conclusion that im not sure wtf i want.
UDP: good if i can loose data and gives minimal bonus in latency, going to need to do extra for messages that need to arrive, like gun shots and chat.
TCP: a hell of alot easier to implement, but can be a bitch b/c of lag (the whole lost packet #5 thing).
Well in my game i would probably be better of with UDP but i would need to make a reliable ack method of deliviering data as well for the gun fires and chat messages. As im hoping to have many players ive also understood it that UDP is better since it causes less performance issues on the server (less overhead, computation, memory, etc…)
I also read the article on Quake 3 networking model http://trac.bookofhook.com/bookofhook/trac.cgi/wiki/Quake3Networking it dosent seem like anything to reinventing but about the same things i was thinking of doing if i was to use UDP myself. But is it a good thing over the internet? They speak mostly of LAN play.
Also in the big UDP vs TCP thread someone said that they would use TCP for all their networking needs if they could turn of the packets in order thing, is there no way to do this? Are there no java classes that put just this functionality on top of UDP, would seem to me that there are way to many smart people in the world for this not to have been done.
Well this whole post can be summed up with, im confused. I want to make my little (maybe not so little) game but im stuck in the planning stage.
Thanks for your help