Yes, for some reason all IFIDs of ADRIFT games are like that, e.g. a 3.8 game:
ADRIFT-380-54F4647A8C9C708CD163CABEF08E1A26
True. So for IFDB, all ADRIFT games should go to Parchment once Frankendrift is added to it. So no reason to do a complicated intermediate step to distinguish between the different types on IFDB.
The version number is stored in the file header, and though it needs a little bit of decoding, weâd really only need to look at one byte to determine which interpreter to use.
Iâve submitted a pull request to update the Babel spec. Its description of Hugo IFIDs was also not right.
@dfabulich , on second thought, there is no need to change anything on IFDB until we have Frankendrift implemented in Parchment. I just realized that with some manual labor I can make the play online button work with Parchment just by doing it as done here: Trick or Treat - Details (ifdb.org)
No one is making Adrift 4 games anymore so I think this solution is fine for now.
Thatâs all the changes I can think of right now. I was hoping to be able to say at what byte offset the Adrift 5 iFiction record is, but I havenât been able to work out if itâs a fixed or variable offset.
Though thinking for the future, I wonder if it would be helpful to have a distinct section for how to search files for an embedded IFID. Z-Code and Glulx would say to just scan the file, Hugo would explain about de-obfuscating, Adrift would specify whatever the iFiction offset is, TADS would explain its non-iFiction metadata format (or just reference the TADS docs). The legacy IFIDs section would then only need to explain how to generate legacy IFIDs.
Edit: for example, nothing in the Babel spec says that for Alan you should scan the file. Youâd only know by checking the babel-tool source code.