Yes, actually the SuperSerialization API is my own, it’s not at all related to the jdk’s serialization what-so-ever. And yes, you can send only part of the game world if you want by writing only those objects, you just have to make sure that the rest of the game-world isn’t dragged into it by flagging which objects should not be written (using the SSObjectOutputStreram.writeObject(Object obj, ArrayList ssObjectsToIgnore) method). That’s why the SS streams are pretty cool (IMO ) Right now I’m not doing that for anything except for events, like firing a missile - I send only the missile object without the whole game world, the missile’s reference to the game world is not written to the stream but is assigned to the existing game world. To minimise traffic when I do sync the client and server game worlds by sending the whole thing, I just do it less frequently!
The SS streams are cool because you don’t have to write your own serialization for every game object, it’s all automatic so long as all of your game objects implement SSObject (or extend SSAdapter to get the default functionaility).
Fully sick! 8)
So which version of the streams should I use to get the same behaviour as I’ve got currently - where byte arrays are only returned when the whole thing arrives. In other words, which of your API’s streams do all of the byte array book-keeping for me?
Thanks!
Keith