如何使用程序生成来支持探索机制?


9

程序生成似乎将是开放式冒险游戏的绝佳工具,因为它将提供几乎无限的世界。但是,我注意到大多数成功的程序生成游戏的类型完全不同。我能想到的唯一使用程序生成进行探索的游戏是《无人深空》,但未能达到预期,部分原因是程序内容虽然庞大,但未必会像探索游戏机制那样为游戏增添价值人们以为会。

从尝试制作程序生成游戏的尝试以及我在其他游戏中所看到的,我看到了三个阻碍冒险游戏中程序生成的问题,而且我看不到任何解决方案:

  1. 程序性地形可能很简单,但程序性讲故事却并非如此。我都尝试过。一些简单的规则可以使事物看起来像高山或城市,但是除非您有某种探索,否则很难围绕它进行游戏。但是,除非有一张地图可以使用,否则很难设计任务。您如何寻求一个可能不存在的地方?

  2. 程序性地形提供了没有密度的缩放比例。当然,程序性的山峰可能具有所有的纹理和山脊,使其具有真正的山峰的复杂性,但是,除非在该山峰上有很多事情要做,它的乐趣在哪里?程序生成的大部分优势在于,很容易将某件事情变得庞大。如果您将一个世界变得过于庞大而又没有投入足够的新东西去体验这个世界,那么它将感到无聊。

  3. 经验不一致。冒险游戏的许多乐趣都达到了“那一部分”。演练,教程和Wiki通常依赖于玩家都在同一世界上玩同一游戏的事实。如果体验如此个性化,那么与他人分享您对游戏的兴奋就更加困难。想象一下,如果世界上没有其他玩家玩过具有相同位置,角色或生物的游戏,那么就分享一个关于游戏的模因。

牢记这些问题,也许您会想到其他问题,还有没有办法在不破坏探索的情况下将程序生成纳入游戏?也许某些有限的程序技术可以使冒险游戏从中受益,但不会妨碍故事的发展?


1
“ Bur失败了”,它以大约10人的团队销售了大约200万张,这在大多数情况下都非常壮观。在发行时,它可能在媒体和主流媒体上受到的欢迎不多,并且由于退款而失去了额外的销售,但是直到今天,它仍然是玩家极为满意的核心。它将更容易被称为“热门”。我们绝对应该从中吸取教训,即很容易超额出售“无限的”程序内容,与玩家沟通和管理期望至关重要,但称它为失败则是忽略了它所取得的非常真实的成功
DMGregory

1
@DMGregory我要说的是,它朝着所有人发布之前的期望下降。对于这么小的团队,这场比赛仍然令人印象深刻。但是过度夸张的发布状态和错误的承诺(多人游戏,内容丰富,复杂的故事)使大多数人无法接受。
PSquall

抱歉,如果“失败”有点苛刻,我可以回头再澄清一下。正如@PSquall所说,我在考虑更多期望。这是一个令人印象深刻的游戏,但它似乎是将程序生成应用于勘探力学的困难的一个很好的例子,因为它被作为这种无尽发现的游戏进行销售。
tyjkenn

Rust具有程序生成的级别,您可以进行探索。
Big T Larrity

1
@Stormwind听起来像是评论,而不是答案的种子。;)
DMGregory

Answers:


3

程序生成环境是游戏设计师数十年来一直在尝试的东西。在这方面向前迈出了一大步。过去,我们的股票技术工具箱增长了很多。

但是程序性讲故事却不如此。这是一个尚处于基本阶段的领域。

程序讲故事的一种方法是拥有一系列规定的任务模板,并将其散布到整个过程生成的世界中。这些模板通常具有许多变量,这些变量从环境中的预定义列表或适当的对象中随机填充。通常,玩家会很快注意到这些重复出现的模式。在那一刻,生活世界的幻想破裂了,所有的沉浸都消失了。

另一种方法是依靠紧急游戏。您无需设计剧本,而是设计完全由行为规则驱动的AI角色。这些规则控制着与环境,其他AI角色以及与玩家的所有交互。他们希望这将导致合理的社会行为,从而导致产生有趣的故事。这种方法的主要问题是很难控制和平衡。最有趣的故事可能以玩家甚至没有注意到的方式发生。要使这些AI角色以使玩家获得最有趣的游戏体验的方式执行这些交互可能会非常困难。

