阐述“平台”游戏的10个制作技巧及要点

标签: 资源分享 AI 平台游戏 操作简单 碰撞范围 | 发表时间:2011-09-25 09:34 | 作者:fanbinzhen UO
出处:http://gamerboom.com

作者:Diorgo Jonkers

角色可以围绕着一个由数个平台组成的平面跑跑跳跳,以这种平面作为游戏场地的游戏就是平台游戏。虽然本文着重讲解如何“搭建”平台,但其创意背后的理念也适用于所有类型的游戏,并不区分2D或3D类型。以下内容不但列举了制作一款有趣的游戏的诀窍,而且涉及开发过程的技巧。

platformer_banner(from devmag)

platformer_banner(from devmag)

1、操作简单

玩家按下跳跃键就可以跳。这就是简单的操作。玩家的挑战就是在恰当的时机按下跳跃键。换句话说,难度不在于按键,而是在合适的时候按键。

操作越简单越自然越好。如果司机开车还要一心盘算着怎么转弯,那交通事故肯定不会少。

菜单和其他所有游戏互动环节也要贯彻操作简单的原则。菜单物品和选定物品之间的切换迅速方便。

2、信息一目了然

游戏中的重要信息必须让玩家一目了然。玩家可以在上面走动的平台必须与背景形成鲜明的层次。可收集的物品必须容易识别。一眼就能看完HUD上的玩家所需的信息。使用便于阅读的字体。玩家必须知道菜单的状态。

3、注意碰撞范围

安全物品的触碰范围比物品本身大,而危险物品则相反。安全物品包括补充能量的物品、开关、梯子和摇摆的绳子。危险物品包括敌人、敌人的炸弹、钉鞋和旋转的叶片。

触碰范围越大,物品越容易被感应,或被收集。反之,越容易避开危险物品。

绿色矩形是安全物品的触碰范围,红色矩形是危险物品的触碰范围。黄色矩形内的是玩家(from devmag)

绿色矩形是安全物品的触碰范围,红色矩形是危险物品的触碰范围。黄色矩形内的是玩家(from devmag)

(游戏邦注:触碰范围可以是触碰矩形,触碰边界框,触碰环形、触碰区、触碰多边形等等。如果的玩家触碰范围与物品的触碰范围重叠,即玩家接触到物品。)

4、容易跳过间隙

在绿色区域内,玩家就可起跳。右边的绿色占据的部分较大,这样玩家更容易跳过平台(from  devmag)

在绿色区域内,玩家就可起跳。右边的绿色占据的部分较大,这样玩家更容易跳过平台(from devmag)

按惯例以及根据现实来说,在游戏里,玩家只有站在某个物品上才能起跳。但是,如果玩家只是刚刚踏出平台的边缘,那么就允许玩家在悬空时起跳;悬空起跳的延迟时间大约是1秒(如果1秒后没起跳,还是得摔死),这样玩家就能比较轻松地从一个平台跳到另一个。

5、允许玩家任意中止移动状态

玩家的动画应该顺应玩家的活动。也就是说,玩家的活动不应该受动画的限制。理想的状况是,动画在任何时候都应该能够承接任何其他动画。玩家想跑,然后跳,再腾空抓住梯子,接着打一枪再跳下梯子。动画应该允许玩家这一系列动作的连贯承接。

另外,玩家不必等待角色的动画结束才能再次移动。也就是,前一个动作还在进行时,玩家不必等待,仍然可以继续输入新动作,从而临时改变角色的活动。

6、提供大量能量和可收集物品

大多数孩子收集物品,纯粹是因为有趣。当你在游戏中收集到东西,你就会感到快乐。在游戏中添加可收集的东西。越多越好。这其中没有什么逻辑联系,就是好玩罢了。

7、编写一般但通用的AI

设计并编若干个基本AI,各个AI都带有几个变量。稍稍调整这些变量就足够制造出一大堆各不相同的AI了。

基本AI的例子

走动AI

水平面走动

表1

表1

例子:骑士、射手、火元素、小精灵

飞行AI

空中飞行的东西

表2

表2

例子:鹰、幽灵、气元素、矮人直升机。

四处活动的AI

可以在水平面、垂直面、对角线和上下面行走的AI

