[文献] 关于MW的二三事

[复制链接]

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-4 21:57:57 | 显示全部楼层
本帖最后由 马里奥奥里马 于 2024-12-5 22:33 编辑

还有最后一个敌人没有介绍,那就是探照灯。探照灯与黄飞龟有很多相似之处,也存在一定区别。
图167.png
一个探照灯会绕着灯芯做匀速圆周运动。其有半径、初相、转速三个参数。
半径即为探照灯到圆心的距离,单位为像素。
初相是0~360的整数,代表探照灯初始位置到圆心的连线与正右方向的夹角度数,例如0或360代表探照灯初始位于最右侧,90代表最上侧,180代表最左侧,270代表最下侧。
转速是探照灯每帧转过的角度数,大于0时探照灯逆时针转,小于0时探照灯顺时针转,等于0时探照灯静止。由于一圈为360度,因此两个相差360的整数倍的转速的实际效果是一样的(例如0速等价于360速,-1速等价于359速等等)。直接放置的探照灯的转速范围为1~360的整数。
在编辑界面摆放探照灯时,首先点击的位置为灯芯,第二次点击的位置即为探照灯的初始位置,同时即确定了半径和初相,接着会播放预览效果,此时通过鼠标滚轮可以调整转速,调整好后再次点击即可完成探照灯的摆放。
摆放完一个探照灯后,下次摆放的探照灯的默认转速会和上次摆放时选择的转速一致。
摆放完成后,光标放在灯芯上按Q键也可调出菜单进一步修改。
菜单里有两项内容,第一项为编辑该探照灯的参数,点击后可以依次修改半径、初相和转速。
第二项为在该灯芯处再放一个新探照灯,之后会跳出窗口依次输入三个参数,完成后该灯芯处会显示“X2”,代表该灯芯处有两个探照灯重合。此时,这两个探照灯会打包成一个整体,微调时它们会同时移动。此时在该灯芯处按Q键也会同时显示两个探照灯的信息,并会为各个探照灯赋予一个编号,此外还新增了一项删除某个探照灯的选项,通过该选项可以指定编号删除某一个探照灯。
注意,如果将两个原本灯芯并不重合的探照灯通过微调使灯芯重合在一起,则它们并不会立即被“打包”。不过如果通过F3或F4运行一次关卡后再返回,或保存关卡后再打开,则它们会自动被打包在一起。当然,我们也可以将三个或更多探照灯打包在一起,操作过程也是类似的。事实上,个人认为相比于利用菜单新增探照灯的方式,通过微调加运行一次实现“打包”更为编辑。
将光标放在灯芯上按住E键,再移动光标,可以快速挪动探照灯的位置。对于打包在一起的探照灯也会同时挪动。这提供了一种更为快捷的微调探照灯的方式,利用好该方式,可以非常快速地完成火棍、火圈等探照灯的制作,在需求量不大的情况下无需再使用代码技术(代码技术之后还是会介绍的)。例如,放出如下6个探照灯“元件”,通过E键把它们灯芯重合,即可完成一个火棍,整个过程可能只需10秒不到(注意重合后它们不会自动打包在一起,但运行一次关卡后它们就会被打包在一起,打包在一起后就可以通过E键整体挪动火棍,也很方便)。
图169.png
图168.png
探照灯的灯芯在实际游玩中也会显示。灯芯并不自带实心,图层在马里奥之上,在BLOCK之下。探照灯的图层由之前介绍的PREF’s里的ADDITIONAL SETTINGS里的ROTO-DISC LAYER决定。
探照灯转动过程中无视任何实体。探照灯无法被消灭。且会阻挡马里奥的子弹。
还有一些较为复杂的探照灯类型,如正弦探照灯、光速探照灯等,留到之后的常见设计部分再介绍。

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-5 22:33:07 | 显示全部楼层
本帖最后由 马里奥奥里马 于 2024-12-5 22:35 编辑

最后一类尚未介绍的物件是MARK’s类物件。
图170.png
MARK’s类物件只有一页,但是有许多物件的功能和特性都相当丰富,因此可能也要花不少时间介绍。部分物件的机理我也没有完全弄清楚,如有错漏欢迎指出。
先介绍MARK’s类物件中较为简单的一类物件,即MARK’s类物件中最后一行的各种运输桥。
图171.png
从左到右分别是悬浮桥、横向1~3速移动桥、下降桥、上升桥。
悬浮桥静止悬浮在空中,马里奥踩到后会坠落,坠落过程中会不断加速。
横向移动桥会横向移动,撞到实体时会反弹。1~3速即为1像素/帧、2像素/帧、3像素/帧。
下降桥和上升桥分别会以1像素/帧的纵向速度上升和下降。上升桥上升到关卡顶部后又会从底部出现,下降桥下降到关卡底部后又会从顶部出现。
所有的运输桥都可以“上穿”,即马里奥可以从运输桥的正下方直接穿透桥跳至运输桥的上方。但是运输桥只有马里奥可以站,包括各种敌人在内的活动物件与运输桥都不会产生任何互动。
马里奥还可以“横穿”运输桥。马里奥在水平面上与运输桥发生接触时,可以“穿入”运输桥的内部并站立。横穿悬浮桥时,悬浮桥不会掉落。如下图,可以利用“横穿”运输桥的特性通过悬崖。
图172.png
运输桥有多种样式,包括各色的长短桥、云桥、城堡桥等,可以在放置时通过鼠标滚轮切换。不同样式的桥的长度可能是不一致的。
悬浮桥、横向移动桥、纵向移动桥还有各自的一些更细致的机制,下回再介绍。

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-6 21:46:05 | 显示全部楼层
图173.png
对于图中这两个悬浮桥,如果马里奥站在上面的悬浮桥上下落,是会直接穿越下面的悬浮桥,还是会先落在下面的悬浮桥上,然后再下落呢?事实上,这和桥放置的先后顺序有关。先放置的桥(上的马里奥)能够下穿后放置的桥,反之则不行。不单单是悬浮桥,下降桥也可以下穿其他桥。被下穿的桥可以是任意的桥(包括之后会介绍到的单向实心和桥实心),只要被下穿的桥的放置顺序靠后即可。
例如,对于下图这种看似只能上行不能下行的地形,如果其正上方有悬浮桥,实际上有可能可以利用下穿桥的特性穿过。
图174.png

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-7 17:49:24 | 显示全部楼层
本帖最后由 马里奥奥里马 于 2024-12-7 17:51 编辑

