根据我在游戏开发和游戏开发方面的经验,这里有 10 个关于游戏引擎、编码和快速游戏开发的经验教训。
——瑞安·埃斯蒂斯
10 月初3D道具,第一届赞助的 Open Jam 吸引了来自世界各地的 45 支队伍参赛。 各团队仅用了三天时间就使用开源软件创建了一款游戏来进行比赛,最终三支团队获胜。
我们在大学里为每个想参加的人举办了自己的 Open Jam 活动。 我们预留了周末机房,教大家使用开源软件制作游戏和游戏素材:游戏引擎:Godot,音乐:LMMS,2D素材:GIMP,3D素材:Blender。 我们的活动最终推出了三款游戏:《Loathsome》、《Lost Artist》和《Paint Rider》(由我制作)。
根据我在游戏开发和游戏开发方面的经验,这里有 10 个关于游戏引擎、编码和快速游戏开发的经验教训。
1. 规模有限
人们很容易想要制作一款大型冒险游戏或与您最喜爱的游戏类似的游戏。 如果您有一定的经验,那么追求游戏以外的事情可能会很酷,但不要高估您的时间。 我对 Game Jam 活动的欣赏之处在于,它迫使您快速将游戏从概念阶段转变为最终产品,因为您的时间非常有限。 这就是为什么尺寸如此重要。
本次Open Jam的主题是“留下痕迹”。 话题一出来,我和朋友就开始讨论什么样的游戏适合这个题材。 一个想法是制作一款 3D 拳击游戏,玩家可以在敌人身上留下伤痕。 我几乎没有制作 3D 游戏的经验,如果我想做好,我必须花太多时间学习如何让轨迹和点击发挥作用,然后我才弄清楚如何玩它们。
2. 尽早玩
这是我对Game Jam活动最中肯的建议。 尝试找出核心机制并快速编写代码,以便您可以测试它并决定是否值得将其制作成完整的游戏。 距离您的游戏可以玩不应该只剩下几个小时了。 像 Open Jam 这样为期三天的活动不应该花费超过几个小时来制作一个有效的演示。
3. 保持简单
您想要添加的每个功能都会延长总体开发时间。 因为你无法让它快速运行,所以无法知道提交新功能是否会花费很多时间。 街机风格的高分作品往往在游戏比赛中表现良好学游戏开发学游戏开发,因为它们本质上很简单。 核心完成后,您就可以开始添加功能并进行完善,而不必担心最终游戏是否能正常运行。
4.从其他游戏中获取灵感
也许您想要制作一些完全原创的东西,但是拥有一个可以构建的原型非常有用。 这将节省重复性工作的时间,因为您已经知道什么是有趣的。 告诉自己,你的实践经验越多,就越容易制作出融入你自己想法的大型游戏,因此你也可以从重新创建其他人的作品中获得良好的实践。
考虑到 Open Jam 的“留下痕迹”主题,我认为创建一个游戏会很有趣,你可以在玩游戏时留下油漆痕迹,这样你也可以看到你留下的痕迹。 我记得有一款老动画游戏《Line Rider 2 Beta》(后来叫Paint Rider),我知道玩的时候按住Control键可以画出彩蛋的痕迹。 我把这个概念简化了很多,只需要按一次键就可以垂直移动。 (更像是老式飞机游戏)。 大约一两个小时后,我有了一个基本模型,我可以用按钮上下移动并留下黑色的小圆圈标记。
5. 不要忽视可用性
确保尽可能多的人可以玩您的游戏。 提交给 Open Jam 的游戏之一是一款虚拟现实游戏。 尽管这很酷,但几乎没有人可以玩它,因为没有多少人拥有 VR 设备。 幸运的是,它的开发者并没有期望获得好的排名,他们只是想练习一下。 但如果您想与人们分享您的游戏(或赢得 Game Jam 活动),请务必注意可访问性。
Godot(以及大多数其他游戏引擎)允许您在所有主要平台上发布您的游戏。 当提交游戏时,尤其是向 Itch.io 提交游戏时,有一个大多数人都可以玩的浏览器版本。 但请尽力在尽可能多的平台和操作系统上发布。 我什至尝试在移动设备上发布 Paint Rider,但技术有限。
6.不要做得太难
如果游戏需要太多的努力来学习或玩,你就会失去一些玩家。 在游戏策划阶段保持简单和有限是非常重要的。 同样,很容易想出一个大的游戏创意,但需要十天半的时间来开发; 制作一款有趣、简单的游戏很难。
在向我妈妈介绍《Paint Rider》后,她很快就开始玩它,我认为我不需要向她解释更多。
7.不要太整洁
如果您习惯于花时间研究设计模式并确保您的代码可重用且适应性强,请尝试放松一点。 如果你花太多时间思考设计,当你终于到了可以玩游戏的地步时游戏动态,你可能会发现游戏并不是很好玩,到时候再做出改变就为时已晚了。
这个过程也适用于简化更严肃的游戏:快速编写概念验证演示模型,直到找到一个值得制作成完整游戏的模型,然后您可以专注于构建完美的代码来支持它。 为 Game Jame 活动创建游戏就像快速开发可验证的原型一样。
8.但不要太随意
另一方面,意大利面条式代码很容易失控,即使游戏是在没有大量代码的情况下开发的。 幸运的是,大多数游戏引擎都会考虑设计模式。 以Godot的信号函数为例。 节点可以将数据信息发送到它们“连接到”的节点——这是您的设计自动形成的观察者模式。 只要您知道如何利用这个游戏引擎的功能,您就可以快速编写代码,并且您的代码不会特别难以阅读。