独立开发者:我为什么要学游戏编程?

2015年11月17日 19:23 388 次阅读 来源: 素文宅 作者: 路人甲

        Gamelook报道/对于一个比较小的团队或者是单枪匹马的开发者来说,很多的人都需要时是多面手,最近,一名独立游戏开发者在博客中讲述了自己数十年的游戏研发经历,他表示,游戏策划是需要有一些编程知识的,因为只有这样你才可以有更多的创意自由,当然,也绝对不是说你应该成为约翰·卡马克并学习制作游戏引擎,你只需要学会使用Game Maker或者Unity制作,能够把想法做成创意原型就可以了。


        以下请看Gamelook编译的博文内容:

        当我11岁的时候,家里买了第一台电脑:一台AST Advantage,它有一个66MHz 486处理器、4MB内存和32MB硬盘空间,这不是最优秀的电脑,即便在当时也不是,但它却支持QBasic,由于一直希望做游戏,所以我很快就学会了编程。


        我在后来十年左右的时间里都沉迷在QBasic里,只是因为我非常习惯使用它。我做过大批的游戏,有射击、平台游戏和很多实际上看起来很奇怪的游戏。我做过的一款游戏叫做《杀死无辜者(Kill the Innocent)》,这款游戏里主要是火柴人在一个桥上独自走路的场景,你用枪瞄准并杀掉他们。我记得曾经写了一个非常详细的系统,只为了让角色头朝下落到地上的时候更自然一些。


        然而在那个时代,我真的从来没有听说过太多的编程方面的东西,当时只是使用同样的代码或者关键字,所有东西都是敲出来的,没有什么是可以远程模块化的。换句话说,我当时学的真不是编程,我当时并不会如何插入精灵表单(spritesheet)或者做一些可以在Windows上运行的东西,更不用说是一部iPhone了,只是我当时真的不是一个程序员。


        我学代码所遇到的困难

        在青少年时代和20岁左右的时候,我一次又一次地尝试,希望学到一些更时髦的编程技术,我没办法告诉你们我借了多少本‘学习XX语言’的书籍,但都是看了前三章之后,然后放弃了。


        我为什么放弃呢?基本上来说,它们看起来对我太难了,更确切地说,我只是很难为这些书投入太多的努力,我现在理解了编程真的需要一种特殊的毅力和新年,一定要相信‘我一定可以找到答案’。


        我觉得其中的一部分原因是,我本身是做美术工作的,我在学校里就不喜欢数学和自然科学,但我最擅长的是音乐、视觉效果和写作。我认为我当时把自己当作了创意类型的人才,所以当一些兼容性错误出现的时候,我直到四五次修改的时候,一些问题还在。有时候,我很容易劝自己说,“我并不是个程序员,毕竟我需要有个程序员才能搞定这些事情。”


