2013年3月8日
客座文章:作为独立手机游戏开发者取得进展
Hugo Bonacci 是“本周应用”获奖作品 功夫冲突 的独立开发者和设计师。他对游戏的热情始于童年,Hugo 仍然是 NES 和 SNES 游戏的忠实粉丝(他甚至和他的孩子们一起玩!),并受到最终幻想、塞尔达、圣剑传说和时空之轮等游戏的启发。
白天,Hugo 在德克萨斯州达拉斯的一家公司担任用户体验顾问,但他真正的热情在于游戏开发。请在 hugoware.net 查看 Hugo 的软件开发博客和设计作品集。
制作游戏可能很有趣,但也可能是一项巨大的工作。许多人尝试自己制作游戏,但真正成功的人却少得多——包括我自己。
在制作功夫冲突时,我决定尝试与以前的项目不同的方法。这篇文章讨论了一些帮助我成功发布第一款游戏的方法。
设计优先
不要急于开始为你的游戏编写代码。花时间计划你的游戏是关于什么的,它是如何运作的,并对需要做的事情有一个大致的了解。在纸上发现缺陷比花费数小时编写代码后才发现一个想法行不通要快得多。
尝试提出一个使你的游戏与众不同的想法。有时,它就像采取一个常见的游戏类别(例如,第一人称射击游戏),并赋予它独特的转折(例如,添加橙色和蓝色传送门!)。
你不需要对游戏中的每个屏幕和行为都有详细的概述。我发现简单的草图和笔记足以将想法从你的脑海中提取出来。
计划不应仅限于项目的开始。任何时候你想要添加一个功能或修改某些东西的工作方式,在开始之前花一些时间记下你的想法。
保持简单
与任何项目一样,完成所需的任务数量可能会迅速失控。每次你认为你已经确定了所有需要做的事情时,你最终会注意到你错过的全新的一组任务。
首先创建一个游戏核心需求的列表,这意味着删除不必要的游戏元素,如能量道具、高分等。接下来,包括你需要创建的每个精灵、动画、背景、音乐和其他创意资产。最后,不要忘记包括那些通常被忽视直到需要时才会被考虑的任务,例如管理用户设置、处理场景之间的转换、游戏菜单、资源管理等。
你的“简单”游戏很快就会变成一个令人生畏的工作清单,需要几周才能完成。不要让这吓到你。概述要完成的任务将帮助你设定目标并跟踪进度。
最后,如果你想在游戏中添加一些内容,请再次执行此过程。问问自己你需要编写什么代码和设计才能实现它。一旦你弄清楚需要做什么,请决定你是否真的需要该功能,或者它是否可以等待。
保持简单有时意味着对自己说“不”,拒绝向你的游戏添加功能。
保持专注
当你是一个人进行一个项目时,很容易感到沮丧,尤其是在进展缓慢或你已经工作了几个月的时候,但幸运的是,有一些方法可以保持动力。
首先,与朋友、家人和社交网络分享你的进展。让人们看到你正在做什么,并分享你的兴奋。把你的游戏放在一个设备上,让人们试用它。看到你的游戏在运行是令人兴奋的,并且非常有动力。
如果它不能正常工作,不要气馁——这只是一个演示。此外,不要立即对用户反馈采取行动。除非这是一个严重的缺陷,否则只需记下他们的建议,然后在以后再进行审查。尝试实施新的想法,即使是好的想法,也会减慢进度。
其次,如果你发现自己感到缺乏动力、不知所措,或者只是对你应该做什么感到困惑,那么这可能表明你需要进行组织。花一些时间检查你的项目,并写下剩余的任务清单。仅仅知道需要做什么就可以在保持项目正常进行方面发挥很大作用。
当你坐下来工作时,查看你的清单,并为自己设定至少完成一项任务(或更多)的目标,然后在完成时将其标记出来。
明智地利用时间
尝试找到在尝试编写代码之前预览你的想法的方法。例如,我使用 Flash 进行角色设计和动画,但它也很适合可视化角色如何在背景中移动,或快速尝试不同类型的特效。
为游戏创建美术是一项非常耗时的过程,因此请务必通过使用矢量美术、3D 或非常大的 PSD,尽早规划高分辨率显示。不要尝试手动创建自己的精灵表,而是使用诸如 TexturePacker 或 Zwoptex 之类的应用程序来简化流程。
考虑使用你无法自己创建的资产的库存资源。例如,我不是音乐家,过去我曾浪费数周的开发时间试图创作音乐,但最终结果却不尽人意。对于这个项目,我决定购买免版税音乐。音乐不仅听起来比我自己创作的任何音乐都好得多,而且还因此节省了大量时间。
如果有可用的开源库可以执行相同操作,请避免编写代码。即使它不是完全匹配,修改现有库也比从头开始编写一个库要快得多。尽管编写“框架代码”可能很有趣,但你最好将时间集中在特定于你的游戏的代碼上。
不要害怕花时间编写脚本来自动化重复性任务。如果你发现自己多次执行相同的过程,那么它非常适合自动化。当你是一个人进行一个项目时,在乏味活动上花费的时间就是从有意义的成就中花费的时间。
最后,避免过度设计你的代码。这不是要求草率编程,而是提醒你,最完美的抽象代码库如果永远不发布仍然是失败的。尝试尽可能重用代码 (DRY),编写有用的注释,并使用有意义的函数和变量名称,但你的主要重点应该是创造完美的用户体验。
不要将就
仔细查看游戏中的每一个细节,永远不要接受“足够好”。如果你对某件事不满意,或者它感觉不对,那么你的受众很可能也不会喜欢它。润色每个细节,直到你觉得它完美为止。像对待杰作一样对待你的游戏——它不应该低于这个标准!
作为一个独立开发者进行一个项目是很困难的,但也意味着你是唯一一个决定最终产品的人。利用完全控制权,只接受你最好的作品!
Hugo Bonacci,《功夫冲突》的创作者
Daniel
发布于 3月14日 18:04我很高兴你成功制作了你的游戏。
我是一名插画家,在业余时间,我学习创建一些我心中构思的应用程序。
https://www.elance.com/s/studiodomingos/portfolio/
Joe Public
发布于 3月15日 06:10非常感谢你们的这些话语……我确实是一名独立游戏开发者,我发自内心地感谢这篇文章,它给了我继续前进的动力、能量和意志……因为在开发了一年之后,我感到非常非常沮丧。伟大的话语,伟大的思考……谢谢你们。
乔。
哈达斯
发布于 03:16,3月17日感谢所有这些提示!这是一篇很棒的阅读。
我想知道,制作这款游戏花了多长时间?
雨果·博纳奇
发布于 09:10,3月18日@乔 — 希望它能帮到你!保持动力,你会完成的!
@哈达斯 — 仅在深夜和周末工作,第一个版本大概花了 4 个月,然后第二个重大更新(最近刚刚发布)又花了 2 个月。
费利佩
发布于 09:37,3月18日很棒的作品,感谢分享你的想法
苏门
发布于 22:19,3月29日嗨,Corona 世界,
我想开发一款背景屏幕会垂直移动的游戏,就像摩托车赛车游戏一样。
我不知道该怎么做。如果有人能帮我,那就太好了。
等待回复