除沫器厂家
免费服务热线

Free service

hotline

010-00000000
除沫器厂家
热门搜索:
技术资讯
当前位置:首页 > 技术资讯

开发者回顾专注于游戏玩法设计的过程

发布时间:2021-01-21 02:25:08 阅读: 来源:除沫器厂家

我之前提到了不专注于游戏玩法可能产生的影响。我发誓下次将首先从游戏玩法开始考虑,不先制作好系统就绝不写一行代码。

我坚持着这个决定。在我们放弃《Pirates》项目1个月左右之后,我开始对首版的《UnitySteer》进行润色。为了能够让努力转变成某些可供发布的产品,我会继续将这款游戏制作下去,完成后就转向游戏设计。

我的目标是创造出满足以下条件的东西:

1、玩起来有趣

2、具有可升级的复杂性,这样我就拥有了某些可供测试的模块规则

3、低保真度美术效果,可以避免逐步攀升的美术预算

4、可以使用纸张来复制,这样我就可以在不编程的情况下进行可靠的玩法测试

这意味着我需要避免使用即时系统,因为该系统的离线调整很麻烦。幸运的是,我很喜欢基于回合的系统,而桌游经常会使用这种系统。

我决定制作一款策略类战争游戏,游戏面板以六边形格子为基础,有着较少的游戏美术设计。这样,我既可以重新使用之前的六边形格子代码,也可以尽量少地使用动画模型,毕竟这只是个桌游。

我把最初的系统设计得很简单,基本包括如下几点:

1、每支军队都有数个部队,他们每回合只能移动数格(注:当然,作者早期还未考虑到单位的平衡性问题)

2、单位要么近战要么远程,没有两者兼具的单位(注:随后作者对此做了修改)

3、移动是确定的(注:单位最对可以在Y地形移动N格),但是战斗的成功是随机的,由各单位的攻击力和防御力决定。

4、地形对移动会构成影响,比如狼比士兵更容易通过森林地形。

5、有基础士气,同时也有鼓舞和打击士气的规则。

我在纸上对我制定的规则进行测试,使用六边形格子、骰子和某些我从好友出借来的微型Reaper,测试后我开始制作军队(注:共分成3个派系)和编程。就游戏的美工方面,我与某个美术工作室合作,他们负责向我提供基本的平面质感六边形以及树木、岩石和山脉等我可以用来构建风景的装饰。

随后,我犯了首个错误。

原来的灯塔美术设计效果

我之前的其他项目与他们合作过,因而我为这次获得的低质量资产感到甚为惊奇。

我决定,需要提出更为严格的要求。与他们的美术总监进行严肃的对话后,他们更换了接手任务的美工,我让这个新美工重新设计之前要求的灯塔装饰。质量的提升足以让人欣慰。

重新设计后的灯塔

我给他们发送了更多所需图片的说明,很高兴看到一切处在他们的掌控之中,然后我便回到游戏编程中。我想要先期执行游戏的AI,即便它们看起来只是四处移动的立方体而已。我认为这会帮助我平衡游戏,因为我可以让AI在同种设计方案下相互战斗多次,看看是否有某一方胜利得过于频繁。

因为我制作的是非确定性桌游,expectiminimax算法似乎是最佳的方法。我简单地编写了一个此类算法,给它赋予了必要的评估功能(注:这只是使用版本,用于测试目的)。

但是事实并非如此。

该方法并未取得显著的成效。我一开始就意识到了其中的缘由,但是因为我要同时注意艺术和系统创建两个方面,所以我忽视了对基本小细节的注意。

人类经常会忽略某些不相关的信息。如果有人将网球抛向你的脑袋,你不会专注于分析它的轨迹和速度,你只会进行躲避。同样,如果你需要处理很多单位,其中两个正在连续遭受攻击,你很可能会立即考虑防御这两个单位(注:除非你因某些原因对这两个单位漠不关心)。

我所创建的分析器不会采取如上所述的做法,它会考虑更多的选择。

假设出现以下情况:你有12个单位,但是只能激活两个。你可以随意选择这两个单位,也可以按你自己的顺序激活他们。首先用近战攻击然后用弓箭手清场与首先使用弓箭手然后使用近战并不相同。

假设你的所有当前单位最多可以在棋盘上移动2格,如果你最后的位置邻近敌对单位时可以选择攻击(注:指近战攻击单位)。

移动某个单位后可能到达的最终位置的总数是:

1、18,某个最多移动2格的单位最终可能到达的位置的数量

2、加上在回合结束后你可以攻击的敌人总数(注:因为游戏使用的是六边形的格子,所以玩家有不止1种选择)

3、用之前的总数乘以可能的结果总数

4、将总数乘以12,得到的就是可能的单位数量

因为你可以移动两个单位,所以你需要考虑第二个单位最终位置的总数,而每种可能的单位移动组合都可能产生不同的结果(注:“移动A,攻击,移动B”的结果与“移动B,攻击,移动A”不一定相同)。如果你的单位有更广阔的移动范围,结果会更加有趣,因为这样就可以有更多的点来计算你的潜在利益。

随后,你必须考虑对手在你行动之后可能的移动方式。

这样的树状结果不可能在任何合理的时间框架内进行评估。我做了些许调整,这使得情况得到了显著改善。主要的调整如下:

1、树中的叶子不再包含所有可能的行动结果,我仅仅通过最好和最差的结果两个方面来追踪可能性(注:最差的结果是,玩家已用尽最大能量而敌人却毫发无损;最好的结果是,玩家以最低的代价给敌人带来最大的杀伤力)。

2、单位不再考虑每个可能移动到的六边形,只关注那些能够使队伍受益的可能地点。

首个改变很简单,但是第二个改变需要些许时间才能够实现,因为我必须决定吸引单位移动到某处的标准。我最终采用了简单的方法(注:减少敌人的力量),然后让系统如此进行下去。

结果变得较好,但是仍然与理想的情况有很远的差距。产生出的大量分支使得AI必须考虑所有的单位和所有可能的移动组合。如果每方有12个单位,所计算的1回合便有134个分支。

当然,这些分支中有些极为相似,但是仍然让游戏充满复杂性。

回到画板上,我决定做个简单的改变,让决定的评估更为简单:每回合的行动不是主观地从大量单位中主观选择数个单位,每个单位将以主动比率为基础来激活,双方根据主动的顺序轮流激活单位。这意味着单位的激活更具确定性,与《英雄无敌》的做法类似,极大地降低了在任意时刻需要分析的选项的数量。

尽管在此过程中总是有人会说我正偏离主线,我需要专注于游戏玩法而不是AI。事实在于,因为这两种方法之间有显著的差异,我需要在决定之前先测试哪种方法更加可行。选择了某种方法之后,我再次在纸上进行测试。它确实有效,即便它比前一种方法需要更多的记录(注:电脑很擅长记录信息),所以看来我是因祸得福了。

学到的经验:拥有某些能够在纸上测试良好的东西确实很棒,但是在你真正将其运转起来之前仍然是毫无用处的。

但是,在美术设计方面,事情进展得并不顺利。在我关注游戏玩法和AI之时,我任其自行发展,但是交期拖延和存在诸多问题的美术内容又使我不得不对其加以关注。

9g彩票

山海创世录

战略三国破解版