如何有效优化一款模拟游戏

返回上一页    来源: 给力游  发布时间:2015-05-04 11:14:46  浏览次数:3673

导读:不久前我被问到一个关于优化模拟游戏的问题。另外一个开发者想知道:是否存在比调整和游戏测试更好的方法?

不久前我被问到一个关于优化模拟游戏的问题。另外一个开发者想知道:是否存在比调整和游戏测试更好的方法?他们正致力于自己的一款模拟游戏,并且非常担心调整与游戏反复进行的循环过程,特别当这样的循环速度并不是特别快的时候—-模拟优化问题只会在玩了一段时间后才出现,而那时候一切可能都太晚了。

 1849

这是我们最近所处理的一些问题,即当我们在平衡(并再次平衡)我们的游戏《1849》(注:这是一款建造并管理一座淘金热时期城市的游戏)时。所以我打算在此分享自己的答案,希望能够带给其他人帮助。

首先,一些背景:《1849》是一款关于管理城市经济的游戏。游戏中共有50座不同的建筑,20种不同的资源——每座建筑都能够创造出原始资源(包括麦田能够生产出小麦,狩猎区能够创造出皮革和肉),并且会改变它们(啤酒厂将酿制啤酒,金矿将诞生金子,并在这个过程中消耗镐),或消费它们(人们所居住的方子将消耗所有的食物和物品资源)。除此之外,你必须基于每种资源创造而支付给工人工资,所以你便会想要确认他们是否尽责,从而避免浪费钱。最后你将因为房子购买了资源并消耗了资源而赚到钱(或者通过与邻居城市进行交易而赚钱)。所以游戏中的大部分内容是关于优化你的资源链条和生产线,而不是关于制作太少或太多产品。

在设计阶段,我们将所有资源链条绘制成一张大图表,并确保不存在任何意外。我并没有相关的照片,但这就像你所想的那样:这是一张有向非循环图,每个节点都有一栋建筑,每个边缘都有一种资源。我们这么做是为了证实我们拥有从源到汇的各种链条,有些短有些长,并且至少拥有一个反馈循环(例如铁矿消耗镐并创造铁矿石,冶炼厂将其变成铁,铁匠将其变成镐,而这些产品将再次被消耗掉)。

一旦我们选定了资源和建筑,我们便需要识别出我们的优化价值:每个回合会创造出多少小麦?或者创造一个面包需要多少小麦?如果太大方,玩家便会拥有剩余价值,如此游戏便会太过简单;而如果太过复杂,你便会陷进“死亡漩涡”中,即玩家将不断耗尽所有产品,工人将罢工,从而导致经济的衰竭。

“强力方法”能够弥补一些优化价值,即多次玩游戏并对此作出调整。有时候这种方法是有效的,但其速度较慢,我们希望能够更快地执行它。所以我们便转向了游戏设计师最好的朋友:微软Excel。我们创造了一些测试城市的静态模型——一些小城市,一些大城市还有一些由特殊建筑构成的诚实。对于静态模型,我指的是在一个回合中每种资源的创造数与消耗数的相关模型。

首先,有一张主表格,会列出所有的建筑及其优化价值(制作和消耗等级,成本,生产数量);

然后是一张每座模拟城市的表格,将列出所有建筑以及我们期待每座城市所创造出的产品数量。

每座城市的表格将从主表格中获得优化价值,然后估算所有的资源消耗与生产,你所赚到的钱与消耗掉的钱,以及你所需要的工人数量等等。一旦所有的数值保持在0,城市便会达到最佳平衡。如果这些数值是较大的正值或负值,我们就需要用红色或绿色将其标注在列表上,即代表这是需要特别关注的部分。

这同时也让优化变得更即时:如果你在主表格中改变了优化值,它将立即传播到所有城市表格中,你便可以立刻判断这是否有益于所有的测试场景。

这便是我们在一座城市中优化所有建筑和资源的方法。然后我们会在比赛中设定城市间的难度进程,我们采取的方法与许多大亨游戏一样:当玩家在游戏中前进时,我们会不断提升源与汇的消耗,从而增加玩家创造产品的压力(:同时也会提供给他们更多收益)。这种方法也得到了优化表格的验证—-我们可以在优化主表格的同时检查这对于比赛中每座城市的影响。

 同时还存在关于额外挑战的一些细节,如为玩家添加一次性任务,不过我们通常都是用“强力方法”对此进行优化,因为这些任务并不多并且我们很难在简单的表格中创造出它们所带来的影响的相关模型。