游戏邦在:
杂志专栏:
gamerboom.com订阅到鲜果订阅到抓虾google reader订阅到有道订阅到QQ邮箱订阅到帮看

《凯西的精巧设计》关卡创建经验分享

发布时间:2012-01-24 09:05:18 Tags:,,

作者:Noel

本文是iOS游戏《凯西的精巧设计》(Casey’s Contraptions)关卡创建的几点经验分享。

嵌入编辑器

项目最初的想法就是将关卡编辑器植入游戏中。关卡编辑器是我植入游戏的首个元素。在融入菜单、关卡及其他元素前,游戏是没有任何目标的关卡编辑器。

下面是我和Miguel创建所有关卡的方式。这就是玩家用于重新创建自身精细装置,然后同好友分享的最终关卡编辑器。

level_editor(from gamesfromwithin)

level_editor(from gamesfromwithin)

唯一区别是,用户生成关卡的目标就是其中获得3颗星,而游戏关卡则有独立目标。这多半是因为所需UI操作让玩家能够设定影响各物件的不同目标。我和Miguel必须手工编辑关卡文件,添加额外目标信息。

逐步形成的关卡

《凯西的精巧设计》表现较突出的一点是我们从一开始就植入动态关卡编辑器。首个模式就是个小型关卡编辑器!当然我们随后不断进行优化,但依然保持其核心内容。

经过1-2个月的开发,我们逐步植入若干目标,能够完整体验所创造的关卡。这意味着我们能够在发行前6个月持续制作、体验和测试关卡。

我们拥有充足时间创建关卡,因此整个关卡创建过程日益成熟,让我们得以知晓什么元素造就有趣关卡,逐步完善难度等级,最终创建更富趣味的关卡。我们根据机制的趣味性对这些内容进行取舍。

各种游戏道具也给关卡设计带来很大影响。显然其功能会明显影响关卡设计,但令人吃惊的是,道具的特点也会给关卡设计带来显著影响。

例如,初期阶段,很多关卡都关乎处理凯西面临的日常任务:收拾玩具,击中从屋顶滑落的小球,抛出气球等。但只要我们开始添加若干更富色彩的道具(游戏邦注:例如洋娃娃、存钱罐或者RC卡车),我们的关卡就会转变成迷你故事:洋娃娃从建筑上跳下,你需要追上她,小猪存钱罐被卡车运走等。此时我们会发现,我们可以基于体验故事创造真正富有趣味的关卡,而不只是真实情境。也许游戏推出的关卡有近1/3都是体验性的关卡。

skate board(from gamesfromwithin)

skate board(from gamesfromwithin)

创建过程

起初,我们只是创建关卡,并没有考虑太多。运用我们期望的道具,创建看似有趣的内容。我们从中学到很多:融入道具互动,查看哪些内容可行与哪些不可行,哪些引人入胜,哪些则缺乏趣味性。我们并非有意这么做,我们其实是想要挖掘“关卡空间”的可能性。

和你们想的一样,我们早期创建的内容很快就化成泡影。多数关卡都颇具难度,很多都毫无趣味。我们还互相挑战,看看彼此能否破解对方创建的关卡,虽然这颇具趣味,但很多关卡都过于困难。我们随后下调游戏的难度水平。

实际创建关卡的过程并不复杂。我们持续向前迈进,创建关卡的第一道关口。有时我会坐下来,刻意想要创建新关卡,但多数时候,灵感都是在我进行其他不相关的事情时产生的。

只要我们通过第一关,我们就能够将此发送给好友,让他们检查设计存在的漏洞,或者做出相应调整,将其变得更紧凑,更富趣味。随后,我们会基于测试反应重新访问关卡,或是等到我们变得更有经验。

我会估算创建关卡的平均时间,从添加首个道具到将其植入游戏平均约半个小时。有些道具的制作过程更快,但有些则更慢。有些需要我们纠结一整天,然后最终放弃此构思。

优质关卡的成因

我们很快发现,设计杰出装置及移除若干组件不是优质关卡所涉及的内容。

