快速游戏开发的 10 个关键要点

我从游戏创作挑战赛中了解到的关于引擎、编码和快速开发的知识。
720 位读者喜欢这篇文章。
Jump-start your career with open source skills

Opensource.com

10 月初,由 Opensource.com 赞助的首届 Open Jam 吸引了来自世界各地团队的 45 个参赛作品。这些团队只有三天的时间来使用开源软件创建一个游戏以参加比赛,最终 三个团队脱颖而出

我们在大学里为任何想参加的人举办了自己的 Open Jam 活动。我们预定了一个周末的计算机实验室,并教人们如何使用开源软件——Godot 游戏引擎,LMMS 音乐创作软件,GIMP 2D 艺术创作软件,以及 Blender 3D 艺术创作软件——来创建游戏和游戏美术资源。我们活动中提交了三款游戏:LoathsomeLost ArtistPaint Rider(我创作的)。

根据我参与游戏创作挑战赛和游戏开发的经验,以下是我学到的关于游戏引擎、编码和快速游戏开发的 10 个经验教训。

1. 缩小范围

很容易沉迷于制作一款宏大的冒险游戏或与你最喜欢的游戏相媲美的游戏的想法。在游戏创作挑战赛之外追求这些想法可能很棒,一旦你积累了一些经验,但不要高估你所拥有的时间。我喜欢游戏创作挑战赛的原因是它们迫使你专注于快速地将游戏从概念阶段推进到最终产品,因为你的时间非常有限。这就是为什么缩小范围如此重要。

Open Jam 的主题是“留下印记”。主题一经公布,我的朋友们和我便开始集思广益,构思符合该主题的游戏。其中一个想法是一个 3D 拳击游戏,玩家可以在敌人身上留下瘀伤。我制作 3D 游戏的经验很少,虽然我很想在这方面有所提高,但我可能会花太多时间学习如何设置所有纹理和碰撞箱,才能开始弄清楚是什么会让游戏变得有趣。

2. 尽早做出可玩的东西

这是我对游戏创作挑战赛最喜欢的建议。尝试提出核心机制并快速编码使其达到可工作状态,以便你可以测试它们并决定它是否值得制作成完整的游戏。你不应该在离截止日期还有几个小时的时候还在尝试让你的游戏可玩。对于像 Open Jam 这样的为期三天的比赛,不应该花费超过几个小时的时间来运行某种演示。

3. 保持简单

你想要包含的每个功能都会延长你的总开发时间。你永远不知道承诺一个功能是否会导致大量的时间消耗,因为你就是无法让它正常工作。街机风格的高分游戏通常很适合游戏创作挑战赛,因为它们通常本质上很简单。一旦你完成了核心部分,你就可以开始添加功能和润色,而无需担心最终是否会有一个可运行的游戏。

4. 从其他游戏中汲取灵感

你可能会想创作一些完全原创的东西,但是有模型可以作为你工作的依据非常有帮助。这将减少构思机制所需的时间,因为你已经知道什么是好玩的。提醒自己,你拥有的经验越多,就越容易创造出你有很多想法的大型游戏,所以你最好通过尝试重现其他人已经做过的事情来练习。

考虑到 Open Jam 的“留下印记”主题,我认为创建一个在你玩游戏时留下油漆轨迹的游戏会很有趣,这样你就可以看到你留下的印记。我记得旧的 Flash 游戏 Line Rider 2 Beta(因此得名 Paint Rider),以及如果你在玩游戏时按住 Control 按钮,你可以绘制赛道的秘密功能。我通过仅需要一个按钮进行垂直移动(非常像旧的直升机游戏)来进一步简化了这个概念。在比赛开始后一两个小时,我制作了一个基本的演示,你可以在其中用一个按钮向上或向下移动并留下一串黑色小圆圈。

5. 不要忽视可访问性

