Post by Mike RobertsPost by Andrew PlotkinPost by Arnel LegaspiAFAIK (or at least, as far as I understand how the IFID
system works for Z-Code games) the IFID is something
generated from the Z-Code game itself. The 4-digit code
on the last part, for example, is something taken from within
the file itself (BB59 from my last post), which is supposed
to be unique for every Z-code file.
For Z-code games not generated by the Inform IDE, it's
ZCODE-release-serial-checksum
That's for Z-code games previously released without an explicit IFID, but if
you were writing a *new* I6 game, you *could* give it an explicit IFID,
couldn't you?
My reading of the Babel spec is that someone working on a new I6 game could
give it an explicit IFID by following the spec manually - roll up a random
UUID, create an iFiction file, and bind it into the compiled game with
Blorb. My impression is that the original poster basically intended to do
this and just needed to know how to come up with the explicit IFID in the
first place.
It seems to me that it's preferable to use an explicit IFID even for new I6
games, since they'll be stable if the game is eventually released in
multiple versions.
--Mike
mjr underscore at hotmail dot com
Agreed. One thing that no one's quite gotten in this conversation is
that i7 does not do some magical thing that's impossible in i6; i7
*generates inform 6 as an intermediate form*. I7 generates an IFID
using one of the standard UUID algorithms, then pastes the result into
the i6 source.
You'll need to generate a UUID from somewhere. There are numerous
tools on the web to do this if you're in the mood for something
easy. I believe some of the windows developers' toolkits also include
a tool to generate UUIDs. Also, the standard Java library has one
built in.
Once you've got one, you just need to stick it inside a string array
in inform source thus:
Array IFID string "UUID://some-random-numbers-here//";
I've verified that this works, by the way; it's how Moments out of
Time 2 declares its IFID.