ServerCore

ServerCore

7M Downloads

Crash when loading into a world with Immersive Portals

KryptoSynth opened this issue ยท 1 comments

commented

Describe the bug
Game crashes when trying to load into a world if ServerCore and Immersive Portals are installed together. Happens with both Fabric and Quilt Loader.

Reproduce
Steps to reproduce the behavior:

  1. Install Quilt or Fabric and add their respective API (.jar file) into the mods folder.
  2. Add just the ServerCore and Immersive Portals (.jar files) into the mods folder.
  3. Run Minecraft and try to load into a world or create a new one.
  4. Crash.

Expected behavior
Load into a world successfully with these two mods installed.

Versions
ServerCore: 1.3.4
Immersive Portals: 2.5.1
Minecraft: 1.19.3

Mod incompatibilities
Immersive Portals and ServerCore.

---- Minecraft Crash Report ----
// Everything's going to plan. No, really, that was supposed to happen.

Time: 2023-03-12 19:31:52
Description: Exception in server tick loop

java.lang.RuntimeException: Mixin transformation of net.minecraft.class_3898 failed
	at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.getPostMixinClassByteArray(KnotClassDelegate.java:427)
	at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.tryLoadClass(KnotClassDelegate.java:323)
	at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.loadClass(KnotClassDelegate.java:218)
	at net.fabricmc.loader.impl.launch.knot.KnotClassLoader.loadClass(KnotClassLoader.java:112)
	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
	at net.minecraft.class_3215.<init>(class_3215.java:87)
	at net.minecraft.class_3218.<init>(class_3218.java:230)
	at net.minecraft.server.MinecraftServer.method_3786(MinecraftServer.java:358)
	at net.minecraft.server.MinecraftServer.method_3735(MinecraftServer.java:323)
	at net.minecraft.class_1132.method_3823(class_1132.java:69)
	at net.minecraft.server.MinecraftServer.method_29741(MinecraftServer.java:648)
	at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer.java:264)
	at java.base/java.lang.Thread.run(Thread.java:833)
Caused by: org.spongepowered.asm.mixin.transformer.throwables.MixinTransformerError: An unexpected critical error was encountered
	at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:392)
	at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClass(MixinTransformer.java:234)
	at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClassBytes(MixinTransformer.java:202)
	at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.getPostMixinClassByteArray(KnotClassDelegate.java:422)
	... 12 more
Caused by: org.spongepowered.asm.mixin.throwables.MixinApplyError: Mixin [servercore.mixins.json:features.misc.ChunkMapMixin from mod servercore] from phase [DEFAULT] in config [servercore.mixins.json] FAILED during APPLY
	at org.spongepowered.asm.mixin.transformer.MixinProcessor.handleMixinError(MixinProcessor.java:638)
	at org.spongepowered.asm.mixin.transformer.MixinProcessor.handleMixinApplyError(MixinProcessor.java:589)
	at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:379)
	... 15 more
Caused by: org.spongepowered.asm.mixin.injection.throwables.InvalidInjectionException: @At("INVOKE") on net/minecraft/class_3898::servercore$preventClientLag with priority 1000 cannot inject into net/minecraft/class_3898::method_18715(Lnet/minecraft/class_3222;Lorg/apache/commons/lang3/mutable/MutableObject;Lnet/minecraft/class_2818;)V merged by qouteall.imm_ptl.core.mixin.common.chunk_sync.MixinChunkMap_C with priority 1100 [PREINJECT Applicator Phase -> servercore.mixins.json:features.misc.ChunkMapMixin from mod servercore -> Prepare Injections ->  -> handler$bam000$servercore$preventClientLag(Lnet/minecraft/class_3222;Lorg/apache/commons/lang3/mutable/MutableObject;Lnet/minecraft/class_2818;Lorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;)V -> Prepare]
	at org.spongepowered.asm.mixin.injection.code.Injector.findTargetNodes(Injector.java:305)
	at org.spongepowered.asm.mixin.injection.code.Injector.find(Injector.java:240)
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.prepare(InjectionInfo.java:421)
	at org.spongepowered.asm.mixin.transformer.MixinTargetContext.prepareInjections(MixinTargetContext.java:1338)
	at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.prepareInjections(MixinApplicatorStandard.java:1053)
	at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.applyMixin(MixinApplicatorStandard.java:395)
	at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.apply(MixinApplicatorStandard.java:327)
	at org.spongepowered.asm.mixin.transformer.TargetClassContext.apply(TargetClassContext.java:421)
	at org.spongepowered.asm.mixin.transformer.TargetClassContext.applyMixins(TargetClassContext.java:403)
	at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:363)
	... 15 more


