认识Andy的时候,是在某个开发论坛里,他说到自己的产品上线了,但是不知道怎么去宣传自己的产品。在后来的接触中,才知道,原来Andy在某国企做技术方面的管理工作,在利用业余时间开发独立游戏。从上大学起,Andy就开始开发flash游戏,到现在开发手游。目前有6款手游上线,虽然现在所有的产品的流水才只有美刀,但这些足以让他坚持下去。
近日,Andy的最新作品《Piupiupiu》刚上线不久,来聊一下这些年他的独立游戏之路。以下是Andy自述:■接触游戏我第一次接触游戏估计得追溯到小学三年的时候了,由于父母工作原因搬家,来到另外一个城市,认识的的一些小伙伴家里有游戏机(任天堂FC),立马被这东西给征服了。记得刚开始的日子,脑子里基本被这东西神奇的力量所占据,每天幻想着游戏里的情节,想着如何通关,想想那感觉就和爱上某个人脑海里挥之不去是一样一样的。然而那时候家里没什么钱,就算有钱,爸妈也不会给我买一台游戏机,当时这东西可是洪水猛兽。印象最深的是高中时代,那个时候我基本都荒废在街机厅和电脑房(当时对于集中上网区域,也就是网吧的另一种叫法)每周基本都要逃课去玩街机,打红警,连星际;印象最深的一次是高二的时候和几个小伙伴到网吧包夜玩《生化危机2》凌晨12点左右,游戏正进行到恐怖又精彩的部分,突然网吧所有的电脑都灭了,当时差点就被吓死。后来才知道当天CIH病毒爆发,网吧里的电脑主板都废了。■学习机打开了我的“兴趣”之门有段时间学习机特别火,铺天盖地的广告,那时候我已经是个初中生了,我觉得当年的商家好聪明,利用了信息的不对称性,把一个玩游戏的家伙愣是包装成了能学习的工具,而且在两个群体里,也就是家长和孩子造就了某种共性的需求。而且基本上很多孩子都知道学习机可以玩游戏,家长以为学习机就是昂贵电脑的替代品。我也在这个顺风车经过的时候说服了父母,动用了一笔当时看来相当不菲的巨款,买了台八通BT-多媒体学习机。多么响亮又包含技术性的名字的游戏机(学习机)呀!虽然我的初衷是为了玩游戏才买的这个家伙,但是到手之后还是引导了我走向学习编程之路,当时里面有一些自带的程序可以写Q-Basic,可以制作简单的游戏,那时候我就抱着厚厚的说明书,把一行行代码敲入到学习机里,再咯吱咯吱的保存到磁带里。这样莫名的我就学习了编程,最最关键的是,当敲写的枯燥的代码运行之后变成活生生的画面和交互,一个叫“兴趣”的大门打开了!到了大学,第一次自由的接触到了计算机,学校的机房像一个大网吧,在里面我遇到了大学时代的挚友,大鹏,第一次看到活人设计网页也是他了,当时被这门技术惊呆了,心理默念的就是“原来网页是普通人类可以做出来的!我一定得会这个!”。就是这样我第一次接触了网页设计,虽然当时的HTML连脚本都用不上,很多页面都是用Frontpage勾勒出来的,但是毫无疑问的是,我又进了一个全新的世界。然而很快,我就对传统HTML网站失去了兴趣,因为我遇到了Flash,这里有更加丰富的表现,更好玩的动画效果,重要的是距离游戏也又近了一步。踏入Flash领域一入就是十余载,从做广告条、到做片头动画、宣传片、纯Flash网站到后来的小游戏,企业级项目。期间还参与了学习各种网页和Flash动画的比赛,获得了各种冠亚军。一直到Adobe把Flash玩坏了,我才慢慢离开了Flash圈儿。当年作为车辆与动力工程专业的我,不知道有多少同学为我捏了一把汗,这同学太不务正业了!咋找工作啊!■第一款Flash游戏我做的第一款比较完整的游戏叫做《飞飞-自由飞翔》,是纯Flash游戏作品,当年Flash游戏非常的流行,就跟今天的微视频或者朋友圈一样火爆。这个作品是为了参加一个Flash游戏比赛而做的,所以时间非常的紧张,好像最多也就只有半个月的时间来开发。那时候刚好赶上我放寒假,在回程火车上做好了游戏的原画设计。家里并没有电脑,我就让我爸爸带着我去家里的电脑城租机器,让我爸爸印象深刻的是电脑店的老板说:你的需求还蛮奇怪的,人家租电脑都要装一堆游戏,你却要装软件。这件事后,爸爸对我这个如此贪玩孩子的刻板印象也有所改观。2个礼拜,我觉得时时间似乎过了一个月,起早贪黑的干,连画图设计再到编程音效,还有各种算法要边学边用,中间还有存档丢失的事故发生。游戏做好之后让表哥来测试,最后顺利的完成提交。虽然那次比赛的成绩并不理想,只得了优秀奖,但是游戏本身却得到了大量玩家反馈,超过了1万的浏览量,这对我之后继续走游戏的道路夯实了基础,坚定了信心。玩了那么多年的游戏,现在终于让别人玩上我的游戏了,我来制定规则,有种上帝的感觉,这种体验棒极了!
■第一款手游和美刀后来,我毕业了,曾经觉得自己也找不到工作的我,因为第一款游戏的小成功,被一家大型国有软件企业的项目经理看中,来到了北京,开始了一段新生活。在以后的几年中来我换了几家工作,不同类型的项目技术管理和架构工作,然而这些始终没有满足我想表达自己想法的欲望。我始终没有忘记第一次完成游戏的激动和快乐,所以潜意识里我常常告诉自己,我可能还是会做游戏的。就这样在年买了自己第一台MacbookPro,也第一次切换到Mac平台,基本第一年都没干什么活儿,就光熟悉系统和接触新软件了。但是当时的目标很明确,就是要写一款简单的游戏练手!第一款游戏叫做《咯吱咯吱》是个简单的发泄类游戏,当时就是要练手,灵感来自于当时社会的热点事件-捏捏族,上线后确实带给我不少惊喜,本来是一个很简单的游戏,下载量一路飞升,最多几日每天都有过万的安装。因为一个小的成功,表达自己的想法的同时,也激励我在这条路上继续前行。这款游戏为我带来了第一笔的分成收入,这笔分成非常有限,大概多刀,当时招行有个短信提醒,说入账多刀,是游戏的广告收入,当时第一个感觉就是苹果的99刀开发者费用是回来了,但是很冷静的知道这个开端还很小,未来要努力的地方还真的太多太多。
■PiuPiuPiu的完成历程想法Piupiupiu也是一个简单的想法,源自于无聊时候的脑洞,原计划叫“网页战争”。最原始想法是角色获得某种能力,被禁锢到了网页世界里,网页世界的所有元素都变成了敌人。主角呢,融入了一些灵感是我的某个前端工程师同事(千万不能告诉他),符合这种呆萌萌的气质,我又做了些抽象。我再把一丝丝的梦里凌乱的感觉,揉在一起,加上我在马桶上,或者淋浴,亦或是我在公交车上发呆时想到的怪物形象都揉捏在了一起。最后我编了个更加无聊中二的小故事是这样的:“睡午觉的前端设计师黑呦强梦到了怪兽袭击,被夺去了灵感,正巧碰到检查工作的部门经理过来要项目进度,黑呦强眯了眯眼,擦了擦嘴边的哈喇子严肃认真地讲述了梦里怪兽强夺灵感的经过。经理甚表震惊!同意黑呦强回到梦境,夺回灵感!完成工作!”程序这个项目的第一个版本我是用flash开发的,然后运行在windows的平板上,但是我发现随着项目的进展,页面元素的增多,游戏越来越卡顿,游戏做完一关之后,我决定暂时放弃这个项目。游戏的帧率体验太影响这个游戏的表现了。后来切换到Cocos2d-x平台,虽然这阶段出现种种问题,但总算解决了运行效率的问题。美术为了做这个游戏,我尝试了一些新的美术风格和画法,画了一个本子的各种设定,但是实际用到游戏里的不到三分之一,偶尔翻翻一本子的各种小图还是蛮开心的。
由于之前咯吱咯吱的经验,我知道图标是游戏的第一印象,所以在设计图标上我会花费不少的时间。
源自于小时候泡在街机厅里的经验,我特别想把游戏的BOSS战做出特色来,因为小时候的记忆里始终有对于BOSS的恐惧和好奇。特别期待于见到关底的紧张和刺激,每个身怀绝技的BOSS都会在童年的游戏经历里留下深刻的印象。所以在BOSS设计里,花费了我大概一半左右的时间。比如这只水泥管双旋翼直升机灵感就来自于我的四轴飞行器,加上一个fpv(第一人称飞行)爱好者,另外再加上《机器猫》里经常出现的水泥管,游戏里作为BOSS,此角色威力还真是惊人呢!
另外就是这只黑猫BOSS,其实来自于我家的喵星人小黑,而且我把它最有意思的几个特点我也融入到游戏特性里去了,比如它最喜欢的食物就是牛奶和玉米。在游戏里都被我转化成了强力的道具。
这里我想说的一些经验就是,尽量把创作过程和自己的爱好或者身边的事物结合起来,这样在创作过程里会有更多参考,同时会保持你的热情,在细节上你可以得到更多的参考。人在凭空创造素材或者画面是非常痛苦的,理论上找到好的切入点会事半功倍。
■走过的那些坑和收获的一些感悟在做这个游戏过程中经历了很多困难和挫折,也几度想放弃。1、在技术路线上我觉得自己是走了一个非常大弯路,进入iOS开发的领域后第一时间发现了Cocos2d-iPhone,当时不了解Objective-C语法,边学边啃,然后写了人生第一个iPhone游戏,因为我做了Flash有10个年头,所以其实心里始终对Flash是有感情的,在看到Adobe宣布AdobeAir支持iOSAndroid跨平台开发之后,第一时间又转向了Flash由于Cocos2d-iPhone并不支持跨平台特性,所以Flash有了很大优势,抱着对flash的旧情以及新特性的诱惑,感受到了某种旧情人整容后再次相见的感觉。然而,剧情往往都不是顺着你的意愿来演绎的,在做了一款叫钉钉钉!的休闲虐心小游戏之后,我也不想在这条路上继续和旧情人约会了。Adobe不但没有解决Flash的运行效率问题(虽然也有Starling等高效方案,但是语法和结构改变还是很大的),在和原生程序沟通的问题(ANE)处理上也差强人意,虽然我也解决了很多问题让游戏顺利上线,但是还是觉得用起来很堵,时常给我一种隔着棉裤挠痒痒的感觉。在看到Flash某大神在Youtube发布的视频里说:“我可能是这个星球最后一个使用Flash的人了”,这样的调侃之后,我也决定忍痛放弃这条技术路线。现在我用了Cocos2d-x虽然已经开发了2款游戏PiuPiuPiu(PewPewPew)和另外一个无尽模式游戏擦边球(EdgeBalls)。但是出现的问题就是Cocos2d-x入门版本分裂严重,网上找到的教程也有好多版本,语法都不一样,也没有标明用哪个SDK。官方api文档里很多函数连一句话说明都木有,如果不是咬着牙啃过了那个阶段,我估计我早就放弃了。2、游戏美术美术方面是让我有巨大挫败感的事儿,我不是科班出身,原以为我自己做简单风格的游戏而已,自己又热衷涂鸦应该不是大问题。但是美术还是花费了我大量的时间,不是设计不出来,而是把握不好风格,风格经常随着自己的理解想法和心情就发生了变化,导致无数的返工。然而这还不是最可怕的,不断的修改和返工造成的严重问题是让自己对项目十分的厌恶,最后甚至因此而夭折了不止一两个项目。这时候就很理解那些去韩国整容失败最后自杀的吕子们的心情了。整容其实不可怕,可怕自己都没想好自己要整成啥样。。虽然我觉得我做的不完美,没办法,谁叫咱能力有限呢。所以我也会持续更新,把这个游戏做的更完善,系统也更丰富。就算是做梦,咱也要把梦做完嘛!那些没有做完但是又付出很多心血的项目,让我很有挫败感,不过这也让我学到很多,每次做不完的项目都有它必然失败的原因,这个过程可能学到的更多。3、项目流程经验有时候个人做项目很随意所以流程上会想到什么做什么,想改什么就改什么,这对一个项目的伤害是致命的。流程的意义不光是高效的生产,另一个重要的作用是每个阶段要有明确的截至时间和项目定型。比如说demo阶段确定玩法和规则,如果demo已经定下来了,下一个阶段就不能对玩法和规则做大的修改,可以完善细节,但是逻辑就不能动了,有再好的想法可以放到下一款游戏里。阶段内定下的内容如果不能定型,就没有坚固的基础,项目很可能在某个阶段夭折,作为独立开发者完成项目比这个项目有多棒其实要重要的多。最后10%的概念我之前在一些开发者论坛上也分享过类似的观点,这个观点我也是从其他开发者的文章里读过。但是做到自己的项目里才感触更加的强烈,最后10%对独立开发者来说,简直就是某种噩梦,在你觉得游戏几乎完成的时候,你才发现,你还有那么多事儿没有做,图标还得改,截图要那么多,文案还没写,标题是不是再改改,特效有些细节还没修,这个Boss的动作有点僵硬,音效不怎么满意......这时候对我唯一还凑效的办法就是TodoList。把任何时候脑海里出现的需要完成的事儿都记录到列表里,先把大脑清空了,然后逐个完成。这个过程很痛苦,尤其做开发的很多不擅长写文档。但是相信我这已经是洞房夜走到了新娘面前,再往前走一步,你就可以挑起女神的红盖头了!■新的希望今年除了继续更新在线版本的游戏之外,我也制订了新游戏的开发计划,希望可以做出更有厚度的游戏,同时更加白癜风治好白癜风怎么办