上升桥和下降桥会在关卡顶部和底部间不断循环出现。但是循环区间的长度并非等于关卡的高度格数,而是等于关卡的高度格数+1。因此,对于15格高的关卡(循环区间长度为16格),可以很容易地放置由4个上升桥或下降桥组成的均匀间隔的“电梯”,因为4可以整除16。(编辑界面中看似好像最下面的桥和最上面的桥的间隔少了一格,但实际运行中确实是均匀间隔的)
图175.png
但如果想要放由3个或5个桥组成的均匀间隔的电梯,仅靠在格点处放置是做不到的。因为3和5都不能整除16。
当马里奥站在(或横穿)多个升降桥上时,会同时获得多个升降桥的速度。例如,如果马里奥站在下图中两个下降桥的接缝处,则马里奥会以2像素/帧的速度下降,这比下降桥本身下降的速度要快,因此马里奥会一路下穿,最终脱离下降桥。
图176.png
当桥过密时,马里奥会无法落到桥上,此时只能通过横穿桥的方式触发桥的判定。如图,如果马里奥跳到左边一堆桥里,最终不会踩到任何桥,直接摔死。但是如果用走的方式横穿到左边一堆桥里,还是可以乘上桥的。
图177.png
具体而言,似乎处于空中状态的马里奥的身体与任何桥重合时,就无法触发踩桥的判定。不单单是升降桥,对于之前提到的除单向实心外的所有桥类似乎都有这样的判定机制。单向实心的判定似乎要较为特殊一点,对于下图这样密集铺设的单向实心,马里奥可以做到一级一级往上跳,但似乎也有一定概率判定不上。当然,单向实心还没有正式介绍,这里先提一嘴。
图178.png

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-8 13:33:59 | 显示全部楼层
横向移动桥和纵向移动桥在游戏运行之初就会开始运动。横向移动桥的初始运动方向为向右。
当马里奥同时站在(或横穿)多个横向移动桥上时,也会同时获得多个横向移动桥的速度。例如将两个2速的横向移动桥重合摆放,则马里奥站在上面时会以4像素/帧的速度滑动,这也就是“滑桥”的设计原理。
悬浮桥和纵向移动桥的移动都是无视实体的,但是横向移动桥并不无视实体。横向移动桥撞到实体时会反向。如果横向移动桥与实体重合,则会固定向右运行,直至与实体完全不重合,再以正常方式运行。如下图,移动桥原本会卡在左侧的三格空间中,但如果顶了隐藏砖,则会把移动桥向右“挤”,最终移动桥会卡在右侧的三格空间中。
图179.png
关卡的左右边界正常来讲是无法跨越的,但是横向移动桥可以把马里奥带出关卡右边界,左边界依然不能跨越。在视野受限时(如处于滚屏或后面会介绍的视野控制范围中时),马里奥一般也无法跨越视野左右边界,但移动桥可以把马里奥带出视野左右边界,不过马里奥依然无法乘坐移动桥向左跨越横坐标为0处的边界。事实上,无法乘坐移动桥跨越的右边界理论上也存在,只不过离得很远,一般不会涉及。

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-9 11:19:39 | 显示全部楼层
本帖最后由 马里奥奥里马 于 2024-12-9 18:39 编辑

有一个MARK’s类物件和移动桥有重要联系,那就是移动桥转向标记。
图180.png
该标记仅对横向移动桥有效,对其他桥无效。该标记也仅在编辑界面显示,实际游玩时不会显示。横向移动桥运动过程中的一端触碰到该标记时,移动桥会减速,转向,再加速至原速,类似于MF中的忽悠桥的效果。
该标记并不需要针对某个移动桥使用,多个移动桥可以共用同一个标记。移动桥两个方向的转向方式也未必需要保持一致,可以一个方向碰撞实心直接反弹,另一个方向使用转向标记。
移动桥触碰到转向标记进行减速,转向,再加速的过程中会无视任何实体,直至恢复原速时才恢复与实体的碰撞(或重合)判定。
如果是移动桥运动过程中一端触碰到了转向标记,则移动桥转向加速至原速时那一端的位置会远离转向标记一点点,这避免了反复触发同一个转向标记。但如果将移动桥与转向标记深度重合放置,则移动桥在每次完成转向恢复原速后又会再次触发转向标记,最终的结果是移动桥会被束缚在一个小范围内来回晃动。就该单个桥而言,和在移动桥两端同时紧挨着放上转向标记没有什么区别。
图181.png
如果再顶出一个隐藏砖与该转向标记重合,则该桥在每次重新触发转向标记前会瞬间触发一次与实体的重合判定,这会使得桥每次触发转向标记前的运动方向都被瞬间置为朝右。又由于每次触发完转向过程后都会远离转向标记一点点(因为是以朝右的方向触发,因此是向左远离),因此最终的结果是移动桥经过一系列的“抽搐”运动后从左侧脱离。
图182.png
图183.png
最后再提一点,马里奥站在任何移动桥上死亡或通关时“灵魂”仍会伴随桥移动一段距离。此时视野也会随着桥移动,从而触发一些与视野有关的敌人或物件的运动。该灵魂可以吃到二级道具实现“重生仪式”类先天发育(见33楼)。该灵魂也可以触发CP(之后会介绍)。
此外移动桥还与青色开关砖的二级功能有关,留到之后介绍开关砖时再介绍。

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-10 17:06:10 | 显示全部楼层
本帖最后由 马里奥奥里马 于 2024-12-10 17:09 编辑

