Hi Bridger,

On Oct 13, 2009, at 1:08 PM, Bridger Maxwell wrote:

Hey,
For a cross-platform game, I need to make a game file format that would be readable and writeable on a few different platforms. The game is simply a
serialized object graph. I am looking at the XML format used by
NSKeyedArchiver, and perhaps implementing it in the other languages.
Alternatively, I can make my own subclasses of NSCoder.

I would like to read more on the NSKeyedArchiver XML format, but can't find
documentation on it. Is it open? NSKeyedArchiver has a property
"outputFormat" which can be set to NSPropertyListXMLFormat_v1_0. However, I
thought property lists could only contain certain objects (dictionary,
array, etc.), and didn't handle things like circular references. Is the
property list format and the format used by NSKeyedArchiver the same?

-Bridger Maxwell

Part of the work done by the keyed archiver is indeed to get plist- compatible values for keys in the objects in the graph that is being archived. However, the data output by the keyed archiver is really only designed to be read in by the keyed unarchiver. You would end up reimplementing the archiver logic for your other platforms, and at that point it seems like you might as well have just designed your own format (flat file, property list of your own making, XML, whatever). What the best option is for your game probably depends on the complexity of your object graph, what platforms you are targeting, and other things.

Good luck,
- Tony

_______________________________________________

Cocoa-dev mailing list ([email protected])

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to