长亭百川云 - 文章详情

你想要的故事块——游戏中常见的叙事架构

落日间

6

2024-07-20

落日间正在与 indienova 共同推进名为“做游戏”的内容计划(xpaidia.com/makegames/),希望为中文世界拓宽深入思考独立游戏文化与开发的入口。我们相信,了解游戏的创作者与创作背景,探索更多样、未受到广泛关注,乃至实验性的独立游戏,有助于我们从更加多元的视角品味、探究游戏,并进行反思;我们也相信,游戏的开发与创作应该被祛魅为更易被大众认知的话题,让所有被触及者更好地理解并参与到电子游戏的未来发展中。

说起游戏中的交互式叙事,我们大多想到的是可以用树状流程图表示的分支叙事。根据玩家在关键事件中所做的选择,作者会设计好不同的故事走向。

这种方法有一些明显的问题。对于创作者来说,他们要预测玩家可能的不同选择,并为每一种选择都设计好情节发展,工作量非常庞大。另一方面,这样创作出来的叙事也往往与游戏机制脱节,影响玩家整体游戏体验的沉浸感,造成经典的”叙事失调(Ludonarrative dissonance)”问题。

在《80 天:如何以软件工程的思路编写一部互动小说》这篇文章中,我初步探讨了一种新的思路:构建一种基于文本的世界模拟引擎。这种方法的本质是让叙事内容依附于某种游戏世界状态模拟,而不再是独立于游戏机制的一套自成一体的内容,而成为游戏机制执行过程的一种呈现方式。

事实上,包括《80 天》在内的很多新型交互叙事内容组织结构,都能够用 艾米莉·肖特 (Emily Short)最先提出的一种“故事块(storylet)”架构来描述。

这种架构由一个“所有可能的游戏世界状态所组成的空间”概念出发,将玩家在一次具体游戏中的经历看作是在这个空间中的游历(Traversal)。叙事作者不能控制玩家具体的游历路线,但是可以给这个空间的子空间赋予特殊叙事含义(Narrative Meaning),并用原子化的故事块去定义这个叙事含义。最后玩家在这个空间中的游历、配合作者分配给不同子空间的故事块,就形成了与游戏机制紧密相关的、由玩家和游戏开发者共同创作的完整叙事。

为了让国内的朋友们更加了解艾米莉·肖特提出的这种故事块架构,我们特此翻译了关于这个主题的三篇文章。

第一篇文章《Beyond Branching: Quality-Based, Salience-Based, and Waypoint Narrative Structures》适合作为一个引子。它是艾米莉·肖特的一篇博文,其中作者从传统的分支叙事出发,介绍了另外三种与游戏世界状态联系更加紧密的叙事内容组织架构,逐步引导读者脱离传统的分支叙事思维看到其他的可能性。

第二篇文章《Storylet: You Want Them》仍然是艾米莉·肖特的一篇博文。这篇文章中作者比较系统性地引出了”故事块(Storylet)”的概念和以这个概念为中心的叙事内容组织架构。作者探讨了一些游戏中常见的叙事内容组织方式,并展示了这些组织方式都可以用”故事块”更加灵活且可扩展地复现。

第三篇文章《Sketching a Map of the Storylets Design Space》是 Max Kreminski 和 Noah Wardrip-Fruin 在 2018 年的国际交互式数字化叙事大会(International Conference for Interactive Digital Storytelling)上发表的一篇综述性论文。这篇论文以更强的学术严谨性定义了故事块架构,并通过考察现有的应用了故事块架构来组织叙事内容的游戏实例,总结出了能够覆盖这些游戏叙事结构差异的几个独立的变化维度。

厌氧菌

Emily

Short

艾米莉·肖特是一位互动小说 (interactive fiction) 作家。在 2020 年到 2024 年担任 Failbetter Games 的创意总监,该工作室是《伦敦陷落》(Fallen London)及其衍生产品背后的工作室。多年来,一直担任 IGF(独立游戏节)最佳叙事奖评审团成员。

故事块系统是一种组织叙事内容的方式,比典型的分支叙事(branching narrative)更具灵活性。

当我被要求为某款游戏提交一种叙事呈现系统时,许多时候我都发现自己正在勾勒某种基于故事块形式的解决方案,它简单、基本、稳健,并且可重组。

以下是我对故事块的基本定义(尽管许多系统可能会叫它们其他名字:事件、片段等):

● 有一段内容。它可能是一句台词或一整段对话,可能是旁白,可能是动画或电影片段

● 有一些先决条件决定内容何时可以触发

● 内容播放后会对世界状态产生影响

我以前写过一些文章,在基于变量和相关性的架构下,如何让人们超越标准的分支叙事。这是 StoryNexus¹ 的基本概念,也是我为 Inform (一种用于互动小说的编程语言和设计系统)编写的对话库:“线索对话”的基础(Threaded Conversation,最终由克里斯·康利“Chris Conley”发布并维护)。

你甚至可以把 Versu² 和 Character Engine³ 中的对话元素理解为故事块的一种。在这些情况下,还有很多其他的程序化(procedural)工作,来决定下一步应该呈现什么内容以及如何变化。相当多的程序化叙事系统都是基于定义某种将故事块串联起来的模型运作的,因此这可以成为一种方法——支持雄心勃勃的 AI 驱动理念。

Versu 与 Character Engine 均是一类用于设计对话的游戏引擎,可使用 AI 实时生成玩家可选的对话,或根据玩家的自然语言提供反馈。

与此同时,这种设计方法并不只适用于有着程序生成野心的人。你可以将故事块的内容和变量规则写在一组卡片上,制作并探索一个初级的故事块系统。事实上,我有时也确实会把这个做成纸上的原型来练习。

当然这个定义遗漏了很多其他的东西。它没有说明特定的故事块包含多少内容,这些内容是如何组织,又如何选择。马克斯·克雷明斯基(Max Kreminski)的概论⁴探讨了其中的许多细微差别。

但在本文中,我主要关注的是如何将游戏叙事的许多标准组织方式转化为故事块。

相关链接:

http://www.storynexus.com/

https://emshort.blog/?s=versu

https://emshort.blog/?s=character+engine

https://emshort.blog/2019/01/06/kreminski-on-storylets/

常见的分支结构和故事块

如果通过设置进度或变量统计来记录故事的进展,或者通过威胁程度来展示玩家现在遇到的麻烦,那么故事块可以用来复现分支叙事、Twine,或者像《选择你自己的冒险》中的许多经典结构⁵。

(注:Choose Your Own Adventure,是一本早年间的纸质冒险类书籍,读者根据每页末尾的选择跳转到相应页面继续故事。CYOA 这个词随后被用来形容这种提供选择以影响剧情的游戏。)

Twine 一款开源的交互故事创作工具,允许用户创建非线性、多分支的叙事结构。

例如,这里有一个在 Twine 中可能会存在的挑战式情节(注:指会反复出现不同挑战的情节,例如让哈利波特去霍格沃兹上学就要经历寄养家庭的阻挠、穿过站台等),除了玩家犯错产生的分支外,其主要部分是线性的。以故事块形式表示的话,它可能是这样的:

这里是一个分支和瓶颈的组合,玩家可以有不同的线路,然后在关键时刻被引导回来:

或者是一顶分院帽(sorting hat),一开始的关键选择决定了玩家将经历几个线性叙事中的哪一个:

或者采用循环成长结构,让玩家反复经历相同的季节,但随着时间的推移会有一些成长和变化——这就是我在《蜜蜂》⁶中使用的结构。

《蜜蜂》最早发布于 2012 年,讲述的是一个女孩年复一年为拼写大赛练习的故事。游戏会记录春夏秋冬,并依据时间的不同和父母朋友经历不同的故事。最终表现为上表的循环结构。

时间洞穴(time cave)可能是故事块最难搭建的类型,因为它们的每段内容都依赖于此前你访问过的事件:

因此,要在故事块中体现这一点,就必须为每段内容附加一个唯一的标识符,作为解锁下一段内容的标志。在这一点上,故事块的价值并没有被充分利用——如后续灵活添加内容的能力,让故事以有趣的方式相互交织的可能性,以及展示叙事空间如何运转的底层设计。

任何一个单独的 Varytale 小故事都可以包含类似 Twine 或 Undum 的分支内容。(译注:此处为不同的交互叙事创作工具。Varytale 是本文作者开发《蜜蜂》时使用的工具,主要特点是可以为故事触发条件设置不同的变量。)

但实际上,大多数大型游戏都不是 “时间洞穴”。制作一个不断分支而又从不汇合的故事,工作量太大,组合爆炸也太多。更常见的情况是在一个更大的结构中嵌入类似时间洞穴的小片段。在这种情况下,可以通过一些工具来实现这种分支——Versu 和 Character Engine 就使用了这种工具,可以更方便地在更大的程序流中嵌入明确的分支元素——或者像 Varytale 那样,在故事块中嵌入分支叙事内容。

相关链接:

https://heterogenoustasks.wordpress.com/2015/01/26/standard-patterns-in-choice-based-games/

