Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Fabric 1.21.1] Log spam with Unicopia / Trinkets Compat Layer #168

Closed
2 tasks done
unilock opened this issue Dec 12, 2024 · 3 comments
Closed
2 tasks done

[Fabric 1.21.1] Log spam with Unicopia / Trinkets Compat Layer #168

unilock opened this issue Dec 12, 2024 · 3 comments
Assignees
Labels
bug Something isn't working Trinkets Compat Related to the trinkets compatibility layer

Comments

@unilock
Copy link

unilock commented Dec 12, 2024

Describe the bug
When using Unicopia with Accessories via the Trinkets Compat Layer, the game log is spammed with the following while in a world:

[14:24:12] [Render thread/WARN]: Unable to get some value leading to an error, here comes the dumping data!
[14:24:12] [Render thread/WARN]: Entity: class_746['unilock'/33, l='ClientLevel', x=-5.50, y=77.00, z=32.50]
[14:24:12] [Render thread/WARN]: Entity Slots: {face=SlotTypeImpl[name=face, alternativeTranslation=Optional.empty, icon=accessories:gui/slot/face, order=900, amount=1, validators=[accessories:tag, accessories:component], dropRule=DEFAULT], hat=SlotTypeImpl[name=hat, alternativeTranslation=Optional.empty, icon=accessories:gui/slot/hat, order=1000, amount=1, validators=[accessories:tag, accessories:component], dropRule=DEFAULT], accessories:feet=SlotTypeImpl[name=accessories:feet, alternativeTranslation=Optional.empty, icon=accessories:gui/slot/empty, order=1000, amount=1, validators=[accessories:feet], dropRule=DEFAULT], charm=SlotTypeImpl[name=charm, alternativeTranslation=Optional.empty, icon=accessories:gui/slot/charm, order=1000, amount=1, validators=[accessories:tag, accessories:component], dropRule=DEFAULT], accessories:chest=SlotTypeImpl[name=accessories:chest, alternativeTranslation=Optional.empty, icon=accessories:gui/slot/empty, order=1000, amount=1, validators=[accessories:chest], dropRule=DEFAULT], necklace=SlotTypeImpl[name=necklace, alternativeTranslation=Optional.empty, icon=accessories:gui/slot/necklace, order=1000, amount=1, validators=[accessories:tag, accessories:component], dropRule=DEFAULT], cape=SlotTypeImpl[name=cape, alternativeTranslation=Optional.empty, icon=accessories:gui/slot/cape, order=900, amount=1, validators=[accessories:tag, accessories:component], dropRule=DEFAULT], hand=SlotTypeImpl[name=hand, alternativeTranslation=Optional.empty, icon=accessories:gui/slot/hand, order=900, amount=2, validators=[accessories:tag, accessories:component], dropRule=DEFAULT], accessories:legs=SlotTypeImpl[name=accessories:legs, alternativeTranslation=Optional.empty, icon=accessories:gui/slot/empty, order=1000, amount=1, validators=[accessories:legs], dropRule=DEFAULT], ring=SlotTypeImpl[name=ring, alternativeTranslation=Optional.empty, icon=accessories:gui/slot/ring, order=800, amount=2, validators=[accessories:tag, accessories:component], dropRule=DEFAULT], wrist=SlotTypeImpl[name=wrist, alternativeTranslation=Optional.empty, icon=accessories:gui/slot/wrist, order=1000, amount=1, validators=[accessories:tag, accessories:component], dropRule=DEFAULT], belt=SlotTypeImpl[name=belt, alternativeTranslation=Optional.empty, icon=accessories:gui/slot/belt, order=1000, amount=1, validators=[accessories:tag, accessories:component], dropRule=DEFAULT], accessories:head=SlotTypeImpl[name=accessories:head, alternativeTranslation=Optional.empty, icon=accessories:gui/slot/empty, order=1000, amount=1, validators=[accessories:head], dropRule=DEFAULT], shoes=SlotTypeImpl[name=shoes, alternativeTranslation=Optional.empty, icon=accessories:gui/slot/shoes, order=900, amount=1, validators=[accessories:tag, accessories:component], dropRule=DEFAULT], back=SlotTypeImpl[name=back, alternativeTranslation=Optional.empty, icon=accessories:gui/slot/back, order=800, amount=1, validators=[accessories:tag, accessories:component], dropRule=DEFAULT], anklet=SlotTypeImpl[name=anklet, alternativeTranslation=Optional.empty, icon=accessories:gui/slot/anklet, order=1000, amount=1, validators=[accessories:tag, accessories:component], dropRule=DEFAULT]}
[14:24:12] [Render thread/WARN]: Current Containers: {face=io.wispforest.accessories.impl.AccessoriesContainerImpl@2629283c, hat=io.wispforest.accessories.impl.AccessoriesContainerImpl@710ebf52, accessories:feet=io.wispforest.accessories.impl.AccessoriesContainerImpl@4f5f2e4f, charm=io.wispforest.accessories.impl.AccessoriesContainerImpl@12f18a4d, accessories:chest=io.wispforest.accessories.impl.AccessoriesContainerImpl@7d7628e7, necklace=io.wispforest.accessories.impl.AccessoriesContainerImpl@7906ec34, cape=io.wispforest.accessories.impl.AccessoriesContainerImpl@4f1d980d, hand=io.wispforest.accessories.impl.AccessoriesContainerImpl@5120d041, accessories:legs=io.wispforest.accessories.impl.AccessoriesContainerImpl@1d5deb92, ring=io.wispforest.accessories.impl.AccessoriesContainerImpl@5374d341, wrist=io.wispforest.accessories.impl.AccessoriesContainerImpl@700ae4d2, belt=io.wispforest.accessories.impl.AccessoriesContainerImpl@277f904a, accessories:head=io.wispforest.accessories.impl.AccessoriesContainerImpl@550cfe4c, shoes=io.wispforest.accessories.impl.AccessoriesContainerImpl@2097d177, back=io.wispforest.accessories.impl.AccessoriesContainerImpl@79c9dc3, anklet=io.wispforest.accessories.impl.AccessoriesContainerImpl@5c3ab0ba}
[14:24:12] [Render thread/WARN]: More Info: (Unable to locate the given slot type: [glove])