优质关卡总是包含若干选择方案。否则,这就会变成“玩家费力揣摩设计师想法”的游戏,类似的游戏有很多。所以即便我们从完美精美装置着手,我们也需要确保至少游戏存在两种完成目标的方式。

关卡需避免的另一情况是出现显而易见的解决方案。若关卡能够通过放置让目标得以实现的单个道具完成,那么游戏就会变得缺乏趣味。我们很难确保游戏既留有玩家创造自身解决方案的自由空间,又避免出现“廉价”及乏味元素。

星星元素非常微妙。每个关卡都有供玩家争取获得的3颗星星,但它们完全基于自愿原则。起初,我们希望我的关卡能够易于破解,但每颗的获得难度会逐步提高。要获得第三颗星星需要进行认真思考。我的逻辑是用户首先会破解关卡,然后如果对游戏内容感兴趣,就会重返其中,直到获得所有的3颗星。显然所有用户都希望在自己的首次体验中得到3颗星。所以我们就多数关卡内容进行调整,让星星获得过程变得简单些,尤其是在初期关卡中。

让测试者在游戏中自由体验是非常值得推崇的做法。他们不仅能够从中发现漏洞,还会对游戏产生新看法。看到他们以意料之外的方式破解关卡着实颇令人惊叹。查看他人如何寻找解决方案及进行我们未曾想过的互动(虽然所有代码都是由我编写的)是非常有意义的过程。

这里有个很好的例子。

下面我是设计的名为“Angry Doll”的关卡。

angry doll(from gamesfromwithin)

angry doll(from gamesfromwithin)

此关卡旨在突出弹弓的运用,但娃娃和弹弓早已处在合适位置。我想到的一个可能解决方案就是运用剩余小球和弹弓改变娃娃的路径,将小猪击落。

angry doll 2(from gamesfromwithin)

angry doll 2(from gamesfromwithin)

你可以通过很多方式做到这点,将其变成富有趣味的关卡。但有些测试者采用的解决方案完全出乎我所料。

angry doll 3(from gamefromwithin)

angry doll 3(from gamefromwithin)

其解决方案是将各种弹弓运用于娃娃身上,这能够改变其飞行路线,赋予它更多力量。娃娃径直飞向小猪,凭冲击力将小猪粉碎。不仅如此,他们还获得额外积分,网球以混乱状态飞出,他们因此获得所有星星!

angry doll 4(from gamefromwithin)

angry doll 4(from gamefromwithin)

另一解决方案是我的最爱。这完全绕开中间目标,而是将弹弓直接系在小猪一侧,将其撞到墙上(游戏邦注:从中获得1颗星)。实在太聪明啦!

道具序列

关卡制作过程中还存在另一局限情况,那就是我们直到项目接近尾声才着手处理道具序列。起初,解决各关卡的目标只能通过若干简单道具。在逐步体验过程中,我们会慢慢添加新道具,确保在引入新内容前,玩家已充分把握其性能。

初次通过新道具完成关卡任务时,游戏会“奖励”玩家此道具,玩家能够在自身关卡编辑器的装置中运用此道具。玩家甚至能够在“My Contraptions” 日记中看到所获道具的贴纸列表。

main menu(from gamesfromwithin)

main menu(from gamesfromwithin)

植入道具序列意味着我们需留心某关卡能够访问哪些道具。我们基于各关卡和道具引入时间制作电子表格。所有引入的新道具都遵循如下步骤:

* 当道具首次出现,它就已植入关卡中。这意味着玩家能够获悉道具的运用方式。

* 在下个关卡中,我们会给予玩家此道具,这样他们就能够将其放入关卡中,完成精美装置涉及的操作。

* 其余的1-2个关卡也会采用此道具。这能够强化道具表现,令玩家倍感兴趣,然后继续前进。

我们原本试图制作较少关卡,但我们为何最终在第一版游戏中制作72个关卡,其中原因也不难理解。

tank(from gamesfromwithin)

tank(from gamesfromwithin)