今天介绍一个大家可能比较讨厌的东西:冰块。
图184.png
冰块未被打碎时是一个实体,与非马里奥的物件的碰撞判定机制类似于普通实心。
冰块可以被马里奥和火球龟的子弹打碎,一个冰块需要打两次才能打碎。打一次后冰块上回出现裂纹,但并不会碎,判定也仍照常。
冰块如果被流体岩浆淹没,则会直接消失(相当于被融化了)。但是敌人中的岩浆或岩浆底部对冰块不会产生任何影响。
如果马里奥在水中踩到冰块,则马里奥的横向速度会被瞬间置为0,且无法左右移动。

冰块最让大家讨厌的地方或许不是上面这些,而是当马里奥在陆地上站在冰块上时操作手感会改变。但如果进一步对这一改变的机制心里有数的话,其实还是完全可以适应冰块的。
马里奥在陆地上踩到冰块时,并不会直接改变马里奥的速度(和最大速度),而是会显著减小马里奥的加速度,直到踩到非冰块的实体或桥才能恢复。具体而言,就是冰块上马里奥对速度的改变能力减弱了。在没有踩到冰块时,马里奥可以在很短的距离用很短的时间就加到最大速度,但在冰块上时,马里奥需要助跑很长的距离才能加到最大速度。刹车时也是同样的道理,不在冰块上时稍微按一下反方向键就能刹住速度并立即转向,但在冰块上时刹车距离会非常长。
尽管改变速度的能力减弱了,但是马里奥的最大速度不会改变,因此合理利用这一点,冰块的影响也并没有那么大。下面看几个与冰块有关的例子。
例1:我们知道5引力时最高可以翻越6格高墙,而MW里是可以贴墙加速的,因此像下图这样的可贴墙的6格高墙,不管是在正常陆地还是在冰块上,只要怼着墙加到最大速度再起跳,总是可以翻越的,只不过是冰块上需要加速的时间更长罢了。
图185.png
例2:像这样不能贴墙加速的6格墙,即使最近的落脚点是冰块,利用冰块不改变最大速度的特点,也可以轻松翻越。只要在正常陆地上先加满速再踩到冰块上(当然全程右键和加速键不能松)再起跳即可。
图186.png
例3:还是刚才的情况,但如果我们想要在翻越后3格内就刹下车,如果等到落地时再试图减速肯定是来不及的,这时需要用到提前空中减速的技巧。事实上如果按住跳键不放,马里奥起跳的高度只由起跳瞬间的横向速度决定,因此在马里奥跳起后的上升过程中,我们就已经可以松开右键,按住左键进行提前的减速了。空中减速的技巧在MW操作中非常非常有用,在冰块上体现得尤为明显。之后有机会还会再提到。
图187.png
例4:像这样的F阶,在正常地面上想要跳上去并不太难,但在冰块地形上是不可能的。因为跳F阶需要快速的跳出和回拉,跳出需要足够大的横向速度,回拉需要速度的快速改变。前者在冰块上有可能做到,但后者是不可能的。即使上下平齐,在冰块上要跳上去也有一定难度,需要跳出时横向的速度不能过快,才能在空中完成减速转向的过程。
图188.png

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-11 10:26:58 | 显示全部楼层
今天介绍这4个非常基本的元素。
图189.png
前三个其实之前已经介绍过(26楼)。第四个是Check Point检查点,简称CP。CP可以提供保存进度的功能。若马里奥触碰CP后死亡,复活的位置会在CP处而非起点。关卡中可以放置多个CP,复活的位置以死亡前最后一个触发的CP为准。在一关中已经触发过的CP无法再次触发。例如关卡中有2个CP,依次触发了CP1和CP2,此后每次死亡复活都会在CP2的位置,无法再触发CP1。
CP的任意位置都可以触碰从而触发CP,但从CP复活时的位置固定在杆子最下侧。
CP除了会保存马里奥的复活位置外,还会保存触发CP时的流体高度,也就是说每次从CP处复活时,流体初始高度都会被置为触发CP瞬间流体的高度。除此之外,CP不会再保存任何东西,即复活时的所有物件的状态和各种参数与初次打开关卡时一致。
在GOD模式下,按PgUp/PgDn键可以传送到上/下一个CP处(按照编辑界面的摆放顺序依次传送)。利用这一点可以比较方便地进行关卡测试。
再补充一个关于实心的BUG。如果马里奥在防穿墙模式下与实心重合(主要通过起点与实心重合或CP复活与实心重合实现),此时保持马里奥的横向速度为零,按一定时长的跳跃键,则马里奥会如同火箭发射般高高跃起。且马里奥头顶上的实心越多,所需按跳跃键的时间越长,发射时的速度就越快。
如下图左侧的情况,其实已经能发射到很高,而右侧头顶进一步增加了实心,发射的速度和最终能够达到的高度将相当惊人。可自行尝试。
图190.png
该BUG由蓝太阳发现,原理暂不明,但效果还是挺惊艳的。

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-12 22:05:28 | 显示全部楼层
今天介绍封顶实心。
图191.png
封顶实心是个比较特殊的物件,它只能放置在关卡的最上方一行(即纵坐标必须为0)。封顶实心除了可以在放置位置充当一个普通实心外,还可以阻止马里奥从关卡上方跨越封顶处。
封顶实心的实现原理比较有趣。其并不是在关卡上方设置了一个极高无比的墙。事实上,所有的封顶实心都是会纵向移动的动态实心(当然封顶实心放置位置处也会永远有一个静止实心)。当马里奥不在屏幕上方时,动态实心紧贴着静止实心的上方;当马里奥在屏幕上方时,所有动态实心的高度将永远保持和马里奥的高度一致,像一个盾牌一样永远阻挡着马里奥。事实上,动态实心远远不止有1格高,据测算,动态实心大约有高达16格的高度。因此不单单是马里奥无法翻越,多数物件也无法翻越。
但是该高度毕竟是有限高度,因此特殊情况下还是有可能翻越的,例如跳得极高的跳乌龟。此外也有可能从正下方向上突破,例如与实心重合时会上穿墙的补给。另外,由于该实心是动态的,因此如果马里奥在屏幕外使得该动态实心上移的话,动态实心的底部与封顶位置处就会出现“缺口”。
如图,正常来讲蘑菇在上升后会向右撞到封顶实心,然后反弹最终从左侧掉落。但如果马里奥在屏幕上方使得封顶的动态实心上移的话,蘑菇就可以从动态实心下方的空隙通过,最终从右侧掉落。
图192.png
图193.png

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-13 22:40:13 | 显示全部楼层
本帖最后由 马里奥奥里马 于 2024-12-13 22:44 编辑

