Luohuayu / CatServer

高性能和高兼容性的1.12.2/1.16.5/1.18.2版本Forge+Bukkit+Spigot服务端 (A high performance and high compatibility 1.12.2/1.16.5/1.18.2 version Forge+Bukkit+Spigot server)
https://catmc.org
GNU Lesser General Public License v3.0
1.98k stars 211 forks source link

[1.16.5] 使用MBD模组创建的自定义机器无法正常工作 #666

Open StarZeroRI opened 1 year ago

StarZeroRI commented 1 year ago

运行环境 Minecraft版本: 1.16.5 构建版本: CatServer version 1.16.5-a76056a9 (Implementing API version 1.16.5-R0.1-SNAPSHOT, Forge version 36.2.39) 相关模组/插件: [MBD前置]LowDragLib-1.16.5-0.7.6 [MBD]Multiblocked-1.16.5-0.13.1 描述这个BUG 使用单人以及forge端测试无问题,使用catserver仅安装这两个mod且无任何插件,测试出现以下问题 MBD所有相关配置文件,在客户端与服务端均一致 导致的问题 1.机器无法正常运行(配方不工作) 2.控制器位置的机器拆除后机器无法重新成形,但是其他位置可以(换其他机器也无法成形) 日志文件,机器工作时后台无报错: debug.log latest.log 复现方法 比较复杂,请查看视频演示 控制器:指组成MBD多方块机器的主要功能性方块 成形:指机器的多方块结构形成完整的机器(演示采用的单一方块,但也需要成形这个步骤)。机器GUI界面第二项显示待机代表成功成形 视频演示 https://user-images.githubusercontent.com/89684932/205934192-5f396b85-322d-4fac-8f54-dec95d13a77d.mp4 转述:MBD作者 【第一部分】 MBD会尝试在异步线程getTileEnity, getBlockState(以安全的方式访问), catsever是否存在阻止mod进行类似操作的可能比如优先级更高的coremod进行线程判定 MBD mixins了 Level.tickBlockEntities 这个是否也被catserver修改 如果mbd这个mixins没有正确执行的话 ,就会这样,方块只能成型一次,配方不工作 mixin了ServerChunkCache里面获取Chunk的代码 是否被catserver修改 【第二部分】 mbd截图 mbd会在这插入一段逻辑 mbd2 演示所需文件 1.16.5-mbd测试所需文件.zip 我的qq1851390862(可随时帮忙测试)

StarZeroRI commented 1 year ago

补充,用可输出日志的MBD测试后的 debug.log QQ图片20221207160735 转述mbd作者:这个mixin是否可能不被调用?