the time, and there was no standard 3D API for the consumer market. After completing VQuake, John Carmack vowed to never write a proprietary port again, citing his frustration with Rendition's Speedy3D API. QuakeWorld To improve the quality of online play, id Software released QuakeWorld in December 1996, a build of Quake that featured significantly revamped network code including the addition of client-side prediction. The original Quake network code would not show the player the results of his actions until the server sent back a reply acknowledging them. For example, if the player attempted to move forward, his client would send the request to move forward to the server, and the server would determine whether the client was actually able to move forward or if he ran into an obstacle, such as a wall or another player. The server would then respond to the client, and only then would the client display movement to the player. This was fine for play on a LAN, a high bandwidth, very low latency connection, but the latency over a dial-up Internet connection is much larger than on a LAN, and this caused a noticeable delay between when a player tried to act and when that action was visible on the screen. This made gameplay much more difficult, especially since the unpredictable nature of the Internet made the amount of delay vary from moment to moment. Players would experience jerky, laggy motion that sometimes felt like ice skating, where they would slide around with seemingly no ability to stop, due to a build-up of previously-sent movement requests. John Carmack has admitted that this was a serious problem that should have been fixed before release, but it was not caught because he and other developers had high-speed Internet access at home. After months of private beta testing, QuakeWorld, written by John Carmack with help from John Cash and Christian Antkow, was released on December 13, 1996. The client portion followed on December 17. Official id Software development stopped with the test release of QuakeWorld 2.33 on December 21, 1998. The last official stable release was 2.30. QuakeWorld has been described by IGN as the first popular online first-person shooter. With the help of client-side prediction, which allowed players to see their own movement immediately without waiting for a response from the server, QuakeWorld network code allowed players with high-latency connections to control their character's movement