以文字呈现的天际

我前段时间决定创建一个基于文本的Skyrim。 一开始听起来听起来过于雄心勃勃,但是当我开发故事和游戏的机制时,我发现了它的基本元素:在生动的模拟世界中的剑法游戏,以《选择自己的冒险》(CYOA)书的形式呈现。

这个想法已经将一个简短的游戏“微不足道的小害虫”带入了世界,我提交给了今年的IFCOMP。 在本文中,我将引导您完成该游戏的构建过程,并讨论从观看人们玩游戏(在Twitch上)中学到的知识。

为什么选择天际

不要太在意我在这里指天际的事实。 对我来说,天际是仅是众所周知的幻想开放世界电子游戏,我们可以以此为例。

  1. 之所以广为人知,是因为我希望人们立即拥有一个印象。
  2. 幻想,因为幻想游戏中的战斗风格特别适合我们的需求(稍后会详细介绍)。
  3. 开放世界,因为这些类型的游戏是逃避现实的绝佳形式,因此非常适合我们的需求(稍后会详细介绍)。
  4. 电子游戏是因为我将重点放在游戏/流程方面,而不是互动故事上(同样,稍后会再介绍)。

重要的是,我们模拟了玩家可以探索的世界。 这个世界居住着演员(怪物,NPC)和玩家可以与之互动的实体(剑,门,箱子等)。 在Skyrim中,世界以3D渲染,并且玩家发出低级命令,例如“前进”或“左手使用武器”。

模拟的目的是娱乐玩家。 也就是说,我并不是在使用“模拟”一词来暗示Skyrim试图尽可能地“模仿现实世界的过程”。 对我来说,每一个有稳定更新循环的电子游戏都是某种模拟,即使它是意大利水管工拯救公主之旅的2D模拟。

首先尝试,故意天真的开始

将Skyrim移植到文本冒险中,最幼稚的方法是进行3D游戏中存在的世界模拟,并一次播放一帧,描述正在发生的事情,并要求玩家提供低水平输入。 它看起来像这样:

在怀特伦之外

[…]

您站在坐标{351.0,211.9}上,面向NNE。 你的剑是挥杆的12%。

您在面对{SSW}的坐标{351.1,210.8}上看到了一个土匪。 他的斧头中摆率是78%,但没有击中。

向上推箭头
>下推箭头
向左推
推右箭头

您退后一步来坐标{354.9,212.5}。 […]

您可以想象,这里的游戏玩法和故事体验绝对会吸引人。 而且,无论您如何调整输出,输入或以文本表示的每一帧的长度,它仍然很糟糕。

第二次尝试

解决此问题的一种方法是增加抽象级别。 我们仍然使用Skyrim的世界模拟,但仅在最高级别上使用-地图,物体和地方之间的距离,演员的位置,NPC,在何处生成怪物等。这使我们得到了类似的结果:

在怀特伦之外

您从南部到达怀特伦。 有一个孤立的匪徒在等着你,手握斧头,随时准备战斗。

>杀死强盗

您举起剑并向匪徒冲锋。

最后一个秋千与匪徒的喉咙相连,他掉到了地上。 当您跪在他旁边并尝试拿走他的金子时,一根箭从膝盖不到一英寸的地方猛撞到地面。 您跳起来,看到附近一个小山丘上的一名弓箭手。

>杀死弓箭手
搜索强盗

现在,这里的游戏性要好一些,这种体验甚至可能会很有趣。 玩家可以去模拟世界中的不同地方,与人们交谈,寻找他们,并体验《天际》的故事情节。

但让我们面对现实吧,战斗是让Skyrim变得有趣的重要因素。 因此,“杀死强盗,杀死弓箭手”并没有削减它。 充其量,如果使用关于战斗的有趣描述,您将拥有更长的版本,例如“柯南杀死一切”。 不过,更有可能的是,在最初的几次战斗之后,玩家会感到无聊并退出。

这给我们带来了一个重要的问题:无论如何,让《天际》中的战斗变得有趣吗? 我们一遍又一遍地做同样的事情,每场战斗在很大程度上是相似的。 在第一个地牢之后,我们如何不对它们感到无聊?

答案是双重的:

  1. 您在战斗期间的代理机构水平很高。 在任何时候,您都可以前进,后退,进攻,防御,更换武器,跳跃,蹲伏,侧翼,攀岩,使用魔术等。这意味着您可以更好地作为一名球员战斗必须打架。 因此,您可以很好地体验乐趣 (如游戏设计的乐趣理论中所定义)。
  2. 战斗是高度不可预测的。 您永远不知道每场战斗的结果。 您可以连续三次与同一组敌人进行战斗,每次战斗的过程都会有所不同。 这意味着您将获得不同的奖励,这是使您“迷恋”游戏的重要因素。