半格实心、单向实心和桥实心这三个特殊实心共居MARK’s类物件中的一栏,可通过鼠标滚轮进行切换。
图194.png
图195.png
图196.png
半格实心与普通实心的差别仅仅在于其尺寸为普通实心的一半。半格实心通常放置在桥样式的BLOCK上,可以很好地贴合桥的贴图的大小。如果用普通实心的话,桥的下半部分就会像是有一小层空气墙,会影响一定的游戏体验。
图199.png
单向实心和桥实心之前已经提到过,它们其实对于马里奥来说都相当于静止且透明的运输桥。它们的区别在于,单向实心也会阻挡敌人、物件等从上往下运动,而桥实心对这些敌人、物件等不会产生任何阻挡。
正因单向实心对敌人、物件等的特殊判定,使得其也出现了一些较为神奇的BUG。如图,将单向实心两两相距半格在纵向上排成一列,形成的装置可以将横向移动且正在下落的敌人、物件等瞬间传送至正上方。
图197.png
图198.png
这个BUG最早由lake发现。利用该BUG可以非常便捷、稳定地实现将物件从低处传送到高处的效果,还是相当有应用价值的。

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-14 18:44:15 | 显示全部楼层
本帖最后由 马里奥奥里马 于 2024-12-14 18:49 编辑

今天开始介绍水管通道。
图200.png
水管通道可以将马里奥从一个地方传送到另一个地方。放置水管通道时需要同时放置入口和出口,并确定朝向。第一次点击的位置为入口位置(蓝色标记),第二次点击将根据光标的位置确定入口的朝向(可选上下左右四个方向中的一个),第三次点击的位置为出口的位置(红色标记),第四次点击同样根据光标的位置确定出口的朝向。
删除水管通道时,只能在入口处删除。删除入口后相应出口也会被同时删除。
一般来讲,水管通道的入口和出口都会设置在水管处,如下图为四个方向的出入口的常规摆法。
图201.png
可以看到,同一对水管通道的出入口处都会被标记上同样的编号,方便区分。不过该编号并非一成不变,而是会在每次运行关卡后动态调整。例如编了0~3的情况下,删除0号和1号后,其他水管的编号暂时不会改变,但按F3或F4运行一次关卡后,原来的2号和3号就会变成0号和1号。
水管通道可以在PREF’s的ADDITIONAL SETTINGS中设置为MF型或MW型(只能将所有水管通道统一设置成一种类型)。MW型水管通道在出水管后会提供一小段无敌时间,而MF型水管通道在出水管时没有无敌时间。注意出水管时游戏并不会考虑水管食人花的影响,因此不建议在使用MF型水管时在水管出口处放食人花。
水管通道看似并不复杂,但实际上水管通道也存在着不少神奇的特性(或者说BUG),之后会慢慢介绍。
首先提一个小BUG。水管通道的入口和出口都可以进行微调,但是出口无法通过Z+RFDG进行步长为16像素的微调。

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-15 15:52:14 | 显示全部楼层
本帖最后由 马里奥奥里马 于 2024-12-15 15:54 编辑

