gamecore app logo
本文系用户投稿,不代表机核网观点
大家好,我是 Road Invaders 的开发者 Blasin。Road Invaders 是一款为掌机 DEOT 开发,参加机核 BOOOM GameJam 的小作品。游戏提供 Windows 、Mac 与 GameShell 版本,欢迎在这里下载
这是一款街机加消除元素的游戏,玩家控制小车躲避迎面而来方块,同时撞击方块,落地的方块同色则消除。Shift 在我的游戏解读为汽车换档,当玩家消除的方块越多,汽车挂档越高,方块掉落频率越高,总而言之需要玩家的反应越迅速。
撑过 60 秒倒计后,玩家将遭遇太空入侵者!于是游戏进入第二阶段——挂档倒车,玩家撞击逆行的方块,砸中迎面的入侵者,清空所有入侵者则取得胜利。

高分技巧设计

上手简单,高分难是这个游戏的设计目的之一,目前我的记录是 17247 分,欢迎挑战。即使你打败入侵者也未必能获得高分,以下几点是破纪录的关键:
  • 为了鼓励玩家动起来,只要你撞击方块就能得分
  • 两侧的方块还可以往外侧车道移动
  • 即使下落的方块已经堆叠起来,还是可以被小车撞击移动
  • 被砸中的方块下落得更快,而下落的方块还会继续砸中下层方块,一起加速坠落

游戏解读与理念

游戏机发出叮叮咚咚的响声,游戏画面五彩斑斓,玩家紧张地盯着屏幕,小心翼翼地消除方块获得高分。这是我设想用户玩这款游戏的场景。
我觉得在这个 GameJam 做出一个完整游戏很重要,而且必须在短时间里呈现所有点子,游戏规则最好是两句话就能当面讲明白。 为了达到这个目标,我在 GameJam 最后 24 小时通了个宵。
因为只有一个人开发,出于试错成本考虑,我给自己定下这些规则:
  • 不要使用物理引擎
  • 不要碰平台跳跃
  • 不要碰镜头相关的东西/不做大地图(tilemap)
  • 没有关卡设计
  • 要有难度变化
实际上这款游戏的基础玩法一直在我的点子库里,它的创意来源于我超爱的两款手机游戏,《Domino Drop》《Horizon Chase》前者是一款消除游戏后者是一款复古街机赛车
在上大学时候女友和我很喜欢玩这两个游戏,所以一直想做个包含消除、赛车元素的迷你游戏,而且操作要很简单。因为《Road Invaders》操作简单,我就直接在主画面加入两个方向按钮引导玩家,同时也填充了空白的画面。
实际上游戏主玩法并非在 GameJam 期间想出来的,部分素材和点子几年前就有了,我一直拿它做技术练手熟悉引擎,相当于我自己的「Hello World」,这个点子用 Godot 引擎写过,用 Swift + SpriteKit 写过,在 Love2D 版本开始之前,本来还打算用 Unity 写一遍练练手,这也导致这个点子一直停滞不前,还好 BOOOM 出现了。

游戏手感设计

在做游戏的大部分时间,我都花在手感调教上,看到网友给我留言说画面很有力度,我就觉得这个时间花得很值。其中一个很重要的点子就是让玩家动起来,像李小龙一样反复左右横跳,打击目标。
为了加强消除方块带来的快感,除了万能的镜头抖动,我加入了几个设计,比如撞击方块的帧停顿,以及方块被撞击的形变,形变来不及绘制,所以是代码控制图像拉扯。
玩家连续消除方块,音效的音调会越来越高带来快感,这个是从马里奥吃金币学来的。
方块消除时候会有爆炸的特效,因为没时间(也不会)画烟雾爆炸效果,所以直接代码绘制一个扩散的圆线圈,并使用缓动曲线让它有瞬间膨胀的感觉。最后我还给撞击和爆炸加上了拟声词。
比较遗憾的是没用好贝塞尔曲线,它原本是用来表现方块给小车电池充电的,但后来遗弃了这个设计。

创作经历

