自己写代码做游戏(不写代码也能做游戏)
任何一个热爱游戏的玩家都会有自己也做游戏的想法;我们也会对一个烂游戏发出这样的感叹:这算什么,我都能做的更好。有些人会仅仅感叹完就算,而另外一些人会去尝试:既然我玩过那么多游戏,我也想自己做一个游戏试试看。在如今这个手游风行的时代,做一个具有基本的技术水平的游戏的门槛已经降到了最低:一个独立开发者不用担心发行渠道,不用担心工具,只需要有过得去的美术和程序能力,和一颗热爱游戏的心就可以做出一款大热的游戏出来,App Store上也到处是个人开发者做出的游戏大红大紫的例子,比如《Flappy Bird》(至于《Flappy Bird》为什么火,那是另外一个故事)。
为大型游戏和专业开发者准备的工具已经相当多,这些工具之间的优劣也属于常年在专业开发者内部争论的话题,在此我们并不过多的深入。前段时间一个在线应用开发网站Appy Pie推出了新的GameBuilder,提供游戏模板,宣布用户不需要任何编程能力便足以做出一个新游戏出来,并且由网站提交给苹果进行审核。加之最近在WWDC中苹果也推出了新的开发工具Xcode Playgrounds,开发者可以更加直观便利的开发游戏,这再次引发了我们的思考:市面上这么多工具所号称的“不需要写一行代码就能够开发游戏”的口号真的是否现实?我们可以来考察一下这些工具。
■ 个人游戏制作工具的历史
RPG Maker VX,可以看出软件中已经提供了大量的素材可以使用,不过游戏机制还是勇者斗恶龙式的
个人独立开发游戏的工具大概可以追溯到很早以前的RPG Maker,其最早版本是在92年由日本公司Enterbrain发行。而第一个在Windows PC上运行的版本则是RPG Maker 95。从名字可以看出这是一个专门用来制作RPG游戏的软件,游戏里自带大量素材,使用者不需要编程只需要利用内置的事件编辑器和战斗编辑器就能够写出游戏的基本逻辑。
从名称上也可以看出这个软件能够开发出的软件基本上仅限于日式脚本RPG类型的游戏,但是仍然有玩家自己做出ARPG或者SLG类型的游戏。这需要重写游戏机制,玩家得非常熟练的使用编辑器才能做到。从这个角度而言,RPG Maker的地位相当于后来很多RTS自带的地图编辑器,只是可以导入游戏以外的美术素材。而著名的魔兽3的地图编辑器则相当于一个非常简化版的游戏制作工具,连目前大热的MOBA类型的游戏都是从魔兽3的个人自制地图开始的。
GameMaker: Studio,这已经算是一个比较现代和系统的开发工具了,提供大量的控件使用
GameMaker: Studio则是另外一个较早的个人游戏制作工具。GameMaker: Studio最早的版本发行于1999年,那时的名字还是Animo,原本是一款制作2D动画的软件。之后这个软件改名为GameMaker,变为一个主要是制作2D游戏的软件,只有有限的3D画面的支持。跟RPG Maker一样,用户不需要编程,可以只使用拖曳操作便可完成制作。软件还提供了一门脚本语言Game Maker Language可以应用于简单的编辑器无法满足要求的场合。
与同类工具一样,如果用户想要在不写代码的情况下完成一个游戏,那么就只能利用软件内部已经打包好的游戏机制来制作出游戏;但是如果用户所构思的游戏机制的复杂度达到一定的门槛,那么编写脚本和事件逻辑是不可避免的。随着现代游戏变得愈加精巧,这个工具本身也在随之进化;到现在为止GameMaker: Studio仍然在开发中,而且官网上也展示了不少使用他们的工具开发出的游戏。可以看出有不少独立开发团队也使用这个工具在开发游戏,但是恐怕优秀的游戏就不是宣传的“不需要编程”就能开发出来的了,而是需要大量的脚本编辑器使用。
■ 移动游戏时代的DIY套件
在如今的移动时代,软件和游戏开发门槛降低,工具也变得十分多样。商业开发者可以使用成熟的引擎开发,比如Unity3D或者更加复杂的PC界的虚幻引擎;具备比较强悍的编程能力也有野心的个人开发者可以使用诸如Torque3D这样的开源3D引擎;想要做普通2D游戏的个人开发可以使用coco2dx这样的开源2D游戏开发环境,或者使用诸如PhoneGap这样的网页包装工具将已经做好的网页游戏包装为移动平台应用。
以上所述都是相对而言专业正统的游戏开发工具,使用这些工具的仍然是专业的开发者:程序员、设计师和美工。个人游戏开发工具的目标用户则非常明确:业余开发者。所有的个人开发工具都强调不需要编程即可使用,是否真的如此?
GameSalad
GameSalad是比较著名的个人游戏开发工具。使用他们的软件仍然需要安装软件到本地电脑,想要开发iOS游戏,也需要安装标准的苹果开发环境Xcode以及购买99美元的苹果开发者资格 。软件里提供的是一个比较标准的软件开发环境,只是软件开发环境里所必须的很多需要编程的基础逻辑和机制结构都被作为控件向用户提供,用户只需要输入参数就可以使用。从这种意义上来说,使用GameSalad的确不需要编程,但是用户不可避免的需要了解一些软件工程的基础流程才能比较顺畅的实现目标中所需要的游戏机制。
“不需要写一行代码”是网站宣传里强调的
据使用过GameSalad开发过游戏的用户介绍,使用GameSalad生成的项目无法转为Xcode下的源代码进行二次开发,也有很多在Xcode环境下可以实现的功能无法在GameSalad下实现。这也说明了其并不是一个商业开发工具,不过个人用户想要做一些游戏机制比较简单固定的游戏是足够了。在官网上开发者不无得意的展示了不少已经发布的使用GameSalad开发环境所编写的游戏,其中还包括若干进入了排行榜前100位的游戏。
GameBuilder Studio
在GameBuilder Studio 的官方网站上这个工具被宣传为全平台的游戏制作工具。 在宣传中,软件的集成开发环境中功能和插件非常齐全,用户可以在同一个环境中开发iOS、安卓、Kindle、Ouya、Windows Phone、Facebook和网页以及Flash游戏,还提供了多人游戏和应用内购买的功能插件,功能玲琅满目。开发商还特别强调了,他们是唯一一个能够在Windows环境下开发iOS游戏的工具。
支持的平台繁多,还包括开源游戏机Ouya
不过在对这个工具的官方网站进一步的观察之后,不难发现一个事实:GameBuilder Studio的用户群非常有限。工具Github页面已经数年没有进行大的更新,官方论坛上讨论寥寥。如果是一个流行的游戏制作软件,那么官方论坛上肯定满是讨论群组,会有大量的新用户会问一些最基础的问题,这是正常规律。但是官方论坛从这个软件2010年发布到目前为止只有96个帖子 。所有这样的个人开发工具的网站上都会提供一个展示页面,显示用户使用他们的工具开发出的游戏,但是这个工具的官方网站上虽然提到了这一点,却没有展示任何一款游戏。 到底有多少人在使用这个GameBuilder Studio,也就可想而知了。
Appy Pie’s GameBuilder
Appy Pie是一个在线应用开发网站,用户并不需要下载一套软件来进行应用开发工作,只需要点选网站提供的相应的模板然后适当的上传素材,或者干脆在网站提供的素材库里挑选,就可以完成一个应用,网站可以帮助你提交苹果进行审核。 这样开发出来的应用从本质上仍然是HTML5网页应用的打包,针对的是那些没有任何开发基础但是需要或者想要制作移动应用的用户的 。值得注意的是国内也出现了这样的自助应用创建网站:金和IU APP自助工厂、简网APP工厂、追信魔盒、等等。
从网站的宣传来看,应用开发就是简单的选择模板并且适当的自定义就可以了
不难想象一个典型的快速移动应用开发的典型场景:一个需要一个移动应用招揽客户的小餐馆老板,他没有时间和精力去学习程序开发,也没有足够的预算去请一个专业开发者,这样的快速开发工具正好给他提供了条件来做一个功能简单而明确的应用。然而任何事情到了中国都会带上某种中国特色。在金和IU APP工厂的宣传里,强调了“月饷计划”,鼓励开发者将生成的移动应用进行推广,并按照用户数与开发者结算收益。本来设想中的这种快速开发应用应该只是实现某些特定功能的辅助应用,但是以国内这样强调用户的推广方式,显然就不再是以实现简单功能的应用作为主要目标了。
这个网页游戏制作工具的具体流程就是这样几个极其有限的步骤
那么能不能将这种快速应用制作的方式扩展到游戏领域?Appy Pie最近做了一次尝试:GameBuilder。工具提供六个模板,用户只需要很少的几步就可以做出一个完整的应用并且提交审核。不过只需要稍微试验一下就能发现,用户所能控制的内容极少,基本上仅限于一些美术素材,而游戏最重要的游戏机制等等全都是模板已经限定清楚了的。在这六个模板里开发商还不无恶意的提供了“像素鸟”模板,用户能做的差不多只是将《像素鸟》里的鸟换成一些别的什么奇奇怪怪的物体,比App Store上铺天盖地的像素鸟寨版更加山寨,基本不可能通过苹果的审查。 从这个角度来看,Appy Pie提供的这个Game Builder与其说是一个工具,还不如说是一个玩具。
■ Swift:新希望?
Playgrounds的可视化开发环境的确直观,但仍然是一个编程开发工具
在最近的WWDC大会上,苹果宣布了新的开发语言Swift,号称降低了大量Objective C的编程复杂度,以及与之相伴的新工具,Xcode的完全可视化的游戏开发插件Playgrounds。这两个新工具的发布无疑为开发者带来了新希望,让人想起了微软在很多年前已经做过的工作,XNA:同样是面向开发者的轻量游戏开发平台。然而面向开发者的轻量游戏开发工具并不代表着对开发者毫无要求。在Xcode Playgrounds这种可视化工具下使用Swift语言编程与在XNA环境下使用C#语言编程一样,只是将游戏编程变得更加直观和方便,并没有降低编程本身的复杂度。这对于游戏开发者是一个利好消息,对于想要真正学习游戏开发的玩家同样是一个利好消息,但是这并不是那些号称“不需要编程就能开发游戏”的工具。
总有人会想要自己做游戏,就跟总有人需要一个简单的应用开发工具一样。但游戏毕竟是艺术与技术的结合:它的核心不是某些明确的功能,而是“玩”这个行为本身。所以想要让游戏变得“好玩”,任何设计师都仍然需要亲力亲为,自己去打造出一个游戏的核心机制出来,没有捷径可走。所谓个人游戏开发工具,只是将这个过程变得门槛更低,更加容易学习,而不是把“游戏”本身也一股脑的打包给用户。如果真的是想要自己设计游戏的未来设计师,无论使用什么样的工具,他们都会去实现自己的想法,去把游戏变得更好。
免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com