四个方向的水管通道出口的判定位置为下图中金币的位置。
图202.png
当出口判定位置不与实体重合时,马里奥在出水管时将瞬间从判定位置处出现。如果出口处与实体重合,则马里奥会从判定位置处沿着出口的方向一直缓慢平移(途中不会受到伤害),直到与实体不重合为止。传统的出口放置方式将出口和水管重合,实际上就是利用这一判定机制模拟了一小段“出水管动画”的效果,使得出水管过程不那么突兀。当然,也可以进一步利用这一机制实现超长的出水管动画,甚至是“死亡电梯”的效果,如下图。
图204.png

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-16 11:06:41 | 显示全部楼层
四个方向的水管通道入口的判定存在一定差异。
向左、向右和向上的水管通道入口,判定位置分别在左边缘线、右边缘线和上边缘线。当马里奥与边缘线接触或重合且按了相应的方向键(向左就是左键,向右就是右键,向上就是上键),就会触发进水管判定。
图203.png
向下的水管通道入口的判定比另三个方向更大,入口的整个下半区域都是判定区域。当马里奥与判定区域接触或重合且按了下键,就会触发进水管判定。
图205.png
由于向下的水管通道入口判定大,因此按照正常摆法,即使在水管上方堵上一层实体,也仍然能够进入水管。为了避免这种情况,可以将向下的水管通道入口下放一格作为改良。如下图左侧的水管,即使不打碎砖块,也仍然可以进入。但右侧的水管通道只有打碎了砖块才能进入。
图206.png

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-17 22:13:57 | 显示全部楼层
最近对水管通道有了一些新发现,仍在研究和整理中,今天暂时先不更了。

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-18 11:13:19 | 显示全部楼层
下面发的一些都是关于水管通道的最新研究结果,不一定完全正确。欢迎一起探讨。
编号较大的通道入口的判定区域被编号较小的任意朝向的通道入口的2*2方格的任意位置覆盖时,被覆盖处的判定区域将会失效。失效的意思即为马里奥无法从该位置进入通道。
如下图,4号通道(向下)被0~3号完全覆盖,因此4号通道无法进入。
图208.png
如下图,0号通道是编号较小的通道,其入口判定均有效(红色)。1号通道是编号较大的通道,其判定区域被0号通道覆盖的部分无效(黑色),其余部分有效。
图207.png
同时进入了多个通道的有效判定区域时,优先触发编号较小的通道的进入判定。
如下图,左边的通道编号小,因此马里奥站在两个水管中间按下键,会触发左边通道的进入判定。如果把两个通道调换一下位置,则触发的就是右边的。
图209.png
但是触发了某通道的进入判定并不代表就会从该通道相应的出口出来。在进入的过程中会有一小段“进入动画”,动画过程中仍有可能触发到别的入口判定从而转到别的入口去。下次再来分析。

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-19 23:26:24 | 显示全部楼层
本帖最后由 马里奥奥里马 于 2024-12-20 20:54 编辑

在进入动画的开始,马里奥在非进入方向的坐标会移动到所进通道的“标准位置”。
具体而言,向上和向下的通道,其非进入方向就是横向,标准位置是通道横向2格的中间位置。向左和向右的通道,其非进入方向就是纵向,标准位置是通道纵向2格的下面那格。
再通俗一点来说,马里奥不管站在哪里进纵向管道,开始进入时横坐标都会被瞬间拉到水管口的中间位置。
图210.png
图211.png
马里奥不管站在哪里进横向管道,开始进入时纵坐标都会被瞬间拉到水管口的下方位置。
图212.png
图213.png
注意,标准位置仅限定在非进入方向。在进入方向上无标准位置,以触发进入判定时的位置为准。如下图向下方向的通道入口,马里奥可以在空中就触发进入判定,因此马里奥可以以更高的纵坐标开始进入动画。不同的纵坐标有可能会影响到进入动画后续的各种判定。
图214.png
图215.png

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-20 21:22:09 | 显示全部楼层
本帖最后由 马里奥奥里马 于 2024-12-20 21:23 编辑

