I’m writing a Z-code interpreter in Ruby. It’s (just about) complete enough to be of some use. It can currently play version 1, 2 and 3 games. I mean to make it handle v4, v5, v7 and v8 as well, in the near future.
My motivation for writing it, except that it’s simply fun, is to make it a platform to aid in debugging and profiling of Z-code programs. Thus the name, of course.
To use it, you need to have Ruby installed. The interpreter doesn’t rely on any extra gems (Ruby packages) or other dependencies. Should work fine on Windows, Linux and Mac.
Neither super-important or super-hard to do . As you’re probably aware, you can find a few early versions of Zork 1 & 2 in z1 and z2 format at The Obsessively Complete Infocom Catalog
Actually, I think my least favourite part of the v1+v2 specification, is that if two or more characters in sequence in a dictionary word are from the same row of the alphabet table, a shift lock code should be used to change to that alphabet. Anyway, I don’t think this scenario occurs in any existing story file, and we see relatively few new v1 and v2 story files appear these days…