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

使用Bukkit的反序列化功能加载雕塑MOD物品时,部分NBT丢失 #228

Closed q513902026 closed 4 years ago

q513902026 commented 4 years ago

Catserver 版本

CatServer-8d44800-universal

Mod 本体版本

ChiselsAndBits-14.33

问题描述

在使用该版本的CatServer开发背包插件时发现,对物品进行Bukkit提供的反序列化时无法正确加载ChiselsAndBits的雕刻物品,经过debug发现无法加载其NBT中的BlockEntityTag

如何复现

  1. 通过Bukkit提供的API ConfigurationSection.set(String key,Object object)把物品序列化保存在文件中
  2. 重启服务器
  3. 通过Bukkit提供的API ConfigurationSection.getItemStack(String key) 把物品反序列化
  4. 雕塑物品NBT丢失了 BlockEntityTag

其他信息

使用该魔改插件 https://github.com/q513902026/MCGBackpacks 发现的问题 https://github.com/q513902026/MCGBackpacks/blob/master/src/main/java/me/renner6895/backpacks/InvUtil.java#L43

Luohuayu commented 4 years ago

已修复

q513902026 commented 4 years ago

感谢