表3

表3

例子:巨蜘蛛、蠕虫、杀手锅牛、土元素。

8、考虑剧情或氛围

在开发早期确定游戏的剧情。剧情的作用就是,使开发团队明确游戏的整体氛围、美术风格和目标。剧情可以是复杂的或简单线路。你可在过场动画或对话中向玩家展示这些剧情,或者你完全不必向玩家摆明剧情。只要玩家在玩这款游戏,他就会知道游戏的剧情是什么。

剧情例子:一只孤独的海洋生物在某月球表面单挑一群僵尸和恶魔。

从上面这个例子,我们就知道这个游戏关于什么了。

孤独:单个玩家,单一角色。

海洋生物:战士、军队、军人、坚强、枪、子弹

单挑:动作、战斗

一群:许多敌人、不间断

僵尸:血腥、开枪无效

恶魔:超自然、黑暗

月球表面:科幻、未来主义、遥远

9、明确定义视野和时间

列出完成游戏要做的所有任务。然后估计执行列表上的各项任务所需的时间。你完成的列表任务的时间就是完成整个游戏的最少时间。

如果你的设计文件是50页,每完成一页平均需要2天,那么你至少需要100天来制作游戏。初期文件上列出来的不一定包含了所有最终出现在游戏成品里的东西,这是很正常的。

如果一个美工需要2周的时间完成一个角色的动画,那么制作10个角色的动画就需要20周。也就是5个月——几乎半年了。如果你有两名美工,那么时间可以省下一半了。但实际上还还是需要20周。也就是说,你仍然支付了20周工时的工资。

在整个开发过程中,偶尔会想出什么新点子。然而,每次你在游戏中增加一个新功能,你就发布日就要推迟一些。继续增加新功能,那么你的游戏就没完没了了。当你增加一个新功能时,你得另想办法解决截止日的问题。你要确保优先完成列表上的任务,这样如果你的时间不够了,最不重要的东西就可以垫底了。

不要因为做出来的游戏功能太少而感到羞愧。那些嘲笑你的人可能自己还在折腾一款15年以后才有望问世的MMO。记着,最棒的感觉之一就是完成一个项目。

10、敲定理论乐趣之前先做原型

在这个原型中,绿色块是主要角色,红色块是敌人(from devmag)

在这个原型中,绿色块是主要角色,红色块是敌人(from devmag)

电脑游戏的创意不计其数,但并不是每个都很有意思。怎么找出最有趣的那个呢?制作游戏原型。原型是游戏的“快做易改”版本,可以帮助你测试游戏创意。

为什么要制作原型?节省时间啊!你有没有这样的经历:因为游戏不够有意思,你得修改设计,改了设计,那么又得重复制作或编写游戏(你真费得起这个时间啊)?

为了节省时间,请使用当前的游戏引擎,再配合从网上下载的免费资源来制作原型。原型可以在游戏成品所使用的引擎上制作,有些代码也可以重复利用。

原型也可能是一个完全独立的程序(或程序组),游戏成品出炉后就要被丢掉。正是因为这样,有些人不喜欢制作原型。他们认为制作原型就是浪费时间,反正最终的原型”产品“是要丢掉的。想想吧,制作原型其实就是另一个创意的开发阶段,在此期间,你可以测试你的想法、修改创意、替换概念,一直调整到有趣为止。因此,原型”产品“是测试想法的工具。

谨记:把原型制作也添加到你的任务列表上,纳入日程表。

11、让人人都参与设计

如果某人参与设计了某个角色,让他们也参与这个角色的制作好不好呢?或者如果他们在这个角色上又想出了新点子,不是很好了?如果程序师参与了角色的设计,让他们给这个角色编写系统会不会更好?

答案是YES。而且对游戏也更有帮助。

游戏制作是一种创意合作。如果只有一两个人设计游戏,那么创意就相当有限了。一般来说,如果某人参与设计过程,他在整个项目中的工作会更快乐更投入。不是什么事都只能中规中矩地来。也就是说,你不必强求总是按日程表召开人人必出席的会议。大伙儿可以发邮件交流,也可以在厨房里闲扯,或者在房间里隔空喊话。