在进入动画中,马里奥为无敌状态,但视野会随着马里奥的移动而移动,因此动画过程可以触发某些与视野有关或与马里奥位置有关的物件。
马里奥在进入动画中的移动可以分为进入方向的和非进入方向的。今天首先来看进入方向的。
进入方向的移动非常简单,动画过程中马里奥每一帧会向进入方向移动1像素,总共移动约1格后结束动画。
进入动画结束时,将根据马里奥的位置最终决定进入哪个通道。若马里奥与多个通道接触,将进入编号最小的通道;若马里奥不与任何通道重合,则进入最后接触的通道(若有多个重合同样取编号最小)。
特别注意,在进入动画中,所有的通道的判定都将变为整个2*2方格的大小,且无论朝向如何,都将被同等视为与进入方向朝向相同的通道,均有可能被进入。也就是说,如果进的是向下的通道,最终判定进入的有可能原本是别的方向的通道。
如下图,0号通道向下,1号通道向左。如果小个子状态站在水管表面进入向下的通道,则在进入动画结束时,马里奥向下移动一格,将完全离开0号通道的覆盖范围,处于1号通道的范围内,因此最终判定进入1号通道。如果小个子状态站在水管上方一格实心处进入向下的通道,则进入动画结束时,马里奥同时与0号通道和1号通道接触,判定进入编号较小的通道,即0号通道。如果是大个子状态,不管是站在水管表面进入还是在上方一格进入,动画结束时的位置都同时与0号通道和1号通道接触(因为大个子体积大),因此大个子一定会进入0号通道。
图216.png

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-21 21:57:27 | 显示全部楼层
之前说过,在进入动画中,马里奥在进入方向上的位移是固定的,即每帧移动1像素,总共移动约1格。但是在非进入方向上,马里奥的位置有可能发生较大变动,这种变动的原因同样来自于动画过程中对通道的判定。
具体而言,在进入动画的每一帧,游戏都会找到与马里奥当前位置接触的编号最小的通道(如果有的话),并将马里奥在非进入方向上传送到该通道的“标准位置”。
标准位置之前已经介绍过。这里再次重复一下上次说到的一个事实,那就是在进入动画中,所有的通道的判定都将变为整个2*2方格的大小,且无论朝向如何,都将被同等视为与进入方向朝向相同的通道。也就是说,如果进的是向下的通道,在进入动画中有可能在非进入方向上被传送到原本是向右的通道的横向2格的中间位置,即该向右的通道被视为了向下的通道,而向下的通道的标准位置就是横向2格的中间位置。
当然,上面说的这些可能还是太抽象了,还是举例来说明吧。
如下图共有10个通道,从左到右编号从9递减到0。9号通道方向朝上,其他通道方向任意。此时如果马里奥进入9号通道,则进入瞬间会被拉到标准位置,即9号通道横向2格的中间,这正好接触到了8号通道的范围。因此1帧后马里奥会被传送到8号通道横向2格的中间,这正好接触到了7号通道的范围。因此1帧后马里奥会被传送到7号通道横向2格的中间,这又接触到了6号通道的范围。以此类推,最终马里奥会被传送到0号通道横向2格的中间,最终判定进入0号通道。这一传送过程在视觉上非常有意思,大家可以自行实验。
图217.png
再次重复,这样的传送只能是在非进入方向上的。在进入方向上马里奥的位移是固定的,每帧移动1像素,总共移动约1格。那么由此也可以推出,整个进入动画将持续32帧左右,因此非进入方向上的传送的最大次数也就为32次左右。
以上就是最近对水管通道的一些新发现,在此之前还真的没有注意到水管通道的判定机制如此神奇,且能产生这么多的“黑科技”,还是挺让我惊喜的。下次开始继续回归正常的介绍,尽量暂时不再涉及太复杂的内容。

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-22 18:40:38 | 显示全部楼层
本帖最后由 马里奥奥里马 于 2024-12-22 18:48 编辑

下图为信息砖。
图218.png
放置信息砖后,会跳出如下图的窗口。在窗口中可以输入希望在该信息砖中显示的信息。输入#可以换行,输入\#代表一个正常显示的“#”号,这和关卡标题的输入格式类似。
图219.png
输入完成后信息砖就被正式放置了。之后光标放在信息砖上按Q键可以调出窗口继续修改内容。光标放在信息砖上按住E键,再移动光标,可以快速挪动信息砖的位置,类似于探照灯的挪动方式。
之后再摆新的信息砖时,信息砖的初始内容会默认为上一次输入的内容。
信息砖可以通过马里奥顶、MF甜菜砸和滚动硬壳撞这三种方式触发。触发信息砖时就会显示信息砖中的内容,再次触发该信息砖或按Enter键可以关闭显示的内容,触发了另一个信息砖时也会关闭当前显示的内容,并开始显示新信息砖的内容。第一次触发信息砖时信息砖的内容不会一次性全部显示完,而是会以一定的速率读取每一个字符并逐渐显示。如果在信息砖内容显示全之前就关闭了该信息砖,则下次触发该信息砖时仍会从头开始读取并显示。如果该信息砖的内容曾经显示全过,则之后触发该信息砖时就会一次性显示全部内容。
信息砖是一个实体,但其性质和问号砖以及实心都存在一定区别。如问号砖可以被下落的刺球和库巴穿过,但信息砖无法被穿过。马里奥与实心重合时按跳键有“火箭发射”BUG,但信息砖无法实现这一BUG。因此信息砖或许又可算作一种新的特殊实体。之后会介绍的开关砖和水位砖作为实体的性质也类似于信息砖。
信息砖的字体存放在主文件夹的Fonts文件夹内,如有需要,可对该字体进行替换,和替换BGM的原理类似。但要注意不同的字体的文字大小可能不同,因此原本正常显示的信息可能会格式错乱,需要重新调整。此外部分字体可能也无法显示一些生僻字或特殊符号。

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-23 10:56:53 | 显示全部楼层
本帖最后由 马里奥奥里马 于 2024-12-23 11:01 编辑