矮人要塞Dwarf Fortress)是其中一个做到这一点的游戏。有没有让社区谈论的有趣模因?你打赌它有!有趣的是,其中大多数是由于新兴游戏系统的故障和怪癖而产生的。其中有恐怖的杀手鲤鱼(AI控制的鱼,在早期版本中太过激进和压倒性),Catplosions(猫的种群爆炸,由于矮人与它们紧密相连而难以防止)或咒语“迷失了乐趣!”(一种应对因出现的不可玩的情况而产生的挫败感的方法)。因此,当每个人的经历都不相同时,您担心玩家将无话可说的担心是没有道理的。相反:新兴的游戏玩法使玩家有更多的话要说,因为他们想分享自己经历过的独特而有趣的故事。


关于紧急游戏的要点。这可能是我需要进一步研究的东西。我尝试了模板方法,但遇到了与您描述的问题相同的问题。我对使用紧急游戏的犹豫不决是实现的困难以及故障和怪癖的不可避免性,但是您提出了一个好点,即后者可能不是问题。
tyjkenn

5

我认为程序性“冒险”游戏(根据某种定义)的一个很好的例子是Terraria,程序性内容促进了探索。我认为它可以有效地处理您概述的许多痛点:

程序性地形可能很简单,但程序性故事却并非如此。

“评书”?Terraria并没有真正做到这一点。但是它确实有进度和实际任务(我不是在谈论钓鱼任务)。它通过多种因素来实现这一目标。

进度通常不基于到达单个特定位置。Terraria是一款关于东西的游戏,所以进步是基于得到东西:收获资源,打开箱子,杀死怪物以获得战利品。当然,资源,箱子和怪物都是基于位置的,但这是通过非常广泛的方式完成的。有很大的生物群落,在整个这些生物群落中,您会发现随机存在的特定于它们的任何资源。

有些进度元素是基于特定位置的。但是这些总是在“特定”位置生成。漂浮的岛屿总是漂浮在天空中。地牢可以从世界的一侧进入,而丛林在另一侧。腐败/深红色地区很多,几乎不可能错过它们(除非RNG对您特别不利)。

Terraria中对进展至关重要的最不稳定的地方可能是丛林神庙。甚至那也不是您可能会错过的东西。

程序地形可提供无密度的缩放比例。

这一切都取决于您生成的内容。Terraria的早期版本对此存在问题。地下区域可能变得非常“友好”。

Terraria(尤其是1.2和1.3)解决了这个问题,使它们难以置信地堆满了东西。总会有一些新事物偶然发现:破烂不堪的房屋,箱子,冰冷的洞穴,废弃的铁轨,地下湖泊,地下沙漠,大理石洞穴等。

通过多样性在Terraria中创建密度。您不必重复一遍又一遍地重复相同的内容,而是重复新的内容。您拥有足够多的内容变化,播放器不会太无聊。

Terraria特别要做的是建立世界的基本地形。然后,世界引擎进入并随机将事物放置在各个地方。这里有一个大理石洞穴,那里是一座破烂的房子,那里是一座神rine。冰冷的洞穴在那儿,这里有一片大沙漠。该系统旨在能够在世界任何地方使用这些功能。这样可以确保它们具有足够的密度,不会让您感到无聊。

现在,世界引擎并不愚蠢。它会根据距世界中心(您第一次生成的地方)的深度或距离来偏向某些要素。但主要目标是确保游戏中充满了很多新内容。

为何熔岩湖上方栖息着一座破旧的房子可能并没有多大意义,但玩家会意识到这不仅仅是另一个洞穴。

但是,只有在游戏经验允许的情况下才能实现多样性。Terraria是一个开放世界的游戏,您可以在其中构建很多东西。但是它也有一个以行动为导向的战斗系统,可以提供许多方面的可能发挥。有四个“职业”(由您当前所穿盔甲的防御等级决定):近战,远程,魔法和召唤。在大多数此类课程中,都有多种游戏选择。

远程角色具有多种武器类型,但他们还需要处理一个事实,即它们承受的打击不多,因此需要机动物品。近战角色需要能够提高命中率的物品。魔术角色需要处理法力回复的物品。依此类推。

这里有两个重要的元素:游戏体验的多样性和缺乏强制的上课制度。后者非常重要,因为这意味着如果您找到了好的近战武器或远程武器,即使您没有远程或近战装甲,仍然可以使用它。您可能不像专用构建那样有效,但是对您而言并非没有。您可以随时尝试一下,看看是否喜欢它。

