Glk

From ScummVM :: Wiki
Revision as of 18:08, 19 October 2019 by Dreammaster (talk | contribs) (Added a note about the code changes, added Level 9 line)
Jump to navigation Jump to search
Glk
Engine developer dreammaster, Tor Andersson
Companies that used it See Sub-engines
Games that use it See Sub-engines
Date added to ScummVM December 9, 2018
First release containing it None


About

Glk is an engine that implements the Glk API for text adventures (a.k.a. interactive fiction). Under it sits a number of sub-engines, each supporting a different company's and/or category of text adventures.

Sub-engines

  • ADRIFT - For playing games created using the Adventure Development & Runner - Interactive Fiction Toolkit.
  • AdvSys - For playing games created using the AdvSys text adventure writing system.
  • Alan2 - For playing games created with the Alan 2 standard library version of the Adventure Language System.
  • Alan3 - For playing games created with the Alan 3 standard library version of the Adventure Language System.
  • Frotz - For playing Infocom games and more recent Z-code games authored using Inform.
  • Glulxe - For playing Glulx games authored using Inform.
  • Hugo - For playing games created using the Hugo interactive fiction development system.
  • JACL - For playing games created using the JACL HTML-based interactive fiction development system.
  • Level9 - For playing the commercial games original released by Level 9 Computing.
  • Magnetic - For playing the Magnetic Scrolls games.
  • Quest - For playing games created using Alex Warren's Quest text adventure writing system.
  • Scott - For playing the Scott Adams games.
  • TADS - For playing games created with the Text Adventure Development System.

Notes

Whilst at first I tried to keep the sub-engines as close to the original source they're derived from as possible, this quickly proved impossible. Not only did I have to add in proper C++ namespaces to encapsulate all the code, I also had to do various conversions to change them over from using STL to using ScummVM classes. So don't anticipate that it'll be easy to take any interpreters converted specifically for ScummVM GLK and simply drop them into any other GLK implementations.

Resources

External links