Quest in the Treaty of Babel

I filed some PRs today to add Quest to the Treaty of Babel.

It turns out that Quest has been embedding a UUID <gameid> element in its ASLX XML game format since Quest 5.1 in 2011. Under the hood, the code even calls it an “IFID,” despite Quest never technically signing on to the Treaty, or exposing the IFID in a format that the Babel tool can read.

Since Quest 5.8 in 2018, all Quest games come with a VERSION command, which will print out a string like this, referring to the <gameid> as an “IFID”:

TITLE: The Shack
AUTHOR: System Masters
VERSION: 1.8
IFID: 8d5f552d-e9da-4219-b64e-82040a38af60

h/t to @JTN for teaching me about this!

Unfortunately, until today, the Babel tool had no way of knowing the IFID file for Quest games.

That’s going to change, first with changes to the next upcoming version of Quest Viva:

  • In Quest Viva 6.0 beta 60, published .quest files will include their IFID in a way that even very old versions of the babel tool can read it. .quest files are just ZIP files; babel will look for a string shaped like UUID://1652E7EC-2D7D-4B59-95ED-E65D79EDF257// in any file, even if Babel doesn’t recognize the file’s format. Newly published Quest files will include a UUID://...// string in .quest zips in plain text, in a zip comment.
  • Quest Viva beta 60 will also start including a metadata.iFiction XML file in every .quest file it publishes, including title, author, subtitle (“headline”), genre, first published year, description, language, “style” (“Text Adventure” for parser-based, “Gamebook” for choice-based), version, release date, and cover art.
  • Quest Viva beta 60 will also embed an HTML IFID when it exports to HTML.

(@Alex merged those PRs lickety split! Thanks!!)

Then, when the PR for the Babel tool merges, Babel will not only be able to read the new iFiction metadata from games published in Quest Viva 6.0, but it will also be able to retroactively construct iFiction from published Quest games going back years.

Quest games prior to Quest 5.1 will have “legacy” IFIDs based on the MD5 of their output, e.g. QUEST-F11547C61CE0D3A754F8EA69BF853FDF, but Babel will still be able read the title, author, and description for every Quest file I have access to, including old .cas and .asl files.

8 Likes

This all seems sensible to me, not that I know much about the Quest world.

I’ve passed the proposal over to the Babel mailing list, in case anybody there has any comments.

2 Likes

https://babel.ifarchive.org is updated with the Quest info.

I’ve added Alex Warren’s name to the web site as signatory for Quest.

4 Likes