Expected behavior
No log spam.

Steps to reproduce

  1. Install Minecraft 1.21.1, Fabric Loader, Fabric API, Accessories + Trinkets Compat Layer for Accessories, owo-lib, and Unicopia
  2. Start the game, join a world
  3. Observe the game log being spammed with the same message constantly (every tick?) until leaving the world

Version Information:

  • Minecraft Version: 1.21.1 (probably also 1.20.1)
  • Accessories Version: 1.1.0-beta.16+1.21.1
  • Accessories TCLayer version: 3.10.0+beta.18

Mod Loader:

  • Fabric
  • Neoforge (with connector)

Client/Server Logs
latest.log: https://gist.github.com/unilock/b36487dd419c66b6978a65acc5f8eb60

Corresponding issue on Unicopia's tracker: Sollace/Unicopia#523

@unilock
Copy link
Author

unilock commented Dec 16, 2024

I used a mixin to print a stacktrace when that info is logged:

java.lang.Throwable
	at TRANSFORMER/[email protected]/dev.emi.trinkets.compat.WrappedTrinketComponent.handler$dmp000$example$inject(WrappedTrinketComponent.java:519)
	at TRANSFORMER/[email protected]/dev.emi.trinkets.compat.WrappedTrinketComponent.lambda$getInventory$0(WrappedTrinketComponent.java)
	at TRANSFORMER/[email protected]/io.wispforest.tclayer.OuterGroupMap$InnerSlotMap.get(OuterGroupMap.java:169)
	at TRANSFORMER/[email protected]/io.wispforest.tclayer.OuterGroupMap$InnerSlotMap.get(OuterGroupMap.java:95)
	at java.base/java.util.Map.getOrDefault(Map.java:691)
	at TRANSFORMER/[email protected]/com.minelittlepony.unicopia.compat.trinkets.TrinketsDelegateImpl.lambda$getInventory$9(TrinketsDelegateImpl.java:120)
	at java.base/java.util.Optional.map(Optional.java:260)
	at TRANSFORMER/[email protected]/com.minelittlepony.unicopia.compat.trinkets.TrinketsDelegateImpl.getInventory(TrinketsDelegateImpl.java:118)
	at TRANSFORMER/[email protected]/com.minelittlepony.unicopia.compat.trinkets.TrinketsDelegateImpl.getEquipped(TrinketsDelegateImpl.java:93)
	at TRANSFORMER/[email protected]/com.minelittlepony.unicopia.item.FriendshipBraceletItem.getWornBangles(FriendshipBraceletItem.java:127)
	at TRANSFORMER/[email protected]/com.minelittlepony.unicopia.client.render.BraceletFeatureRenderer.renderArm(BraceletFeatureRenderer.java:84)
	at TRANSFORMER/[email protected]/com.minelittlepony.unicopia.client.render.AccessoryFeatureRenderer.lambda$renderArm$3(AccessoryFeatureRenderer.java:58)
	at java.base/java.lang.Iterable.forEach(Iterable.java:75)
	at TRANSFORMER/[email protected]/com.minelittlepony.unicopia.client.render.AccessoryFeatureRenderer.renderArm(AccessoryFeatureRenderer.java:58)
	at TRANSFORMER/[email protected]/net.minecraft.client.renderer.entity.player.PlayerRenderer.handler$gcl000$unicopia$onRenderArm(PlayerRenderer.java:4529)
	at TRANSFORMER/[email protected]/net.minecraft.client.renderer.entity.player.PlayerRenderer.renderHand(PlayerRenderer.java:215)
	at TRANSFORMER/[email protected]/net.minecraft.client.renderer.entity.player.PlayerRenderer.renderRightHand(PlayerRenderer.java:193)
	at TRANSFORMER/[email protected]/net.minecraft.client.renderer.ItemInHandRenderer.renderPlayerArm(ItemInHandRenderer.java:262)
	at TRANSFORMER/[email protected]/net.minecraft.client.renderer.ItemInHandRenderer.renderArmWithItem(ItemInHandRenderer.java:402)
	at TRANSFORMER/[email protected]/net.minecraft.client.renderer.ItemInHandRenderer.renderHandsWithItems(ItemInHandRenderer.java:338)
	at TRANSFORMER/[email protected]/net.minecraft.client.renderer.GameRenderer.renderItemInHand(GameRenderer.java:951)
	at TRANSFORMER/[email protected]/net.minecraft.client.renderer.GameRenderer.renderLevel(GameRenderer.java:1277)
	at TRANSFORMER/[email protected]/net.minecraft.client.renderer.GameRenderer.render(GameRenderer.java:1024)
	at TRANSFORMER/[email protected]/net.minecraft.client.Minecraft.runTick(Minecraft.java:1195)
	at TRANSFORMER/[email protected]/net.minecraft.client.Minecraft.run(Minecraft.java:807)
	at TRANSFORMER/[email protected]/net.minecraft.client.main.Main.main(Main.java:230)
	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
	at java.base/java.lang.reflect.Method.invoke(Method.java:580)
	at MC-BOOTSTRAP/[email protected]/net.neoforged.fml.loading.targets.CommonLaunchHandler.runTarget(CommonLaunchHandler.java:136)
	at MC-BOOTSTRAP/[email protected]/net.neoforged.fml.loading.targets.CommonLaunchHandler.clientService(CommonLaunchHandler.java:124)
	at MC-BOOTSTRAP/[email protected]/net.neoforged.fml.loading.targets.CommonClientLaunchHandler.runService(CommonClientLaunchHandler.java:32)
	at MC-BOOTSTRAP/[email protected]/net.neoforged.fml.loading.targets.CommonLaunchHandler.lambda$launchService$4(CommonLaunchHandler.java:118)
	at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30)
	at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53)
	at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71)
	at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.Launcher.run(Launcher.java:103)
	at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.Launcher.main(Launcher.java:74)
	at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26)
	at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23)
	at [email protected]/cpw.mods.bootstraplauncher.BootstrapLauncher.run(BootstrapLauncher.java:210)
	at [email protected]/cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:69)
	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
	at java.base/java.lang.reflect.Method.invoke(Method.java:580)
	at io.github.zekerzhayard.forgewrapper.installer.Main.main(Main.java:67)
	at org.prismlauncher.launcher.impl.StandardLauncher.launch(StandardLauncher.java:105)
	at org.prismlauncher.EntryPoint.listen(EntryPoint.java:129)
	at org.prismlauncher.EntryPoint.main(EntryPoint.java:70)

(on NeoForge via Sinytra Connector because I already had a development environment set up, but, close enough)

@Dragon-Seeker
Copy link
Member

Sorry for the lack of response on this as I have been dealing with porting and general health stuff but this seems like a odd issue. Something is unable to translate the slot id to the proper container which should be there within accessories so will need to investigate this when I have some time coming up

@Dragon-Seeker Dragon-Seeker self-assigned this Dec 16, 2024
@Dragon-Seeker Dragon-Seeker added bug Something isn't working Trinkets Compat Related to the trinkets compatibility layer labels Dec 16, 2024
@Dragon-Seeker
Copy link
Member

Ok so recent update has been pushed for the tclayer that seems to fix this issue. It was down to not translating the trinket key to accessories key before getting a container causing the error.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working Trinkets Compat Related to the trinkets compatibility layer
Projects
None yet
Development

No branches or pull requests

2 participants