他们又在左右脑互搏……
本帖最后由 Cat_Anchor 于 2026-3-21 14:07 编辑最近[万象添补](https://klpbbs.com/thread-153081-1-1.html)基本不能用了,因为我不知道怎么适配高版本方块定义的写法。昨天研究了一下,发现提供接口的那群人又在左右脑互搏了。
如果我们加入一个没有使用自定义组件的方块,那么一切正常。但是如果加入使用了自定义组件的方块,问题就来了。我们首先得到这两条内容日志:
> -block\_definitions | /storage/emulated/0/Android/data/com.mojang.minecraftpe/files/games/com.mojang/development\_behavior\_packs/blockTest | blocks/test.json | Unexpected version for the loaded data
>
> -block\_definitions | /storage/emulated/0/Android/data/com.mojang.minecraftpe/files/games/com.mojang/development\_behavior\_packs/blockTest | blocks/test.json | this component was found in the input, but is not present in the Schema
第一条是 `Unexpected version for the loaded data`,也就是“已加载数据的意外版本”,说明方块定义的版本控制方面有问题。第二条是 `this component was found in the input, but is not present in the Schema`,“在输入中找到了此组件,但它不在模式文档中”。这句话的意思是,我们在定义方块的时候,用到了一个组件,而游戏在校验这个组件时,发现它不是原版提供的那些组件,于是拒绝加载这个方块定义。
内容日志没有具体说明这是哪个组件,但是经过我的实验,这指的就是我们的自定义组件。所以说,他们认为自定义组件不是原版组件,于是不允许我们使用自定义组件……
更绝的还在后面。我们终于要加载进存档时,收到了这样一条内容日志:
> -Block custom component 'complementary:test' is not being used by a block
这意思就是,“方块自定义组件 `complementary:test` 未被方块使用”。这条提示通常出现在我们注册了自定义组件,却没有在方块定义中使用这个自定义组件的时候。
也就是说,他们前脚不承认我们的自定义组件,不让我们使用,后脚又提醒我们“自定义组件未被使用”,让我们去用???
---
当然,还有一种可能,那就是我把方块的格式版本写错了。但是“对外使用 `26.20`,对内使用 `1.26.20`”是个普遍有效的规则,我不认为把方块定义的 `format_version` 从 `1.26.20` 改为 `26.20` 就能解决问题。
---
还有一件事,我在[这篇帖子](https://klpbbs.com/thread-169823-1-1.html)的二楼中使用了楼中楼功能,但是过了大约 10 天都没人来处理,我想这个功能还是处于暂时不可用的状态。我在这里把当时的评论内容再放一遍:
> 这里确实应该翻译为“发布了 @minecraft/server 2.7.0”!不过对于 released x from beta to y,我还是倾向于把“release”翻译为“移动”,因为这种操作其实就是把 API 从“beta”这一类下面移动到“正式版”这一类下面。
下面是一些测试。
半透明背景,圆角,边框,阴影。
https://file.uhsea.com/2602/521dbf5e7eb716817db2d974079be33bNO.mp3 loop style='border:2px solid #3498db; border-radius:30px; background-color:rgba(255,255,255,0.5); box-shadow:5px 5px 15px rgba(0,0,0,0.3);'
边框,轮廓,彩色渐变背景。
https://file.uhsea.com/2602/521dbf5e7eb716817db2d974079be33bNO.mp3 loop style='border:3px dashed #e74c3c; outline:2px solid #2c3e50; outline-offset:5px; background:linear-gradient(145deg, #84fab0 0%, #8fd3f4 100%);'
居中,悬停动画。悬停动画没有用。另外由于内联的限制,基本不可能让音频块动起来。
https://file.uhsea.com/2602/521dbf5e7eb716817db2d974079be33bNO.mp3 loop style='width:80%; margin:0 auto; display:block; transition:all 0.3s ease; &:hover{transform:scale(1.2); background:#d4edda;}'
下面这个测试失败了。
这是一个最基础的信息泡(Information Bulb)!可以在这里填写各种信息,填写完成后,信息将作为浮动窗口的形式出现在屏幕左侧。这里使用 Times New Roman 字体,看起来比较高级。这个浮动窗口占用正文的 50% 宽度,而且窗口在页面左侧。这里是正文部分。有时候我们希望为正文补充一些信息,但是又不想创建折叠块,补充的信息还比较多,这时候就可以使用这种信息泡。这样,我们就可以补充很多信息。信息泡可以出现在屏幕左侧,也可以出现在右侧,而且可以调整占用的宽度。正文会为信息泡留出空间,信息泡结束之后,正文又会自动填补空出来的空间。以上只是最基础的信息泡,通过使用表格、分割线等元素,我们可以创建不同种类的信息泡。我们还可以为信息泡的背景填充颜色,只是这种颜色仅能在电脑端看到。或者我们使用文本段落与背景颜色的结合,缺点就是需要手动控制换行问题,需要对整个系统的运行原理有比较深的理解。 因为一般来讲server APi模块的正式版和测试版其实很不一样,一方面各个正式版只逐步放开一小部分的接口(比如dimension.findClosestBiome()一直没有放出到正式版),另一方面仍有大量的测试版接口留在测试版中(尽管版本号有变动)。现在测试版已经趋向于把所有的测试版内容都放在一个专门的模块版本“beta”,而不是按照当前测试版的版本号(比如server-2.8.0-beta)。因此,我是不推荐将Release某某翻译为从测试版移动至正式版(因为server-2.7.0-beta和server-2.7.0的内容差太多了,不是单纯的移动)
另外,为了与专门的术语“move”作区分,我也是不推荐把release译为移动的。我们可以在更新日志的其他部分看到很多“move某某接口from beta to某某”的,这个是翻译成移动。而release作为一种技术术语,本身就只在某个项目发布正式版时才使用,所以我认为译为“发布”或“放出”甚至按照本义译为“释放”是更好的选择。
当然,每个人都有自己的翻译风格,在这一点上,所有做翻译的都没有区别,毕竟每个人都有自己所理解的语言[哔哩_脱单] 您好作者大大,如果想看到比较准确的内容,请到英文minecraft wiki里,谢谢。 您好作者大大,如果想看到比较准确的内容,请到英文minecraft wiki里,谢谢。
页: [1]