长期运行的实时战略游戏多人游戏方面的注意事项

5
我正在制作一个实时太空策略游戏克隆版,但原版没有多人游戏选项。我想要添加多人游戏。
游戏本身比较长:需要10-15小时才能完成一次游戏。这非常长,我不想强迫玩家连续玩或因崩溃/停电而失去游戏状态。
类似的游戏是如何解决这种问题的?像单人游戏那样保存多人游戏吗?
在单人模式下,玩家可以暂停和加速模拟时间(在暂停模式下,玩家仍然可以下达命令,在星球上建造等)。
这个功能在多人模式下应该怎么翻译呢?
假设有两个以上的玩家(额外的AI或人类玩家),其中一个玩家攻击另一个玩家,将游戏转换为太空/地面战斗。这些战斗也可以被暂停以下达命令。
其他未参与的玩家应该怎么处理?他们应该等待吗?还是只能在自己的领土内操作?
更新:关于游戏的一些细节。
我正在克隆this游戏。 克隆版已作为开源发布,因此很可能会有人创建作弊版本。这是一个问题,但现在不是那么重要。我认为通过在玩家之间移动游戏状态和控制来解决它:首先在第一个玩家的机器上运行,然后移动到第二个玩家等等。
我想更加强调上面的第三个问题:
其他玩家在两个玩家进行战斗时应该做什么?
战斗在不同的屏幕上进行,与王国管理屏幕不同。 在单人模式下,战斗会自动停止游戏世界,玩家和AI都无法在战斗期间管理其王国。
7个回答

5
历史表明,任何允许玩家在元层次上互动的功能都会被滥用,甚至超出了它可能提供的好处。也许可以让玩家事先达成“游戏计划”,比如“连续四天每天玩4小时”或者“每周三玩3次,每次5小时”。问题似乎与《魔兽世界》团队副本非常相似:召集X个玩家共同完成实时性任务,这需要多个会话并且比一般游戏时间长得多。当然,这需要有一个领导者角色,热点位置的保存等操作,这很难做到,并且所有人都要合作。
如果有人发现自己在前三个小时内表现不佳,你怎么能指望他们回来再承受12个小时的煎熬呢?难道让退出者输掉比赛吗?这意味着勾结,你为我赢一个,我为你赢一个。 (两个玩家在6个小时内各赢了一场-比全部玩完要好得多)。
所有这些都已经经过深入尝试。如果存在一种通过作弊来破坏游戏的方式,那么人们肯定会这样做,尤其是在PvP的情况下。
成功的多人游戏要么有足够短暂的玩法时间(一晚上以下),要么具有明显的可中断(已完成阶段),要么不是实时的。遗憾的是,我看不出还有其他的解决方法。
长话短说:我认为一个15小时的PvP即时战略游戏没有任何意义。对于单个玩家而言,这意味着比固定质量的电脑对手更强。你尝试,学习,最终击败它。对于PvP,如果在前5分钟内效率低1%,面对同样技能水平的对手,你最终肯定会输掉比赛。
一个游戏的价值是以每小时的乐趣度量的。

也许我应该缩短可能的游戏时间,通过减少星球数量、从更高的技术水平开始玩家和减少建造/研究时间。我正在克隆的游戏有一个带多人模式的续作——我从未玩过。也许它的属性可以提供帮助。 - akarnokd
续集不幸遇到了类似的问题。我认为我们将采用“每小时愉悦度”方法来设计多人游戏。谢谢。 - akarnokd

2

将工作暂停融入游戏玩法中。在游戏开始时给每个玩家一个暂停,然后强制他们用游戏货币购买暂停。

限制连续暂停的次数,一个玩家的暂停会阻止其他玩家在10分钟内暂停,除非其他玩家以惩罚性价格支付。

还要限制每个暂停的长度,并允许其他玩家支付费用来取消暂停。


1

Civ VI是回合制游戏,但在多人游戏中会实时进行(每个回合有一定的分钟/秒数)。因此,它面临着相同的挑战——4个或更多玩家进行永久持续的游戏。它通过允许玩家保存游戏并稍后回来解决了这个问题。当您创建服务器时,可以选择开始新游戏或从保存的游戏开始。如果您从保存的游戏开始,则每个玩家都可以选择他们之前拥有的文明,然后游戏将从他们离开的地方继续。


谢谢。不幸的是,在我开始处理多人游戏部分之前,我还有很多事情要做。 - akarnokd

1

我认为你不能那样做。

你不能制作一个允许暂停和下达命令的多人实时战略游戏。 玩家会暂停,下达命令,等待其他玩家的反应,一旦想要更改任何内容就立即暂停并下达新的命令。

这将不是实时战略游戏,而是混乱的回合制策略游戏。


没错。我认为仍然可以进行一次全局暂停,只能由游戏主机发起。这将不允许任何对等方进行游戏状态更改。 - akarnokd

1

我从未见过一款游戏解决这个问题。你可能会允许玩家投票推迟游戏并在以后恢复它(即保存功能),这可以使长时间游戏会话变得更容易忍受,但我认为在多人游戏中暂停不起作用。


暂停功能更像是一种烦恼,因为玩家可以发布命令和进行修改,但必须等待事件展开直到取消暂停。 - akarnokd

0

你可以考虑让不在键盘旁的玩家有能力对某些情况进行反应。由于这些是预设反应,它们不会像实际待机玩家那样好,但也允许游戏在没有玩家可用的情况下继续进行。

我正在开发一个游戏,它允许您为角色编程,以便如果您在游戏中与另一个玩家交互,而您不可用,则您的角色仍然会做出反应。

我使用简单的宏来帮助玩家规划他们的角色反应。我制作了一些非常通用的宏和一些非常复杂的宏...例如

If [player1]
Is [attacked]
And Health [<30%]
Action [DefensiveStance]

这样即使不是所有玩家都可用,游戏也可以继续运行。相反,根据玩家在“AFK”脚本编写方面投入的努力程度,他的团队表现就会越好。

当然,这还在进行中 - 我们将在以后看到它的表现如何 :)


我曾经看过一场关于如何使用人工智能在Quake比赛中暂时替代一个延迟的真实玩家以确保连续性的演示。我的游戏更像是一个下达指令-等待完成的风格。 - akarnokd
我认为基于发出命令的游戏会非常完美,你只需要提供一系列事件列表(受到攻击、资源不足等),然后再提供一系列响应列表(将10%的单位移动到防御位置、收集更多资源)。你需要保持逻辑简洁(不像第一人称射击游戏那样反应更加复杂)。 - hugoware

0
你可能想考虑一个“阶段性”的系统。每个阶段可以被视为一个单独的暂停。玩家可以在每个阶段发出指令,然后执行这些指令。在第一阶段发布的指令将由单位在第二阶段执行。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接