游戏邦注:原文发表于2011年1月18日,所涉数据及事件以当时为准。(本文为游戏邦/gamerboom.com编译,如需转载请联系:游戏邦

11 Tips for making a fun platformer

by Diorgo Jonkers

A platformer is a game in which a character runs and jumps around a level consisting of platforms floating in the air. Although this article focuses on platformers, the philosophy behind each idea can be applied to any type of game, whether 2D or 3D. This list does not only include tips for the product (a fun game), but also for the development process.

1. Keep the user interface simple

The player presses the jump button to jump. That is a simple user interface. The challenge for the player is pressing the jump button at the right time to complete the game. In other words, the challenge is not using the interface, but using it at the right time.

The more transparent and intuitive the interface is, the better. If drivers on the road had to concentrate on how to turn their vehicles, there would be many more accidents.
The simple interface also applies to the menus and all other interactive sections of a game. It must be easy to navigate between menu items and to select items.

2. Make important information easy to see

Make it easy for the player to see important things in the game. Platforms that the character can walk on must stand out from scenery in the background. Collectable items must be easy to recognise. One glance at the HUD should give you all the information you need. An easily readable font is a necessity. The player must know what is going on in the menu.

3. Mind your collision boundaries

The collision boundary of a friendly object is bigger than the object. The collision boundary of a harmful object is smaller than the object. Friendly objects include power-ups, switches, ladders, and swinging ropes. Harmful objects include enemies, enemy bullets, spikes and rotating blades. The bigger collision makes it easier to interact with, or collect the friendly object. The smaller collision makes it easier to avoid the harmful object.

The green rectangles are the collision boundaries of friendly objects, and the red rectangles are harmful objects. The yellow rectangle is the player.

(The collision boundary can also be referred to as collision rectangle, collision bounding box, collision sphere, collision region, collision polygons, etc. The player collides with an object if the player’s collision boundary overlaps the object’s collision boundary.)

4. Make it easy to jump over gaps

The player can jump when he is in the green area. The larger green area on the right makes it easier to jump across platforms (that’s a good thing).

Traditionally in games – and realistically – a player can only start jumping if he is standing on something. Allow the player to start jumping when he is in mid-air, when he just stepped off the edge of a platform. Have a leeway of about one second in which the player can start jumping. (After the one second he can no longer jump, and continues to fall downwards.) This makes it easier to jump from one platform to another.

5. Make it possible to change animation states anytime, anywhere

The character’s animations should follow the player’s movement, not the other way around. In other words, the player’s movements should not be limited by the animations. Ideally, any animation should be able to start from any other animation, at any time. The player wants to run, jump, grab onto a ladder in mid-air, climb up, shoot his gun, and jump off the ladder. The animations should allow him to do that.

Also, the player should never have to wait for his character’s animation to end before he is able to move again. Do not disable input while an animation is playing, causing the player to wait for the animation to end before he can move again.

6. Provide plenty of power-ups and collectables

Most kids collect stuff, purely because it is fun. That same feeling of joy happens when you collect things in a computer game. Put collectable stuff in the game. The more, the better.
There is no logical reason for it. It is just fun.

7. Write generic, but versatile AI

Design and code a small number of base AI agents, each containing a small number of variables. The variables are given different values to create a large variety of AI agents.

Examples of base AI

Walking AI

Walks on horizontal surfaces.

Examples: Knight, Archer, Fire Elemental, Giant Venus’s flytrap, Elf.

Flying AI

Flies around in the air.

Examples: Hawk, Gryphon, Ghost, Air Elemental, Dwarf in gyrocopter.

Crawling AI

Walks on any surface: horizontal, vertical, diagonal and upside down.

Examples: Giant Spider, Worm, Killer Snail, Slime Elemental.

8. Have a story and atmosphere in mind

Define the game’s story early on in development. The story is a guideline for the game’s overall atmosphere, art style, and goals. The story can be complex or a single line of text. You can reveal the story to the player in cut scenes and dialogue, or you do not need to show it to the player at all. As long as everyone working on the game knows what the game’s story is.

Example story: A lone marine fights hordes of zombies and demons on a moon base.

From this story we know what the game is about.

lone – single player, solitary character

marine – fighter, army, military, tough-as-nails, guns, shoot stuff

fights – action, fighting

hordes – many enemies, relentless

zombies – gore, gun fodder

demons – supernatural, dark

moon base – sci-fi, futuristic, remote

9. Define scope and time clearly

Make a list of everything that needs to be done to complete the game. Then estimate how long it will take to implement each item in the list. The amount of time you end up with is the minimum time it will take you to complete the game.

To put it into perspective: If your design document is 50 pages long, and it takes an average of 2 days to implement the features per page, then it will take you at least 100 days to make the game. It is natural to have an initial design doc which does not include everything that will eventually be in the game. More pages will be added to it during development.

To put it into perspective again: If it takes an artist 2 weeks to create and animate a character, then it will take 20 weeks to create 10 characters. That is 5 months – almost half a year. If you have two artists, then it will take half the time to complete the characters. But it still takes 20 weeks of actual work. In other words, you still pay for 20 weeks of work.

It is very easy to think of new features to add to a game throughout the development process. However, every time you add a new feature, you push the release date further away. Continue to add features on a regular basis and your game will never be complete. When you add a new feature, be prepared to take another one away to meet your deadline. Make sure that you prioritise your initial list of features, so that the least important ones can be dropped if (or when) you run out of time.

Do not be ashamed to make a game which has a very limited number of features. The people laughing at you are probably working on an MMO that will take them 15 years to complete.
Remember, one of the most rewarding feelings in the world is to complete a project.

10. Prototype before finalising theoretical fun

the prototype, with placeholder graphics. The green block is the main character, and the red blocks are the enemies. Compare with the image below.

There are thousands of good ideas for computer games, but not all of them are fun. The best way to find out which are fun, is to prototype the game. The prototype is a quick-to-make and quick-to-change version of the game that helps you to test out your ideas.

Why prototype? It saves you time in the long run. Have you ever had to recreate art or reprogram a system because the design changed as a result of the game not being fun?

To save time, use an existing game engine and download free resources from the internet to create the prototype. The prototype may be done in the same engine used for the final game, and some of the code can be reused.

The final game with Renaissance art.

The prototype may also be a completely separate program (or programs) that will be discarded when the final game is in full development. For this reason, there are people who do not like prototyping. They believe it is a waste of resources and time, because the final prototype ‘product’ is discarded. Think of the prototyping as another idea phase of development. During this phase you test out your ideas, change them, replace them, and tweak them, until they are fun. The prototype ‘product’ is, therefore, a tool used for testing ideas.

Remember: Prototyping must also be included in your list of things to do, and, therefore, must be part of your schedule.

11. Involve everyone in the team in the design

Would it be better for an artist to work on a character if he or she was involved with designing the character? Or better yet, if he or she came up with the idea for the character? Would it be better for a programmer to code a system if he or she was involved with designing it?
The answer is yes. It will also be better for the game.

A game is a creative collaboration. If only one or two people design the game, then it will be creatively limited. People generally feel happier and more devoted to a project if they are included in the design process. Therefore, encourage everyone to be involved in the design process. And it does not always need to be a formal process. In other words, you do not always need to schedule a meeting where everyone is involved. People can send emails, talk in the kitchen, or shout across the room.(source:devmag.org

相关 [平台 游戏 制作] 推荐:

阐述“平台”游戏的10个制作技巧及要点

- UO - GamerBoom.com 游戏邦
作者:Diorgo Jonkers. 角色可以围绕着一个由数个平台组成的平面跑跑跳跳,以这种平面作为游戏场地的游戏就是平台游戏. 虽然本文着重讲解如何“搭建”平台,但其创意背后的理念也适用于所有类型的游戏,并不区分2D或3D类型. 以下内容不但列举了制作一款有趣的游戏的诀窍,而且涉及开发过程的技巧.

Ubuntu(Linux)平台经典游戏推荐

- iaotin - 启光博客
  非ubuntu游戏大全,是个人感觉不错的几款游戏,工作之余用来打发下时间. 后面几个画质较高,所以安装包也较大,属于Linux平台大型游戏. 官方网站:http://assault.cubers.net. 官方下载:http://assault.cubers.net/download.html.

跨平台HTML5小游戏 随时随地玩

- - TechWeb 新酷网站 RSS阅读
  Xwuz 是一个小游戏平台. 目前该网站推出了两款 HTML5 小游戏:同色消除(Bubble Trouble)和堆木头(Stack the log).   用户可以在 Web 端通过浏览器在线玩,也可以用你的智能手机直接访问网站简短好记的域名直接玩游戏. 经 Android 和 iOS 设备同步测试,均可完美运行.

Q+平台率先支持HTML5 接入4款游戏应用

- - HTML5研究小组
近日,腾讯Q+开放平台联合磊友科技宣布上线4款HTML5游戏应用,在HTML5领域率先出招. 腾讯即通线负责人殷宇表示,HTML5 是下一代 Web 语言,也是下一代富网络应用技术标准,它为Web 提供了全新的框架和平台,统一了桌面和移动平台的Web浏览体验,可以帮助开发者实现真正的跨平台开发. 腾讯Q+看好HTML5的未来前景,从去年开始就支持这一技术标准.

Google 准备将 Android 游戏带到 Windows 平台

- - 奇客Solidot–传递最新科技情报
微软正与亚马逊等公司合作让包括游戏在内的 Android 应用能运行在 Windows 11 平台. 现在,Google 准备了应对措施,将 Android 游戏带到所有 Windows 平台,不限于 Windows 11. Google 将在 2022 年发布 Google Play Games app,允许 Google Play 上的游戏应用能运行在 Windows 笔记本、平板和 PC 上.

分步解析HTML5画布游戏的制作过程

- - GamerBoom.com 游戏邦
作者:Matt Hackett. 自从发布《Onslaught. Arena》后,许多人要求我分享制作简单画布游戏的基础教程. 所以,我决定利用这篇博文介绍自己认为最简单的画布游戏制作方法,并逐步进行解析. 让我们跳过game.js,直接进入游戏制作过程. 我们首先要做的是创建画布元素. 我使用JavaScript而不是HTML来实现这个目标,以此来展示这个步骤的简易性.

分享开发HTML5跨平台游戏经验及注意要点

- - 酷勤网-挖经验 [expanded by feedex.net]
我们刚成立Gamezee的时候,行业中许多人都对HTML5抱有成见,就算是一些对其较为乐观的人士也只是说,HTML5将是未来发展潮流,但目前还不够成熟和稳定,无法制作出当前主导社交游戏领域的Ville类型Flash游戏. 当时我们准备使用HTML5制作一款可同时运行于PC端的Facebook,以及所有iOS设备和Android手机平台移动网络的大型等视距游戏.

独立开发者谈跨平台移植游戏所面临的挑战

- - GamerBoom.com 游戏邦
对于在休闲、社交或手机领域里从事游戏项目制作的独立开发商而言,最先需要确定的是目标平台. 多数情况下这都不是个问题,因为团队或工作室会根据已经拥有的游戏开发经验来决定目标平台,但团队向其他平台扩张时总是会面临诸多问题. 在选择休闲2D游戏的主要目标平台时,通常会纠结于手机和网页这两个选择,更具体地说,就是选择Facebook还是iOS.

2020双跨平台再进5席,工业互联网已是“巨头游戏”?

- - 品途商业评论-推荐
地理大发现,又名大航海时代或探索时代、新航路的开辟. 在这个时期,欧洲的航海家们在王室的支持下,组织船队向世界各处的海洋航行,探索新的贸易路线和寻找新的贸易伙伴. 在今年,类似的盛况也出现在了工业互联网领域. 工业互联网平台们在市场巨头或区域政府的支持下,逐步整合生态资源,向各个产业领域出发,探索新的产业发展路径与寻找新的产业生态合作伙伴.

为什么中国的游戏开发制作技术相对落后?

- - IT瘾-zhihu
今天有些空余时间,和大家展开说说我认知里国内游戏开发制作和国外的差距. 因为我主要参与开发AAA主机/电脑游戏,所以以下讨论针对大屏幕游戏,暂不涉及手游. 国内游戏行业似乎存在一个比较主流的观点,那就是谈及游戏开发制作,普遍认为在制作上中国是可以和国际接轨的,我们差的是政策,社会发展,市场,玩家素质,开发者心态,投资者心态.