2017年6月27日:v1.2.0 - "The 7th Anniversary Update" 2017年8月16日:v1.3.0 - "The Summer Red Update" 2018年2月28日:v1.4.0 - "The Winter White Update" 2018年8月19日:v1.5.0 - "August All-Star Update" 2019年2月18日:v1.6.0 - "Ocean & Motion Update" 2020年5月24日:v1.7.0 - "Rebirth Update"
距离 SMWP 上一代大版本 v1.7.0 的发布,已经过去六年有余。1.7 系列也是 SMWP 历史上生命周期最长、关卡内容最丰富、更新次数最多的一个版本系列。
SMWP 是一个自诞生就背负着历史包袱的产物,在我们官宣开源时曾提到:
原版 MW 的代码质量在可读性、可维护性、扩展性上均存在一定的缺陷;
过去,SMWP 使用 Game Maker 8.0(GM 8.0)开发,随着 SMWP 功能的持续更新,代码架构也愈发复杂,使用 GM 8.0 自带的编辑器开发效率较为低下。
开源、底层升级和 AI 辅助开发,大幅提升了我们的开发效率。今天要发布的版本,原计划定为 v1.7.13,也就是 1.7 系列的一次版本更新,但我们内部觉得,这次更新幅度远大于 1.7 系列任何一个小版本。尽管从新增物品数量来看,这个版本在历代大版本中是排名靠后的,且之前集思广益帖中吧友提出的一些建议也未能全部实现,但这次更新进行了许多基础建设,它有着突破性的意义。因此,我们决定将其定为:
Super Mario Worker Project v1.8.0 - "The Rebuild Update"
本次更新重磅内容抢先看: 一、主程序引擎升级至 Game Maker 8.2! 二、编辑器内置多人联机系统,最多支持 8 人共同制作同一张关卡! 三、全新道具:叶子与浣熊装! 四、编辑界面选区功能上线!批量移动、复制轻松搞定! 五、新增花瓣探照灯! 六、半开放式自动滚屏!滚屏自由度进一步提升! 七、新硬件设备全面兼容!
1. 主程序引擎升级至 Game Maker 8.2
SMWP 自诞生以来就一直基于 Game Maker 8.0 引擎开发。本次更新将主程序引擎升级至 Game Maker 8.2,并配合底层代码重构,为后续所有新特性铺平了道路。
2. 全新信息文本绘制插件,彻底修复启动问题
自 2024 年以来,部分新硬件设备(尤其是近几年生产的新电脑)在启动 SMWP 时会出现报错问题,这一问题长期困扰部分玩家。
本次更新引入了全新的信息文本绘制插件,从绘制层彻底重写了文本渲染逻辑,彻底修复了部分新硬件设备上无法启动 SMWP 的问题。
3. 全新 SMWGZip DLL,告别 .NET Framework 4
v1.6 时代,为了解决启动问题,SMWP 引入了对 .NET Framework 4 运行时的依赖。
本次更新采用全新自研的 SMWGZip DLL 替代原有方案,SMWP 不再依赖 .NET Framework 4 运行时,运行环境更加简洁、轻量。
4. 编码扩展:GB2312 → UTF-8 全面升级
新增编码转换扩展,支持将 GB2312 编码文本转换为 UTF-8。
SMWP v1.8 默认使用 UTF-8 编码保存关卡,为关卡中文文本的兼容性以及跨平台互操作打下基础。
1. 编辑界面缩放功能
关闭侧边面板后,可使用 Ctrl + 鼠标滚轮 或 + / - 键 对编辑界面进行缩放。

2. Edit 跳转快捷键
编辑界面新增 PgUp / PgDn 快捷键,可快速跳转至关卡起点或 Check Point。

3. Edit 按键全面自定义
编辑界面的按键现已支持在全局设置中修改,玩家可以根据自己的操作习惯调整键位。


4. F9 截图自定义
F9 截图功能现支持自定义快捷键,同时支持修改截图保存路径(目前需要在配置文件中手动修改)。

5. 新增保存压缩选项
全局设置新增“保存关卡时是否压缩”(Compress file when saving)选项,默认开启。
关闭该选项后,保存关卡时将跳过 GZip 压缩,直接保存文件,方便外部编辑工具直接处理关卡文件。