可以肯定的是,我们采用的是合理的道具序列,我们撰写脚本依次剖析所有关卡文件,表明道具的运用位置。甚至还保证所有道具都遵循上述规则。这对于我们未来在更新版本中添加更多道具和关卡仍将发挥显著作用。

游戏邦注:原文发布于2011年5月18日,文章叙述以当时为背景。(本文为游戏邦/gamerboom.com编译,拒绝任何不保留版权的转载,如需转载请联系:游戏邦

Making Contraptions

by Noel

Casey’s Contraptions will be available in the US in a few hours! For those of you living in other parts of the world, it’s probably already available on your App Store. Go get it!

For the rest of you still twiddling your thumbs, eagerly awaiting for midnight, here’s some insight on what went on in the level creation for Casey’s Contraptions.

Built-in editor

From the beginning of the project, the idea was to have a level editor built in to the game. The level editor was the very first thing I implemented in the game. Before there were menus, or levels, or anything else, the game was a level editor without any goals.

That’s what Miguel and I used to create all the levels we shipped with. Nothing like eating your own dog food to make something solid and usable. This is the final level editor that players can use to create their own contraptions from scratch and send them to friends.

The only difference is that user-created levels only have the goal of getting the 3 stars in the level, whereas game levels have a separate goal. This was mostly because of the UI work required to allow the user to set different goals affecting multiple objects. It would have been way too complicated, although we’re not ruling out the possibility of extending it in the future. Miguel and I had to edit level files by hand to add the extra goal information.

Levels. Evolved.

One thing that worked really well in Casey’s Contraptions is that we had a working level editor from day one. The first prototype was a tiny level editor! Of course, we’ve been refining it since then, but the core was there.

After a month or two of development, we implement some goals and the ability to play through the levels created. That means we’ve been able to make, play, and test levels for 6 months before shipping.

It was having that amount of time to create levels that allowed the level creation to mature and let us discover what went into a fun level, to refine the difficulty, and create much more interesting levels in the end. Some of that was influenced by what mechanics were fun and which ones weren’t (placing something in a pixel-perfect position).

The different game items also had a huge influence over the level design. Clearly their functionality is going to affect level design hugely, but the surprise was that the character of the items also influenced level design quite a bit.

For example, early on, most of the levels were about solving everyday tasks Casey had to deal with: put toys away, knock down a ball from the roof, pop a balloon, etc. But as soon as we started adding some of the more colorful items, like the doll, the piggy bank, or the RC truck, our levels shifted into being mini-stories: The doll is jumping from a building and you need to catch her, the piggie is being taken away on the truck, etc. That’s when we realized that we could make really fun levels based on playtime stories, not just real situations. Probably about a third of the shipping levels are playtime levels.

Creation process

Initially, we just created levels without thinking too much about it. Used whatever items we wanted and created something that seemed fun. We were learning a lot by doing that: Playing with item interactions, seeing what was possible and what wasn’t, which items we were gravitating towards and which ones were no fun to play with. We weren’t doing it consciously, but what we really doing was exploring the possibilities of the “level space”.

As you can imagine, most of what we created early on went out of the window pretty quickly. Most of the levels were insanely difficult, and a lot of them were simply no fun at all. We were also creating the levels to challenge each other to solve them, and while that was really fun, a lot of those levels were devilishly difficult. We’ve been dialing back the difficulty level ever since then.

The actual process for creating a level wasn’t very involved. Either one of us would go ahead and create a first pass at a level. Sometimes I would sit down and consciously decide to create a new level (especially if it was a level designed to teach about a new item), but more often than not, an idea would come up while doing something unrelated in the game.

Once we had this first pass, we would send it over to the other person and have them either poke holes on the design (if the level can be solved trivially by just dropping a ball somewhere for example), or tweak it to tighten it and make it more fun. Later on, we would revisit levels based on tester feedback or us becoming more experienced.

I estimate that the average time to create a level, from the first item added to the time it was added to the game, was about half an hour. Some of them were much faster, and some much slower though. And for yet some others, we struggled with them for a whole day and finally dropped the idea completely.

What makes a good level

As we quickly learned, making a cool-looking contraption and removing a few pieces does not a good level make.

The best levels always have multiple solutions. Otherwise, it becomes a game of “guess what the designer had in mind”. There are plenty of games like that out there (and I hate them all when I feel that it turns into that). So even if we started with a complete contraption, we would always make sure there were at least two different ways of accomplishing the goals.

The other thing to avoid in a level is the possibility of trivial solutions. If a level can be accomplished by placing a single item that drops and causes the goal to complete, that’s not very fun. It was a tough balance between leaving enough freedom to create your own solutions, but making it so there were no really “cheap” and boring ones.

The stars were tricky. Each level has thee stars you can get, but they’re completely optional. Initially I wanted our levels to be easy to solve, but each star was progressively more difficult to get. Getting the third star required some serious thinking. My reasoning was that people would solve the levels first, get comfortable with the game, and then come back and get three stars in everything. Boy, was I wrong! It was clear right away that most people wanted (no, expected!) to get all three stars in their first pass through the game. So we changed most of the levels so getting the stars is not hugely difficult, especially in the early levels.

Letting the testers loose on the game was an extremely valuable experience. Not only did they catch a fair share of bugs, but they also had a fresh perspective on the game. It was amazing seeing them solve levels in totally different ways than we had anticipated. It was extremely rewarding to see people come up with solutions and even interactions I had never considered even though I had written all the code.

Here’s a good example (Spoiler alert. Skip ahead to the next section if you don’t want to learn multiple solution to one level).

Here’s one level I designed called “Angry Doll” (any references to popular iOS games must be purely coincidence, by the way

This was a level intended to highlight the use of the slingshot, but you already had the doll and one slingshot in place (and the doll misses the pig with its initial flying kick). One possible solution I had in mind was to use the remaining balls and slingshots to alter the course of the doll and knock the pig down.

There are a few different ways you can do that, which made it an interesting level. However, I was totally unprepared for some of the solutions the testers came up with.

This solution uses multiple slingshots on the doll, which changes its course and adds a lot more force to it. It flies straight for the pig and smashes it on impact. Not just that, but for extra style points, the tennis balls go flying out on a totally chaotic pattern, and they get all the stars!!

This other solution might be my favorite. It completely bypasses even the intermediate goal (alter the doll’s trajectory) and instead attaches a slingshot directly on the piggie bank and smashes it against the wall (getting a star along the way). Genius!

Item sequence

There was one additional constraint to making levels that we didn’t start dealing with until fairly late in the project: Item sequence. Initially, only a few, simple items are available to solve the goals in each level. As you play your way through the game, we introduce new items slowly, making sure their properties are well understood before introducing a new one.

The first time you complete a level with a new item, you’re “awarded” that item, and you can start using it in your own contraptions in the level editor. You can even see the stickers of the items you’ve earned so far on the cover of the “My Contraptions” book (I was playing Psychonauts at the time, so I suspect that might have influenced that design decision a bit).

Having a set item sequence meant we had to be very careful which items were available in which level. We kept a spreadsheet with all the levels, and which items were introduced when. Every new item we introduce follows the following steps:

* When an item first appears, it’s already placed in the level. That means the player gets to see how that item behaves.

* The next level, we give that item to the player so he or she can place it in the level to solve the contraption.

* Another level or two making use of that item. That reinforces the behavior of the item and makes the player comfortable with it before moving on.

We were shooting for fewer levels, but it’s not hard to see why we ended up with 72 levels in the first version of the game.

To be really sure we were respecting the right item sequence, we even wrote a script that parsed all the level files in order and spit out where each item was used. It even made sure that every item followed the rules above (first placed in the world, then available to place by the player). This will continue being extremely useful as we add more items and levels in future updates.

Make your own

There you go. That should give you an idea of what was involved in creating the levels for Casey’s Contraptions. In the near future we’re planning on holding contraption-creation contests and we hope to highlight some player-created contraptions. Go ahead and buy the game and start practicing to make your own contraptions. Remember: The crazier the better!(Source:gamesfromwithin


上一篇:

下一篇: