前言
在以文字为主的交互式叙事类作品中,设计玩家与文字的交互过程时,我们可以使用什么手法?我们能在其中表现什么?这两个问题曾经让我感到困惑。
过往我体验过的大多数文字交互叙事作品,其玩家与文字的交互主要有三种处理手法:一是把文字作为简单的按钮,点击后直接展现时间或逻辑上与当前文本相关的后续内容;二是把文字作为分支选项,被点选后展现对应的后续内容;三是把文字作为某种解谜机制,文本在字形或意义中包含一些谜题,谜题被解开后,展现出后续内容。
后来,通过 nurbrun(itch.io 上的一位开发者)的部分作品,我看到了一些与上述手法不同的东西。
nurbrun 的主页链接是:https://nurbrun.itch.io/,推荐体验过至少 2 款作品后阅读下文。
到目前为止,nurbrun 已在 itch.io 发布过六款作品。它们都如同诗一般,而我在体验过程中,感受到了强烈的情感与奇妙的韵律感。那么 nurbrun 是怎样做到的呢?
接下来,我想简单介绍一下学习到的几种手法。
手法介绍
(注:以下所使用的例子为笔者临时创作,主要是为了让每种手法的应用和意义便于理解,并非来自 nurbrun 的作品。)
手法 1:假选项
首先我想介绍的是 nurbrun 提及过的、他自己较喜欢的手法:假选项。
顾名思义,就是在文本中设置多个可交互的文字按钮,但不同的按钮最终导向相同的后续内容。同时,设置这多个可交互按钮的位置时也十分灵活。比如将同一段话中的几个词或短句设置为按钮,或拆解开一个单词后将每个字母设置为按钮(如果以中文为例,就是将一个字拆成偏旁部首等各种结构)。
应当说,假选项并非 nurbrun 首创。不过,假选项出现在其它作品中,更多是为了减少分支选项带来的工作量,而在 nurbrun 的作品中,这些假选项则有着一个不一样的作用:强调。被设置为按钮的文本颜色更为突出,可以强调某些字、词、句带来的直观感受,并且当这些文字被点击时,这种感受会得到二次确认。
除此之外,还有另一种假选项:被点击后会暂时变为不可互动的普通文字,然后恢复为可按的按钮,且不会展现任何后续内容。
我认为这种选项可以表现出一种面对事物变化时个人的无能为力。
手法 2:带情绪的展开解释
简单来说,就是点击某个文字按钮后,展开对这它的具体解释内容。
展开解释其实也常见于其它作品,但是在 nurbrun 的作品中,这种展开带着强烈的、毫不掩饰的主观情绪,并且常常言此而意彼。
举个例子:
假设我们现在有“像熊猫一样喝水”这样一个短句,并且将其中的“像熊猫”“一样”“喝水”拆开,分别作为展开解释内容的按钮。
如果此时此刻,作品中想表达一种积极的情绪,那么展开后的解释内容也许可以是这样:
- “熊猫” >> “温暖的绒毛”
- “一样” >> “多么希望这一刻时间可以停下”
- “喝水” >> “吨吨吨”
而与之相反,如果想表达一种消极的情绪,展开后的内容也许会变成这样:
- “熊猫” >> “黑白分明,无法改变”
- “一样” >> “不过是借口”
- “喝水” >> “还能如何逃避?”
手法 3:同位替换
当一个字/词/句按钮被点击时,并不展现新的内容,而是将刚刚被按下的按钮直接替换为另一个具有相同语法功能的字/词/句按钮。
这一功能在使用 Twine 工具开发的作品中很常见,因为 Twine 中有可以轻松实现这个功能的函数。nurbrun 的作品中也大量存在这种同位替换的手法。
举一些基于特定语法位置的例子,括号内为被点击时替换的文字按钮以及说明。
1.对主语的替换
例:【你/我/他】在这片大地上
主语被替换,我认为这常常用于表现不同个体处于相同的境况,或是个体之间的差异与界限在某种环境下变得模糊。
2.对动词的替换
例:【行走着/奔跑着】
动词被替换,我认为这可以表现一系列动作在时空中的变化。
3.对宾语的替换
例:近在咫尺的是【天空/风/云】
我个人认为,宾语的替换可以表现出所感知到的外界事物的不同部分,也可以表现出某一事物在时空中的变化。
4.对各个语法位置都适用的替换手法
a).以近义词作为被替换的词
例:【在这里/在那里/在哪里】
这样做可以表现出某种踌躇不确定的感觉。
b).在某种背景下,可以设置具有逻辑关联且可相互组合的两个替换词按钮。
例:不小心让冰淇淋甜筒掉落,我还有【掉在地上的/沾上了泥巴的】【没有冰淇淋的甜筒/没有甜筒的冰淇淋】
这样可以表达一种絮絮叨叨的自言自语。
手法 4:多重累积
将一个字/词/句无差别地拆分至更小的单位,然后将所有这些更小单位都设置为可点击按钮,每一个按钮被点击后只是将其自身设置为不可点击的普通文字状态,只有当所有按钮都被点击后,才展现出后续内容。
举个例子:假设我们有 “每天的早晨都是如此“ 这样一个句子,我们可以通过将其中的每一个文字都拆开变成可以被独立点击的按钮 “【每】【天】【的】【早】【晨】【都】【是】【如】【此】”,来表现出一种日复一日的重复感。
再举个例子:假设我们有 “你一定非这样不可吗?” 这样一个句子,我们也可以将其拆分成独立按钮 “【你】【一】【定】【非】【这】【样】【不】【可】【吗】【?】”,来表现出一种逐字念出的顿挫感,以及背后所包含的强调语气。
手法 5:变换空间形态
每次点击文字都展现新的内容,而新的内容与旧的文字在形态上的有着某种关联,或新旧内容所构成的整体有着某种特殊的形态。
举个例子:假设我们有“我们相距越来越远”这句话,要表现的是两个人逐渐生疏的过程。
首先,我们可以把“越来越远”四个字去掉,并且把剩下的部分改为“我们之间的距离”,并且将整个句子都设置为可被多次点击的按钮。
接着,在“我们之间的距离“ 被不断点击的过程中,增加各个文字间的空格间距。
当空格足够多时,若文字再被点击,可以考虑把各个字拆成组成它们的偏旁。
除了根据文字的外形来变换,也可以在某些时刻根据它们的具体意义进行拆分或是合并,如在这个例子中,可以在某一次点击后将“我们”拆分成“你“”我“。
除了变换文字内容本身,也可以对可交互的部分进行变换,如在这个例子中,一开始需要点击完整的一句话,随后,可以在某一次点击后将句子中各个部分都设为具有相同作用的假选项按钮。
在上述点击过程中,对旧的内容有两种处理,一是保留,二是直接删去,需要根据具体情况来选择处理方法。
手法 6:自动删除
这种手法的表现是,点击了某一个文字按钮后,展现的内容先短暂显示,随后逐渐(自动)删除,同时之前变为不可点击状态的按钮又恢复为可点击状态。
举个例子:假设我们有“请把冰块”这样几个文字,其中“冰块”二字显示为按钮。按下后,展现完整内容 “请把冰块送到 A 栋”,与此同时,“冰块”变为普通文字,随后,“送到 A 栋”四个字被缓慢地自动删除,“冰块”二字又恢复为可交互状态。如此设置,可以表现一种犹豫不决的状态。
再举另外一个例子:假设我们有“他懂”这样一个短句,其中“懂”字为按钮,按下后,“懂”字变为普通文字,同时展现隐藏内容“不”,之后“不”被自动删除,“懂”字又恢复为可交互状态。这样设置可以表达一种否定、抗拒的态度。
总结
以上是我从 nurbrun 作品中学到的一些手法,通过思考这些手法的实现方式以及它们背后所包含的意义,加深了我对(文字交互式叙事类作品中)文字交互设计的理解。有趣的手法还有很多,但对以下几个问题的思考也许是在使用、创造各种手法时通用的:“哪些部分可以交互?”“交互的结果会是如何?”“最终要通过这种交互设计表现的是什么?”。
最后附上一个我根据学习心得创作的小作品《雨夜》:https://lutetium0.itch.io/rainynight
好文,好品味,作者是unity做的吗,有什么比较适合的插件吗?感觉直接用unity做这种UI类文字游戏有点笨重
@泡泡:是用Twine做的,官网:https://twinery.org/
最近由 陆提耶 修改于:2023-02-02 11:37:00@陆提耶:可以加您联系方式交流吗,我刚开始学习twine,有不少新想法,也遇到一些宏指令的问题想请教和交流