Closed Aleon4201 closed 1 year ago
Yeah, this is the same as #99 . I've tried supplying the right ops, but I can't for the life of me figure out what the problem is! I'll keep this open and see if I can look into it again, thank you.
This is still an outstanding issue - but now that both versions of Bountiful have been unified, I'm going to make this a priority.
Fixed in 6.0.3-1.20.1
What happened?
Probably no affects in-game, but same logs for several times in latest.log.
You said you didn't know how to fix it in the issue #99 , I think it's just lack of properties for "copynbt" function - **"ops"_**. References: MC Fandom Wiki
I wanted to test by overriding from my Datapack, but I couldn't because I didn't know what NBTs you wanted to copy. Sorry. If you want to copy several NBTs, yes you can. (The below is from Shulker Box.)
How can we reproduce it?
Nothing. Just launch MC, and enter to any world.
Mod Version
1.16.4-3.3.1 (updated in March 15)
Forge Version
36.2.34
Relevant log output
[13:40:51] [main/ERROR]: Couldn't parse loot table bountiful:blocks/bountyboard com.google.gson.JsonSyntaxException: Missing ops, expected to find a JsonArray at net.minecraft.util.JSONUtils.func_151214_t(SourceFile:425) ~[?:?] at net.minecraft.loot.functions.CopyNbt$Serializer.func_186530_b(SourceFile:245) ~[?:?] at net.minecraft.loot.functions.CopyNbt$Serializer.func_186530_b(SourceFile:231) ~[?:?] at net.minecraft.loot.LootFunction$Serializer.func_230423a(SourceFile:99) ~[?:?] at net.minecraft.loot.LootFunction$Serializer.func_230423a(SourceFile:88) ~[?:?] at net.minecraft.loot.LootTypesManager$Serializer.deserialize(SourceFile:83) ~[?:?] at com.google.gson.internal.bind.TreeTypeAdapter.read(TreeTypeAdapter.java:69) ~[gson-2.8.0.jar:?] at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.read(TypeAdapterRuntimeTypeWrapper.java:41) ~[gson-2.8.0.jar:?] at com.google.gson.internal.bind.ArrayTypeAdapter.read(ArrayTypeAdapter.java:72) ~[gson-2.8.0.jar:?] at com.google.gson.Gson.fromJson(Gson.java:887) ~[gson-2.8.0.jar:?] at com.google.gson.Gson.fromJson(Gson.java:952) ~[gson-2.8.0.jar:?] at com.google.gson.internal.bind.TreeTypeAdapter$GsonContextImpl.deserialize(TreeTypeAdapter.java:162) ~[gson-2.8.0.jar:?] at net.minecraft.util.JSONUtils.func_188179_a(SourceFile:440) ~[?:?] at net.minecraft.util.JSONUtils.func_188177_a(SourceFile:456) ~[?:?] at net.minecraft.loot.StandaloneLootEntry$Serializer.func_230421b(SourceFile:149) ~[?:?] at net.minecraft.loot.StandaloneLootEntry$Serializer.func_230421b(SourceFile:129) ~[?:?] at net.minecraft.loot.LootEntry$Serializer.func_230423a(SourceFile:86) ~[?:?] at net.minecraft.loot.LootEntry$Serializer.func_230423a(SourceFile:74) ~[?:?] at net.minecraft.loot.LootTypesManager$Serializer.deserialize(SourceFile:83) ~[?:?] at com.google.gson.internal.bind.TreeTypeAdapter.read(TreeTypeAdapter.java:69) ~[gson-2.8.0.jar:?] at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.read(TypeAdapterRuntimeTypeWrapper.java:41) ~[gson-2.8.0.jar:?] at com.google.gson.internal.bind.ArrayTypeAdapter.read(ArrayTypeAdapter.java:72) ~[gson-2.8.0.jar:?] at com.google.gson.Gson.fromJson(Gson.java:887) ~[gson-2.8.0.jar:?] at com.google.gson.Gson.fromJson(Gson.java:952) ~[gson-2.8.0.jar:?] at com.google.gson.internal.bind.TreeTypeAdapter$GsonContextImpl.deserialize(TreeTypeAdapter.java:162) ~[gson-2.8.0.jar:?] at net.minecraft.util.JSONUtils.func_188179_a(SourceFile:440) ~[?:?] at net.minecraft.util.JSONUtils.func_188174_a(SourceFile:448) ~[?:?] at net.minecraft.loot.LootPool$Serializer.deserialize(LootPool.java:183) ~[?:?] at net.minecraft.loot.LootPool$Serializer.deserialize(LootPool.java:180) ~[?:?] at com.google.gson.internal.bind.TreeTypeAdapter.read(TreeTypeAdapter.java:69) ~[gson-2.8.0.jar:?] at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.read(TypeAdapterRuntimeTypeWrapper.java:41) ~[gson-2.8.0.jar:?] at com.google.gson.internal.bind.ArrayTypeAdapter.read(ArrayTypeAdapter.java:72) ~[gson-2.8.0.jar:?] at com.google.gson.Gson.fromJson(Gson.java:887) ~[gson-2.8.0.jar:?] at com.google.gson.Gson.fromJson(Gson.java:952) ~[gson-2.8.0.jar:?] at com.google.gson.internal.bind.TreeTypeAdapter$GsonContextImpl.deserialize(TreeTypeAdapter.java:162) ~[gson-2.8.0.jar:?] at net.minecraft.util.JSONUtils.func_188179_a(SourceFile:440) ~[?:?] at net.minecraft.util.JSONUtils.func_188177_a(SourceFile:456) ~[?:?] at net.minecraft.loot.LootTable$Serializer.deserialize(LootTable.java:252) ~[?:?] at net.minecraft.loot.LootTable$Serializer.deserialize(LootTable.java:249) ~[?:?] at com.google.gson.internal.bind.TreeTypeAdapter.read(TreeTypeAdapter.java:69) ~[gson-2.8.0.jar:?] at com.google.gson.Gson.fromJson(Gson.java:887) ~[gson-2.8.0.jar:?] at com.google.gson.Gson.fromJson(Gson.java:952) ~[gson-2.8.0.jar:?] at com.google.gson.Gson.fromJson(Gson.java:925) ~[gson-2.8.0.jar:?] at net.minecraftforge.common.ForgeHooks.loadLootTable(ForgeHooks.java:888) ~[?:?] at net.minecraft.loot.LootTableManager.lambda$apply$0(LootTableManager.java:40) [?:?] at net.minecraft.loot.LootTableManager$$Lambda$12277/181977741.accept(Unknown Source) [?:?] at dev.latvian.kubejs.core.LootTablesKJS.applyKJS0(LootTablesKJS.java:38) [?:1605.3.19-build.299] at net.minecraft.loot.LootTableManager.redirect$zip000$applyKJS(LootTableManager.java:521) [?:?] at net.minecraft.loot.LootTableManager.func_212853a(LootTableManager.java:38) [?:?] at net.minecraft.loot.LootTableManager.func_212853a(LootTableManager.java:16) [?:?] at net.minecraft.client.resources.ReloadListener.func_215269_a(SourceFile:13) [?:?] at net.minecraft.client.resources.ReloadListener$$Lambda$9425/875541429.accept(Unknown Source) [?:?] at java.util.concurrent.CompletableFuture.uniAccept(CompletableFuture.java:656) [?:1.8.0_51] at java.util.concurrent.CompletableFuture$UniAccept.tryFire(CompletableFuture.java:632) [?:1.8.0_51] at java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:442) [?:1.8.0_51] at net.minecraft.resources.AsyncReloader.func_219557_a(SourceFile:71) [?:?] at net.minecraft.resources.AsyncReloader$$Lambda$9652/1965566881.run(Unknown Source) [?:?] at net.minecraft.util.concurrent.ThreadTaskExecutor.func_213166_h(SourceFile:144) [?:?] at net.minecraft.util.concurrent.RecursiveEventLoop.func_213166_h(SourceFile:23) [?:?] at net.minecraft.util.concurrent.ThreadTaskExecutor.func_213168_p(SourceFile:118) [?:?] at net.minecraft.util.concurrent.ThreadTaskExecutor.func_213161_c(SourceFile:127) [?:?] at net.minecraft.client.Minecraft.func_238189a(Minecraft.java:1865) [?:?] at net.minecraft.client.Minecraft.loadWorld(Minecraft.java:1714) [?:?] at net.minecraft.client.Minecraft.lambda$loadWorld$29(Minecraft.java:1806) [?:?] at net.minecraft.client.Minecraft$$Lambda$12639/837951975.run(Unknown Source) [?:?] at net.minecraft.client.Minecraft.lambda$displayExperimentalConfirmationDialog$30(Minecraft.java:1836) [?:?] at net.minecraft.client.Minecraft$$Lambda$12640/1637578418.proceed(Unknown Source) [?:?] at net.minecraft.client.gui.screen.ConfirmBackupScreen.func_212992_b(SourceFile:40) [?:?] at net.minecraft.client.gui.screen.ConfirmBackupScreen$$Lambda$12648/1897318534.onPress(Unknown Source) [?:?] at net.minecraft.client.gui.widget.button.Button.func_230930b(SourceFile:33) [?:?] at com.legacy.structure_gel.SGClientEvents.skipExperimentalBackupScreen(SGClientEvents.java:66) [?:1.7.8] at com.legacy.structure_gel.SGClientEvents$$Lambda$4211/1324053914.accept(Unknown Source) [?:1.7.8] at net.minecraftforge.eventbus.EventBus.doCastFilter(EventBus.java:247) [eventbus-4.0.0.jar:?] at net.minecraftforge.eventbus.EventBus.lambda$addListener$11(EventBus.java:239) [eventbus-4.0.0.jar:?] at net.minecraftforge.eventbus.EventBus$$Lambda$2943/15481156.invoke(Unknown Source) [eventbus-4.0.0.jar:?] at net.minecraftforge.eventbus.EventBus$$Lambda$3138/486178528.invoke(Unknown Source) [eventbus-4.0.0.jar:?] at net.minecraftforge.eventbus.EventBus.post(EventBus.java:302) [eventbus-4.0.0.jar:?] at net.minecraftforge.eventbus.EventBus.post(EventBus.java:283) [eventbus-4.0.0.jar:?] at net.minecraftforge.client.ForgeHooksClient.drawScreenInternal(ForgeHooksClient.java:378) [?:?] at net.minecraftforge.client.ForgeHooksClient.drawScreen(ForgeHooksClient.java:370) [?:?] at net.minecraft.client.renderer.GameRenderer.func_195458_a(GameRenderer.java:492) [?:?] at net.minecraft.client.Minecraft.func_195542_b(Minecraft.java:977) [?:?] at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:607) [?:?] at net.minecraft.client.main.Main.main(Main.java:184) [?:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_51] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_51] at java.lang.reflect.Method.invoke(Method.java:497) ~[?:1.8.0_51] at net.minecraftforge.fml.loading.FMLClientLaunchProvider.lambda$launchService$0(FMLClientLaunchProvider.java:51) [forge-1.16.5-36.2.34.jar:36.2] at net.minecraftforge.fml.loading.FMLClientLaunchProvider$$Lambda$494/975790343.call(Unknown Source) [forge-1.16.5-36.2.34.jar:36.2] at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-8.1.3.jar:?] at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:54) [modlauncher-8.1.3.jar:?] at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:72) [modlauncher-8.1.3.jar:?] at cpw.mods.modlauncher.Launcher.run(Launcher.java:82) [modlauncher-8.1.3.jar:?] at cpw.mods.modlauncher.Launcher.main(Launcher.java:66) [modlauncher-8.1.3.jar:?]