2004-09-03 16:25:37 UTC
Firstly, just a little note on JXTA. I've have trouble finding the source code (there's broken links all over the place), but P2PSockets (http://p2psockets.jxta.org/) seems like it was almost built for our project.
Anyway, by specialized packets, I'm almost leaning towards an SQL-style language for the game. Instead of sending out say a CivilizationStatusUpdate object from the server, the server would send out a simple string something like "UPDATE civstatus SET money=50 WHERE civid=4" or something like that.
Obviously, we wouldn't have to use such generic stuff as SQL, and we'd add in a security manager to make sure that the client has access to do the desired task.
On a related topic, who should be running the game? Do we want to have a single computer serving the game, or should everything be distributed across all the computers? The problem with distribution is that it would make it incredibly easy to cheat, but it would allow persistant universes and let anyone log in and out at any time without disrupting the game.