Quark Oddities

Quark Oddities

22M Downloads

Mod Conflict with Immersive Railroading (and another mod)

cam72cam opened this issue ยท 11 comments

commented

Hey Vaskii,

I'm the dev of IR and have had some crashes reported with large mod packs. I've traced it down to enable/disable quark in these large packs (with the latest 1.15.2 and 1.16.4). The really fun part is that IR + UMC + TrackAPI + Quark + AutoRegLib alone don't crash.

I'm going to keep bisecting what mods are enabled in these packs, but wanted to drop this here to see if you had any suspicions.

I suspect it's crashing in my hacked global TE: https://github.com/TeamOpenIndustry/UniversalModCore/blob/1.16.4-forge/src/main/java/cam72cam/mod/render/GlobalRender.java#L151

1.15.2 crash:

java.lang.NullPointerException: Unexpected error
	at net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher.func_228850_a_(TileEntityRendererDispatcher.java:82) ~[?:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A}
	at net.minecraft.client.renderer.WorldRenderer.func_228426_a_(WorldRenderer.java:992) ~[?:?] {re:classloading,pl:accesstransformer:B,xf:fml:immersiveengineering:IE render hook after tile rendering,xf:fml:journeymap:WorldRenderer.markForRerender,xf:fml:sereneseasons:temperature_transformer,pl:runtimedistcleaner:A}
	at net.minecraft.client.renderer.GameRenderer.func_228378_a_(GameRenderer.java:600) ~[?:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A}
	at net.minecraft.client.renderer.GameRenderer.func_195458_a(GameRenderer.java:422) ~[?:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A}
	at net.minecraft.client.Minecraft.func_195542_b(Minecraft.java:924) [?:?] {re:classloading,pl:accesstransformer:B,xf:fml:randompatches:RandomPatches Minecraft Transformer,pl:runtimedistcleaner:A}
	at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:553) [?:?] {re:classloading,pl:accesstransformer:B,xf:fml:randompatches:RandomPatches Minecraft Transformer,pl:runtimedistcleaner:A}
	at net.minecraft.client.main.Main.main(SourceFile:204) [?:?] {re:classloading}
	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.15.2-31.2.47.jar:31.2] {}
	at net.minecraftforge.fml.loading.FMLClientLaunchProvider$$Lambda$474/838187299.call(Unknown Source) [forge-1.15.2-31.2.47.jar:31.2] {}
	at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-5.1.2.jar:?] {}
	at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:54) [modlauncher-5.1.2.jar:?] {}
	at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:72) [modlauncher-5.1.2.jar:?] {}
	at cpw.mods.modlauncher.Launcher.run(Launcher.java:81) [modlauncher-5.1.2.jar:?] {re:classloading}
	at cpw.mods.modlauncher.Launcher.main(Launcher.java:65) [modlauncher-5.1.2.jar:?] {re:classloading}

1.16.4 crash

java.lang.NullPointerException: Unexpected error
	at net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher.func_228850_a_(TileEntityRendererDispatcher.java:83) ~[?:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A}
	at net.minecraft.client.renderer.WorldRenderer.func_228426_a_(WorldRenderer.java:1050) ~[?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,xf:fml:immersiveengineering:IE render hook after tile rendering,pl:mixin:APP:appliedenergistics2.mixins.json:spatial.SkyRenderMixin,pl:mixin:APP:assets/botania/botania.mixins.json:AccessorWorldRenderer,pl:mixin:APP:assets/botania/botania.mixins.json:MixinWorldRenderer,pl:mixin:A,pl:runtimedistcleaner:A}
	at net.minecraft.client.renderer.GameRenderer.func_228378_a_(GameRenderer.java:607) ~[?:?] {re:classloading,pl:accesstransformer:B,xf:fml:astralsorcery:reach_set_client_renderer,pl:runtimedistcleaner:A}
	at net.minecraft.client.renderer.GameRenderer.func_195458_a(GameRenderer.java:425) ~[?:?] {re:classloading,pl:accesstransformer:B,xf:fml:astralsorcery:reach_set_client_renderer,pl:runtimedistcleaner:A}
	at net.minecraft.client.Minecraft.func_195542_b(Minecraft.java:976) [?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,xf:fml:randompatches:RandomPatches Minecraft Transformer,pl:mixin:APP:shutupexperimentalsettings.mixins.json:client.MixinMinecraft,pl:mixin:APP:kubejs.mixins.json:MinecraftMixin,pl:mixin:APP:assets/botania/botania.mixins.json:AccessorMinecraft,pl:mixin:A,pl:runtimedistcleaner:A}
	at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:607) [?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,xf:fml:randompatches:RandomPatches Minecraft Transformer,pl:mixin:APP:shutupexperimentalsettings.mixins.json:client.MixinMinecraft,pl:mixin:APP:kubejs.mixins.json:MinecraftMixin,pl:mixin:APP:assets/botania/botania.mixins.json:AccessorMinecraft,pl:mixin:A,pl:runtimedistcleaner:A}
	at net.minecraft.client.main.Main.main(Main.java:184) [?:?] {re:classloading,pl:runtimedistcleaner:A}
	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.4-35.1.4.jar:35.1] {}
	at net.minecraftforge.fml.loading.FMLClientLaunchProvider$$Lambda$488/2050024203.call(Unknown Source) [forge-1.16.4-35.1.4.jar:35.1] {}
	at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-8.0.6.jar:?] {}
	at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:54) [modlauncher-8.0.6.jar:?] {}
	at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:72) [modlauncher-8.0.6.jar:?] {}
	at cpw.mods.modlauncher.Launcher.run(Launcher.java:82) [modlauncher-8.0.6.jar:?] {re:classloading}
	at cpw.mods.modlauncher.Launcher.main(Launcher.java:66) [modlauncher-8.0.6.jar:?] {re:classloading}

