之前报策划和音乐觉得不是很过瘾,于是今次是第一次以程(so)序(lo)的角色参加GGJ,最终虽然成品很幼齿很简陋但姑且还是做完了。
觉得这次solo比之前以某个固定职位参与Game Jam有很大的不同,也有很多新的体会,于是把从准备工作到路演的各个环节做个记录,供日后下一次Game Jam或者LD做参考。
准备工作
Coding
虽然很早报名了程序,但是是到1月初才决定使用GameMakerStudio2去参加这次GGJ。主要原因是一方面我自己Unity不是很熟,担心自己专职程序的话会时间不够用,另一方面果然还是还是自己有一种奇怪的2D游戏情结。
其实眼馋GMS2也很久了,GML对编程的要求真的被放的很低,感觉是用久了甚至会破坏代码习惯的语言。但是很容易学,写起来速度是真的快,对于我这种不会写代码的CSE学生来说作为快速开发的工具可以说是很爽了。于是1月初开始重新拾起之前丢掉的GML,慢慢学一些简单的技巧。看了一些教程,自己边写边看文档,大概知道是什么样的一个架构就够了。
当时预想的是GGJ上只做一个简单的2D游戏,只要能表达自己的想法多简单都可以。现在看来用自己不熟悉的东西在两天内完成所有预期果然不是很现实的事情……为了怕做不完的情况出现,在准备的最后一周我准备了一个模板,类似platformer的操作系统和房间控制系统,可以稍微减轻一些当天的工作量(希望这种程度不算cheating……)
Music
比起程序我更能做的还是音乐,虽然也不敢说自己擅长。这次GGJ是想靠音乐发挥长处的,因为从前两次的经历来看音乐似乎不是特别被重视,除非能找到愿意做音乐核心的带佬……但对于我这种萌新来说果然还是怕耽误别人,上一次也是因为压缩不够导致一起做游戏的队伍在路演的时候音乐声音很出不来,所以这次还是准备拿自己开刀。
我本来想准备一些通用很强的音乐做保底,但是这次提前开始想是否能用一种更动态的方式去编配音乐,可能是受到了《No man‘s sky》的启发,想着自己能不能也试着用一些动态的选段组组成一个游戏的音乐。这样考虑的话就只能看主题才能发挥了。
Sprites
我对我的画画技术还是很担心的,所以最开始是打算用一些免费素材去直接用的。找了一些像素图包,但是风格差的都很多。于是在想如果有机会的话把屏幕关掉直接做声音引导的游戏算了……最后真的差一点就这样做了。本来侥幸觉得只要有素材大概就足够应付了,事实证明我当时还是需要多考虑一些的……
开场
不管怎样,25号当天还是准时到会场。今次来了去年两倍的人,会场显得更小更拥挤了。我开始就放弃了在会场扎营的打算,即使要坐两个小时的地铁和公交也要回到学校,一方面开发环境很好(懒得把台式机搬过去),另一方面休息也能更充分一些。
检查了一下现场的音响,糟糕的是没有有效的立体声输出方式,音箱是分布在天花板的不同角落,所以我就放起来之前考虑的一个靠声相分辨位置的打算。
现场遇到了一位来自芬兰的老哥,这位在全世界到处参加Game Jam的老哥来深圳参与他的第69次活动,问了一下之前几乎是以一个月一次的频率去Jam,非常酷。一起聊的还有一位初中生,看样子是Toby的死忠粉,这次和这位芬兰老哥一起做了一个RTS,一想到自己14岁的时候还在玩泥巴就很头大……
Anyway,5点公布主题“What home means to you”
这位名叫Samuli的老哥已经参加了69次Game Jam了
脑暴(17:00 -- 22:00)
5点公布主题后我本来打算在现场找人讨论的,草草写了一点脑暴后想开始说话,却发现身边组好队的人已经开始相互交流了,本来就有点社恐的我就很不好意思再去加入他们的讨论。在会场四处转了几圈,顺便吃了点现场的饼干,觉得有力气思考了,就一个人开始完善构思。找不到讨论的人在GGJ上还是有些难受的,毕竟这本来是一个相互交流创意的地方。但既然solo就只好solo到底了,虽然很容易产生剑走偏锋的想法。
脑暴草稿(请原谅我的渣英语)
最开始思路还是有点乱,主要从题目的两个关键词入手,一个是Home,一个是You。主题影片里其实已经提到很多有关Home的看法了,几乎把各种能解读的方向都解读了一遍。Home可以是物理上的,也可以是心理上的;可以是一个人独处的个人空间,也可以是能让人感到温暖的集体;可以是一种来自过去的体验,也可以是对未来的追求。我希望我不把对Home的解读定死在“家”这个字眼上,因为“家”本身有室内(宝盖头)和群体(“家庭”)的联系,所以我想以一种更抽象的方式去思考这个主题。
另一方面,对于You这个词来说,也没有制定一定是某个人。它可以指制作人对Home的想法,也可以指广大玩家群体中的每一个人可能的不同的思考。我最开始是希望给每一个人有一个这样思考的空间,比如像最开始设计的mute掉整个屏幕,让玩家只靠声音和颜色刺激来寻找让自己最舒服的家。但是这个玩法说不定比我想象得更单调一些。
回学校的地铁非常挤,写不了什么东西,回去后又觉得累,想着这不是还没开始嘛强打着精神继续想,但最后还是敌不过倦意昏睡了一会。起来后觉得思路突然清晰了许多,原来想不通的东西好想可以解决了。果然身体是诚实的东西呢。
清醒一些后的思路
这时候基本上就定下来Homecoming的主题想法了:各种对家的解读最终其实归到了一个地方,就是一种归属感。这种包含了安全感、自由和稳定的情绪的感觉可能是这些Home的共同点。于是我想做一个让人们可以“回家”的游戏,却不是大家都能具象化的像是春运一样的情节,而是一种抽象的得到归属的感觉。
最开始我思考的是将人生抽象成旅程(虽然老套),玩家沿着时间线路行走去找到一个归属的地方(where we belong to),也就是家。这个归属可以不用是你来自的地方,因为那里可能不会让你有回家的感觉(参考一些家庭不美好的人);可以是你的一个目标,一种理想的安顿;甚至可以是你的现状,如果你对现在的状态满意的话。于是产生了一个多结局的构思,更多像是在玩家做选择,我提供给每个玩家一个思路上的引导。
到这里基本上就确定机制了,开始写代码。
代(tuo)码(fa)22:00 -- 18:00
即使是GML也是要写很多代码的,就目前的情况来看。
最开始的时候是跟着脑子的思路写,想到哪里就写到哪里,以为这种短时间内的思路还是很清晰的不需要一个纲领。事实证明熬了一晚上之后脑子已经不像最开始那么好使了,思路也是越来越乱。第二天早上为了整理好思路,我开始用working sheet把各个需要实现的部分写下来,每完成一个部分就划掉一部分。事实证明在极限状态下这种工作方式还是有效率的。虽然用的是铅笔但我不打算用橡皮擦掉,因为看着划掉的目标感觉会有小成就感,也会有直观上进度条的展示。
working sheet上的阵亡名单
代码上实现没有遇到很多困难,但是在准备写音乐的接口时发现GML里对sync group内的声音不支持改变音高的处理,试了很多种写法都不是很行,最后只好放弃了。
场景我直接就用GMS2里的房间去搭了,最后移动的时候有点bug但整体还是可以施行的。但是从实现思路的角度来说,最好是能像working sheet一样最开始就写好要做成什么样的房间和场景元素分布。后来我在重新设计房间上花了不少功夫,觉得有点可惜。
事实证明template还是有用的,键盘输入和音效控制以及鼠标动作都是提前写好的,在debug的时候用处非常大。
Manager/Master Object中一半是提前准备好的,后来被用作debug和游戏内容中
代码一直写道有基本的房间雏形,基本的可互动元素后,开始着手考虑音乐的事。
音乐与音效 18:00--22:00
像最开始说的,我希望音乐能尝试一种动态的编配效果。为了切合这次Home的主题,我希望的想法是循环一段非常短的(12秒)的loop,这个loop是从一个大的资源库里按场景随机挑选的,并且随着游戏进度的不同产生不同的配器效果。为了保证所有的随机乐段能相互搭配,使用最基本的固定调式和功能和声:在C大调上前6秒为subdominant/dominant,后六秒为tonic。这是最简单的思路,可能是我当时脑子也8是很好用了姑且就用了这样一个弱智手法……
效果其实也不是很好,虽然音乐本身有我开始构思的“最初的空荡感”,但是随机选择的乐段果然还是不能像普通的层次配器bgm一样好用。所以最后我只好回到普通的音乐考虑上,也即只有配器会随着游戏的进度变得丰富。这是我认为性价比最高的实现方法了。
为了保证调性统一,后来的曲子也要用C大调,并且作为和之前的对比,这个曲子要有一种温暖的感觉,色彩上随着配器的丰富越来越暖和。
后面出现的乐器可以时间线上延后
文字与剩余功能 22:00 -- 9:00
其实时间到这里时有点着急的,因为我发现我没有什么能直接表达“归属”的工具,也没有图可以画。最后只好以纯文字的方法去展示这个部分。这其实不是一个好思路,直接和“show not tell”的原则相违背,但是时间紧迫实在是没办法,只好靠文字表达不同结局的区别。
另一方面,为了丰富内容,我试图给每一个看似是敌人的小家伙加上独白,最好是一些和Home有关的看法,并且要和我自己设计的不同的结局相联系。风格上可以轻松一些搞笑一些,最好量有很多。于是我写了三十条左右的独白,随机分给不同的小家伙。
想看完独白的可以去自己游玩哦哦
剩下还有一些需要完善的功能也在这个时候实现。我给小家伙加了碰撞后被弹开的功能,并且碰撞时配上了C大调上的乐器做的音效(比如C4到C5的拨弦,还有C3到C4的马林巴),感觉更温暖一些。把每个结局的条件和结语写好,这时候已经时最后一天了。
Sprites 9:00 -- 11:00
最大的问题是,我需要解决美术的问题。之前找的素材试了之后觉得完全不能用,因为风格不搭的关系。但是我自己也没时间画画了,所以最后,小家伙梦得到的sprites是长这样的……
简约线条,极致色彩
最后的player属性(哭出声)
为了陪着这种极简的美术风格,整个背景被我调成了暖洋洋的纯色,并且随着玩家坐标的变更会逐渐变色。这时候游戏基本上就能玩了……虽然已经不能用简陋来形容了。
假如蠢也是一种风格……
Debug 与反馈 11:00 -- 15:00
最后开始debug,此时精神状态已经成仙了,但最后还是修好了一些东西。最让我难受的试我觉得这个游戏可能不好玩,因为这两天一直是我自己蒙头做,一直没有一个来自真正玩家的反馈,没有人帮我测试(更何况这是一个多么单纯而不做作地美术)于是我最后找到同学帮我看了一下,果然发现了很多我之前没有注意到的点,比如体力值的数值漏洞,还有最后关于结局的描述过于模糊之类的。此时我还在学校,为了赶上3点的路演准备只好叫了一辆滴滴去现场,在车上debug,写描述,找截图封面等最后的准备工作。
数值上的变化不在游玩阶段很难被精准地察觉到
试玩与路演 15:00 -- 22:00
最开始地时候找不到位置摆摊,因为今年深圳站的人实在是太多了,只好抱着电脑请人来玩,但我的游戏又需要别人带着耳机,所以折腾的还是挺麻烦的。最后还是找到了空位并且成功地让人来玩了,并且听到别人说喜欢我的游戏时还是挺开心的。
今年的路演因为人数的关系特别特别长,加上中途lanx组接电脑时屏幕和音响崩了耽误一些时间(lanx最后果断跑楼下借音箱上来可以说时非常帅了(而且音乐做的贼牛逼tqlawsl)),轮到我上去的时候已经过去三个多小时了,虽然我的顺位还是在中间。开始讲的时候才发现一个问题:solo的我只能一边自己玩一边讲解,这种程度的一心二用对我来说还是有些影响的,最后讲的时候有些细节和想法有些没讲清楚,还是有些遗憾的。不过能做完并且上台讲一次我已经很庆幸了,大概。希望下一次有更好的表现吧。
总结
solo一时爽,一直solo一直……火葬场。初次尝试solo的体验:
优点: 完全执行自己的创意,不需要和别人妥协自己的idea / 独立制作的成就感 /
缺点: 找不到人讨论 / 找不到人帮忙debug和测试 / 路演还找不到人帮你玩游戏
总而言之就是……实力不够的我下次还是老老实实地和别人一起组队玩耍吧,毕竟GGJ的核心还是和别人相互交流有创意的想法呀。
最后放一个玩耍链接:
https://globalgamejam.org/2019/games/homecoming-8
(space是下一段对话不是跳过对话,在一句话说完的时候按就行,文档里写错了)
Have fun!
谢谢茄子,下次再来
solo一时爽,一直solo一直……火葬场?
太真实了 , 我也是好累啊
我最近也在琢磨solo体验差异这件事
最近由 π 修改于:2023-02-28 18:32:38感觉solo的第一天晚上和最后一天下午挺决定体验的质量的
我的体会:
第一天(周五),最好多和别人讨论设计思路,讨论的过程中直接获得社交体验,同时通过讨论完善了设计思考
solo的好处是可以和不同队伍讨论(像你第一次ggj时那样),游击战,比较灵活,缺点是需要主动出击能量消耗大,挑战略大
最后一天,如果不能在展览前完成,也会比较难受,因为会容易出现一直在最后还在做,没什么机会交流,然后活动就不知不觉就结束了的情况...(我的情况是总容易栽在这儿)
你提到那个一边玩一边还要讲那个也是很真实了。
通常我会习惯在结束后找关系好、比较感兴趣想接触的队伍一起吃个饭,或者蹿几个队一起吃一下
吃个饭再告辞也会比较有仪式感,让自己感觉有种活动完满结束的感觉。solo的话在吃饭这块也是比较灵活