如何确保RTS中的程序级别合理?


10

我已经看到对称性和连贯性在RTS关卡设计中很重要,但是我很懒,并且想做程序生成的关卡。

通过程序为RTS创建关卡时,如何确保产生公平的竞争环境?


4
随着年龄的增长,它逐渐被掩埋,但我建议您查找有关《帝国时代》游戏中随机地图生成脚本如何工作的信息。这些是文本文件,玩家可以编辑以描述如何生成不同类型的冲突地图。我记得他们有办法放下特定地形/道具的补丁和集群,公平地放置诸如资源之类的东西,这样就可以保证它们可用,并且可以在地形上刻画路径以确保玩家可以互相接触。了解他们的食谱是如何工作的,应该给您一些自己的想法。
DMGregory

2
您没有提及您的RTS是单人游戏还是多人游戏。如果是单人游戏,则可以通过更改AI行为以匹配玩家的技能来实现某种程度的平衡。换句话说,AI可能比玩家拥有更多的资源,但是游戏会根据玩家执行攻击或利用其资源的积极程度来调整其对这些资源的积极使用程度。
Mark Ripley'6

1
要添加到什么马克说,有什么样的平衡,你找谁?您正在使用哪些地图来完成?
Nicol Bolas

Answers:


26

我个人认为关卡设计中的对称性很无聊,我认为公平的关卡并不一定需要这种对称性。对称性是通过以某种方式为每个玩家逐字地反映级别来确保每个人都可以访问相同资源和相同瓶颈的一种方式。我认为重要的部分是(大致)获得相同的优点和缺点。与其说对称本身,不如说是对称性。

我还认为,平衡各方的力量和机会的游戏是无聊的。您显然不希望这些因素完全失衡,但是我认为这可以创造出有趣的比赛动态,为双方提供稍有不同的机会和障碍。

这就是我在构想问题的实际答案时所需要的设计上下文:


如果对称性确实对您重要,您可以简单地以程序方式生成一个级别的块,然后在两个轴上镜像该级别。您生成的块基本上是该级别的四分之一,并且您对其进行镜像,因此每个象限都相同。例如,具有高度分散的资源沉积的程序高度图:

在此处输入图片说明

但是正如我上面所说,这似乎很无聊。一种更有趣的方法可能是程序性地生成整个地形,但是在放置资源时,请确保将每个象限限制为具有相同的数量(在一定范围内以提供某些可变性)。您可能希望根据资源的重要性,将各种资源类型的放置偏向各个区域(随机,靠近起点,靠近边界)。例如:

在此处输入图片说明

您可以对生成的图像进行分析,以尝试找到特征边缘,例如狭窄的峡谷,这可能被视为瓶颈。例如,如果它的瓶颈或类似可检测的地形特征比其他地图少得多或少得多,则可以决定重新映射地图一部分的地形生成。您可能还希望进行类似的地形分析,以确保以某种方式可以访问每个放置的资源。

例如,您可能决定重新滚动左下象限,因为它的水过多(红色),或者包含绿色的象限,因为它们在战术上太有利(潜在的峡谷瓶颈):

在此处输入图片说明

您也可以选择手动指导功能生成;您可以手动放置某些元素(例如,将河流划分出关卡的各个部分或关键资源库),然后运行程序生成,以便它保留手动放置的关键平衡功能,同时仍然提供您想要的有趣且有机的品种程序生成。

例如,生成的地形保留了人工放置的河流,将河流分为两半,森林覆盖了树木,在基地周围提供了额外的防御能力:

在此处输入图片说明


2
谢谢,这将与我的块系统一起很好地工作。人们似乎对我的“但我很懒”的说法感到困惑。我不是艺术家,我发现噪波和网格生成更有趣。
James Pae

2
@JamesPae:“ 我不是艺术家 ”。关卡设计与艺术无关。这是关于游戏性的。所以问题是,您喜欢设计游戏吗?
Nicol Bolas

