【闲聊】Hackathon类比赛指北
先简单的介绍下自己,我大学期间一共参加过三次Hackathon,最近在公司又被安利参加了GameJam,虽然这两者的目的不同,前面大概率是做Web,后面大概率是做U3D,但是还是有很多套路是一样的。比如都是48小时,最后又是路演效果决定成败。我没有参加过GameJam的经历,但是可以分享一下Hackathon的经历,给想要参加的同学们避避坑。(但是今年的比赛估计都是线上的,所以就听听就行了,不一定大多数都适用)
之前熊桑写过一篇类似的文章,后面熊桑博客挂了就没了,我这里相当于举出我的经验。可能没熊桑写的好,毕竟我没拿过全国第二,然后被天使投30w,将apps装到云端 - 云集。因为我一直写的都是简单的游戏,属于玩梗型自娱自乐,不可能有商业用途。
经历
大一是我们社团集体报的名,我拉的上次参加其他比赛的一个组,当时是SegmentFault拉的赞助(拉的是谁忘了,印象中还有极客咖啡),自由命题。我们是打算模仿 agar.io 做一个类似的游戏,因为这个游戏当时还不火没什么人知道,(当然后面几年国内开始出现各种抄袭借鉴,变成各种变种球球大作战),我们是5个人,当时是5个人的分工和之前服务外包比赛是一样的,NodeJS / iOS / Html5 / 美术,至于我负责动画效果和最后的剪视频展示(没错,大一的我就是这么菜)。但是这个游戏对网络的要求太高,加上NodeJS的游戏逻辑过重,导致Mephis大佬的进度和我们严重错开(相当于只有他一个人做事情),等到他读完源码完全弄懂,他又花了半天和我们讲具体的逻辑,我们最后还是似懂非懂,(就是还是搞不懂最后我们分别到底要做什么),最后东西就黄了,大家都有点不开心,最后社团合照都没去。
有点搞笑事情是当时我是第一次去Hackathon,我还用旅行箱带了被子等日常用品去。结果那时候没人睡觉,睡也是躺着眯一会的状态,白拿了很多东西……出来以后人整个内分泌紊乱,心虚想吐,又拖着一个很重的箱子,走到宿舍人都快死了。更搞笑的是我舍友也拉了一个和他差不多的小白,他们都比我菜(舍友自称,反正我们基本上编程能力趋近于0),最后弄着玩的用纯js做了web上一个类似乒乓球的横版对战游戏(其实也没那么好玩),因为开发过程中和其他组各种互动,然后互投环节拉了一大票的分,最后居然拿了第三名,变成当时的超级黑马。
大二是自由组的队,自由命题,地点是在杭电大门的那个酒店,又是SegmentFault拉的赞助,这是当时的记录《2016“龙驰杯”浙江高校Hackathon大赛圆满落幕》。这就是纯粹的带佬带我飞了,还是做的web游戏(Android + H5 + NodeJS) 代码当时拿完奖就开源了 DemoX_Model,据说还有七牛云的实习机会(当时没概念就给拒了,泪)。
Mephis当时想和我组队,但是我那时候已经和卓越班大佬们组队了,他就自己组了一个队,最后好像也没搞出东西来,吃完晚饭就回去睡觉了,听说也是想搞一个游戏,可能对上次的结果有点执着。社团里面的几个妹子晚上还在角落开黑lol,当时我都惊呆了,写代码都来不及还有心情打游戏?后面才知道这种比赛还有一种蹭饭刷脸的玩法,好像也不错。(当然现在工作几年以后,社团里的几个妹子混的都比我好多了,唉)
但是说实话,我觉得我觉得我们做的东西其实一般(冒充者综合征?),和第一名的作品实力我感觉至少10倍以上的技术差距,第一名两位真·大佬(paper大学就发到手软,知乎w粉的那种,果然是卓越班内战),我们的两位大佬可能发挥了大概20%的功力,做了可能和我当时水平一样的东西来和我同步。但是最后路演效果听说不错(我当时急着去考试,把我的云服务器丢给gay哈就提前跑路了,新闻里「产品展示」就是两位大佬),说明东西都没什么bug,整个开发过程中基本上全是在调我的bug,可能这就是大佬和萌新的区别吧。虽然是做一样的东西,大佬那边你完全可以放心,基本上不会出漏洞。另外,越强的大佬话越多,各种插科打诨,比较菜的萌新一般就比较自闭,交流的差距最后导致每个组的结果都是正循环。。因为交流很多,基本上就没什么空闲的时间,因为总是能找到事情做。
大三的比赛体验很糟糕,赞助印象中是非互联网企业,评委都是那种上年纪的领导,非自由命题。我和gay哈还有Mephis当时打算模仿ingress做一个运动类AR,(当然后面几年ingress被套了一个ip变成PokemonGO然后火了),最后做是做出来了,但是还算有点小信心,因为这是我们做的极限了,时间也卡的很死。结果最后什么奖都没有,当然也是意料之中,毕竟我们属于自由命题然后擦了一点主题的边那种。
熊桑说的那种玩不起的队伍出现了,就是五六个人,两天时间搞了一个医疗系统,然后每个终端都做好了,然后各个子系统功能异常健壮,都可以直接商用了,而且主题「恰好」符合某个赞助企业的主营业务。我tm就很恶心,你玩不起就别玩啊,那你们这两天来干嘛的?那你们又拉我们干什么,直接展示作品不就好了,还要假装展示什么编程能力?985大学就这?
前几个奖也不出意外的被这些队伍分完了。至少我们是问心无愧的,我们是48小时从0到1弄出来的这个游戏,gay哈做的Android部分比上次明显复杂很多,我这里东西没怎么变还是Restful-api,但是明显也是流程很清楚基本上不卡bug了,(Mephis做了啥我忘了,他来干嘛的?)。所以大家参加比赛一定要避雷,这种很功利比赛就别去了,特别是这种假借Hackathon实质嫖外包的就别去陪他们演戏了。
总结
1、不要对比赛本身过多的期待。首先,你要明确自己参加的比赛的目的,是拿奖还是社交。如果是拿奖,那dirty一点也无可厚非,就直接拿准备一年的外包作品往上怼就行,毕竟黑暗丛林法则,你不卷不保证别人不卷,有的比赛第一名奖金高得离谱,卷一点,凭本事赚钱,不丢人。如果是社交,那你就必须看的开一点,高度内卷的比赛就不要指望拿前排了,一开始就和其他社交目的的队伍多交流一下,换一下社交账号,吐吐苦水出去搓个饭,不也挺好的么,说不定认识个好看的妹子,收获不比这煞笔比赛强?
2、不要对现场网络有任何的期望。至少做好视频里云游戏的准备。不过现在手机流量已经不值钱了,不像当年,要开热点也随便开了,这条提醒应该已经没什么用了,反正如果热点也用不了大不了大家一起死。
3、不要对代码质量赋予过多的权重。质量好的作品不一定最后能拿奖,路演效果才是决定性的。效果主要说白了就是一个人的脸。试想你有一个超好玩的游戏,但是图片素材都是RPGMaker的基本素材,你是路人随便扫一眼游戏列表,你会给他投票么。一个demo型的游戏,美术可能是最重要的,程序可能是最不重要的。
4、不要对评委产生过多的期待。你应该把评委想成3岁小孩,不应该指望他理解所有的东西,哦我用了某个shader多牛逼多牛逼,这个最新的光照算法降低了多少的开销,看这光,看这水……大部分情况下,评委并不能分清楚这其中的区别,把你的作品给你妈玩,她如果都觉得不好玩,那肯定就是不好玩。
5、不应该没有准备。虽然我们提倡clean game,但是你不应该到了现场才开始钻木取火,这肯定是来不及的。你手里的素材来自于你平时的积累,手里工具取决于你的工作经验。如果是命题比赛,至少比赛前你们应该把能够讨论和准备的东西都准备好,我见过不少包括自己队伍比赛开始以后开始内耗上一天的。
6、作品质量和队友经验不一定成正相关。把几个大佬放在一个队,是很有可能什么都做不出来的,因为想法和最后完成有可能不匹配。而且游戏公司里出来的人很有可能早就不记得当年大学里做独立游戏的概念,早就变成流水线工人了。你让他写个小游戏,他可能都什么都写不出来。而且哪怕是GameJam里多次经验的人,如果你是组队功利型的开发者,他是solo社交型的开发者,你拉他进组的效果可能很一般,最后变成一群人抠脚围观U3d写代码的情况。
7、避免线性开发。这对每个队友都要有要求,但是最大的要求还是队长。每个人要学会「找事做」,你写完代码了,就帮其他程序做code-review,如果你还会美术,就帮美术调调ui啥的。队长要学会时间规划,时间规划的越细,每个人的效率就越高,最后剩余的时间就越多。alpha版本完成以后,尽量完成beta版本,还有多的时间再去完成线上版本,给每个人一个遥远但是可及的目标。
其他还有很多,生活节奏之类的自己要安排好,有的地方可能厕所会很远之类的,这里就不再扯淡了,上面大部分的建议其实也没必要强求,大概率都是船到桥头自然直。有时候明知道这样做不好,但是只能这么做,都是有可能的,希望能帮大家避掉一些坑,等周末比赛完或者比赛中有时间的时候可能会再更新~
附录
GameJam报名链接(截止这周五):https://www.ciga.me/cgj