A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- System Details --
Details:
	Minecraft Version: 1.19.3
	Minecraft Version ID: 1.19.3
	Operating System: Linux (amd64) version 6.2.3-273-tkg-bmq
	Java Version: 17.0.6, N/A
	Java VM Version: OpenJDK 64-Bit Server VM (mixed mode), Oracle Corporation
	Memory: 1558807792 bytes (1486 MiB) / 3942645760 bytes (3760 MiB) up to 10737418240 bytes (10240 MiB)
	CPUs: 16
	Processor Vendor: AuthenticAMD
	Processor Name: AMD Ryzen 7 1700 Eight-Core Processor
	Identifier: AuthenticAMD Family 23 Model 1 Stepping 1
	Microarchitecture: Zen
	Frequency (GHz): -0.00
	Number of physical packages: 1
	Number of physical CPUs: 8
	Number of logical CPUs: 16
	Graphics card #0 name: Navi 21 [Radeon RX 6800/6800 XT / 6900 XT]
	Graphics card #0 vendor: Advanced Micro Devices, Inc. [AMD/ATI] (0x1002)
	Graphics card #0 VRAM (MB): 16640.00
	Graphics card #0 deviceId: 0x73bf
	Graphics card #0 versionInfo: unknown
	Virtual memory max (MB): 25469.92
	Virtual memory used (MB): 8846.78
	Swap memory total (MB): 17509.60
	Swap memory used (MB): 1006.75
	JVM Flags: 2 total; -Xms128m -Xmx10240m
	Fabric Mods: 
		fabric-api: Fabric API 0.75.1+1.19.3
			fabric-api-base: Fabric API Base 0.4.21+70be179c85
			fabric-api-lookup-api-v1: Fabric API Lookup API (v1) 1.6.20+49abcf7e85
			fabric-biome-api-v1: Fabric Biome API (v1) 12.1.1+b5d379b085
			fabric-block-api-v1: Fabric Block API (v1) 1.0.5+e022e5d185
			fabric-blockrenderlayer-v1: Fabric BlockRenderLayer Registration (v1) 1.1.31+928d44d585
			fabric-client-tags-api-v1: Fabric Client Tags 1.0.12+1134c5b885
			fabric-command-api-v1: Fabric Command API (v1) 1.2.22+f71b366f85
			fabric-command-api-v2: Fabric Command API (v2) 2.2.1+3fc4752e85
			fabric-commands-v0: Fabric Commands (v0) 0.2.39+df3654b385
			fabric-containers-v0: Fabric Containers (v0) 0.1.47+df3654b385
			fabric-content-registries-v0: Fabric Content Registries (v0) 3.5.1+1d37d50285
			fabric-convention-tags-v1: Fabric Convention Tags 1.2.2+8e4e694f85
			fabric-crash-report-info-v1: Fabric Crash Report Info (v1) 0.2.14+aeb40ebe85
			fabric-data-generation-api-v1: Fabric Data Generation API (v1) 11.3.1+40dc7a9485
			fabric-dimensions-v1: Fabric Dimensions API (v1) 2.1.42+00a2eb1085
			fabric-entity-events-v1: Fabric Entity Events (v1) 1.5.7+b83334a085
			fabric-events-interaction-v0: Fabric Events Interaction (v0) 0.4.40+3baeb27a85
			fabric-events-lifecycle-v0: Fabric Events Lifecycle (v0) 0.2.44+df3654b385
			fabric-game-rule-api-v1: Fabric Game Rule API (v1) 1.0.30+99f9db8085
			fabric-item-api-v1: Fabric Item API (v1) 2.1.10+312c329485
			fabric-item-group-api-v1: Fabric Item Group API (v1) 2.1.12+1134c5b885
			fabric-key-binding-api-v1: Fabric Key Binding API (v1) 1.0.31+bc01e09785
			fabric-keybindings-v0: Fabric Key Bindings (v0) 0.2.29+df3654b385
			fabric-lifecycle-events-v1: Fabric Lifecycle Events (v1) 2.2.10+23a79c8a85
			fabric-loot-api-v2: Fabric Loot API (v2) 1.1.20+75e9821185
			fabric-loot-tables-v1: Fabric Loot Tables (v1) 1.1.24+9e7660c685
			fabric-message-api-v1: Fabric Message API (v1) 5.1.0+c85585f885
			fabric-mining-level-api-v1: Fabric Mining Level API (v1) 2.1.31+49abcf7e85
			fabric-models-v0: Fabric Models (v0) 0.3.27+11ba9c3b85
			fabric-networking-api-v1: Fabric Networking API (v1) 1.2.17+4017a8cb85
			fabric-networking-v0: Fabric Networking (v0) 0.3.34+df3654b385
			fabric-object-builder-api-v1: Fabric Object Builder API (v1) 5.4.1+eb2a3ba985
			fabric-particles-v1: Fabric Particles (v1) 1.0.20+f1e4495b85
			fabric-recipe-api-v1: Fabric Recipe API (v1) 1.0.1+5176f73d85
			fabric-registry-sync-v0: Fabric Registry Sync (v0) 2.1.0+f7b4d36485
			fabric-renderer-api-v1: Fabric Renderer API (v1) 2.2.2+3a95925a85
			fabric-renderer-indigo: Fabric Renderer - Indigo 0.8.0+3a95925a85
			fabric-renderer-registries-v1: Fabric Renderer Registries (v1) 3.2.30+df3654b385
			fabric-rendering-data-attachment-v1: Fabric Rendering Data Attachment (v1) 0.3.25+afca2f3e85
			fabric-rendering-fluids-v1: Fabric Rendering Fluids (v1) 3.0.18+f1e4495b85
			fabric-rendering-v0: Fabric Rendering (v0) 1.1.33+df3654b385
			fabric-rendering-v1: Fabric Rendering (v1) 1.12.1+eb2a3ba985
			fabric-resource-conditions-api-v1: Fabric Resource Conditions API (v1) 2.3.0+e63306e085
			fabric-resource-loader-v0: Fabric Resource Loader (v0) 0.10.5+a91e48b785
			fabric-screen-api-v1: Fabric Screen API (v1) 1.0.41+f1e4495b85
			fabric-screen-handler-api-v1: Fabric Screen Handler API (v1) 1.3.13+99f9db8085
			fabric-sound-api-v1: Fabric Sound API (v1) 1.0.8+75e9821185
			fabric-transfer-api-v1: Fabric Transfer API (v1) 2.1.15+ccd377ba85
			fabric-transitive-access-wideners-v1: Fabric Transitive Access Wideners (v1) 2.3.1+40dc7a9485
		fabricloader: Fabric Loader 0.14.17
		immersive_portals: Immersive Portals 2.5.1
			cloth-config: Cloth Config v9 9.0.94
				cloth-basic-math: cloth-basic-math 0.6.1
			imm_ptl_core: Immersive Portals Core 2.5.1
			q_misc_util: QMiscUtil 2.5.1
		java: OpenJDK 64-Bit Server VM 17
		minecraft: Minecraft 1.19.3
		servercore: ServerCore 1.3.4-1.19.3
			com_electronwill_night-config_core: core 3.6.6
			com_electronwill_night-config_toml: toml 3.6.6
			com_github_llamalad7_mixinextras: MixinExtras 0.1.1
			fabric-permissions-api-v0: fabric-permissions-api 0.2-SNAPSHOT
			placeholder-api: Placeholder API 2.0.0-pre.2+1.19.3
	Server Running: true
	Player Count: 0 / 8; []
	Data Packs: vanilla, fabric
	Enabled Feature Flags: minecraft:vanilla
	World Generation: Stable
	Type: Integrated Server (map_client.txt)
	Is Modded: Definitely; Client brand changed to 'fabric'; Server brand changed to 'fabric'
	Launched Version: 1.19.3
commented

Looks like Immersive Portals is intentionally breaking any mods that hook into the method that sends chunks to the client.

In this case its breaking features.fix_client_lag_on_chunkborders, so I will just have to disable that when IP is installed.
Note: just disabling the setting in the config won't fix the crash.