今天开始介绍滚屏元件,利用滚屏元件可以实现一些更复杂的滚屏效果。
图220.png
先来看滚屏元件的放置方式。滚屏元件通过节点连接的方式实现滚屏。我们放置的每一个滚屏元件会被依次用折线连接起来,折线的路径就是屏幕中心点的移动轨迹,如下图。(但是需要注意,在关卡的边缘位置,滚屏可能会受到限制,之后会介绍)
图221.png
在放置节点时,可以看到一个大小为一个屏幕的绿框,该绿框就是滚屏移动到该节点时的视野。放置完成后,光标放在每个节点上也可以看到该节点处的视野。
可以看到,每个滚屏节点都有两个参数。左上角的参数是其编号,由放置的先后顺序决定。编辑界面会自动将这些节点按照编号由小到大连接成滚屏路径。右下角的参数是从该节点移动到下一个节点的滚屏速度。在放置第一个节点时会跳出窗口要求输入速度。
图222.png
可输入的速度为0到6000的整数,单位为0.01像素/帧。实际在右下角显示的参数的单位为1像素/帧。之后放置滚屏节点时,不再跳出窗口,速度会被默认设置为上一个节点的速度参数。光标放在节点上按Q键可以修改节点的速度参数,按住E键移动光标也可以吸取节点进行快速挪动。
需要注意,在编辑界面中我们只能做到在末尾增加一个新节点(即在路径末尾继续延长路径),或删除某个节点(此时删除节点的上一个节点将直接连接到删除节点的下一个节点,并会对后续的节点重新编号),无法实现在中间插入一个新节点。因此设计滚屏时还是要做好一定规划,甚至有必要放置一些“冗余节点”方便用来随时调整。例如本来两个节点就可以实现一条直线路径,但如果用一条直线上的多个节点来实现的话,多出来的那些节点就可以提供后续进一步细化调整的空间。

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-24 18:08:51 | 显示全部楼层
滚屏有两种启动的方式。
第一种是当马里奥进入0号节点的视野内时,屏幕会从当前位置按照0号节点的速度参数移动到0号节点处,此后开始正式滚屏。
第二种是当马里奥从CP处复活且CP位于某个或某些节点的视野内时,会以这些节点中最小的那个作为起点开始滚屏。
滚屏只有一种正常的取消方式,那就是进入任意水管后会直接取消滚屏。当然,滚屏取消后如果满足触发条件,仍能再次触发滚屏。
之前介绍库巴滚屏时提到过在触发库巴滚屏时,库巴滚屏会直接覆盖滚屏元件的滚屏。库巴滚屏是无法取消的。
触发滚屏时,视野控制元件(后面会介绍)对视野的限制将失效。

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-25 10:51:22 | 显示全部楼层
本帖最后由 马里奥奥里马 于 2024-12-25 11:05 编辑

在关卡的上、下、左、右边缘位置,滚屏可能会受到限制。具体而言,当某一段滚屏预计的视野超出关卡边缘时,实际滚屏时会在关卡边缘处将指向关卡边缘外的速度分量置为0,直到视野离开关卡边缘为止。
如下图,假设此位置已经到关卡右边缘,上、左、下的空间足够大,则这一段看似为直线的滚屏的实际情况为:以0号位置为屏幕中心开始先向右上滚屏,速度为2像素/帧,滚到关卡右边缘时变成向上滚屏,体感速度为原速度向上方向的分量,即根号2像素/帧。实际滚屏路径如图中箭头所示。
图223.png

利用该机制,可以模拟做出滚屏在某处(只能是在关卡边缘)停留一段时间的效果,只需让滚屏做“无效移动”即可。如下图,依然假设此处已经到关卡右边缘,那么从1号位置到2号位置,以及2号位置到3号位置的前半段滚屏实际上都是不动的。适当调整这些段落的滚屏速度还可以调整屏幕逗留的时间。
图224.png

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-26 22:43:02 | 显示全部楼层
滚屏时马里奥无法跨越屏幕左右两侧。屏幕下侧会如同悬崖,落下就会死亡。屏幕上侧没有移动限制。
当马里奥受伤或吃补给变身时,会有一小段动画时间无法操纵马里奥,但此时滚屏仍正常进行。屏幕的左右边缘能够推动动画中的马里奥。

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-27 15:35:55 | 显示全部楼层
本帖最后由 马里奥奥里马 于 2024-12-29 12:58 编辑

可复用流体砖、一次性流体砖和流体区域三个物件共居MARK’s类物件中的一栏,统称流体控制元件,可通过鼠标滚轮进行切换。
图225.png 图226.png 图227.png
这三个物件均能实现触发后使流体上升或下降到某一个高度的效果。流体砖的触发方式为顶、甜菜砸或硬壳撞。流体区域的触发方式为马里奥进入区域内。摆放这三个物件时,均会弹出窗口要求输入目标高度(大于等于-64,单位为像素),以及流体上升/下降的速度(0~9的整数)。
可复用流体砖和一次性流体砖在实际关卡中触发前无外观区别,均显示为可复用流体砖的样子。但是一次性流体砖在触发一次后会显示“X”的图标,无法再被触发。可复用流体砖可以无限次触发。
流体砖的颜色会随着流体种类的改变而改变。流体为水时,流体砖显示为蓝色。流体为岩浆时,流体砖显示为红色。
光标放在流体砖上按Q键可以调出菜单修改流体砖参数,按住E键也可以快速挪动流体砖。

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-28 13:03:30 | 显示全部楼层
流体区域的摆放和之前介绍的游鱼区域、飞鱼区域类似。在确定了流体目标高度和升降速度后,我们需要确定区域的“头部”和“尾部”。由于流体区域不像游鱼和飞鱼区域有左右朝向之分,因此摆放流体区域时,区域的尾部只能放置在头部的右下角。头部和尾部框成的区域即为触发流体变化的判定区域。
图228.png
区域的头部和尾部都可以微调。头部微调时是区域整体挪动,尾部微调时是固定头部不动,只挪动尾部。光标放在头部按Q键可以重新调整流体变化的参数。
流体区域也是一次性的,触发过一次后就无法再被触发。

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-29 13:03:21 | 显示全部楼层
本帖最后由 马里奥奥里马 于 2024-12-30 18:09 编辑

