Developing a Generic Lobby System... Should I add it to the Asset Store?

A couple current Projects I’m working on require a Lobby System. I’m developing a fairly Generic Lobby System that can be used as the foundation for any genera of Game. It will have a GUI that can be totally customized or completely redone if your game requires a special GUI. All Networking will be confined to a Single Network Manager class so it will be very easy to take out the Networking and include your own Networking if your using a specific Network Library or engine. It would come with Player.IO Networking as well as maybe a Lidgren Networking example as well.

The Lobby States will include Lobby, Game Lobby, and Game. Lobby will be the main Lobby where you select what game you want to join. The Game Lobby will be a Lobby for the specific Game you picked where you will select which team you want, the GM will be able to select all the game specific options, and there will be a chat where you can talk with everyone in the Game. Then the Game will be the actual game your going to be playing.

All Source Code will be commented and the system will feature many configs that can be set from the world editor. The Package would also include a basic working game example (Space Combat Game) which will use the Lobby System which could be used as the basis for your own game or as an example on how to get the Lobby System setup.

Would any one be interested in something like that and if so what would be realistic price for it?

Update:

I’ve had a chance to get some work done on the Lobby System so here is a quick run down of Current Classes:

Main Systems:

_Lobby.cs - this is the Main Lobby System. It will be responsible for storing the full Complete Listing of games and other Lobby functionality.

_Network.cs - This class will contain ALL networking functions/methods in order to be able to easily redo the Networking for other Networking Libraries/engines. We will officially Support Player.IO, Lidgren, and I’m in talks with the Developers of another well known Networking Engine to support their engine as well. Others may be added to the list as this system gains users but for now those are the main 3 that will be supported.

_GUI.cs - Here is the main GUI manager which is responsible for displaying the different GUIs. This class contains the only call to OnGUI.

GUI classes:

_LobbyGUI.cs - The main Lobby GUI class. I’ve separated the Lobby System into 2 classes. The main System class which is detailed above and this GUI class which will be responsible for displaying the GUI. I’ve done this so that developers can have full freedom of customizing or completely redoing the GUI with out worrying about touching the important code for running the Lobby. This class will have most options for customizing the display available in the Unity Editor so that the code won’t have to be touched much. Only the more advanced customizations will need to be coded.

C# Objects (Objects are normal C# classes that CAN NOT be added to Game Objects in Unity3D):

Game.cs - This is a class for holding information about a Game. It’s constructor takes a Dictionary containing all the information for a specific game. The game then get’s added to a list in the Lobby System for displaying in the Lobby.


I am really looking for ideas on what features should and shouldn’t be added to this system!

Hi I am exactly looking for something like you are describing: custom GUI for the lobby part that seems to be difficult to do with other existing assets.
Did you upload this project? Are you still or have completed working on it?
Thanks.