[ETF] Entity Texture Features - [Fabric & Forge]

[ETF] Entity Texture Features - [Fabric & Forge]

40M Downloads

[BUG] Incompatible with "Skin Shuffle"

Closed this issue ยท 1 comments

commented
  • Minecraft version: 1.21
  • ModLoader: Fabric
  • ETF Version: 6.1.1
  • Does the issue persist with only ETF installed? No

SkinShuffle uses Dummy entities in order to show the player their skins within menus, it seems ETF crashes because these dummies lack the nessecary data for ETF to work:

(crash stacktrace for 1.21)

java.lang.NullPointerException: Cannot invoke "net.minecraft.class_2960.method_12836()" because "vanillaIdentifier" is null
	at traben.entity_texture_features.features.ETFManager.getETFTextureVariant(ETFManager.java:259)
	at traben.entity_texture_features.utils.ETFUtils2.getETFVariantNotNullForInjector(ETFUtils2.java:61)
	at net.minecraft.class_1921.localvar$zoi000$entity_texture_features$etf$mixinAllEntityLayers(class_1921.java:1524)
	at net.minecraft.class_1921.method_24294(class_1921.java)
	at net.minecraft.class_1921.method_23580(class_1921.java:260)
	at net.minecraft.class_3879.method_23500(class_3879.java:19)
	at net.minecraft.class_922.method_24302(class_922.java:165)
	at net.minecraft.class_922.method_4054(class_922.java:141)
	at net.minecraft.class_1007.method_4215(class_1007.java:68)
	at net.minecraft.class_1007.method_3936(class_1007.java:45)
	at net.minecraft.class_898.method_3954(class_898.java:148)
	at com.mineblock11.skinshuffle.client.gui.cursed.GuiEntityRenderer.drawEntity(GuiEntityRenderer.java:79)
	at com.mineblock11.skinshuffle.client.gui.widgets.preset.PresetWidget.renderWidget(PresetWidget.java:176)
	at dev.lambdaurora.spruceui.widget.AbstractSpruceWidget.method_25394(AbstractSpruceWidget.java:266)
	at com.mineblock11.skinshuffle.client.gui.widgets.preset.CompactPresetWidget.method_25394(CompactPresetWidget.java:86)
	at dev.lambdaurora.spruceui.screen.SpruceScreen.renderWidgets(SpruceScreen.java:127)
	at com.mineblock11.skinshuffle.client.gui.CarouselScreen.method_25394(CarouselScreen.java:264)
	at net.minecraft.class_437.method_47413(class_437.java:117)
	at net.minecraft.class_757.mixinextras$bridge$method_47413$252(class_757.java)
	at net.minecraft.class_757.wrapOperation$bme000$fabric-screen-api-v1$onRenderScreen(class_757.java:3086)
	at net.minecraft.class_757.mixinextras$bridge$wrapOperation$bme000$fabric-screen-api-v1$onRenderScreen$253(class_757.java)
	at net.minecraft.class_757.wrapOperation$ckp000$optigui$renderCurrentScreenWithTooltip(class_757.java:6108)
	at net.minecraft.class_757.method_3192(class_757.java:913)
	at net.minecraft.class_310.method_1523(class_310.java:1285)
	at net.minecraft.class_310.method_1514(class_310.java:882)
	at net.minecraft.client.main.Main.main(Main.java:256)
	at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:470)
	at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74)
	at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)

Please could you advise on how I can add compatability here? The dummy entity code can be found in Cicada, here: https://github.com/enjarai/cicada-lib/tree/master/src/main/java/nl/enjarai/cicada/api/cursed

Thanks ๐Ÿ‘

commented

Remapped stacktrace via linkie (yarn 1.21)

java.lang.NullPointerException: Cannot invoke "net.minecraft.client.render.VertexFormatElement0.getNamespace()" because "vanillaIdentifier" is null
	at traben.entity_texture_features.features.ETFManager.getETFTextureVariant(ETFManager.java:259)
	at traben.entity_texture_features.utils.ETFUtils2.getETFVariantNotNullForInjector(ETFUtils2.java:61)
	at net.minecraft.client.render.RenderLayer.localvar$zoi000$entity_texture_features$etf$mixinAllEntityLayers(RenderLayer.java:1524)
	at net.minecraft.client.render.RenderLayer.getEntityTranslucent(RenderLayer.java)
	at net.minecraft.client.render.RenderLayer.getEntityTranslucent(RenderLayer.java:260)
	at net.minecraft.client.model.Model.getLayer(Model.java:19)
	at net.minecraft.client.render.entity.LivingEntityRenderer.getRenderLayer(LivingEntityRenderer.java:165)
	at net.minecraft.client.render.entity.LivingEntityRenderer.render(LivingEntityRenderer.java:141)
	at net.minecraft.client.render.entity.PlayerEntityRenderer.render(PlayerEntityRenderer.java:68)
	at net.minecraft.client.render.entity.PlayerEntityRenderer.render(PlayerEntityRenderer.java:45)
	at net.minecraft.client.render.entity.EntityRenderDispatcher.render(EntityRenderDispatcher.java:148)
	at com.mineblock11.skinshuffle.client.gui.cursed.GuiEntityRenderer.drawEntity(GuiEntityRenderer.java:79)
	at com.mineblock11.skinshuffle.client.gui.widgets.preset.PresetWidget.renderWidget(PresetWidget.java:176)
	at dev.lambdaurora.spruceui.widget.AbstractSpruceWidget.render(AbstractSpruceWidget.java:266)
	at com.mineblock11.skinshuffle.client.gui.widgets.preset.CompactPresetWidget.render(CompactPresetWidget.java:86)
	at dev.lambdaurora.spruceui.screen.SpruceScreen.renderWidgets(SpruceScreen.java:127)
	at com.mineblock11.skinshuffle.client.gui.CarouselScreen.render(CarouselScreen.java:264)
	at net.minecraft.client.gui.screen.Screen.renderWithTooltip(Screen.java:117)
	at net.minecraft.client.render.GameRenderer.mixinextras$bridge$method_47413$252(GameRenderer.java)
	at net.minecraft.client.render.GameRenderer.wrapOperation$bme000$fabric-screen-api-v1$onRenderScreen(GameRenderer.java:3086)
	at net.minecraft.client.render.GameRenderer.mixinextras$bridge$wrapOperation$bme000$fabric-screen-api-v1$onRenderScreen$253(GameRenderer.java)
	at net.minecraft.client.render.GameRenderer.wrapOperation$ckp000$optigui$renderCurrentScreenWithTooltip(GameRenderer.java:6108)
	at net.minecraft.client.render.GameRenderer.render(GameRenderer.java:913)
	at net.minecraft.client.MinecraftClient.render(MinecraftClient.java:1285)
	at net.minecraft.client.MinecraftClient.run(MinecraftClient.java:882)
	at net.minecraft.client.main.Main.main(Main.java:256)
	at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:470)
	at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74)
	at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)