最后,和任何事情一样, 你必须对自己想抱有信心,并且相信你能够学会,但一定要记得,绝不要把这件事当成琐事。


        非编程游戏设计师

        在我职业生涯作为专业游戏开发者的第一个十年,我大多数的时间都是作为专业游戏开发者,我会在以下方面负责主要角色,比如视觉艺术、写游戏音乐、音效、画质设计、网页设计、写作、游戏设计、市场营销和其他一些方面的技巧。简单的说,理论上讲这些方面每个都需要相对高的制作价值,除了游戏编程之外。


        我的想法是,如果我做了其他所有的事情,从其他担任编程角色的人寻求帮助,这一直都是我的观点。我实际上甚至有时候会抱怨的想,我不仅要做游戏中的这么多事情,还需要亲自来编程吗?我应该招人来完成这件事。


        实际上,我知道这可能是有道理的,而且是可行的。我有几款游戏实际上就是这么做的。需要说清楚的是:你可以作为一个非游戏编程从事研发工作。我后来也找到了寻求游戏设计、美术师、作曲者等方面人才的团队,并且在其中担任过不同职位。


        我想要说的是,虽然你可以这么做,但作为一个游戏设计师,你不应该这么做。


        真正的游戏设计师,是那些真正尝试系统并努力做一些规则设定的人。从技术上来说,设计了解谜平台游戏或者塔防游戏的人都是游戏设计师,但我要说的并不是这些人,如果你在设计一款《Flappy Bird》复刻版,或许不会编程也没什么问题。


        对于和我一样在实验新的互动系统的人来说,‘寻找程序员’的计划并不切实际,认真的游戏设计很难第一次就敲定,你可能试错十次、一百次,在加入新的想法时,你们一两个人就像是发光的电灯泡,写邮件来和其他人交流可能需要一两天才能解决一件小事,这样的效率实在是太慢了。


        你需要个人参与到测试、调整以及再调整的过程中,改进很多的东西,改变很多安排好了的事情,你就是需要在哪儿做这些事。否则的话,你就会遇到邮件交流的问题,即便是很小的事情都需要很长时间。


        需要记住的是,你在自己的游戏上投入的时间也是有限的,所以你希望充分利用。作为游戏设计师,你可能给游戏研发时间带来大量的推迟。

       

         成为项目的程序员你需要补充大量的知识

        最后,我发现在和程序员合作的时候,我需要在平衡‘做正确的设计’还是‘不尊重他们的时间追求个人感觉’方面进行平衡,大多时间里,如果我问一个程序员写一些代码的话,随后我们可能会发现我让他做的只能被扔到垃圾堆里。这是需要提醒的一个点,但有时候这种事又不会发生。让你跟一个人说,‘我上周让你写的东西,我们准备重做’。我不希望处于一个在游戏设计方面需要做一丁点妥协的情况。


        那么桌游呢?

        桌游是非常适合学习游戏设计的领域,有些设计师,根据他们的目标和理念的不同,可能只愿意把全部的职业生涯放到做桌游上。但有个事实不得不说,尽管设计优秀的桌游的确比数字游戏更多,但作为媒体的一种,桌游本身也是有些问题的。很多人都觉得这些是糟糕的理由,其中有些人不喜欢回合制,有些人不喜欢学习规则,还有人就是不喜欢桌游,但这些都不是真正的原因。


        桌游问题的真正原因是:和实体组件制作方的合作会导致问题,因为你们之间的信息分享很难做到同时同步。这种信息的不一致会让玩家们感受出来。


        快速反馈:做一个游戏,然后放到网上看人们的反应,几个小时里就可以做到,而桌游则需要提前计划并且考虑很多实际中的烦恼。商业上不能真正可行,我觉得很多的设计师们可能更愿意以画画谋生,还有些人会是例外,因为用纸和笔比电脑应用更难。


        最后,如我所说,我的确认为桌游对于游戏设计师们来说比较可以学到一些在画画方面的知识,我也相信在任何方面专长都可能做出好游戏来,我只是觉得做桌游是比做数字游戏更困难的,而且作一个优秀的游戏本身就已经几乎是不可能的事情了。


        成为程序员

        我们的游戏《A Monster-Bumping Adventure》研发用了5年的时间,原因是,它最初是一款策略游戏,而我希望把它到对的感觉。我们本可以很早之前就发布游戏,如果不介意创造特殊元素的话,它还可以是一个无聊的RPG游戏。因此我们进行了大量修改、再修改。


        但到了最后,我们的首位程序员比如转移到其他项目上,所以我们换掉了一个又一个程序员,最终在2013年底的时候,我们非常缺乏编程人员,甚至有时候《Auro》多次面临游戏停掉的危险。所以,出于这种情况,我没得选择,我必须自己学习编程,否则的话我们这么久的工作等于是浪费了。


        不过,由于这个情况,或许还因为人老了以及对人生有了个更成熟的想法。最终,我为《Auro》的项目最终代码写了很多。最近我通过Udemy学习了Unity课程,还看了很多游戏编程方面的数。很明显,我还有很长的路要走,但我已经做到了至少可以自己做创意原型和基本的调整,作为游戏设计师来说,这给了我很大的自由。


        我仍然在一个理想化的世界中,一个设计师要有一个‘主程序’专门负责这方面的事情,让游戏预算的代码看起来更容易管理,特别是哪些比较大以及更复杂的需求。


        但我知道的是,游戏设计就像我自己,在意制作新颖、哟去和深度互动系统的设计师们,是需要学习编程的。你不可能事事都依赖他人,你不能只依靠纸和画板,做一些有意义的是,不管是交学费、上课还是所在宾馆房间里看书。我绝对不是说你应该成为约翰·卡马克并学习制作游戏引擎,你只需要学会使用Game Maker或者Unity制作,能够把想法做成创意原型就可以了。如果是是一个创意类型的设计师,那么游戏行业需要你。


        本文英文作者 Keith Burgun

            来源:GAMELOOK

还可以输入136 讨论区:
评 论