本次更新为编辑界面带来了期待已久的选区功能。
【基本操作】
按下 U 键 进入选区模式(Region Mode)。
在编辑区内按住鼠标左键拖拽,画出一个矩形选框。
松开鼠标后,框内被选中的所有内容会以绿色高亮标出,包括砖块、敌人、景物、标记、奖励等各类元素。
将鼠标移到选区内部,按住左键拖动即可整体移动。
松开鼠标,选区即在新位置落定。

【选取模式】(T 键循环切换)
ANY(任意相交):物件只要与选框存在重叠即可被选中,适合快速圈选。
FULL(完全包含):只有完整落在选框内的物件才会被选中,适合精确批量操作。
HALF(半覆盖):重叠面积达到一半以上的物件被选中,介于两者之间。
【移动时的细节规则】
砖块沿 32px 网格(一格)对齐移动,并在释放后自动吸附至完整格位;敌人等实例则按照 16px 半格精确平移。
移动范围会被自动钳制在房间边界内,不会出现选区被拖出地图外丢失的情况。
拖动过程中会显示半透明的“幽灵预览”,方便确认落点;松手后才会真正写入关卡数据。
强制卷轴等特殊元件在移动时会自动保持其规则(如卷轴中心对齐),无需手动微调。
【选区复制:一键批量克隆】
框选目标区域后(保持选中状态即可,无需进入移动模式),按住 Ctrl + C(复制键,可在设置中修改)。
此时选区进入"复制模式",直接拖动鼠标。
拖动时你可以看到整个选区的半透明副本跟随光标移动,原件保留不动。
松手后,副本在新位置生成,并且选区自动切换到新生成的副本上——这意味着玩家可以连续使用 Ctrl+C 进行复制,快速铺设大量重复结构(例如连续多个问号砖阵、成片的敌人配置)。
1. 叶子与浣熊装
本次更新加入了全新的变身道具——叶子,收集后即可变身为浣熊装马里奥!
【浣熊装基本特性】
空中缓降:下落时按住跳跃键即可缓缓飘落。
奔跑飞行:助跑冲刺后腾空而起,在空中持续滑翔飞行!
扫尾攻击:按攻击键挥动尾巴,可以像马里奥三代一样击退敌人!


【高级技巧】
下落的时候,如果进行扫尾攻击并击败敌人,那么不会触发踩踏(复刻参考:NSMB2)。
如果在奔跑飞行状态时踩踏敌人,那么飞行时间将会重置!


2. 龟壳家族新成员:刺壳
新增静止刺壳与运动刺壳两种龟壳。

本次更新新增了全新的花瓣探照灯!传统探照灯的半径固定,而花瓣探照灯的特点在于其半径可以周期性变化,如同花瓣开合一般。
【编辑方式】
放置花瓣探照灯后,首先左键确认旋转速度,进入最大半径设置阶段。
在编辑区点击鼠标,设置探照灯的最大半径(自动吸附至 32px 网格)。
使用鼠标滚轮调整半径变化速度。

v1.6 引入的强制滚屏物件在本次更新中迎来了重要升级——半开放式自动滚屏。
【核心特性】
半开放:相对节点运动垂直部分的滚屏是自由的。也就是说,镜头沿滚屏链水平推进的同时,垂直方向依然保留了玩家操作的余裕,实现压迫感与自由度的平衡。
橙色节点转向绿色节点的过渡:如果节点运动到绿色节点时镜头与绿色节点仍有距离,那么镜头会先强制朝向绿色节点运动,确保滚屏衔接丝滑不露馅。
如果以橙色节点结束:运动结束前的相对运动垂直部分的滚屏自由依然有效。


【新增关卡设置】
Additional Settings 新增选项:处于向下运动的强制滚屏时,可以令向上出屏的玩家死亡。

本次更新中最重磅的功能——编辑器内置多人联机系统,支持最多 8 名玩家同时编辑同一张关卡!

