Talk:Reinventing the square wheel

Maybe I'm showing my lack of experience with network programming, but is it really fair to describe online gaming developers as acting inappropriately by using UDP rather than TCP? I could be wrong, but it strikes to me as being a bit presumptuous.

Typically, games use UDP because not every packet is essential, and therefore trading speed for reliability is a viable solution. 128.154.44.44 18:56, 13 July 2006 (UTC)

I'm pretty sure that last paragraph against game devs is PoV. Most, if not all, real time online games (RTS, FPS, etc.) use UDP because they don't need every packet. Instead of using a system which checks for lost packets and retransmits them (which would introduce lag, especially when more than two players are involved, because the server would have to wait for any single player dropping a packet), they are simply designed to not need every packet. This is why in many games people with unreliable or slow connections are seen to 'teleport' around. Some games attempt to make up for lost packets by predicting motion (avatars will continue running in the last direction they were moving then suddenly move to a different location and continue moving), while some simply stand wherever they were. Anyway, I'm not changing it but I'm adding PoV to the article.--Soban 15:20, 1 August 2006 (UTC)

UDP is definitely better for many games. TCP is stream-based; if something is lost, communication is halted until everything eventually arrives. A retransmission of old positions is a complete waste when more recent positions could already be underway, as is often the case within a round trip. Even if games would assume the underlying network protocol does the impossible job of guaranteeing perfect connectivity UDP would be superior for the most part. TCP has its uses, but there's no way it can beat UDP in this area. --62.194.128.65 00:00, 17 August 2006 (UTC)

I also agree. Whoever wrote this last bit hasnt done their research. I think it should be removed. --Havoc8844 02:22, 18 August 2006 (UTC)

The insight one must get is that the game's (high level) network engine cannot rely on guaranteed (low level) message transportation. It's better to use fast transportation (UDP) than guaranteed (TCP) in a network game.

On a broader level, this entire entry is substandard. Given "reinventing the [square] wheel" not being an especially clever play on a cliched cliche, no discussion is necessary to explain it. The article appears to be a vehicle for someone's ego! Suggest rewrite from scratch as maybe a paragraph unless there are some interesting historical uses of this expression instead of contrived examples. --doug123w 22 Oct 2006

I was bold and removed the part about UDP packets as it appears to be false. I agree with doug123w as well, as most uses of this term are in Wikipedia itself (at least according to Google). 145.97.229.177 11:13, 1 November 2006 (UTC)

While it is true that TCP is not a good choice in certain types of games, such as FPS, the "reinventing the wheel" phenomenon happens frequently, since the correct solution would be to implement some sort of real time message oriented protocol and put the application messages on top. Since everyone instead uses their own proprietary protocol, it can be shown that everyone is "inventing their own wheels". It should be noted that SCTP should provide a reasonable service to game developers, so a similar paragraph could be added once SCTP becomes popular enough (like being added to the windows network stack). 201.213.16.47 20:40, 22 April 2007 (UTC)