-
你好,我是马克
Hi, my name's Mark
-
我正在开发一款有关磁铁的游戏
and I am making a video game about magnets.
-
我在本系列的上期视频中曾说过
So in the last episode of this series I said that
-
我的下一个目标是为这部游戏制作些正经内容
my next goal was to work on some actual content for this game:
-
也就是为解谜游戏设计谜题
the puzzles for this puzzle adventure.
-
在此之前,我做的谜题都只能算成是测试用的原型关卡
All of the stuff I've made so far has just been test levels and prototype stages,
-
一旦我大幅改动了游戏的代码,它们都只能被丢进垃圾桶中
stuff that ultimately ends up getting thrown away when I change the code too much.
-
但为了向着「完成」前进
But in the spirit of 'finish the game',
-
是时候让自己沉下心来,认真工作
it's time to knuckle down and really get to work
-
将那些会被作为最终版本推出的关卡做出来了
on the content that should - hopefully - end up in the final game.
-
我为自己设的挑战,是在 2023 年 1 月制作 30 个谜题关卡
So my challenge for January 2023 was to make 30 individual puzzle chambers.
-
那结果如何呢?
How did I get on?
-
好奇的话,就接着看吧
Well stick around to find out.
-
开发之旅
-
于是在 1 月 2 日
So on January 2nd,
-
我端着一大杯茶,带着雄心壮志充满自信的坐在了 Unity 前,开始想
I sat down in front of Unity with a big mug of tea and a great deal of determination and went
-
「好嘞,谜题时间!」
"all right! Puzzles.
-
「谜题……」
Puzzles...
-
「谜…题…」
puzzles".
-
惊了,为谜题思考设计居然是如此困难的一件事啊
Man! Turns out it's really hard to just come up with ideas for puzzles.
-
我在此前开发这部游戏时做个几个不错的谜题
I've made a few good ones during the development of this game
-
但说实话,它们都算是无源而生的灵光一闪
but they honestly feel like flukes that came about at random.
-
而要说真的去设计它们,而且一次 30 个
The thought of doing that on demand, 30 times in a row:
-
我真不清楚该怎么搞
I'm not sure how to do that.
-
于是在开始的时候,这个挑战完成的进度相当之慢
And so in the beginning, progress on this challenge was pretty slow.
-
并非一事无成,但无疑是寸步难行
I made a few levels but it was like pulling teeth.
-
这让我继续制作这个游戏的干劲被大幅削减
And this really shot my motivation for working on the game.
-
每天我连几个小时的时间都坐不住,就会感到万分的无聊和疲惫
I could only do it for a couple hours a day before getting completely bored and burnt out.
-
照这个效率,我绝对无法完成开始的目标
And so at this rate I simply wasn't going to meet the goal.
-
于是我开始打退堂鼓,催眠自己已经在这部游戏上花费了足够多的精力
Now I did start to think that maybe I was just done with this game after working on it for so long.
-
已经有一年时间过去了
It's been well over a year now,
-
更别说在此前,我刚在去年底停止开发了 4 个月
plus I just took a massive four month break at the end of last year.
-
但不行
But no.
-
这么说吧,偶尔在我面对某个谜题的设计绞尽脑汁的时候
You see, sometimes when I was bashing my head against one of these puzzles
-
我会意识到自己应该要制作某种全新的机制 :
I realised that I needed to make some kind of new mechanic:
-
新的按钮、开关、门、亦或方块,诸如此类
a new button, or switch, or a door, or block, or whatever.
-
于是我开始绘制素材
And so I would do the artwork
-
然后为其编写代码
and then write the code
-
然后测试、修 BUG
and then test and debug
-
制作引擎调试工具
and make tools in Unity
-
—— 恍惚间,我过去做游戏的快乐回来了!
- and suddenly it was like game development used to be!
-
我变得超级专注,废寝忘食的将精力投入面前的问题
I could just hyper focus on the problem for hours and hours at the time
-
整个人沉浸到甚至忘记了时间和休息
without even realising that I haven't had lunch today.
-
但接着我回到关卡设计
But then I go back to level design
-
进度的推进又变得缓慢和折磨
and it was slow and difficult and tedious.
-
随后我意识到,这两种工作的类型从底层逻辑上就是完全不一样的
But I realised that there was a fundamental difference between these two modes of working.
-
这样说吧,在我开发一个游戏机制时
You see, when I was working on a game mechanic
-
我的行动是基于某种目标出发的:
it would always begin with some kind of goal:
-
比如「我需要做个机器人可以左右推动的方块」
like I need to make a block that the robot can push left and right.
-
然后,我便开始着手实现目标
And then I can work towards that goal.
-
但在设计关卡的时候
But when I'm making a level,
-
我唯一能有的目标就是「整个好活」
the only goal I have is "make an interesting puzzle",
-
这可太模糊不清了
which is pretty ambiguous.
-
更强的流程公式应该能让这事更容易
What I could really do with is a bit more structure.
-
于是,我开始寻找能够帮自己更好创作谜题的资料
So I looked for resources to help me come up with ideas for puzzles
-
读到了帕特里克·特雷纳的一篇绝佳文章
and came across this great post by Patrick Traynor,
-
他是去年优秀游戏《帕特里克的套箱》的作者
creator of last year's wonderful game Patrick's Parabox:
-
这是一部超难的、元递归推箱子解谜神作
a sort of mind-bending, meta-level recursive Sokoban gem.
-
也是我 2022 年最佳创新游戏的那期视频中,荣誉提名的获选者
It was one of the honourable mentions in my video on the most innovative game of 2022.
-
非常好游戏
It's a great game.
-
总之,这篇文章为设计谜题灵感提供了大量很好的意见
Anyway, this post has loads of great advice on coming up with ideas for puzzles
-
而其中有一个,格外的让我喜欢
but there was one thing that really stuck out to me.
-
我是这样做的:
so here's what I did.
-
我为游戏中的每个机制都分别截了张图
I took screenshots of all of the mechanics in my game:
-
比如有磁铁
that's the magnets,
-
还有电钻
the drill bit,
-
单向阻拦平台
the one-way platform,
-
还有电磁铁
the electromagnet,
-
激光,诸如此类
the laser, and so on.
-
然后,我将它们放置于表格的顶端
And then I put them along the top of a table.
-
然后把同样的内容复制一份,再竖过来放在表格的一侧
I took those same mechanics again and put them along the side of the table
-
接着删掉了重复的部分
and got rid of all the duplicates.
-
这导出了一个矩阵图
This left me with a matrix,
-
其中的每个单元,都是两个游戏机制的交汇点
where every cell is at the intersection of two game mechanics.
-
首先就比如这个,是「电磁铁」与「钻头」的交汇之处
This one, for example, is at the intersection of the electromagnet and the drill.
-
因此,我需要将这两个游戏机制拿出来,放进引擎的某个空房间
I would then take those two game mechanics and put them into an empty room in Unity,
-
附带其他杂七杂八的东西
alongside some other bits and bobs
-
比如游戏主角
like the character,
-
磁铁队伍的其中一员
maybe one of the magnets,
-
一些按钮、地砖之类的东西
some buttons, some floor tiles, whatever.
-
然后,我便开始把玩、试验它们的组合
And then I just start playing around, experimenting,
-
单纯的只需要摆弄游戏系统
just kind of messing with the system,
-
然后找出那些多个机制间有趣的交互、或是有意思的化学反应即可
and looking for interesting interactions, or interesting consequences of these two mechanics.
-
就比如说
Like, for example,
-
如果钻头在电磁光束的下方,那么我的小磁铁就会被挡住
if the drill bit is over the electromagnetic beam then my little magnet gets stuck.
-
接着如果你再将钻头收起
And then if you retract the drill bit,
-
假若磁铁位于钻头顶端,它会很快避开钻头前进
if you are near the tip the magnet will quickly shoot up and escape,
-
但若它位于钻头的尾部,这种避开会很晚才发生
but if it's on the other side of the drill bit it will take much longer.
-
而这个小觉悟点、小技巧 ——
And so this little realisation, this little trick:
-
很适合作为谜题的解法使用
that can be the solution to the puzzle.
-
这便是玩家要动脑搞明白的点
That is what the player has to figure out.
-
于是我终于能够回头,真正开始制作关卡了
And then I can essentially work backwards to create a level
-
谜题的唯一解法,就是刚刚总结的技巧
where the only way to solve it is to do that one thing.
-
如果我就此再加上些修饰的机制,就有了个正经关卡
And so if I just add a few more mechanics, like so, here we get a level
-
你需要用钻头将磁铁挡住片刻,使其阻断射线的时机延后
where you have to trap the magnet underneath the drill bit, away from the tip,
-
从而为自己争取时间,在磁铁避开钻头前冲刺
so you have enough time to get here before the magnet escapes
-
从而在恰当时机通过这两扇门
and makes these two doors switch places.
-
这谜题好像还真不错!
That's not a bad little puzzle!
-
看看谜题矩阵上还有什么?
What else is on the puzzle matrix?
-
电磁铁加上激光束……
Electromagnet plus laser beam...
-
好像还行
okay not bad.
-
方块配上钻头……就像这样
Block Plus drill bit... quite like that.
-
激光加上带轮方块……有点东西
Laser plus wheelie block... yeah pretty good.
-
突然之间,谜题设计似乎没那么难了
Suddenly, puzzle design wasn't so difficult anymore
-
而我的干劲,也重新回来了
and my motivation was coming back.
-
我将这一切着重归功于谜题矩阵:
I put this largely down to the puzzle matrix:
-
它能够给予我些许提示
it's all about giving me that prompt,
-
给我一个想法
giving me a suggestion,
-
给我一个上手的起点
giving me a jumping off point.
-
它是种能帮助我寻找灵感的流程公式
Just some kind of structure to help me find ideas.
-
当然了,事情并非完全顺利
Now of course it didn't always work.
-
并非每个组合都能导向好的谜题
Not every combination leads to good puzzles
-
有时进度也依然会推进的困难而缓慢
and sometimes progress was still difficult and slow.
-
但总体上,这让谜题设计变容易了太多
But overall this made puzzle design so, so much easier,
-
而且随着我设计更多谜题,难度一降再降
and it got easier with every puzzle I made.
-
我将这归结于几个原因
I put that down to a few things.
-
首先,我的谜题设计能力确实成长了
One is that I just got better at puzzle design.
-
当你将某件工作一遍遍重复时,自然能够总结出各种窍门和技巧
I learned the tips and techniques that you get when you do something over and over again,
-
这和锻炼肌肉差不多
and it's like building a muscle.
-
比方说,我开始意识到
So, for example, I started to see
-
玩家可以同时执行的行动数量这一要素背后潜藏的意义和重要性
the importance of the number of actions the player has available to them at any one time.
-
如果数量太多,谜题就会变得复杂而令人费解
If it's too many, the puzzle can feel confusing and overwhelming.
-
但如果太少
But if it's too few
-
那玩家们便可以干脆只关注眼前之事
then the player can just do the thing that's in front of them,
-
一遍遍排列组合,直到暴力硬解
over and over again, until they solve the puzzle
-
—— 全程无需思考
... without actually solving it.
-
我还回顾了自己那期谜题设计的视频
I also thought back to my video on puzzle design
-
视频中,我说过「好的谜题应该先把玩家引至某种错误的假设」
where I talked about luring the player into making a wrong assumption about the puzzle,
-
「从而让他们困惑,并迫使他们广泛思考,得出真正的解法」
so they get a bit stuck, and then have to think in a lateral way to find the real solution.
-
于是我尝试将这点也用在了自己的部分谜题上
So I tried to incorporate that into some of my puzzles as well.
-
谜题设计变简单的另一原因,则是因为我手上能够使用的机制增加了
Puzzle design also got easier because I boosted the number of mechanics I had available to me.
-
正如前面所说
As I said before,
-
大部分谜题的核心,就在于迫使玩家执行特定的操作技巧
so much of puzzle design is about forcing the player to do one very specific thing,
-
因此你需要切断其他路线,从而避免让他们以更容易的方式完成谜题
so you need to cut off other routes that would allow them to finish the puzzle in a much easier way,
-
否则这谜题会失去自身意义
and render the whole thing pointless.
-
这通常会最终引出一些全新的机制
That usually comes down to some kind of mechanic
-
比如能阻挡玩家,却任由磁铁通过的激光射线
like a laser beam that can block the player but not the magnet,
-
亦或者会破坏磁铁却不阻碍玩家的射线
or a beam that can block the magnet but not the player,
-
又或是需要被持续按住才能生效的按钮
a button that you have to hold down for it to operate,
-
或者还有一扇每次通过都会切换某个开关的门
or a door that operates a switch every time you go through it.
-
每次当我为了解决谜题设计中的某个问题时而制作新机制时
Every time I made one of these to solve some kind of problem in my puzzle design,
-
我都会将它放进我的工具箱,用于轻松解决未来的其他类似情况
I would then have it in my toolbox to solve that same problem, much faster, in the future.
-
我还调整了我的一些旧机制
I also swapped some of my mechanics
-
让它们得以更适合在谜题矩阵中与其他机制碰撞组合
for ones that would be more open to combinations in the puzzle matrix.
-
比如说,这个翻转拉杆挺有意思
For example, this flippy lever is pretty cool
-
但我将它变成了巨大的旋转叶片
but I swapped it for a big spinning fan blade
-
它的上限更高些……这也能当个谜题!
which can do things like this... that could be a puzzle!
-
最后,让谜题设计变得简单的又一原因是
And the final thing that helped make puzzle design easier
-
我在工具的开发上投入了更多时间
was investing even more time into my tools.
-
比如此前,如果我想将按钮与某个机制绑定
Like, before, if I wanted to wire a button up to a mechanic
-
我要执行很多操作
it would take many clicks
-
在按钮的启动和关闭触发器上分别绑定对应的执行函数
to assign the right function to both the on and off triggers for the button.
-
于是我整个重写了功能
So I rewrote the whole thing
-
现在只需要一次点击,便能完成整个过程
and now that whole thing can be done with a single click.
-
设计谜题的过程充满了摆弄把玩、实验测试、和迭代修改
So much of this process is about playing around and experimenting and iterating,
-
为此我希望自己编辑关卡的过程可以尽可能流畅轻松
so I want it to be as friction free as possible for me to edit these levels.
-
于是,借助了谜题矩阵
So between the puzzle matrix,
-
还有新的窍门和技巧
and the tips and techniques,
-
以及新增的游戏机制
and the added game mechanics,
-
加上改进的关卡设计工具
and the improved level design tools,
-
我成功的为这部游戏制作了大量的新关卡
I was able to make a whole bunch of levels for this game.
-
每次新关卡落成,我都会为 Keynote 的谜题册新增一页
And each time, I would create a slide in my puzzle bible in Apple's Keynote.
-
每页幻灯片中,我都会记录下该谜题所使用的机制
On each slide I would jot down which mechanics I used in that puzzle,
-
从而轻松的编排关卡顺序
so then I could easily reorder the stages
-
以得出一个逐渐为玩家引出新机制,循序渐进的游戏推进流程
to have a nice progression of slowly introducing the player to the different game mechanics.
-
我还想在排序时把谜题难度也考虑进去
Eventually I'll also want to do this for difficulty as well,
-
但这要先等游玩测试完成
but that will come after play testing.
-
总之当我回头审视谜题册时
And then when I looked at the puzzle bible
-
我能明显的看出那些进度跳跃不连贯的地方
I could see places where the progression just kind of jumped,
-
比如在第一个谜题中
so like the first puzzle I have
-
我为玩家提供了红色方块、电磁铁、以及这些触碰式按钮
introduces the player to the red block, the electro magnet, and these touch buttons.
-
然后第二个谜题新增了蓝色方块
Then the second puzzle adds blue blocks.
-
然后第三个谜题则新增了钻头和带钩铰链
And then the third puzzle adds the drill bit and the winch.
-
但随后,第四个谜题引入了橙色按钮、绿色按钮、激光射线、移动平台
But then the fourth puzzle adds orange buttons, green buttons, laser beams, and moving platforms
-
—— 我说停停,这东西也太多了
- woah, that's way too much stuff! Slow down!
-
但我可以把这个空隙看作是容纳更多谜题的空间
But I could see this gap as fertile ground for making more puzzles,
-
从而再一次得到非常明确的目标
and again with a really clear goal this time of
-
也就是「帮助玩家,在抵达第四关之前理解所需的新机制」
introducing the player to the mechanics that they would need for that fourth level.
-
于是谜题册中的这些空隙,反而为关卡的数量添了把火
And so each gap in the puzzle bible would add even more levels to the total.
-
最终,我完成「1 月 30 关」的目标了吗?
And so did I meet my goal to make 30 levels in January?
-
并没有!
Not quite!
-
我只做了 26 个,就被迫停下去剪视频了
I got about 26 before I had to stop and make this video.
-
毕竟我的主业还是油管上做视频的
I am still running a YouTube channel, after all.
-
但我真心为自己的进度骄傲,也为这部游戏的开发兴奋
But I am really proud of my progress and I'm really excited for the game now,
-
尤其是我还大量改进了它的视觉效果
especially after I overhauled some more of the visuals.
-
我觉得它真的开始向一部正经的游戏靠拢了
I think it's starting to look like a proper, bona fide video game.
-
总之,短短几周时间里
And so in the space of a few weeks
-
我从厌倦、想要抹除自己的游戏,想躲进塞尔维亚的山洞中
I went from hating my game and wanting to delete it and go live in a cave in Serbia
-
变得对这部游戏的前景感到异常兴奋
to being really excited about this game coming out.
-
而且在整个开发之旅中,这是我第一次
And for the first time - the first time this entire process,
-
感觉自己看得到头了
I feel like I can see the end.
-
迄今为止,我始终感觉自己仿佛在浓雾中攀岩一座高峰
So far it's been like climbing a mountain where the peak is obscured by fog,
-
但上个月,我感到云雾散开、山顶在前
but in January I felt like I could finally see the summit.
-
我能看到距离游戏完成,还有哪些工作没做
I can see the road map I need to follow to get this game done.
-
我需要制作大量新的关卡
I need to make a bunch more levels;
-
我需要给出某种叙事、剧情、过场演出之类的东西
I need to do some kind of narrative, story, cut scenes, something;
-
我需要制作一个选关菜单
I gotta make a level select screen,
-
我需要制作音乐
I've got to do music,
-
也需要在发布前,完成大量的打磨和 BUG 修理
and I've got to do the general polish and bug fixing and release.
-
这需要大量工作完成,还要数月去打磨
That's a huge amount of work still, many many months,
-
但最起码这是一条明确的方向
but it does at least feel like a road map.
-
它让我觉得只要照着做下去,就能将游戏完成
It does feel like something I can follow to get this game done.
-
但总之下一步是这些关卡的测试
But the next step is play testing these levels,
-
确保它们玩起来确实不错
making sure they're actually any good.
-
我认为解谜与其他游戏类型的开发有所不同
Puzzles, more than anything else in game development, I feel,
-
对创作者来说,它们的质量和难度都更加难以明确把握
are something where the creator just cannot gauge their quality or difficulty.
-
因此,我需要将它们做成一个 DEMO
So I need to bundle them together into a demo
-
并发放出去供大家测试
and give them out to people to play.
-
我的最初受众是家人和朋友
That will start with family and friends
-
但随后它会进入 GMTK 的 Discord 付费群聊
but then it will go on the GMTK Discord for Patrons.
-
如果你不想错过,就别忘了关注「与马克一起开发」频道
Make sure you're in the Developing with Mark thread if you want to have a play.
-
总之,就这样了,感谢你的观看,也感谢你的耐心
That's all for now, thank you for watching, thank you for your patience,
-
运气好的话,我们三月见!
and I'll see you - hopefully - in March!