I have have a small prototype game in java where players can build their own levels, and then set themselves up as a server to invite other players into their world. All in all its been a good introduction into the world of networking.
For the final product however, I have been thinking about expanding this so that I can have a central server with a central world. This would allow players to meet up inside the central game world, and then invite each other into their own worlds or whatever.
Ideally, when players go into the world of another player, then all of them will be effectively disconnected (except perhaps from a universal chat channel) so that the player whos world the group entered becomes new server to the the other players. This set up will hopefully give the game the open ended continuity of an MMO, but also keep the traffic on my server at a minimum since players will primarily be off hosting their own areas.
I am considering that its highly likely that the average player will not have a static IP – is this a problem? Are there security risks with delivering the connection information of one client to another? Are there any other problems or impossibilities I should be aware of before start attempting this?
Interesting idea, I looked at a similar concept for a couple of game projects.
I see three big problems:
None of these are totally insurmountable but it will be a challenge to get it all working smoothly….