

PRO: Data becomes less time sensitive, as the devices would already have all the data they require to keep a game going without the other players. POTENTIALLY reducing energy consumption that occurs due to heavy network usage. Even this can be reduced by ensuring that all the games are going to be generated, and progress the same way by all the players. PRO: A heavy exchange of data would only occur when a player (re)joined, or a game was initialized. PRO: No central server or device required! No $$$ upkeep required. This allows users that have been dropped to rejoin the ongoing game with little or no disruption to other players or their own game.ĬON: Each player would actually be playing their own somewhat unique instance of the game, that would be linked with the other players to keep the games from straying too far out of sync with each other.ĬON: The supporting code can be extensive/complex and difficult to wrap your head around depending on what you want to achieve. That way if a connection is temporarily lost, slowed, or a player is dropped for any reason, other players will not be affected. I have been using it for awhile, It is similar to peer to peer, but it involves having the game hosted on all the devices simultaneously. and there are ways of getting around this limitation.įor now though there is a simple concept, yet complex solution, which you may wish to try. This will change with the eventual spread of v3.0 and higher. The others are are correct in that Bluetooth v2.0/v2.1 is not currently capable of support large data loads. it functions similar to normal network sockets once you know which device you want to connect to. And allow for a more local gathering/game.


I would imagine that Bluetooth would be the preferred method of connection, as this would be the least expensive to implement (No servers). So far this also seems true with Android, with the OS exposing methods for creating data connections over Bluetooth or the internet, along with enabling/disabling the respective hardware. However my more extensive experience with the '.net' languages on the windows mobile platforms, along with the windows platform, is that a good 75-90% of all the code required to create and maintain a Bluetooth or network data connection are maintained/supported with the OS or the libraries that would be need to access the hardware. Disclaimer I haven't done much with java and the android platform.
