开启辅助访问     
收藏本站

站内搜索

搜索

Minecraft(我的世界)苦力怕论坛

[闲聊] 纪念碑谷开发进度,开始学习脚本

 发表于 2024-6-1 23:34:34 来自手机|显示全部楼层|阅读模式 IP:天津
本帖最后由 Cat_Anchor 于 2024-6-1 23:38 编辑

首先放一张图片。这就是纪念碑谷第三章第二个场景的进度了,接下来就会有一大堆东西从黑暗里升上来,那才是耗费时间的地方。

他们已经弃用物品事件很久了。最近,我得到消息说他们将弃用方块事件和对应的触发器组件,这无疑是一个巨大的打击。以前,给物品设置格式版本还能让它正常工作,但自从1.21.0或1.21.10这几个版本以来,这种方法也失效了。可以看出,除非回滚最低引擎版本,物品事件系统和(将来的)方块事件系统将完全不可用。但不能因为这个使附加包永远停留在1.20.30版本,因为以后的新功能对最低引擎版本有要求。

那么他们目前给出的平替(甚至比原来的系统更强)是——自定义组件和脚本。我们可以通过脚本注册一个新的自定义组件,然后通过组件形式把这个自定义组件应用于物品或方块上。它检测的动作和实现的功能,则完全由脚本实现。

但我从来没学过脚本,根本没写过哪怕一行代码。而且最大的问题是,我根本没有电脑,平时都在手机上开发附加包。那些便于写代码的软件,几乎都是电脑上运行的,手机显然不是为“写代码”这种任务设计的。

我摸索了好半天,创建了脚本模块,绑定了原版模块,新建了一个.js文件,然后不知道从哪里粘贴了一段代码。一看manifest.json文件的大小,888B,倒是挺吉利,我希望接下来的事情也顺利进行。

又整了半天,我才照葫芦画瓢地创建了第一个自定义组件,然后给琥珀方块运用上了。为什么是琥珀方块?原因很简单。第一,它的JSON文件很简单;第二,它的ID是supplementary:ambar_block,文件名就是ambar_block.json,它在一千一百多个文件中比较靠前。

接下来就是再找一段代码,在实体踩到方块上方时执行命令。这相当于以前的minecraft:on_step_on触发器组件,不过现在它复杂多了。其实本质没变,我却搞了好久才做好。幸好我知道可以在游戏中使用/reload命令重载脚本(除更改自定义组件的名称等等需要重进的操作以外),不然一直退出重进存档要花费很多时间。

到最后,我成功做出来了这个功能。我想一次运行两个命令,还得复制一遍代码。虽然我没找到,但我知道肯定有更好的解决办法,我写的不过是初学者的“烂代码”罢了——也就是“屎山”。

——不过这不重要,重要的是我做好了这个功能,如果只看结果,那我一个下午的工作似乎很好。

让玩家踩上一个方块时执行多个命令,这个简单的任务以前只需要一个名为minecraft:on_step_on的组件和一个名为run_command的事件方法,但现在却需要这么多,——这么多。

更何况,还有各种情况没有考虑。脚本执行命令的顺序怎样?稳定度怎样?运行速度怎样?能实现所有功能吗?版本兼容性如何?……这些问题对于以前的事件系统能很轻松地回答出来,尽管答案有时令人不满意,但那毕竟是研究了好几年的东西,早有各种大神为我们试过水,踩过坑。

而现在,自定义组件是一个很新的东西,它甚至还没有走过半年时间。前途是未知的,脚印寥寥无几,遇到大河只有残破的溜索,遇到树林只有树枝做的简单记号……这种技术需要一两年,甚至好几年时间去探索。而且并不是所有附加包都会升级到新版本,新开发的附加包也不一定选择最新版本,以后可能会出现“在1.22版本里开发1.20的附加包”的情况。

这次更改让本来很简单的东西变得非常复杂,对于新手而言,他们要学习的难度会上升很多。以前很多有意思的内容——几乎所有有趣内容,都基于事件系统完成,现在它们都应该基于脚本,升级的难度无疑是巨大的。以后,新手想要制作出更有趣的附加包的难度会很大,他们要么是选择用更原始的方式——execute if block检测等等,要么是直接放弃,很少人能有闲心研究脚本。

不过不管怎么说,他们一心要做这个更改,要移除掉方块和物品的事件系统,我们也做不了什么去阻拦。最近发生在附加包这个方面的事让我对“基岩版附加包”的前途的看法飘忽不定,但我有种预感——总体走势在下降。

但也不必太悲观,不就是脚本吗?不会,学就完事了。会有更多人去研究脚本的,难度提高了,但并没有到完全让普通人望而却步的地步。相反,这样一种东西能大规模使用,那必定是简单的,我们每个人都能学会的。
苦力怕论坛,感谢有您~
 发表于 2024-6-22 09:40:59 来自手机|显示全部楼层 IP:山西省
脚本是从上到下顺序执行,按行为包优先级执行(优先级越高,脚本越优先,比如聊天事件用before事件改了之后下一优先级的脚本检测不出原始消息)(异步事件不清楚)
官方文档不全,推荐文档:
https://projectxero.top/sapi/index.html
各版本ts补全文件下载:
https://www.npmjs.com/package/@m ... ?activeTab=versions
3#2024-6-22 09:40:59回复收起回复
苦力怕论坛,感谢有您~
回复支持

使用道具举报

 发表于 2024-6-3 17:39:37 来自手机|显示全部楼层 IP:0
但愿如此
期待大佬学成归来
2#2024-6-3 17:39:37回复收起回复
苦力怕论坛,感谢有您~
回复支持

使用道具举报

本版积分规则

本站
关于我们
联系我们
坛史纲要
官方
哔哩哔哩
技术博客
下载
网易版
安卓版
JAVA
反馈
意见建议
教程中心
更多
捐助本站
QQ群
QQ群

QQ群

访问手机版

访问手机版

手机版|小黑屋|系统状态|klpbbs.com

粤公网安备 44200002445329号 | 由 木韩网络 提供支持 | GMT+8, 2025-1-19 13:48

声明:本站与Mojang以及微软公司没有从属关系

Powered by Discuz! X3.4 粤ICP备2023071842号-3