原文链接:http://devmag.org.za/2011/01/18/11-tips-for-making-a-fun-platformer/
角色在由悬浮平台组成的关卡中奔跑跳跃的游戏,即为平台游戏。尽管本文立足于平台游戏,但每一个观点背后的理念都可以应用于任何类型的游戏——无论是2D还是3D游戏。本文不仅包含关于有趣游戏产品的建议,同时也能给予开发过程一些提示。
1.保持用户界面的简洁
当玩家按下跳跃键,游戏角色跳起来,这是一个简单的用户交互。玩家需要在合适的时间按下跳跃键来完成游戏,这是他们在玩游戏时面临的挑战。换句话说,对玩家的挑战不是如何使用界面上的按钮,而是如何在正确的时机使用它。
界面越清晰,越直观,效果越好。如果司机在路上不得不专注于如何转弯,那将造成更多事故。
界面的简洁适用于游戏菜单以及其他所有交互式部分,菜单项和选择项之间必须要易于导航。
2.使重要信息易于查看
要让玩家能够方便地看到游戏中的重要内容。角色可以行走的平台必须与背景中的风景区分开;可收集的物品必须易于识别;瞄一眼HUD(平视显示信息)就应该获得所需的所有信息。 并且,易于阅读的字体也是必需的。玩家必须知道菜单中正在发生什么。
3.注意碰撞边界
友好对象的碰撞边界大于物体边界,而有害对象的碰撞边界小于物体边界。友好对象包括通电装置、开关、梯子和摇摆的绳子。有害对象包括敌人、敌方子弹、尖刺和旋转的刀片。较大的碰撞体积使角色更易于与友好对象进行交互或将其收集,而较小的碰撞体积使得角色更容易避开有害对象。
绿色矩形是友好对象的碰撞边界,红色矩形是有害对象的碰撞边界,黄色矩形是玩家角色。
绿色矩形是友好对象的碰撞边界,红色矩形是有害对象的碰撞边界,黄色矩形是玩家角色。
(碰撞边界也可以称为碰撞矩形,碰撞边界框,碰撞球,碰撞区域,碰撞多边形等。如果玩家的碰撞边界与对象的碰撞边界重叠,则玩家与该对象碰撞。)
4.让玩家轻松跳过间隙
当处于绿色范围内时,玩家可以跳起来。右图的绿色范围更大,也就能让玩家更容易在平台之间跳跃(这是一件好事)
传统上且实际上,玩家在游戏中只有站在某个东西上才能开始跳跃。应当允许玩家在刚刚离开平台边缘的半空中开始跳跃,让玩家有大约一秒钟的回旋余地可以开始跳跃,(一秒钟之后,他不能再起跳,而只能继续下落。)让玩家从一个平台跳到另一个平台变得更加容易。
5.可以随时随地更改动画的状态
角色的动画应该跟随玩家的操作反应,而不是反过来的。换句话说,玩家的动作不应受到动画的限制。理想情况下,任何动画都应该能够随时从任何其他动画开始。当玩家想要奔跑、跳跃、在半空中抓住梯子并攀爬、射击然后梯子上跳下来,动画都应该允许他这样做。
另外,玩家不必再等待角色动画结束就可以再次移动。播放动画时请不要禁用输入,否则这会导致玩家得等到动画结束之后才能再次移动。
6.提供大量的通电装置和可收集物品
大多数孩子收集物品纯粹是因为这个行为很有趣,而当玩家在计算机游戏中收集物品时,也会产生同样的乐趣。所以要在游戏中加入可收集物品,且越多越好。这没有逻辑可言,但就是这么有趣。
7.编写通用且适用性广的AI
设计和编码少量的基本AI媒介,并且每个媒介都包含少量的变量,通过给变量赋予不同的值以创建各种各样的AI媒介。
基础AI范例
步行AI
在水平表面行走
例:骑士、弓箭手、火元素、巨型捕蝇草、精灵
飞行AI
在空中飞行
例:鹰、狮鹫、幽灵、风元素、矮人直升机
爬行AI
在水平、垂直、斜向、倒转的任意表面上移动
例:巨型蜘蛛、蠕虫、杀手蜗牛、史莱姆元素
8.考虑故事与氛围
在游戏开发初期就需要决定该游戏的故事。这个故事是游戏整体氛围、艺术风格和目标的指南。故事可以很复杂,也可以只有一行文字。在片段场景和对话中可以向玩家展示故事,又或者根本不需要将其展示给玩家,只要让游玩游戏的每个人都知道游戏的故事是什么就可以了。
故事示例:一个孤独的海军士兵在月球基地上与成群结队的僵尸和恶魔战斗。
通过这个故事,我们知道游戏的意义。
- 孤独–单人、独居角色
- 海军士兵–战士、军队、军事、坚韧不拔、枪支、射击器械
- 月球基地–科幻、未来主义、时间线遥远
- 成群结队–许多敌人,无情
- 僵尸–血腥、炮灰
- 恶魔–超自然的、黑暗的
- 战斗-动作,战斗
9.明确定义游戏制作的范围和时间
列出完成游戏所需要做的所有事情,然后估算实现列表中的每个项目将会花费多长时间,最终得出来的时间是完成游戏所需的最短时间。
设想一下:如果设计文档有50页,并且每页的功能实现平均需要2天,那么制作游戏至少需要100天。而初始文档中不包括最终成品中的所有内容也是很正常的,在开发过程中文档上将会被添加更多的页面。
再设想一下:如果一位美术需要2个星期来创建一个角色并为之制作动画,那么创建10个角色将需要20个星期,也是5个月——差不多半年的时间。如果有两位美术,那么完成这些角色只需要花费一半的总时间,但也仍然需要20周的实际工作时间,换句话说,你依然要为20周的工作付费。
在整个开发过程中,很容易产生往游戏中添加新功能的想法。但是,每次添加新功能都会让你将发布日期推得更远。不断地定期添加功能,你的游戏将永远无法完成。当你添加新功能时,请准备好替代另一个功能来保证在截止日期之前完成。确定初始列表中功能内容的优先级,以便在时间不足时可以删除最不重要的功能。
不要因为制作功能有限的游戏而感到羞耻,嘲笑你的人说不定正在开发需要历时15年才能完成的MMO。请记住,完成项目是世界上最有意义的回报之一。
10.在最终确定空谈的乐趣之前先设计原型
带有占位符图形的原型。绿色方块代表主要角色,红色方块代表敌人。可与下图比较。
有关电脑游戏的好点子有成千上万个,但并非所有这些点子都很有趣。找出有趣之处的最佳方法就是制作游戏原型。原型是能够快速制作和快速更改的游戏版本,可以用来帮助测试想法。
为什么要用到原型?从长远来看,它可以节省时间。你是否曾经因为游戏变得不那么有趣而不得不重新设计作品或对系统进行重新编程?
为了节省时间,可以使用现有的游戏引擎并从网络上下载免费资源来创建原型。原型可以使用和制作最终版游戏相同的引擎完成,并且某些代码可以重复使用。
带有文艺复兴艺术风格的最终游戏成品
原型也可以是一个或多个完全独立的程序,在对最终游戏进行全面开发时可以被丢到一边去。正是因为这样,有些人不喜欢原型设计。他们认为这是在浪费资源和时间,因为最终的原型“产品”会被丢弃。你可以将原型视为开发过程的另一个想法阶段,在这个阶段中,你测试你的想法,进行更改、替换并对其进行调整,直到它们变得有趣为止。因此,原型“产品”是用于测试想法的工具。
切记:原型必须包括在你要做的事情中,所以你的日程安排中需要给原型设计分配一个位置。
11.调动团队中的每一个人都参与到设计中
美术参与到角色的设计,会不会对他或她进行角色设计有帮助?如果是由他或她想出了这个角色的点子,是不是会做得更好? 如果程序员参与系统的设计,是不是也有利于他或她进行编程?以上问题的答案是肯定的,并且这么做对于这个游戏来说也是有利的。
一款游戏是一种创造性的协作。 如果只有一个或两个人设计游戏,将会使它受到创造性的限制。当参与到设计过程中,人们通常会感到更快乐,也更专注于项目。因此,要鼓励每个人都参与设计过程。甚至这种参与不一定总是需要一个正式的过程,换句话说,你不需要总是安排所有人都参与的会议,大家可以通过发送电子邮件、在厨房聊天或在整个房间大喊来参与。
拓展阅读:
- 平台游戏设计师必读:A Detailed Cross-Examination of Yesterday and Today's Best-Selling Platform Games (今昔最畅销平台游戏详细盘点)
- 维基百科词条:Platfrom Game (平台游戏)提供了入门的游戏历史概述
暂无关于此日志的评论。