Skyrim可以一遍又一遍地向您投掷类似的战斗,不仅不会变得无聊,而且是很好的娱乐! 尽管它具有重复性,但这并不是由于重复,代理和不可预测性的混合。

这就是试图将视频游戏和文字结合在一起的根本挑战。

  • 好的电子游戏总是有重复的。 从Pong到Tetris,再到Portal到Skyrim,所有游戏都是基于反复向玩家(玩家)抛出类似问题,从而使您能够更好地解决它。
  • 好的文字不能重复太多。 重复的文字很无聊。 尝试用有趣的散文写下超级马里奥游戏中前五分钟发生的所有事情。 不可能。

文字游戏通常通过两种方式解决此问题:它们要么尽可能避免重复(这使游戏更具智能性-所有情况和解决方案都是唯一的),要么将重复的游戏方式分解为一系列迷你游戏。 有关前一种方法的出色示例,请参阅几乎所有顶级传统交互式小说。 有关后者的示例,请参见精彩的巫术! 系列。

第三次尝试

既然我们已经了解到《天际》的游戏玩法主要围绕战斗,所以让我们尝试一下迷你游戏的方法(而不是更具智力,非重复性的方法)。

在怀特伦之外

您从南部到达怀特伦。 有一个孤立的匪徒在等着你,手握斧头,随时准备战斗。

>杀死强盗

强盗弯腰而死。

迷你游戏中可以包含一些文本,但是机制并不局限于文本。 在《魔法!》中,战斗迷你游戏由一系列有关打击难易程度的决定组成(以全面防御全攻的规模决定)。 但是我们可以使用的迷你游戏的设计没有限制。 它可以是简单的纸牌游戏,三消谜题等。

这可行。 我将以与巫术相同的方式购买Skyrim的移动版本!

但我也认为我们可以做得更好。 我对Skyrim的大部分享受是因为它是一个开放的世界,几乎任何地方都可能发生任何事情。 在“探索模式”和“战斗模式”之间没有切换。 与NPC聊天的旅馆可能会在稍后变成战术掩护点。 您可以在巡逻队附近进行机动,并在悬崖的相对安全范围内以远距离令人讨厌的方式击中他们。 等等。

这些都不能很好地转化为带有迷你游戏的文字解决方案。 因此,让我们走得更远。

第四次尝试

我们将再次调整抽象级别。 在我们幼稚的开始中逐帧进行显然是错误的举动。 而且,无论战斗是用文字描述还是通过迷你游戏来表现,“杀匪”显然会使抽象水平过高。

让我们从“杀匪”到基于战术的方法。 像这样:

在怀特伦之外

您从南部到达怀特伦。 有一个孤立的匪徒在等着你,手握斧头,随时准备战斗。

>杀死强盗

您到底想如何杀死土匪?

……用剑
>…弓和箭

您迅速将弓绳系好并放飞。 箭头在土匪的耳朵旁旋转。

这种方法创造了更多的选择,而不仅仅是“杀死”,但过了一会儿,它就没有太多乐趣了。 每个玩家都倾向于某种游戏风格(隐身,远程,近战,魔术等),因此实际上并没有太多选择。 对于弓箭手来说,最好的策略几乎总是“弓箭”或“潜行”。 另一个玩家会看到非常不同的战斗顺序,但这并不一定会使体验变得有趣。

因此,我们需要在较低级别为玩家提供有意义的选择。

第五次尝试

好吧好 让我们进行D&D风格的逐级战斗。

在怀特伦之外

您从南部到达怀特伦。 有一个孤立的匪徒在等着你,手握斧头,随时准备战斗。 你放开你的剑和方法。

>推力剑
摆剑

您的刀片移动很快,但是没有击中,就在强盗胸部的左侧。 强盗挥动斧头,轻轻劈开您的皮革外套。

推力剑
>挥剑

剑割伤了匪徒的大腿,他大喊大叫。 他试图从上方向您袭来,但斧头变宽了。

这开始看起来像玩家具有实际的代理权。 有许多可能的动作适合不同的演奏风格(剑士可以推,挥,滑,斩首;弓箭手可以针对身体的不同部位),这些动作可以以多种不同的方式进行组合。 玩家可以制定自己的战术!

但是这种方法存在一些问题。

  • 散文最终变得非常机械化。 它不像我们的第一个幼稚方法那样糟糕,但是它仍然是真正的作者永远不会写的东西。 “你做X,对手做Y。”重复。 那太无聊了。
  • 没有简单的方法来应对反应。 用剑击中或未中。 当然,接收方可以预见罢工,并且可以在当时进行防守(“假设防守姿态”或“加盾”),但球员通常讨厌这样做。 这意味着您可以利用机会(更好)进行罢工(损失更少)。 在某些情况下,这可能是合理的选择,但绝对不像是冒险。

