Skip to content

解谜设计-限时拼图

基础插件

限时拼图 游戏关卡如下图。

如果要从零开始设计,需要下图的插件:

注意,该文档只详细说明 整体设计思路 和 解谜方法 。

对于具体 事件如何写 ,需要去示例中 图片管理层 了解一下 吸附槽 的使用。

想了解图片控制具体如何写,去看看 "16.图片 > 关于鼠标拖拽图片.docx" 。

基础配置

具体注意示例下面的地方:

1)图片

其中,固定ID 20的图片为 拼图板。

ID为 21及之后的图片,都用作 拼图碎片 用。

2)地图事件

留意关卡中的三个事件控制,

分别对应了: 开始游戏、离开游戏、关卡重置。

3)公共事件

留意公共事件的控制设置:

这两个公共事件都是并行处理的,实时控制 门判定、时间流逝 处理。

4)插件对象

这里用到了 变量数组核心 插件,方便实时判断内容,

并且给一个数组起名“拼图用临时数组”。

插件中,需要添加吸附槽,并且离开游戏时,要清除槽。

限时拼图-谜题设计

设计简介

1)游戏规则

纯鼠标控制的游戏,鼠标左键或右键拖拽拼图。

需要在规定的时间内完成拼图。

拼图全部完成,并且图形合理(顺序一致)才可通关。

规则细节:** 不要出现两个图像完全一样的拼图(比如空白的拼图块)**,这样会直接破坏拼图的判定条件。

2)难度分配

时间长短,能影响关卡难度。

拼图数量,能影响关卡难度。

有无预览图,能影响关卡难度。

拼图的图案相似程度,能影响关卡难度。

拼图形状,能影响关卡难度。

3)禁用能力

禁跳跃。

4)卡关注意事项

该解谜可随时用鼠标重置,不会卡关。

设计建议

1)设计者视角

从一般玩家的角度来说,拼图数量为4x3,4x4,5x4 比较合适。

因为拼图类游戏从一开始的定位就应该是 轻度解谜 。

不要让玩家在拼图游戏中花费超过10分钟以上的游戏时间。

2)关卡安排建议

如果你需要在你的游戏中添加该解谜类型,

关卡建议最多一关,作为 支线或主线谜题,比如 一个秘密门通过石板拼图 才能开启。

第六关可以加,但是要多给玩家时间去拼图。

3)灵感来源

2021年10月17日,作者我在4399上玩一个游戏:

http://www.4399.com/flash/6605_1.htm#his_default_3

这个游戏通过方向键控制猫咪移动房间,用现有插件无法制作,差距很大。

所以作者我并没有开坑。

但后来,群友跟我说,该去修一下 图片吸附槽 的bug了。

再然后,群友又问我,图片吸附槽有没有具体的介绍,示例就一个事件,没讲清楚。

图片吸附槽插件我在2020年11月就写了,但是有bug,一直没时间深入那个插件。

好吧,那就写个 图片吸附槽 的具体应用吧。

看这个游戏横纵分割成了许多方格房间。

突然灵感涌现,我可以使用吸附槽,制作拼图小游戏呀,像图中横竖切片这样。

如果只是单纯拼图,可能没什么难度。这个小游戏限时,我也可以给拼图加限时设置。

于是就开坑了。

拼图设计细节

1)图像大小与拼图碎片

设计关卡时,一定要最先确定图片的大小。

因为图片的大小将直接影响吸附槽的每个坐标点分配。

比如下图,360x360大小,切分成3x3等分。每个图片的大小为:120x120大小。

注意,切分时,碎片也有不等的情况,比如第三关的图片:

原图原考虑为 450x360 的大小,分成16份。

但是由于16份无法整除450,所以只能重设为448,再进行切片分割。

2)拼图板、拼图、预览图 布局

你需要先确定 拼图板和预览图 的位置,再考虑拼图位置。

因为拼图需要在矩形范围内随机放置,这需要贴很多指令,如果后期要变,改起来也麻烦。

3)吸附槽布局

每个图片的锚点都以正中心为准。

这里吸附槽的位置比较难对,需要通过计算来判断点位置。

使用插件指令“>图片吸附槽 : DEBUG吸附槽范围查看 : 开启”,即可显示吸附槽的范围。

以第一关为例,

图片的宽度为 120x120,那么槽的横竖间距必然为120。

中间的槽,与拼图板的坐标重合,那么就根据坐标计算9个槽分别所处的位置。

注意,吸附槽的吸附范围不要重叠,这样会影响图片的吸附顺序。

(重叠位置中,吸附槽id越小越优先吸附。)

4)吸附槽样式

由于第三关和第四关的切片非常窄。

所以这里吸附范围被设置成方形。

5)吸附槽玩法设计细节

2024年4月,作者我大幅度强化了 图片吸附槽 插件的功能。

可以使用交换玩法来进行拼图,所以这里作者我额外设计了交换型的第二关。

交换型关卡比传统型关卡减少了很多鼠标点击的操作,

降低了许多鼠标操作上的难度。

6)拼图关卡重置

重置关卡时,需要先合并 吸附偏移量,再执行 弹性移动 动画,移动到随机的矩形范围内。

吸附合并 相关内容,可以去看看“16.图片 > 关于鼠标拖拽图片.docx”的说明。

剩余时间设计细节

1)并行执行 每帧时间减一

公共事件“限时拼图-时间流逝”中,

游戏开关开启后,将会不停地 并行执行 该公共事件。

每次执行完后,等待1帧,这样能够确保 每帧都执行一次 时间减一。

(注意,设置 并行+公共事件 时,必须等待,不然会导致无限执行,造成死循环。)

另外,公共事件“限时拼图-门判定”中,

每次执行等待2帧,其主要目的是减少执行次数,防止执行次数过多卡顿。

(因为每次都要用数组检查一下图片的顺序,可以适当降低执行)

2)重置关卡时机

变量57用于控制剩余时间。

每帧会减一后,只要时间大于0,就一定会有 特定的一帧会减到0 ,接着就变为负数继续减一。

通过这种方法,可以确保时间在为0时,只执行一次 关卡失败 功能。

如果要跳过这个重置关卡的检查,直接将 剩余时间 设为负数,这样就不会遇到等于0的情况了。

3)剩余时间条设计

具体可以去看看 “13.UI > 关于高级变量固定框.docx”。

限时拼图-谜题解法

记忆法

多拼几次,印象就加深了。通过多次游戏形成记忆,自然就容易了。

这是因为大多拼图拼过第一次之后,拼图位置会留下记忆,这就使得再次拼的时间将远小于第一次拼。

限时拼图这类游戏,属于轻度解谜,没有特别巧的方法。

贡献者

暂无相关贡献者

页面历史

暂无最近变更历史