Difference between revisions of "WormNET (Worms Unlimited)"
From Worms Knowledge Base
(→Running games: Continuing games from a replay) |
(→Protocol) |
||
Line 7: | Line 7: | ||
Many of the ideas stated here were taken from the way Sallos is done. Sallos is an Internet gaming lobby, currently featuring IRC-like chat, and some games: a Gunbound clone, Chess, TetriNET and MasterMind. The network code is scalable and quite well-organized (considering that Sallos is a network application in the first place). The whole system connects to one cental server, which hosts the chat and all of these games as one single service. The system utilises a built-in smart update feature, that automatically updates the client software by downloading patches from the server (again, through the very same protocol). | Many of the ideas stated here were taken from the way Sallos is done. Sallos is an Internet gaming lobby, currently featuring IRC-like chat, and some games: a Gunbound clone, Chess, TetriNET and MasterMind. The network code is scalable and quite well-organized (considering that Sallos is a network application in the first place). The whole system connects to one cental server, which hosts the chat and all of these games as one single service. The system utilises a built-in smart update feature, that automatically updates the client software by downloading patches from the server (again, through the very same protocol). | ||
− | == | + | == Protocol == |
− | + | Currently Wormnet uses IRC and HTTP. A proper protocol for gaming sould be used, a example of this protocol is | |
+ | [http://www.standingstonegaming.com/docs/ssg.pdf Open Gaming Protocol] | ||
== Ranks == | == Ranks == |
Revision as of 18:26, 8 April 2007
(note: unlike the rest of this wiki, bits of this page were edited by Splongul)
Contents
Introduction
I believe that I'm not the only one who's thinking that WormNET could be much better. (todo: insert more cricitism here). To implement even a part of the ideas I stated here would mean rewriting most of the network code from scratch.
Many of the ideas stated here were taken from the way Sallos is done. Sallos is an Internet gaming lobby, currently featuring IRC-like chat, and some games: a Gunbound clone, Chess, TetriNET and MasterMind. The network code is scalable and quite well-organized (considering that Sallos is a network application in the first place). The whole system connects to one cental server, which hosts the chat and all of these games as one single service. The system utilises a built-in smart update feature, that automatically updates the client software by downloading patches from the server (again, through the very same protocol).
Protocol
Currently Wormnet uses IRC and HTTP. A proper protocol for gaming sould be used, a example of this protocol is Open Gaming Protocol
Ranks
Is it just me, or are those things broken? I told you IRC wasn't a good base for network gaming.
Server-to-server connections
Instead of making the players connect to each other, it would be better to make them connect to the server, which will route the data across other players. This will allow onybody to host a game, avoiding any router / firewall problems. (I mean, almost 10% of the games created on WormNET have the host's IP address of something like 192.168.2.15)
This will also reduce the number of network drops - if the host drops out, the game will go on, and the game will close as soon as the round is finished.
In the case somebody wants to, there would be the possibility of the traditional hosting method, for the players who can do it. Alternatively, there would be Direct Ip and LAN games, in the case Wormnet is down.
Running games
Often it is desired to join or spectate a game already in progress. I'm not saying that this will require a new team to be added directly to the field - the player will be able to simply spectate the game until the round is finished, after which he can add his team.
As well, an ability to show players that are currently playing a game. Combine this with the ability to locate a player in all running games, and it should eliminate the chaos of trying to find your buddy on WormNET.
A checkbox/button could be added to the lobby to toggle showing already running games.
Also, there should be the possibility of continuing running games from a replay file. For using this option, all players would have the same replay file and all would have to agree with it. Before starting, the game would check the replays of all players to check if all the replays of them are the same and if they are not corrupted.
Single Channel
Who needs multiple channels anyway, if you can't join more than one at once anyway?
Map cache
With the new maps, the file sizes for those maps would increase significantly. Some kind of map cache, which would store all downloaded maps in a folder (and perform clean-up occasionally). Then, when a map would be downloaded from the server, the client would compare hashes of the map with the maps in the cache - thus avoiding re-downloading of the map.
Buddy List
...
Lobby Screens
...