8
@JamesPae如果您无法手工制作有趣的关卡,您将很难使程序化生成的关卡变得有趣。我建议您至少手工制作一个级别,这样您才能在编写发电机之前学习有趣的东西
Evorlor 2016年

2
@Evorlor他说他不喜欢它,不是说他做不到。为什么每个人都一直忽略这一点?
达沃

5
为什么每个人都这样按字面意义对待一切?他显然是在跟那句话开玩笑。我了解OP的观点,是的,他们可以手工制作几个关卡,但那时您仍然只有创建的关卡。如果您花同样的精力制作一个好的关卡生成器,则可能有无限多个关卡可供使用。人们有不同的心态和意见。有些人可能想手工制作更高的关卡,有些人可能会真正喜欢制作一个很棒的关卡发生器。
JamEngulfer

7

在某些情况下,可能有可能依靠玩家自己使用图块操作机制来构建平衡的不对称地图。

在频谱的一端,您可以通过选择并放置地图图块来允许玩家部分或全部创建地图。有很多不同的方法可以调整:

  • 玩家从一套普通的瓷砖中选择
  • 图层从个人瓷砖中选择
  • 通过绘图阶段选择图块
  • 可能会通过场景预先修复一些图块(即始终在地图中间生成一条桥接的河流)
  • 玩家从中央市场购买一些资源的瓷砖
  • 玩家可能会也可能不会被允许手牌

磁贴操纵范围的另一端是允许玩家操纵地图磁贴。在此解决方案中,游戏从初始地图开始。通过使用任何其他答案,初始映射可能是对称的,也可能是“足够公平的”。

接下来,发生地图操纵阶段,其中玩家可以执行以下一些操作:

  • 旋转瓷砖
  • 交换磁贴(相邻或其他)
  • 镜像瓷砖
  • 推动一排或一排瓷砖(会掉落到边缘的瓷砖)

这些操作可以一次执行一次,在这种情况下,一个玩家将有机会对另一位玩家的操作做出反应,或者该玩家可能将要执行的更改列表排队。另外,您可以允许玩家操纵整个地图,或将事物限制在其起始区域。

这种方法的缺点是需要防止最终结果出现不良后果,例如,操纵不可逾越的山脉以使部分地图无法访问。针对此缺陷的可能解决方案是:

  • 检查潜在的动作并禁止导致非法结果的动作
  • 允许所有行动,但撤消任何非法行为
  • 建造瓷砖,以防止任何非法移动
  • 设计其他游戏机制(例如移动),以使任何移动均不违法

2

让您的地图生成算法通过生成一个关卡,对其进行镜像并将每个玩家放在一侧来生成对称关卡。通过在x轴和y轴上镜像可以创建四人地图。

这样,对于所有玩家来说,地图都将同样好(或坏)。您需要注意的一个副作用是,这意味着玩家在探索自己的位置后,会意识到其他玩家的位置以及地图其他部分的布局。

另一种选择是生成没有此对称技巧的地图,但随后将整个地图显示给玩家,并让每个玩家自由选择起始位置。


1

一种方法是使用其他因素来平衡地图。您可能可以通过使用某些地图分析算法并为被认为处境不利的位置提供额外的启动资源来自动执行此操作。或者,您可以将播放器本身用于此步骤。当前的一个示例是在Offworld Trading Company(OTC)中以揭露模式使用反向拍卖来建立您的初始索赔(即,选择起始基准地点):

随着时间的流逝,早期成立的起始债务减少了。如果最后2名玩家花费足够长的时间才能最终获得开始资金。一旦只剩下一个尚未建立总部的玩家,价值便会停止变化,并且该玩家不再从等待中获得收益。

我不记得是在3 Moves Ahead还是Game Design Round Table访谈中,但是其中一位Soren Johnson(开发人员)说,这个机制本质上将地图问题从“我可以先找到最佳位置”变成“地图上第二好的位置有多好?”

好处是此解决方案允许高度不对称的地图。缺点是,至少在开始时,整个地图都会显示给所有玩家。OTC方法还可以揭示玩家的基本位置。其他机制(例如盲目竞标)可能会避免透露基本位置。

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.