Jump to content
  • Advertisement
Sign in to follow this  
Instruo

Game Hub Theory Question

This topic is 4826 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Okay, this might come out kinda weird (still processing the thought myself ;), so hopefully I'll be able to convey what I'm looking for. Say you were designing a game hub of sorts that was able to do what, say, Battle.Net does, but with a variety of games (more like Zone.com or the old BBS's used to do). So, from the hub, players could prepare a multi-player game and, when all was ready, it could launch the game for all players, handle creating the game, connecting, etc. SO, what are suggestions on how this might be accomplished? The developers of the individual games can be expected to do some work to allow the hub to interact with their engine, but this should be kept as lightweight as possible. Basically, I think what I'm looking for is: what pieces/interactions do you think would be necessary to accomplish this task? how would you suggest to overcome things like language differences? (since I'm guessing that a serialized C++ object != a serialized C# object != a serialized Java object, etc) Anyway, your wisdom and suggestions on how you'd personally go about this would be greatly appreciated. Thanks!

Share this post


Link to post
Share on other sites
Advertisement
Really, all you need to do is make the hub program read a config file for each game it can launch, and then have game developers put in command-line parameters for starting a server and for connecting to one.

The config file might look something like: (as an ini file)

[server]
Program=%GameDir%\Bin\Server.exe
Params=-mod $mod$ -port $port$ -map $map$
LaunchClient=True

[client]
Program=%GameDir%\Bin\Game.exe
Params=-server %ServerIP% $port$ -mode $mod$ -team $team$

[$mod$]
Chooser=Server
Type=Directory
Where=%GameDir%\Mods
HasFile1=.\Mod.Info

[$port$]
Chooser=Server
Type=Integer
Min=1
Max=65535

[$map$]
Chooser=Server
Type=File
Mask=*.map
Where=$mod.dir$\Maps
Extension=False

[$team$]
Chooser=Client
Type=DropDown
Option1=Red
Option2=Blue
Option3=Green



[Edited by - Extrarius on September 23, 2005 12:52:51 AM]

Share this post


Link to post
Share on other sites
You probably know this, or I may be mistaken, but most games (with the exception of mmo's) are basically matchmaking services, they do not actually send the data, instead they gather ip addresses in which the hosting player then connects with the platers and all data is sent through that player. - Or so I think (e.g. StarCraft)

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!