Packs: (Immersive Railroading / Universal Mod Core / TrackAPI added by hand)
https://www.curseforge.com/minecraft/modpacks/all-the-mods-6/files/3138633
https://www.curseforge.com/minecraft/modpacks/civilizationpack

commented

crash-2024-01-19_09.14.42-server.txt

There still seems to be a bug between immersiverailroading and the frames, I have uploaded the server side error log

commented

crash-2024-01-19_09.14.42-server.txt

There still seems to be a bug between immersiverailroading and the frames, I have uploaded the server side error log

Please dont necro 4 year old issues, next 1.12.2 isnt supported anymore iirc, also the issue is metatileentities not quark.

commented

I can confirm said crash. As soon as I add Quark, I get a crash with a stacktrace very similar to yours. Said crash happens when entering a single player world. I haven't tested a server setup yet.
I created a new world and upon loading into it, it crashes shortly after visualizing the first few elements of the world. Basically: Load world, see things for a second, crash.

Could this be related to any specific config part in the quark config?

Crash report: https://pastebin.com/c91h0Zmy
Latest.log: https://privatebin.net/?3d76acaf6c9a3a05#3R3VE9qwYrk9kUFqtmx4TcsFH1fHm8zAhFA94s5UZhPY (had to resort to privatebin as latest.log contained too much text for pastebin and hastebin. If there's anything wrong with privatebin, let me know.)

P.S.: Further testing seems to confirm that the culprit is Unviversal Mod Core. Disabling that one stopped the crashes when loading into a world. However, Immersive Railroading requires both the TrackAPI and Universal Mod Core.

EDIT: Was about to crosspost this to the Universal Mod Core repository, but then I saw who opened this issue. Heh.

commented

I was counting UMC as part of IR. I'm not sure what the other mod that triggers the crash is

commented

Does it still crash if you remove every quark feature? I wonder if there's any in particular that would be causing it.

commented

That's correct yeah.

commented

I assume when setting everything in [categories] to false, I do not neet to set the rest to false as well, right? :D
Config for the requested test:

 [general]
	"'q' Button on the Right" = false
	#Allowed values: (0,)
	"Piston Push Limit" = 12
	#Set to true to make the quark big worldgen features such as stone clusters or underground biomes generate as spheres rather than unique shapes. It's faster, but won't look as cool
	"Use Fast Worldgen" = true
	"Enable 'q' Button" = false
	#A list of screens that don't play well with quark's buttons. Use "Print Screen Classnames" to find the names of any others you'd want to add.
	"Ignored Screens" = ["com.tfar.craftingstation.client.CraftingStationScreen", "com.refinedmods.refinedstorage.screen.grid.GridScreen", "appeng.client.gui.implementations.CraftingTermScreen", "appeng.client.gui.implementations.PatternTermScreen"]
	"Use Anti Overlap" = false
	#Quark messes with the Stonecutter to allow any item that can be used in it to be shift clicked in. Set this to false to turn it off.
	"Hack Stonecutter Shift Click" = false
	#Enables quark network profiling features. Do not enable this unless requested to.
	"Enable Network Profiling" = false
	#Quark replaces the Piston logic to allow for its piston features to work. If you're having troubles, try turning this off.
	"Use Piston Logic Replacement" = false
	#Set to true if you need to find the class name for a screen that's causing problems
	"Print Screen Classnames" = false
	#Blocks that Quark should treat as Shulker Boxes.
	"Shulker Boxes" = ["minecraft:white_shulker_box", "minecraft:orange_shulker_box", "minecraft:magenta_shulker_box", "minecraft:light_blue_shulker_box", "minecraft:yellow_shulker_box", "minecraft:lime_shulker_box", "minecraft:pink_shulker_box", "minecraft:gray_shulker_box", "minecraft:light_gray_shulker_box", "minecraft:cyan_shulker_box", "minecraft:purple_shulker_box", "minecraft:blue_shulker_box", "minecraft:brown_shulker_box", "minecraft:green_shulker_box", "minecraft:red_shulker_box", "minecraft:black_shulker_box"]
	#Set to true to enable a system that debugs quark's worldgen features. This should ONLY be used if you're asked to by a dev.
	"Enable Worldgen Watchdog" = false
	#Should Quark treat anything with 'shulker_box' in its item identifier as a shulker box?
	"Interpret Shulker Box Like Blocks" = false

 [categories]
	Building = false
	Automation = false
	Oddities = false
	Tweaks = false
	Experimental = false
	Mobs = false
	Tools = false
	Management = false
	World = false
	Client = false

Crash-report: https://pastebin.com/tyCvkhAB

commented

I believe you've fixed the issue. As of Quark r2.4-280 I no longer crash with Immersive Engineering, TrackAPI and Universal Mod Core installed when entering a world.
I had to update Java, as I was running Java 8 Update 60 and had Java itself crash when opening the inventory, searching for @immersive in JEI and browsing to the Immersive Railroading items page.
Using Java 8 Update 271 I didn't get said crash.

@cam72cam Can you confirm that Quark and IR are now working together?

commented

I can confirm that this fixes the issue. I'm not sure you care about updating the 1.15.2 build. if not this issue can be closed.

commented

Personally I'd really appreciate a fix since my 1.15.2 mod pack is fugged and I spent like 2 weeks on it and this is the only issue...
@Vazkii

commented

@Axanthic Removing the pistons moving tile entities feature should fix this.