I am thinking of creating a multiplayer arcade game, where game info will be maintained on the server somewhere on the Internet.
I wonder whether it's realistic to make phones exchange information with the server in real-time.
I was thinking of opening an HTTP connection on the beginning and exchanging info via it. However, I'm not sure that communication speed would be fast enough and reliable enough.
Has anybody seen any example of Internet-based more or less real-time MIDP multiplayer game?
Have you created a similar one?
I wouldn't like to use sockets if there is another solution, because it will limit the number of supported devices.
Also I'm not sure that even sockets will make the communication fast enough.
Has anybidy tried?
Well, first of all, I am not an expert. This is all about my own experience.
I would say the http is far from real-time, especially because the connection setup time. If chunked or even persistent http connection could be used, then situation may be a lot better, but unfortunately wap gateway usually will not forward http requests and responses until it get the whole req/res. Sockets are sure a lot faster, but not sure if it's fast enough for your requirement. But if you need real-time, you definitely go for sockets. Ok, currently less devices support socket, but http is often found problematic in MIDP, and one kind of device works cannot asure you other devices work.
bvolk On the series 60 phones ... you MUST setup an alternative gateway to have reliable HTTP connections.
Our game startup is only a few seconds.
Do I understand correctly, then when having an alternative gateway (not WAP) you spend only few seconds to establish HTTP connection and then just hold it, transferring chunks of data from time to time?
What your typical latency after you established a connection?
You must have an alternative gateway for HTTP on Series 60 because the WAP gateway locks up after about 13 HTTP I/O requests.
We see latencies of 6 to 8 seconds on the AT&T network. Transfer is about 14kbps measured.
The art is taking that and coming up with a compelling design.
I have proposed a talk on this and other J2ME subjects at the upcoming CGDC conference.
The product we are working on for release to the telcos in the fall is called SpellStrike(tm) ... it will be bundled with a chat/IM client called IconMessenger(tm) that has it's own chat room protocol (for setting up games) as well as interoperating with AIM and MSN (agreements with those two services pending).
We're targeting Series 60 phones at this time because the 3300 Series 40 phone we have has a major bug ... you CAN'T READ THE QWERTY KEYBOARD.
Is it true that even if the "internet" access point is assigned as the default access point for an app, the app will continue to use the old WAP access point if a WAP connection is open at the time the app is started?
If so, then to ensure that the correct access point is used, the user would have to open the browser, disconnect the WAP connection, and then start the app, right?