Accounting for alternate interpreters
If Bisquixe styling only applies within web games, should authors provide a GBLORB file? Doing so will ensure that a game can be played on Glux-capable interpreters like Lectrote and Gargoyle. However, such players will not experience the author’s work as intended, so the creator’s efforts will—to varying extents—have been in vain.
For many authors, this is a fraught decision. While younger players and newcomers—a very important audience, to be sure—often favor web-capable games such as those hosted at itch.io, others seem unwilling to engage with Inform games for the web.
Note: while this may be unclear, this is a discussion of games using web technology and web browsers. Such games can be played locally—it would be hard to develop them otherwise! This post is concerned with browser games, not internet access.
In this regard, creators of works in Twine, Ink, Decker, and Ren’py (among others) are granted license that Inform authors may not be. While this reference assumes that visual content can enhance an Inform work, these realities must be acknowledged.
The author must decide, then, whether or not to honor conservatism.
Many creators will understandably want to find players wherever they can, and, in the name of their ambitions, they must account for the behaviors of alternate interpreters.
Since we have a means for detecting the Bisquixe interpreter, we can account for such cases. Consider the text of our recent [large text] substitution. While Bisquixe cannot apply this property in other interpreters, an Inform project can be tailored to deal with alternate scenarios.
In the below example, the to say definition has been modified to specify Inform’s built-in fixed letter spacing substitution when Bisquixe is not supported.
to say large text:
if bisquixe is supported, set-any-class "large";
otherwise:
say fixed letter spacing.
instead of jumping:
say "[large text]This is [if bisquixe is supported]large text[otherwise]fixed letter type[end if].[roman type]";
say line break;
This kind of handwork can create significant overhead, so it is a best practice to avoid directly discussing web styling in-text.