另外,这意味着“类”的改变仅需一个装甲开关。如果您拥有良好的近战武器,则可以制作一些近战装甲并尝试近战。如果仍无法解决,请切换回您的护林员。

这样,Terraria创建了一个游戏系统,其中探索的多样性鼓励了游戏的多样性,因为游戏体验中有很多选择。反之亦然:游戏的多样性使探索的多样性成为可能,因为它允许创建大量的物品。

经验不一致。

这是多样性和规模相遇的地方。Terraria的整体游戏体验达到令人惊讶的一致性。尽管每个世界都不尽相同,但比赛的规模和范围意味着您不太可能在重要事项上有所欠缺。

如果您感兴趣的话,您将找到足够的黄金来制造金装甲。如果您感兴趣的话,您将找到足够的蜘蛛网来制造施法者长袍。等等。有足够数量的东西。而且由于事物的多样性,如果您找不到一种特定的事物,您可能会遇到类似的事物。

此外,您必须穿越多个检查点才能移至其他进度序列。除非您可以使用设备的丛林/地牢/ EoW / BoC区域,否则要在黑社会中生存是非常困难的。除非您在黑社会中与boss战斗,否则您无法将自己的世界转移到Hardmode。在杀死所有三个机械凸台之前,您无法从丛林中收获绿藻。依此类推。

由于存在这些检查点,因此建议您收集更多资源,直到可以通过它们为止。这样可以确保您有机会穿越各种战利品,从而确保相对稳定的功率水平。

现在,这并不意味着不会发生不一致。糟糕的世界创造有时会使您陷入困境,或者您发现自己陷入了无聊的世界。但是,由于Terraria的大量多样性,这种情况很少见。

世界创作者对您而言最糟糕的事情就是为您提供许多相同的资源。


2

如您所说,过程生成是创建具有很多可能性的开放世界的好工具。明显的缺点是,在许多方面都很难保持平衡:要么感觉是空的,要么局促的,感觉“越过顶端”或呆板...

良好的冒险游戏要有气氛,尤其是那些开放世界很大的游戏。在这方面,我最喜欢的是哥特式1和2。我想,您永远无法仅凭程序生成的环境来重现这种气氛。

处理您观点的唯一方法是以某种方式规避它们。

程序性地形可能很简单,但程序性故事却并非如此。

您可以采用Minecraft创建生物群系的方式。也许是城市生物群系,山地生物群系,沙漠生物群系。然后用“预先设计的”城市结构填充城市生物群落,添加重要地点,然后添加任务并将其绑定到附近的山丘生物群落,通过街道连接那些,并将所需的地牢结构添加到山丘生物群落。这样,您可以在生物群系周围添加其他随机结构,可能会有掠夺,以鼓励更多探索。从技术上讲,它仍然是通过过程生成的,但是您需要进行大量工作来进行结构,任务以及断言每个所需生物群系中的所有所需结构均已生成。Starbound做类似的事情,您必须从其他星球收集资源,或者创建一个要探索的地牢实例。

程序地形可提供无密度的缩放比例。 

艾莫天际(Imo Skyrim)有很多“空”的地方。只是从一个城镇到另一个城镇走很长时间,但是您总是有事要做或看。美丽的花朵,山脉或史诗般的建筑,然后沿路收集东西,杀死野生动植物或发现另一个空的小屋。是的,《天际》世界是经过设计的,但是如果内容足够多,您可以鼓励玩家沿着轨道随意走,只有随机放置的建筑物,敌人和东西。再说一次,我认为这很难平衡,但我宁愿局促的世界至少要局限在空虚的世界上。

实际上,这就是我认为“无人深空”做错的事情。我没有玩过,但是看着它很无聊。在地球上走来走去,一切似乎毫无生气。您有四处走动的愚蠢动物,也许有四只同一种动物,有一些资源,很少有技术或外来词。就是这样 没有真正的大结构,没有大群的动物,它们之间也没有相互作用。

经验不一致。

是的,这很可能无法解决。正如我所说,气氛是冒险游戏的源泉。另一方面,玩家喜欢享受自己独特的事物。也许一个玩家必须在一个布局复杂的房间里与Boss打架,否则附近地牢中的其他敌人可能会冲进来,而另一位玩家却能够用这个完全相同的Boss来消灭狗屎。这些可能是玩家想要分享或吹牛的东西。它也可能鼓励创造力。