其实自打 GameShell 上线 Kickstarter 就一直在观望,但这次有机核举办内容创作,我觉得有戏。
这次 GameJam 有四个星期时间,我第一周基本是在学习技术,我的本职是游戏开发,但 Love2D 引擎也是第一次用,所以都在花时间看这个引擎和平时熟悉的技术怎么对上号,比如怎么播放动画,怎么使用定时器等等。
刚开始我比较顾虑机器性能问题,所以也测试了机器的绘制能力,本来还想用几个炫酷的 Shader,但这台机器 GPU 很差劲。
看到 DEOT 机器背面的虫洞,边学引擎的过程边折腾一个虫洞动态绘制,但最后没适当的地方用就砍了。
由于担心游戏在实机运行出现 BUG,我老早就写了个自动化脚本,一键部署输出到 GameShell 上测试,并保持迭代新功能就在机器跑的习惯,省下了一套繁琐的工作流程。
在计划中我留下一个星期用来打磨游戏,以防有大改动还来得及。果不其然在测试时候扑街了:我几个朋友都没玩懂游戏,主要是因为规则相对复杂,不符合我想两句话就讲明白的设计初衷。 导致最后那几天都很焦虑,不知道要把游戏砍成啥样。
太空侵略者这个致敬,实际上是偷懒。在刚开始的策划中,我想设计一种玩家与敌人对抗互换的玩法:玩家控制车仔消除方块,敌军怪兽生产方块,当玩家控制车仔被击中后,就会与怪兽产生灵魂互换,而当玩家变成怪兽后,就得使用方块砸车仔,力图夺回车仔控制权。
也就是说在一开始 SHIFT 解读为互换,不仅是控制角色的互换,也是玩法的互换。而在设计怪兽这个形象我不想花上太多成本,所以采用了太空侵略者这个标志性的怪兽形象。
至于对抗关系互换,夺取控制权的点子,是在一款叫 Crawl 的游戏中获得灵感,很可惜没用上这个点子。
游戏一开始是和太空侵略者不沾边的,甚至还在第二版设计里弃用,但没想到这个小小的形象给我最后二十四小时极限开发灵感。
在第二版设计中,我加入了倒车设计,整个游戏的方向反过来,但玩法并没有改变。我试图通过倒车强调 SHIFT 的概念,但游戏切换到倒车模式的表现并不明显,而且也缺乏一个动机。所以我一直在考虑加入几张剪影动画,或者直接实拍换档,给游戏加入反差效果。
过场方案在最后 24 小时实在执行不来,冥思苦想之下,女友开玩笑说「请注意,倒车」。我觉得实在太妙了,这句语音不仅有反差效果,还与游戏场景切合(车仔挂了倒档),然后又有洛克人 BOSS 战开场预警的意思,当然这些想法都是一厢情愿,哈哈,不知有没有给玩家完整传达到,再次推荐大家玩下游戏听听这个魔性的转场语音
为了强调语音预警目的,游戏应该进入一个 BOSS 战才对,于是复用太空侵略者素材并融入玩法也就顺理成章了。
我觉得倒车这个点子能行,游戏的目标一下子从「做完就行」变回「做得有趣」,仿佛看到最后的希望,于是在最后 24 小时决定通宵到早上八点半,把游戏改为现在的模样。
在这 24 小时里我真实感受到限时 GameJam 的魅力,也体会到不同想法碰撞更能擦出火花,一个人肝还是太难了。 通宵完睡了几个小时后整个人还是迷糊的,但我还是起床调试游戏难度,找游戏的音效、配乐,收尾提交的物料。
无论如何,我最终做了一个流程完整的迷你游戏,没有留下太多遗憾。因为加入了太空侵略者的元素,游戏标题必须强调 Invaders 这一点,再加上我的游戏也有 Road Fighter 的影子,于是在最后一天确定了 Road Invaders 这个名字。

结尾后续

在游戏对抗太空入侵者部分,玩家玩得再有技巧还是很难多得分,所以最近会想办法在这部分做改进。
这是我第一次参加 GameJam,也是第一次进行完整开发,能做到这步已经很满意。很遗憾没去到 BOOOM 线下 party,我也想和其他团队一样做自己的宣传小册子和说明书。蹲直播很紧张,轮到我展台时候出了意外,游戏机没电了,然后展台电脑上播的是别的游戏,看到这里还是挺失落的,担心意外导致没有玩家体验到游戏。
不过还好我也提交到 itch 平台,有好几个玩家给我留言表达喜爱,还有个小 Youtuber 上传了一个解说视频,给我的游戏增加了几十个浏览和下载,十分激动和感恩,想到还有不少网友玩到这款小游戏就很开心!这也让我意识到宣传的重要性,所以才有今天这篇文章。
热心的 Youtube 主播还说他很期待完整版本。实际上我有很多新想法,都是在开发过程脑洞出来的。但毕竟各方面沉淀不够,所以不急着完成这个游戏,目前会花更多时间在实验新点子以及学习新技术上。
我一直认为和不玩游戏的朋友合作可以给 GameJam 带来不一样的作品,这次本来想请个街头涂鸦的大哥,很遗憾没请成。下次我还是老老实实线上组队得了,一个人想法和能力真的太局限了。 所以我提前预约下一届 BOOOM GameJam,我 Blasin,可以写代码,欢迎组队!
比尔盖茨最近在 Netflix 上的一个纪录片给我很大同感,他说他最担心自己的脑子停机。做游戏就是一个不断解决问题的过程,我很享受这个学习与用脑的过程,不出意外做游戏应该会做一辈子。
很感激机核这次 GameJam,让我迈出独立开发一小步,让做游戏回归好玩本身。也很感谢 clockwork,能在这样一个设计精巧的机器里玩着自己亲手做的游戏,十分满足。
I
Blasin-Ree
Blasin-Ree

5 人关注

创作笔记
创作笔记

1333 人关注