下载 App
《地牢人偶》 #2 游戏框架
修改于3 小时前11 浏览综合
零 前言
这一篇讲的是实现的过程,当然,只是一部分。


一 风格
画面我很早就确定要往"巫术"这个方向走了,但具体长什么样一直没敲定。
最开始,我尝试的是传统风格。

很标准的中世纪地牢场景,石墙、火把、木门、宝箱。做了一阵感觉实在是没什么新意……这种画风放在十几年前可能还行,放在现在只能算是个劣质小游戏,没有任何记忆点。
所以最后我放弃了这个方案,转而寻找其他设计。
中途我也考虑过 2D 像素、HD2D 之类的风格……但最后都只停留在"好像也不算好"的程度,没有哪个让我有动手的冲动。
这个状态一直持续到今天下午。开车去海边兜风,歌单随机放到了《柴鱼のcalling》。
《柴鱼のcalling》是「幸子小姐拜托了」(来自新疆的中国蒸汽波/未来放克制作人,2020年去世,年仅24岁)2017年的作品,采样自《星际牛仔》第10集对白,英文部分采样自 Tennis 的《I'm Callin'》。
这首歌的风格很棒:慵懒、迷幻、复古,很棒,而且完美对上了我想要的感觉。
更进一步地说,是蒸汽波对上了。
蒸汽波(Vaporwave)诞生于 2010 年代初的互联网,是一场从音乐里长出来的美学运动,后来蔓延到美术、设计等各个领域。它的名字取自计算机术语 vaporware(雾件),对应的是那些被大肆宣传、却永远不会发布的产品——这个词几乎就是它的精神内核:对一个从未兑现的未来的怀旧。
手法上它出奇地一致。
不管是在哪个领域,都是把消费时代最廉价、最没人要的边角料捡起来,慢放、降调、加混响,再用低保真的画面装回去。音乐这边是 80、90 年代的电梯音乐、商场背景乐、轻爵士,被拖慢成慵懒迷幻的循环;美术这边是早期 Windows 弹窗、故障条纹、VHS 噪点、空无一人的商场、落日与网格、希腊雕塑和片假名。
它把两种本该互斥的东西拧在一起——画质是旧的、糊的、低分辨率的,颜色却是新的、艳的、发光的。拼出来的结果像一座"本该更闪亮"的世界的废墟:一半怀念,一半讽刺,而怀念和讽刺指向的是同一个事实——那个被承诺过的未来并没有来。
我喜欢这种“视觉语言”,这正是我要找的风格。



二 玩法
玩法目前尚未完成,目前做的是迷宫生成和相应的迷宫寻路系统。
迷宫生成用的是教科书的三段式:
第一步在单元格图上生成一棵随机生成树,也就是完美迷宫——全连通、无环、任意两格之间只有唯一一条路。算法用迭代式递归回溯(随机化 DFS)。
第二步编织,按一定比例打通死胡同的侧墙来引入环路——纯生成树意味着走过的路必须原路退回,在第一人称视角里极其枯燥,消掉一部分死胡同后地图变成有环连通图,可以绕圈走。
第三步把单元格图展开成墙格网格,渲染为实际的画面。随机数用 LCG,实现地图种子系统。
寻路逻辑则被拆成了拼图模式,可以大概理解为一种可视化的逻辑编程。
一条完整的行为 = 条件块 + 行为块。
整组规则从上往下求值,符合条件就执行并重置条件回到规则起点,不符合就继续遍历。
整个逻辑系统不需要编辑任何代码,当然,也不会直接提供BSF等完整算法,毕竟逻辑拼图就是本游戏的重点玩法。具体能让ai做到什么程度,就全看你实际编辑的逻辑如何了。
当然,我也不会一来就把玩家丢到乱七八糟的逻辑拼图里。
为了循序渐进的引导玩家思考,我参考了《电子鼠迷宫大赛》的历史变迁来进行设计。
那项比赛几十年里算法走过一条很清晰的路线:最早大家都用贴墙走,规则极简、不需要地图、跑完就算赢;后来开始有人在正式跑之前先探一遍,把迷宫结构记下来;再后来 flood-fill 成为标配,机器人能算出当前已知信息下的最优路径。
从不会思考的执行者,到会建图的规划者,这条演进本身就是一条很好的难度曲线。玩家会在游戏过程中逐步遇到新的困难和新的逻辑。玩家拼出来的东西处在演进的哪个阶段,游戏体验就是哪个阶段的样子。
目前迷宫这块基本算完成了。
接下来就是需要往迷宫里加入对象:怪物、杂草、障碍、门等。按上一篇讲的思路,它们不该是"谁对谁做了什么"的脚本,而是各自带上属性的对象,交互由属性之间怎么配对来决定。等把这套填上,迷宫才算真正从一个寻路演示变成一个能玩的游戏。


三 标题
算是个题外话,目前还没想到一个满意的游戏名称。
目前游戏大概设计就是:地牢/迷宫、人偶、寻路
- 巫术人偶坠入地牢
- 迷宫人偶 / 地牢人偶 / 人偶地牢
总之暂时先用着,后面想清楚了再改。


参考文献
[1] Veritasium真理元素. 全球最快的迷宫大赛!【官方双语】[EB/OL]. (2023-07-03)[2026-10-03]. https://www.bilibili.com/list/watchlater?oid=657889895&bvid=BV1Fa4y1w71q
[2] 仅用于打标签. #gamejam