我想到了使用类似于Minecraft生物群落的工具。我看到的问题是,人们主要是玩Minecraft进行建造,而不是进行探索,而程序性地形更多地充当了建筑的基础和资源。但是,您确实提出了使用预先设计的城市的想法。预先设计好的结构的程序拼凑可以提供仍然有意义的任务。
tyjkenn

0

您误解了程序生成。这并不是将噪声和网格生成器拍打在一起。大多数成功的程序生成游戏都使用某种预先设计的体系结构。

让我们看一些例子。首先,Spelunky。几乎每个人都赞扬它,并使用了程序生成。它使用4 * 4地图工作,它首先选择了一条从上到下的路径,然后将它们填充到预制房间中,并对它们进行了较小的更改。这使游戏每次都感觉新鲜和公平,但始终可以完成。

另一个例子是多维数据集世界。它主要使用(低频)噪声发生器,但它还向世界添加了预定义的功能,例如巨大的整体式建筑(如悬崖和水上建筑)。

如果您希望游戏的故事采用程序生成,则只需看一下前四个Elder Scrolls游戏,尤其是前两个,Arena和Daggerfall。设计师手动创建了每个重要的地牢,但其他地牢是随机生成的。

是的,体验并不一致,但在其他游戏中也不一致。大多数游戏会有更好和更坏的时刻。


0

管理过程世界生成和游戏平衡的复杂性可能会超过收益。proc gen的主要早期好处是可以长期节省开发人员的时间。仅在最近几年才因其以外的属性而受到赞誉(尽管“ 精英”和“ 俘虏”是可实现的可玩性的很好的早期例子,即使它们不是纯粹的程序性的)。

管理复杂性的最佳方法是构建工具来为您完成此任务。当前,我们花费大量时间手动微调参数,以使我们能够构建所需的过程世界。新的生物群落,新的参数。新的任务/故事类型,新的参数。这些过程背后的模式只有在经过更长的构建过程世界之后才变得清楚,然后这些模式便使我们能够构建工具来提高工作效率。(在任何开发领域都是如此。)

由于我们每个人的发展都不同……我建议您以足够的手动方式尝试一下,以使这些模式开始为您解决经常要解决的问题。一旦完成,您将开始构建支持该工作的工具。确实,这是相当前沿的知识生成。

您提到的那些参数,无密度扩展,经验不一致,都可以通过适当的(运行时或编译时)自动调谐器解决。故事管理的复杂性可以通过结合图论和叙事理论的丰富知识来解决。


0

程序性地形可能很简单,但程序性故事却并非如此。

程序性地形显然使您可以使用地形。这还不错,也不是唯一可以生成的东西。如果您使用类似于城市建筑游戏(如Anno或Impressions Games)的规则,则可以生成地牢ala Roguelikes,也可以生成城市。

但是地形不是游戏玩法,因此您需要添加适当的游戏。

建立一个动态的生活世界实际上并不难。

X3 Albion / Terran就是最好的例子。它甚至可以与建筑工地进行交易,以获取资源和创造产品;它还具有太空战斗游戏,玩家可以与海盗大战。它具有策略4X的特质,有派系冲突和较大的舰队战斗,可以很好地与经济。

您如何寻求一个可能不存在的地方?

过程生成可以提供您可以使用的分类数据。当它创建一个洞穴或山脉时,可以这样标记该区域。这可用于寻求用怪物填充该区域的任务。我相信这就是矮人要塞冒险模式生成任务的方式。在Minecraft这样的丛林生物群落中,您可以生成用于任务的特殊草药。在一个古老的废墟地牢中,您可以拥有一个特殊的人工物品以完成任务。

程序地形可提供无密度的缩放比例。

如果您想超越程序生成,那么您正在考虑用户生成

想象一个世界,玩家可以在深度开发和物流以及4X风格研究中以Factorio风格创建自己的个人帝国。

现在,假设所有玩家将他们的帝国上传到一个可以探索的共享世界。

人们可以探索玩家帝国及其技术的废墟。

人们甚至可以与自己的帝国对抗由AI控制的上载玩家帝国。

用户生成了一个真正的探索游戏。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.