https://ifdb.org/viewgame?id=8pe83e92v4nvabic

常见的电子游戏结构和故事块

故事块可以通过游戏关卡进展或者资源收集程度来解锁,也可以通过刷数值(grind)来解锁,在游戏中玩家必须重复执行一些故事块,直到玩家获得足够的技能才能进展到后续故事块。(后者是《伦敦陷落》早期的常见结构,不过现在的系统已基本去除了这点。)

故事块可以穿插在《莉莉的花园》(Lily's Garden)等休闲游戏的进程中,让玩家通过一些三消、时间管理或类似的游戏来解锁故事的新部分。

如果关卡之间的游戏玩法可以让玩家通过游戏行为作出选择——玩得好或者不好——那么故事块结构就能让您在游戏中产生叙事效果:

故事块可以用来模仿基于地理位置的关卡设计,如果我们把这种设计分解成可进入区域的话:

简而言之,许多其他构建互动故事的方法都可以用故事块结构来复现。

但还不止这些。故事块还可以构成非同寻常的解决方案,如卡牌叙事或制作叙事。基于故事块的故事在编写完成后还可以进行扩展。它们可以与同一故事世界中的其他叙事环境相互交错。

综上所述,这些特点意味着基于故事块的系统通常是一款游戏的最佳选择,如果这款游戏计划要持续数年之久、包含 DLC、与其他游戏系统相融合,或者允许玩家进行有趣的修改。

如果有兴趣,我将在以后的文章中更详细地介绍其中的一些内容。

本文已获得作者授权

翻译:RMHO

校对:厌氧菌

公众号视觉:Water

排版:兹普

indienova 是一个侧重独立游戏的媒体平台,一处活跃而含蓄的游戏开发者社区,也是一家独立游戏发行商。致力于传递由游戏承载并沉淀的时代文化的同时,我们也不断尝试探索游戏背后的深层价值,同样重要的是,作为海内外游戏群体间的桥梁,将游戏玩家、学者、开发者与发行商联结在一起,促成高效的交流和沟通。期待玩家能在这里找到游戏本真的乐趣,期待开发者能在这里完成初心所向的作品,期待知识、技巧和思想,能够时时汇融。

落日间是一个试图回答「何为游戏」与「游戏何为」的数字人文实验室,我们希望探索一种新的扩展但具体的游戏概念,面对当今游玩化的世界并发掘电子游戏的可能形态。我们正在创作帮助我们理解游戏/电子游戏的文字,音频节目,视频,以及电子游戏(xpaidia.com)。

[

](https://mp.weixin.qq.com/s?__biz=MzIzMjM0NDk1NQ==&mid=2247498380&idx=1&sn=68be5c70ce1729da09852f272450d244&scene=21#wechat_redirect "https://mp.weixin.qq.com/s?__biz=MzIzMjM0NDk1NQ==&mid=2247498380&idx=1&sn=68be5c70ce1729da09852f272450d244&scene=21#wechat_redirect")



[

](https://mp.weixin.qq.com/s?__biz=MzIzMjM0NDk1NQ==&mid=2247498283&idx=1&sn=e8173ba0ea85d1c18d024d318e6998d4&scene=21#wechat_redirect "https://mp.weixin.qq.com/s?__biz=MzIzMjM0NDk1NQ==&mid=2247498283&idx=1&sn=e8173ba0ea85d1c18d024d318e6998d4&scene=21#wechat_redirect")



[

](https://mp.weixin.qq.com/s?__biz=MzIzMjM0NDk1NQ==&mid=2247496671&idx=1&sn=f1e8e52640aedbd18523c53187980eb2&scene=21#wechat_redirect "https://mp.weixin.qq.com/s?__biz=MzIzMjM0NDk1NQ==&mid=2247496671&idx=1&sn=f1e8e52640aedbd18523c53187980eb2&scene=21#wechat_redirect")



感谢支持落日间的朋友们!

欢迎赞赏或赞助落日间,加入内测计划,查看并且优先参与落日间正在进行的其他未公开项目,并且每周收到至少一篇我们情感异样丰富的小作文。详情可点击阅读原文,或进入:xpaidia.com/donation

也欢迎前来落日间书店选购,《春天路过的风替我演奏口琴》《游戏与人》《趣玩》《桌游设计指南》等在售书目正在更新中。

相关推荐
关注或联系我们
添加百川云公众号,移动管理云安全产品
咨询热线:
4000-327-707
百川公众号
百川公众号
百川云客服
百川云客服

Copyright ©2024 北京长亭科技有限公司
icon
京ICP备 2024055124号-2