流体控制元件的触发存在一种“保护”机制。如果当前的流体高度和速度参数和即将要触发的流体控制元件的参数一样,则不会触发该流体控制元件。
例如一个可复用的流体砖触发一次后,如果流体参数没有再发生别的变化,则该流体砖就会如同一块坚硬的磐石一样,暂时无法再被触发。
再例如,将可复用流体砖、一次性流体砖和流体区域设置成同样的参数(高度和速度两个参数都必须完全一样)放在关卡里,假设没有其他引起流体变化的因素。则触发了一次可复用流体砖后,再顶一次性流体砖,或进入流体区域都不会消耗它们的一次性效果。若之后流体参数发生变化,仍能再触发它们的效果。
需要注意,该机制仅限于流体控制元件之间,通过其他方式(如ADDITIONAL SETTINGS中的流体高度和自动流体,以及之后会介绍的场景控制元件的流体高度)修改的流体参数都无法触发流体控制元件的“保护”机制,流体控制元件一定会被触发并覆盖原有流体参数。

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-30 18:06:52 | 显示全部楼层
本帖最后由 马里奥奥里马 于 2024-12-30 18:08 编辑

今天开始介绍场景控制元件。
图229.png
场景控制元件的功能很强大,集成了修改BGM、修改背景和修改流体高度这三个功能。
放置场景控制元件时,会依次跳出窗口询问是否要修改BGM、是否要修改背景以及是否要修改流体高度,根据需要选择即可。
场景控制元件放置后显示的图标与选择修改的内容有关。如果修改了BGM,则显示音符;如果修改了背景,则显示一个图块;如果修改了流体高度,则显示一小层水;如果同时修改多个元素,显示的图标为多个图标的叠加,如下图。不同的图标仅仅是为了在编辑界面方便区分,实际游玩时场景控制元件是隐形的。
图230.png
光标放在场景控制元件上按住E键配合光标移动可以快速挪动场景控制元件,按Q键可以调出菜单重新修改参数。
按Q键调出的菜单中有一项是Turn ON/OFF preview mode,即开/关该场景控制元件的预览模式。在预览模式下,编辑界面的背景将显示为该场景控制元件设置的背景(前提是开启了关卡背景的预览效果,通过F6键开启/关闭),按F8键播放的BGM也变为该场景控制元件设置的BGM。
单独放置的场景控制元件为触碰式触发,即只有当马里奥触碰到元件时才会生效该元件的设置。元件的所有设置都是瞬间起效的,例如修改了流体高度的话,流体高度会瞬间置于目标高度,没有中间涨落潮的过程。同一个元件可以被无限次触发。
场景控制元件还有和视野控制元件或库巴联动触发的方式,之后再介绍。

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2024-12-31 15:39:47 | 显示全部楼层
本帖最后由 马里奥奥里马 于 2024-12-31 16:04 编辑

关卡背景、BGM、流体高度发生变化时,后变化的永远会覆盖掉之前的,即之前的设置会直接作废,无法恢复。
PREF’s中选择的背景和BGM,以及在ADDITIONAL SETTINGS中设置的流体高度、流体类型和自动流体是关卡的初始设置,在关卡运行时是最先触发的。流体控制元件和场景控制元件触发的时机均在此之后。
触碰CP时,CP会保存触碰时的背景、BGM和流体高度,从CP复活时会把保存的这些设置当作关卡的初始设置进行游戏(注意流体类型仍以初始时的设置为准。如果开了自动流体的话,CP复活时也会重新触发自动流体,和在起点时触发的区别仅在于流体初始高度以CP保存时的数据为准),这些设置同样会在流体控制元件和场景控制元件之前触发。GOD模式下用PgUp/PgDn传送到CP时似乎不会保存这些设置,或许算是一个BUG。
尽管理论上流体控制元件和场景控制元件的触发可以立刻覆盖掉上述初始设置,但初始设置一瞬间的判定仍可致命(例如被岩浆淹没时)。

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2025-1-1 16:56:58 | 显示全部楼层
元旦快乐!今天开始介绍视野控制元件。
图231.png
视野控制元件是一个“区域”,能够限定玩关时的视野范围。视野控制元件的放置方式类似于流体区域,即需要确定区域的“头部”和“尾部”,头部和尾部框成的矩形区域即为视野控制元件限制的视野范围。需要注意,视野控制元件的范围大小必须要大于横向20格*纵向15格(即一个屏幕),任一方向小于该尺寸的范围是无法成功放置的。
视野控制的生效方式有两种。第一种是马里奥从起点或CP处开始时就处于视野控制元件区域内,第二种是马里奥通过水管通道传送到区域内(即出口在区域内)。视野控制元件生效时,马里奥的视野范围将被限定在区域内,在不离开区域的情况下,可以近似把区域边界视为关卡边界。马里奥同时处于多个视野控制元件的区域中时,生效最早放置的那个区域。同一个片视野控制的范围可以被无限次触发。
视野控制的退出方式也有两种。第一种是马里奥通过水管通道传出区域范围,第二种是触发了滚屏(库巴滚屏或滚屏控制元件的滚屏均可)。触发滚屏时,滚屏效果将取代视野控制。

10

主题

329

回帖

4

精华

版主

经验
4476
硬币
885 枚

第二届MW杯冠军请务必再光临秘密合战!请务必再光临秘密合战!他山之石盲猜大王

 楼主| 发表于 2025-1-2 11:15:34 | 显示全部楼层
场景控制元件可以和视野控制元件联动触发。
联动触发的摆放方式为:将场景控制元件放在视野控制元件头部的右侧1格。放置完成后,这两个元件之间会有一条短横线连接,代表二者已经绑定成功,如下图。
图232.png
完成绑定后,该场景控制元件的效果将在该视野控制元件触发的同时触发。无法再通过触碰的方式触发场景控制元件。
您需要登录后才可以回帖 登录 | 创建账户

本版积分规则