所以现在看来​​我们已经搞砸了。 我们涵盖了整个抽象范围,没有什么能让我们想要的游戏正常工作。

这是我对游戏进行5年修补后发现的地方。 我几乎放弃了,以为至少(我自己)证明了没有办法用文本构建类似于天际的开放世界游戏。 甚至在理论上也没有。

我决定从这个“文字天际”项目中休息一下。 相反,我开始构建完全不同的东西。 游戏仍然是基于文本的,但是游戏的玩法更具程序性和心理性。 这是关于一个小组的生存。

那个项目中,我意识到文字故事是分形的。 在视频游戏中取消链接(需要稳定的更新方法),在文本中,我们实际上不需要坚持单一的抽象水平。

第六次也是最后一次尝试

让我告诉你我的意思:

在怀特伦之外

您从南部到达怀特伦。 有一个孤立的匪徒在等着你,手握斧头,随时准备战斗。

>在强盗处充电
使用弓箭

您在强盗上举起剑来。 他向后退了几步,当您进入射程时,他迅速向您摆动。

回跳
>闪避

你躲起来,土匪的剑在你头顶上方摆动一英寸。 这会短暂露出没有盔甲的土匪侧。

>推力剑
冲头侧面
忽视

请注意,“ charge”命令是一种战术命令,与斜杠或推力相比,它的抽象层次更高。 然后,土匪的第一个挥杆动作就是逐个动作。 但是然后,在挥杆还没结束之前,我们就更深了一层,玩家可以通过躲避(或阻挡或跳回)来应对这种情况。 而且既然成功了,我们将保持在较低的水平,玩家可以匪徒躲避的摆动中插入反推力。

现在,战斗包括从战术定位到瞬间行动的各个层面的许多选择。 这样一来,重复播放便会给玩家带来更多乐趣,因为相同的动作可以在非常不同的环境中执行。

由此产生的散文读起来就像人类会写的东西。 不仅仅是两个人交换损失,这是一次实际的剑术,每一步都有潜在的动态结果。 游戏玩法就像一本书一样,通过不同的抽象层次流动。

注意事项

这样就可以了:我向IFCOMP提交的微不足道的小害虫正与分形故事的概念一起在开放世界模拟中工作,以产生相对流畅,可读性强的文字冒险。 一些玩家甚至认为,在我所知道的部分中, 不是按照程序生成文本的。 不过,更重要的是,玩家往往会玩得很开心。

无关紧要的小害虫最终形成的外形非常适合休闲游戏,尤其是在移动设备上。 就技能而言,这并不费力。 它可以在短时间内或整体上消耗。 它提供了机会元素。 它使您可以阅读自己独特的故事,并以自己的步调探索世界。 它不需要您着眼睛就能看到屏幕上正在发生的事情-只是文本和一些静态绘画。

简而言之,您可以在等公交车时阅读和播放。

我确实真诚地认为,这对于许多独立游戏开发商而言可能是变革性的(其中一些人甚至还没有将自己视为游戏开发商)。 正如我之前说过的,这不是一个由单个作者-作者-开发者组成的系统。 与Twine相比,进入门槛很高。 但是,即使是最简单的2D平台程序,其价格也相对较低。

  • 您可以将开发人员从图形编程和60fps性能优化转移到核心机制,模拟和自然语言生成。 请记住,您不再有16ms的帧预算,因此您的仿真和AI会花费很多时间。
  • 您的艺术家可以花更少的时间来填充环境细节(这里是草皮,那里是墙面纹理),而将更多的时间想象在有趣的世界和角色上。 它们也不受渲染引擎功能的限制。 如果他们可以描述它,则可以使用它。 一支50万矮人的军队从山谷中流下来? 当然。 在Ringworld类型的结构中,您可以看到数百万公里外的地形? 去吧。 Lovecraftian / Escheresque / non-Euclidean建筑? 没问题。
  • 设计人员不必局限于单一细节。 相反,他们可以让玩家在一场比赛中既是将军又是士兵,这绝不是问题。 与图形相比,使用文本实现的内容要少得多。 添加任何游戏机制突然变得便宜得多。
  • 一个小的团队可以创造出可以满足Skyrim规模的产品。

我迫不及待地想知道这种游戏开发方法的去向。 我将根据自己的进度更新此博客和Twitter帐户。 如果您希望减少噪音,可以订阅我创建的邮件列表,以使您在关键时刻保持最新状态。

如果您错过了链接,那么这里是微不足道的小害虫,这是它在IFCOMP上提交的内容。