确保尽可能多的人可以玩你的游戏。提交给 Open Jam 的游戏之一是一款虚拟现实游戏。尽管这很酷,但几乎没有人能够玩它,因为没有多少人拥有 VR 设备。幸运的是,它的开发者并不指望它能在评分中表现出色,而是将其视为练习。但是,如果你想与很多人分享你的游戏(或赢得游戏创作挑战赛),那么注意可访问性非常重要。

Godot(和大多数其他游戏引擎)允许你将游戏导出到所有主要平台。当专门向 Itch.io 提交游戏时,拥有浏览器内版本将使大多数人能够玩它。但始终考虑尽可能多地导出到平台和操作系统。我甚至尝试将 Paint Rider 导出到移动设备,但技术困难阻碍了我的努力。

6. 不要让它太难

如果你的游戏需要花费太多精力才能学习或玩,你将失去一部分受众。这与保持游戏简单和在范围内非常吻合,并且更加重视游戏策划阶段。再说一次,很容易想出一个你可以花费数周或数月开发的史诗般的游戏创意;更难想出一个好的、简单的游戏。

我给我的妈妈看了 Paint Rider,她立刻就能玩了。我想我不需要再说更多关于这个的事情了。

7. 不要太注重整洁

如果你习惯于花时间在各处应用设计模式并确保你的代码可重用且可读,请尝试放松一点。如果你花费太多时间担心设计,当你最终可以玩你的游戏时,你可能会发现它不是很有趣。到那时,再做更改就太晚了。

这个过程也用于原型化更严肃的游戏:你快速编写混乱的概念验证演示,直到找到一个值得制作成完整游戏的演示,然后你深入构建一个完美的代码库来支持它。为游戏创作挑战赛创建一个游戏就像快速编写一个概念验证。

8. 但也不要太混乱

另一方面,即使游戏中没有大量的代码,意大利面条式代码 也很容易失控。幸运的是,大多数游戏引擎的构建都考虑了设计模式。以 Godot 的 信号 功能为例,该功能允许节点向它们“连接”的节点发送带有数据的消息——它是自动烘焙到你的设计中的 观察者模式。只要你知道如何利用游戏引擎的功能,你就应该能够快速编码,而不会让你的代码看起来太痛苦。

9. 获取反馈

向人们展示你正在做的事情。让他们试用一下,看看他们对此有何看法。观察他们如何玩你的游戏,看看他们是否发现你没有预料到的东西。如果游戏创作挑战赛有 Discord 频道或类似的东西,请在那里发布你的游戏,或与人们交流你的想法。Paint Rider 的一个决定性特征是画布循环,因此你可以看到你之前留下的油漆。直到有人问我为什么游戏没有这个功能,我才考虑到这个机制。

在团队中工作将确保流程中有其他人可以传递反馈。

并且不要忘记以同样的方式帮助其他人;如果你在玩别人的游戏时意识到某些东西可以帮助你的游戏,那将是双赢的。

10. 知道在哪里找到资源

创建所有你自己的资源真的会减慢你的速度。在 Open Jam 期间,我注意到 Loathsome 的开发者花了几个小时绘制主角,而我正忙于整合新功能和修复错误。你可以简化游戏的美术风格,仍然可以想出看起来和听起来都不错的东西,但还有其他选择。尝试在 知识共享 中或在像 Anttis Instrumentals 这样的免费音乐网站上寻找资源。或者,如果可能,与专门的艺术家、作家或音乐家组队。

你可能会发现有用的其他软件包括 Krita,这是一款开源 2D 图像创建器,非常适合数字绘画,特别是如果你有绘图板,以及 sfxr,这是一款游戏音效创建器,它有很多参数可以玩,但正如其创建者所说:“基本用法包括点击随机按钮。”(Paint Rider 中的所有音效都是用 Sfxr 制作的。)你还可以查看 Calinou 庞大而整齐的开源游戏开发软件列表。


你是否参加过 Open Jam 或其他游戏创作挑战赛并有其他建议?或者你是否有我没有解决的问题?如果有,请在评论中分享。

标签

评论已关闭。

© . All rights reserved.