互动小说技术基金会 (IFTF) 是一个非营利组织,致力于保护和改进支持我们称之为互动小说的数字艺术形式的技术。当 Opensource.com 的社区版主建议撰写一篇关于 IFTF、其支持的技术和服务以及这一切如何与开源交叉的文章时,我发现这是一个讲述我经常讲述的数十年故事的新颖角度。互动小说的历史比现代 FOSS 运动更长,但与它紧密交织。我希望您会喜欢我在这里分享它。
定义和历史
对我而言,互动小说一词包括任何主要通过文本与受众互动的视频游戏或数字艺术品。这个词起源于 20 世纪 80 年代,当时在美国以 Zork、《银河系漫游指南》以及 Infocom 的其他经典作品为代表的解析器驱动的文本冒险游戏定义了家用电脑娱乐。其主流商业可行性在 20 世纪 90 年代已经衰落,但在线爱好者社区延续了这一传统,发布了游戏和游戏创作工具。
四分之一个世纪后,互动小说现在包含了广泛而精彩的作品,从充满谜题的文本冒险到庞大而内省的超文本。定期的在线比赛和节日为浏览和玩新作品提供了绝佳场所:英语互动小说界每年都会举办包括 Spring Thing 和 IFComp 在内的年度活动,后者自 1995 年以来一直是现代互动小说的核心——这也使其成为任何类型中持续时间最长的游戏展示活动。IFComp 2017 年评判和排名的参赛作品 展示了当今文本游戏所拥有的形式、风格和主题的惊人多样性。
(我上面指定“英语”是因为互动小说社区倾向于按语言自我隔离,这可能是由于该技术侧重于写作。例如,也有法语 法语 和 意大利语 的年度互动小说活动,并且我听说过至少一个中文互动小说节。令人高兴的是,这些边界是多孔的;在我管理 IFComp 的四年中,它欢迎来自所有国际社区的英语翻译作品。)

开始玩 Emily Short 的新游戏《Counterfeit Monkey》,它在解释器 Lectrote 上运行(两者都是开源软件)。
同样由于其对文本的关注,互动小说为游戏和创作都提供了一些最容易访问的平台。几乎任何可以阅读数字文本的人——包括文本转语音软件等辅助技术的用户——都可以玩大多数互动小说作品。同样,互动小说的创作对所有愿意学习和使用其工具和技术的作家开放。
这就引出了互动小说与开源的长期关系,自其商业鼎盛时期以来,开源一直有助于实现这种艺术形式的可用性。我将概述当代开源互动小说创作工具,然后讨论互动小说作品共享其源代码的古老且有时令人好奇的传统。
开源互动小说工具的世界
许多开发平台(其中大多数是开源的)可用于创建传统的解析器驱动的互动小说,用户在其中键入命令(例如,go north,
get lamp
, pet the cat
或 ask Zoe about quantum mechanics
)与游戏世界互动。20 世纪 90 年代初期出现了几个对黑客友好的解析器游戏开发工具包;今天仍在使用的包括 TADS、Alan 和 Quest——所有这些都是开源的,其中后两者带有 FOSS 许可证。
但其中最突出的是 Inform,它最初由 Graham Nelson 于 1993 年发布,现在由 Nelson 仍然领导的团队维护。Inform 源代码是半开放的,以一种不寻常的方式:Inform 6,之前的主要版本,通过 Artistic License 提供其源代码。这比可能显而易见的具有更直接的相关性,因为原本是专有的 Inform 7 以 Inform 6 为核心,将其 非凡的自然语言语法 翻译成其前身更像 C 的代码,然后让它将作品编译成机器代码。

Inform 7 IDE,加载了文档和示例项目。
Inform 游戏在虚拟机上运行,这是 Infocom 时代的遗物,当时该发行商的目标是 VM,以便它可以编写一个可以在 Apple II、Commodore 64、Atari 800 和其他类型的“家用电脑”上运行的单个游戏。如今流行的操作系统越来越少,但 Inform 的虚拟机——相对现代的 Glulx 或迷人的古董 Z-machine,它是 Infocom 历史 VM 的逆向工程克隆——让 Inform 创建的作品可以在任何装有 Inform 解释器的计算机上运行。目前,流行的跨平台解释器包括桌面程序,如 Lectrote 和 Gargoyle,或基于浏览器的程序,如 Quixe 和 Parchment。所有这些都是开源的。
如果 Inform 的开发速度在其成熟期有所放缓,但它仍然通过活跃且透明的生态系统保持活力——就像任何其他流行的开源项目一样。在 Inform 的案例中,这包括前面提到的解释器、语言扩展集合(通常用 Inform 6 和 7 的混合编写),当然,还有所有用它创建并与世界分享的作品,有时包括源代码(我将在本文后面回到这个话题)。
21 世纪发明的互动小说创作工具倾向于探索传统解析器之外的玩家互动,生成任何现代 Web 浏览器都可以加载的超文本驱动的作品。其中最主要的是 Twine,它最初由 Chris Klimas 于 2009 年开发,如今由许多贡献者积极开发为 获得 GNU 许可的开源项目。(事实上,Twine 可以追溯其 OSS 血统到 TiddlyWiki,Klimas 最初从中派生出它的项目。)
Twine 代表了一种最大限度地 开放和易于访问的方法 来进行互动小说开发:除了其自身的 FOSS 性质外,它将其输出呈现为独立的网站,不依赖于需要进一步专门解释的机器代码,而是依赖于开放且经过良好实践的 HTML、CSS 和 JavaScript 标准。作为一种创意工具,Twine 可以使其自身暴露的复杂性与创作者的技能水平相匹配。几乎没有编程知识的用户可以创建简单但可玩的互动小说作品,而那些具有更多编码和设计技能的人——包括那些通过制作 Twine 游戏来发展这些技能的人——可以开发更复杂的项目。难怪近年来 Twine 在教育领域的知名度和受欢迎程度有了很大的提高。
其他值得注意的开源互动小说开发项目包括 Ian Millington 的 MIT 许可的 Undum,以及 Dan Fabulich 和 Choice of Games 团队的 ChoiceScript——两者也都以 Web 浏览器作为游戏平台。除了这些严格的开发系统之外,基于 Web 的互动小说为我们提供了一个丰富且不断涌现的开源作品生态系统,例如 furkle 的 Twine 扩展工具集合 和 Liza Daly 的 Windrift,这是一个专门为她自己的互动小说游戏构建的 JavaScript 框架。
程序、游戏和游戏程序
Twine 受益于 专门支持它的常设 IFTF 计划,允许公众帮助资助其维护和开发。IFTF 还直接支持两项长期公共服务,IFComp 和 IF Archive,这两项服务都依赖于开源软件和技术并为其做出贡献。

Liza Daly 的“Harmonia”的开头,使用 Windrift 开源互动小说创作框架创建。
运行 IFComp 网站的基于 Perl 和 JavaScript 的应用程序自 2014 年以来一直是 共享源代码项目,它反映了 其特定于互动小说的子组件使用的 FOSS 许可证的混合,包括允许解析器驱动的竞赛条目在 Web 浏览器中运行的各种代码库。IF Archive——自 1992 年在线,自 2017 年以来成为 IFTF 项目——是一组镜像存储库,完全基于古老而稳定的互联网标准,并使用 一个小的开源 Python 脚本 来处理索引。
最后,有趣的部分:让我们谈谈开源文本游戏
当然,档案的大部分 包含游戏——多年的游戏,反映了数十年来不断发展的游戏设计趋势和互动小说工具开发。
许多互动小说作品共享其源代码,社区查找源代码的快速入门解决方案很简单:在 IFDB 中搜索标签“source available”。(IFDB 是另一项长期运行的互动小说社区服务,由 TADS 创建者 Mike Roberts 私人运营。)习惯更简洁界面的用户可能还希望浏览 IF Archive 的 /games/source
目录,该目录按开发平台和书写语言对内容进行分组(还有许多因过于杂项或过于古老而无法分类的作品漂浮在顶部)。
对这些代码共享游戏进行一些随机抽样揭示了一个有趣的困境:与更广泛的开源软件世界不同,互动小说社区缺乏一种普遍认可的方式来许可其生成的所有代码。与软件工具(包括我们用于构建互动小说的所有工具)不同,互动小说游戏在最字面的意义上是一种艺术作品,这意味着旨在用于软件的开源许可证对它的适用性并不比对任何其他散文或诗歌作品更好。但话又说回来,互动小说游戏也是一段软件,它展示了其创作者可能合法地希望与世界分享的源代码模式和技术。有开源意识的互动小说创作者该怎么办?
有些游戏通过将其代码传递到公共领域来解决这个问题,无论是通过明确的许可证还是——如 Crowther 和 Woods 的原始 42 年历史的 Adventure 的案例中那样——通过社区法令。有些人试图折衷,制定自己的许可证,允许免费重用游戏的公开业务逻辑,但禁止创建专门从其散文派生的作品。这是我在公开我自己的游戏 The Warbler’s Nest 的源代码时采取的方法。天知道这在法庭上能站得住脚,但我当时没有任何更好的主意。
当然,您可以找到一些作品,它们只是将所有内容都置于一个通用的许可证下,而不理会反对者。一个突出的例子是 Emily Short 的史诗级作品 Counterfeit Monkey,它在 Creative Commons 4.0 许可证下完整发布。CC 对其在代码中的应用皱眉头,但您可以争辩说,Inform 7 源代码的奇怪的散文性质 使其至少比更传统的软件项目更兼容 CC 许可证。
冒险家,现在怎么办?
如果您渴望开始探索互动小说的世界,这里有一些链接供您查看
-
如上所述,IFDB 和 IF Archive 都提供了超过 40 年的收集互动小说作品的可浏览界面。其中大部分可以在 Web 浏览器中播放,但有些需要额外的解释器程序。IFDB 可以帮助您查找和安装这些程序。
IFComp 的年度结果页面 提供了另一种视角来了解这些免费且可在存档中获得的最优秀作品。
-
互动小说技术基金会是一个慈善非营利组织,致力于支持 Twine、IFComp 和 IF Archive,以及提高互动小说的可访问性、探索互动小说在教育中的应用等等。加入其邮件列表以接收 IFTF 的每月新闻通讯,浏览其博客,并浏览 一些主题商品。
-
John Paul Wohlscheid 今年早些时候撰写了 这篇关于开源互动小说工具的文章。它涵盖了一些此处未提及的平台,因此如果您仍然渴望了解更多信息,请查看一下。
1 条评论