Hello.
I’m a newcomer that is discovering the world of interactive fiction. Maybe my opinion is quite different and erratic, so I would love to see diverse comments and opinions.
I’m mostly interested in retrogaming, specially in digital preservation by open source software.
At first, I tought there were just a few IF systems such as Z-Code and a few more. Then I discovered projects such as Gargoyle and Mac-centric Spatterlight, using “terps” to add them by the Glk (API?). To me, its quite comfortable to have all IF interpreters in the same interface.
A but later, I discovered an uglier reality toe. Some IF interpreters lacked a portable and Open Source implementation between them, had one but not integrated in multi-interpreters or available anywhere:
- ScummVM’s ScummGLK: It implemented support for Archetype by reimplenting Pascal code to C++ and Comprehend by merging and heavily modifying a Comprehend interpreter.
- Spatterlight added Quill support by adding an John Elliott’s UnQuill terp, but nor Gargoyle nor ScummVM has it. It seems to convert to Z-Code to play not sure if that conversion makes it lack certain stuff such as graphics. No idea about unqbbc usage, as BBC Micro support is absent in UnQuill.
- John Elliott’s unplad and unphipps code is still there but it seem to not be interpreters at all.
- Gackle exists to support GAC interpreter, but no other interpreter support it and less by using a terp. The same about Ascape for Adventurescape, developed by same developer (tautology0 at GitHub).
- There are some interesting interpreters of PAWS for Z80 machines by saimazoom on GitHub and DAAD for MSX by nataliapc on GitHub. Those are not truly portable and feature complete. There aren’t others for the diverse (more than it seems) Quill/PAW(S) family at all too, forget about SWAN and many less known ones.
The list goes nearly to the infinite if your threshold of obscure old games gets to the max.
I understand constructive and proactive software R&D preservation is quite massive and difficult, requiring reverse engineering and using tools such as disassemblers and decompilers. This makes support lots of IF interpreters in portable form a daunting task.
Why a few metainterpreters instead a massively portable one? What about merging code and develop a portable one such as Gargoyle and ScummVM? I understand native widgets and such are nice, but compromises and backend code for each platform may solve this liking. ScummVM is based in Gargoyle/Garglk code, AFAIK.
I see an IF project needs to gain a lot more critical mass to see interested developers implement old interpreters and such (terps?). This critical mass may attract more developers and even participate in events such as Google Summer of Code.
I like features of both Gargoyle and Spatterlight, I consider them to be great projects. Fabularium and Hunky Punk are quite interesting, but they seem dead. Gelek Vanilla seems not so active too. Parchment and Lectrote seem quite interesting. ElseIFPlayer seems interesting but a other inactive project.
ScummVM has potential, despite supporting RPG and point & click graphical adventure games too.
I consider dividing efforts and public visibility is not so good for IF survival. There’s need of a MAME/MESS-like effort, IMHO.
Native vs non-native isn’t a so big problem, there are ways to compile C/C++ cofe to Javascript and WASM. Emstriptem is a valid way, for example. I prefer natuve, but web apps might be a preference or useful in certain conditions.
IF Archives and databases such as IFDB and CASA are amazing. Treaty of Babel is a great idea. That’s a great goal achievef, it just needs to be even more popularized too.
Glk seems a great concept. Not sure about limitations and if it’s focused on old of new IF systems, anyway.
What do you think?
Thanks in advance!