【连接方式】
在编辑器的网络控制台中点击 HOST LOCAL / HOST LAN 创建房间,房主即主机。
其他玩家点击 JOIN,输入房主 IP(默认端口 51234)即可加入。
加入后支持 RENAME 修改昵称、CHAT 聊天、LEAVE 离开。
【协作同步机制】
光标实时显示:每位玩家的鼠标光标会在其他玩家的编辑器上实时呈现。
实时增量同步:任何玩家进行放置、删除、移动、参数修改等操作,变化会即时同步至所有客户端。
全量同步:新玩家加入时,房主会将完整关卡文件分块传输给新玩家,确保双方基础数据一致;传输完成后立即开始协同编辑。
【注意事项】
本功能为实验性功能。
现联机功能仅支持局域网。
如果遇到同步问题,房主可以尝试(先 SAVE 再)LOAD 当前关卡触发一次强制同步。
如果希望反馈联机测试问题,建议参与联机的所有玩家进行录屏,这样可以增加复现排查漏洞的机会。
本次更新包含了一个小型关卡作为示例关,介绍了叶子、浣熊装、刺壳、花瓣探照灯、半开放式自动滚屏等新物件的基本用法。

(示例关已包含在 SMWP v1.8 本体内。)
MW 的源代码修改起来非常不易,代码框架非常陈旧,可以说跟没有一样(笑)。
从吧友
BeyondGeodesic 发布 SMWP 1.8 集思广益贴、到如今 SMWP 1.8 正式发布,这期间我尝试接手这个项目,能做的、以及有兴趣的内容,都尽力去做了。很多更新需求——有困难的、也有简单的——最终还是没能全部实现。但即便是简单的需求,也可能需要和大家一起讨论、和其他内容一起权衡;而基于现在的代码框架,要添加某一个或一批功能,往往要耗费大量的精力。
说实话,我们很惭愧,很多呼声很高的需求还是没有实现。
但是,SMWP 1.8 依然拥有很大的发展空间,代码也正在重构的过程当中。引擎升级到 Game Maker 8.2、底层重构完成之后,未来版本的开发效率将大大提升——那些没能实现的需求,我们会在后续版本中一一补上。
敬请期待。
其实从 1.7 发布之初,我们就已经开始规划 1.8 版本。当时 INL 正在同时推进两个项目,中间也有一段时间我们主攻另一个项目,因此对 SMWP 这边投入相对有限,这也是 1.7 系列生命周期如此之久的一大原因。
计划不如变化快,有关 1.8 的计划,先后经历过多次变动。在
BeyondGeodesic 的 1.7 直播讲解中曾提到,1.8 应该会是 SMWP 二期系列的最后一个大版本;而去年绿糖启动 SMWP 2 之后,我们又甚至考虑过直接取消 1.8。今年我们正式完成引擎升级后,正如开头所提到的,我们原计划将这次更新定为 1.7.13,而最终改为 1.8 则是我的提议,因为这次更新的意义足以配得上这样一个大版本。虽然这次新增的物品可能没那么多,但这个版本我们还是做了不少基建工作。所以说,现在的 1.8 我们把它叫承上启下。
未来或许还会有 1.9。在后续版本中,我们会逐步实现集思广益帖中呼声比较高且具备可行性的需求。我们也重新确立了一个目标:在 Game Maker 8.x 框架下,打造一个终极的 SMWP 版本,为 1.x 系列画上一个圆满的句号。大家可以拭目以待。
1.8.0-beta.2:https://file.marioforever.net/smwp/smwp-1.8.0-beta.2.7z
数据包:https://file.marioforever.net/smwp/Data.7z
蓝奏云:https://inleap.lanzouw.com/b0yf4d3e
注:由于 v1.8.0 新增联机功能并修复了关卡开始时按死按键的判定问题,此版本开始默认失焦不暂停,不再提供失焦暂停版。
本次更新的主要贡献人员如下:
主力:
绿色的糖果
示例关卡:
Fahlee
整合:
KevinHuang9883
文案:
绿色的糖果
KevinHuang9883
协助:INL-SMWP分部全体人员
感谢他们为本次更新付出的努力!
我们已经尽可能进行了测试与排查,但由于本次更新涉及底层引擎迁移和大规模重构,仍难免存在遗漏。欢迎在本帖反馈您在使用 SMWP 1.8 过程中遇到的 bug 或不合理之处,我们会在未来版本中尽量予以修正。
感谢大家的支持!
原帖地址:https://www.marioforever.net/thread-3926-1-1.html