如何将《文明》等策略游戏的技术应用到开放世界游戏中,为玩家的行动添加更多意义和一致性提供了一些建议。关键是减少CPU使用来跟踪更多的单元,或者至少以一种不会显著增加使用的方式来这样做。他的一个建议是不要删除玩家看不到的npc或其他单位,而是在后台运行更简单的模拟。Jenner解释道:“我们可以移除npc背后复杂的动画、物理和控制系统的AI。“相反地,我们需要保存一组描述角色高级状态的数据,如位置,库存,外观等,并在简单的代码中运行这些数据。”
与此同时,玩家与环境之间的互动可以被描述为一系列简单的逻辑规则,而不是复杂的模拟。Jenner补充说,“这可以极大地解决我们的CPU和数据瓶颈,因为这个简单的系统很轻,而且只用于永久加载的数据。”他还补充道,在后台运行的低细节npc需要比之前在玩家身边运行的高细节角色更新得更少。根据游戏和世界系统模拟,这些npc也应该在不出现在屏幕上时整合到一个低细节的角色中。Jenner提到了策略游戏中的军事单位,在这类游戏中,高细节只显示了几个单独的士兵,但作为一个单一的对象,士兵的数量被记录得很低。“通过用静态数据描述动态世界,我们可以避免完全模拟,”他继续说。他以Reflection 2011年推出的产品《司机:旧金山》(Driver: San Francisco)为例,在那里,数千辆汽车按照预先设定好的路线行驶,这样它们就不会相互碰撞。当汽车靠近玩家时,一辆真实的汽车就会沿着特定的路线行驶。当玩家离开他们时,数据根本不会被触动,但汽车仍然在行驶,因为时间在流逝。
在CPU占用成本低,无需人工智能、碰撞检测或车辆仿真代码即可移动数千辆车辆。当然,Jenner也承认:“以这种方式进行互动世界模拟的问题在于,特定单位没有任何反馈,它们的移动在游戏开始前就已经确定了。”在《Driver》游戏中,Reflections通过移除特定的车辆,并在需要时使用更传统的AI控制来替换它们。这在NPC背景运行时创造了半确定性模拟,但在玩家采取行动后会实时更新。“如果玩家参与附近的枪战,但不接近全国人大叫high-detail状态,我们可以发送一条消息到所有NPC,给他们一个更新输入一个特定的AI国家应对新消息,”詹纳解释道。如果这改变了NPC的行为,他们便能够计算出新的固定路径并移动到不同的位置。”“这是减少更新频率的一个极端例子,尽管每次更新都很昂贵,但我们能够让不同的单位暂时搁置一段时间,因为它们能够实现‘想去’的功能。”
Jenner承认,在开放世界中添加大型模拟仍然需要大量的处理能力,而实现这一点的一种方法就是使用云服务。由于半确定性数据变化的频率较低,较低的带宽连接可以为数千个单元提供准确的模拟信息。“云服务是更新低细节、大规模环境的理想选择,然后我们可以将整个数据反馈给玩家计算设备,以处理高细节模拟,”Jenner说。“云计算让我们能够继续进行大型复杂的模拟,并同时呈现给玩家。就共享的、不断发展的世界活动而言,这种可能性是无限的,而世界本身也会对环境的变化做出反应,即使玩家并未参与其中。”当然,这些只是冰山一角。虽然使用这些建议可以创造一个更可持续的世界,但还有其他好处为了最大化全球范围内的即兴创作的好处,更多的领域,如故事、关卡设计和美术制作都需要适应这些方法。“将游戏世界置于游戏玩法的中心可以增加玩家体验的多样性和凝聚力,并增加他们所做决定的重要性。一个真正真实的世界不会让人感到空虚和无聊,我们可以在不牺牲小规模详细模拟体验的前提下增加深度。”