jpenilla/TabTPS

Deployers from Create Mod cause a crash when TabTPS is installed

nevkontakte opened this issue · 1 comments

Describe the bug

In a world where Create Mod (fabric) and TabTPS are installed, placing a deployer causes the server to crash. This can be reproduced both locally and on a remote server.

To Reproduce

  1. Create a 1.18.2 game instance (I used MultiMC, but the launcher shouldn't matter).
  2. Install Fabric and the following mods: create-fabric-1.18.2-0.5.0e-733.jar, fabric-api-0.66.0+1.18.2.jar, tabtps-fabric-mc1.18.2-1.3.13.jar.
  3. Create a brand new world.
  4. Attempt to place a deployer block anywhere in the world.
  5. The game crashes. Restarting the world causes a crash as soon as the area with deployer is loaded.
  6. Removing TabTPS resolves the issue.
Crash report
[14:12:55] [Render thread/INFO]: [CHAT] Set own game mode to Creative Mode
[14:12:55] [Server thread/INFO]: [ForkOfChaos: Set own game mode to Creative Mode]
[14:13:12] [Render thread/INFO]: [CHAT] 
[14:13:12] [Render thread/INFO]: [CHAT] [TabTPS] Server Tick Information
[14:13:12] [Render thread/INFO]: [CHAT] TPS: 20.00 (5s), 20.33 (1m), 20.07 (5m), 20.02 (15m)
[14:13:12] [Render thread/INFO]: [CHAT] MSPT - Average, Minimum, Maximum
[14:13:12] [Render thread/INFO]: [CHAT]  ?? 5s - 6.69, 4.45, 14.84
[14:13:12] [Render thread/INFO]: [CHAT]  ?? 10s - 6.49, 4.45, 14.84
[14:13:12] [Render thread/INFO]: [CHAT]  ?? 60s - 13.62, 4.45, 208.54
[14:13:12] [Render thread/INFO]: [CHAT] CPU: 14.12%, 9.23% (sys., proc.)
[14:13:12] [Render thread/INFO]: [CHAT] RAM: 972M/2048M (max. 2048M)
[14:13:12] [Render thread/INFO]: [CHAT] [|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||]
[14:13:21] [Render thread/INFO]: Loaded 5 advancements
[14:13:25] [Server thread/WARN]: Configuration conflict: there is more than one oshi.architecture.properties file on the classpath
[14:13:25] [Server thread/ERROR]: Encountered an unexpected exception
net.minecraft.class_148: Ticking block entity
	at net.minecraft.server.MinecraftServer.method_3813(MinecraftServer.java:911) ~[client-intermediary.jar:?]
	at net.minecraft.server.MinecraftServer.method_3748(MinecraftServer.java:851) ~[client-intermediary.jar:?]
	at net.minecraft.class_1132.method_3748(class_1132.java:97) ~[client-intermediary.jar:?]
	at net.minecraft.server.MinecraftServer.method_29741(MinecraftServer.java:697) ~[client-intermediary.jar:?]
	at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer.java:273) ~[client-intermediary.jar:?]
	at java.lang.Thread.run(Thread.java:833) [?:?]
Caused by: java.lang.NullPointerException: Cannot invoke "io.netty.channel.Channel.attr(io.netty.util.AttributeKey)" because the return value of "net.kyori.adventure.platform.fabric.impl.accessor.ConnectionAccess.getChannel()" is null
	at net.minecraft.class_3244.handler$zhc000$adventure$initTracking(class_3244.java:2698) ~[client-intermediary.jar:?]
	at net.minecraft.class_3244.<init>(class_3244.java:203) ~[client-intermediary.jar:?]
	at dev.cafeteria.fakeplayerapi.server.FakeServerPlayNetworkHandler.<init>(FakeServerPlayNetworkHandler.java:20) ~[fake-player-api-0.3.0-5c3ee82ff0b564d3.jar:?]
	at dev.cafeteria.fakeplayerapi.server.FakeServerPlayer.<init>(FakeServerPlayer.java:18) ~[fake-player-api-0.3.0-5c3ee82ff0b564d3.jar:?]
	at com.simibubi.create.content.contraptions.components.deployer.DeployerFakePlayer.<init>(DeployerFakePlayer.java:58) ~[create-fabric-1.18.2-0.5.0e-733.jar:?]
	at com.simibubi.create.content.contraptions.components.deployer.DeployerTileEntity.initHandler(DeployerTileEntity.java:146) ~[create-fabric-1.18.2-0.5.0e-733.jar:?]
	at com.simibubi.create.content.contraptions.components.deployer.DeployerTileEntity.initialize(DeployerTileEntity.java:139) ~[create-fabric-1.18.2-0.5.0e-733.jar:?]
	at com.simibubi.create.foundation.tileEntity.SmartTileEntity.tick(SmartTileEntity.java:67) ~[create-fabric-1.18.2-0.5.0e-733.jar:?]
	at com.simibubi.create.content.contraptions.base.KineticTileEntity.tick(KineticTileEntity.java:94) ~[create-fabric-1.18.2-0.5.0e-733.jar:?]
	at com.simibubi.create.content.contraptions.components.deployer.DeployerTileEntity.tick(DeployerTileEntity.java:172) ~[create-fabric-1.18.2-0.5.0e-733.jar:?]
	at com.simibubi.create.foundation.tileEntity.SmartTileEntityTicker.tick(SmartTileEntityTicker.java:15) ~[create-fabric-1.18.2-0.5.0e-733.jar:?]
	at net.minecraft.class_2818$class_5563.method_31703(class_2818.java:659) ~[client-intermediary.jar:?]
	at net.minecraft.class_2818$class_5564.method_31703(class_2818.java:713) ~[client-intermediary.jar:?]
	at net.minecraft.class_1937.method_18471(class_1937.java:475) ~[client-intermediary.jar:?]
	at net.minecraft.class_3218.method_18765(class_3218.java:368) ~[client-intermediary.jar:?]
	at net.minecraft.server.MinecraftServer.method_3813(MinecraftServer.java:907) ~[client-intermediary.jar:?]
	... 5 more
[14:13:25] [Server thread/ERROR]: This crash report has been saved to: C:\Software\MultiMC\instances\1.18.21\.minecraft\crash-reports\crash-2022-11-19_14.13.25-server.txt
[14:13:25] [Server thread/INFO]: Stopping server
[14:13:25] [Server thread/INFO]: Saving players
[14:13:25] [Server thread/INFO]: ForkOfChaos lost connection: Disconnected
[14:13:25] [Server thread/INFO]: ForkOfChaos left the game
---- Minecraft Crash Report ----
// I let you down. Sorry :(

Time: 11/19/22, 2:13 PM
Description: Ticking block entity

java.lang.NullPointerException: Cannot invoke "io.netty.channel.Channel.attr(io.netty.util.AttributeKey)" because the return value of "net.kyori.adventure.platform.fabric.impl.accessor.ConnectionAccess.getChannel()" is null
	at net.minecraft.class_3244.handler$zhc000$adventure$initTracking(class_3244.java:2698)
	at net.minecraft.class_3244.<init>(class_3244.java:203)
	at dev.cafeteria.fakeplayerapi.server.FakeServerPlayNetworkHandler.<init>(FakeServerPlayNetworkHandler.java:20)
	at dev.cafeteria.fakeplayerapi.server.FakeServerPlayer.<init>(FakeServerPlayer.java:18)
	at com.simibubi.create.content.contraptions.components.deployer.DeployerFakePlayer.<init>(DeployerFakePlayer.java:58)
	at com.simibubi.create.content.contraptions.components.deployer.DeployerTileEntity.initHandler(DeployerTileEntity.java:146)
	at com.simibubi.create.content.contraptions.components.deployer.DeployerTileEntity.initialize(DeployerTileEntity.java:139)
	at com.simibubi.create.foundation.tileEntity.SmartTileEntity.tick(SmartTileEntity.java:67)
	at com.simibubi.create.content.contraptions.base.KineticTileEntity.tick(KineticTileEntity.java:94)
	at com.simibubi.create.content.contraptions.components.deployer.DeployerTileEntity.tick(DeployerTileEntity.java:172)
	at com.simibubi.create.foundation.tileEntity.SmartTileEntityTicker.tick(SmartTileEntityTicker.java:15)
	at net.minecraft.class_2818$class_5563.method_31703(class_2818.java:659)
	at net.minecraft.class_2818$class_5564.method_31703(class_2818.java:713)
	at net.minecraft.class_1937.method_18471(class_1937.java:475)
	at net.minecraft.class_3218.method_18765(class_3218.java:368)
	at net.minecraft.server.MinecraftServer.method_3813(MinecraftServer.java:907)
	at net.minecraft.server.MinecraftServer.method_3748(MinecraftServer.java:851)
	at net.minecraft.class_1132.method_3748(class_1132.java:97)
	at net.minecraft.server.MinecraftServer.method_29741(MinecraftServer.java:697)
	at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer.java:273)
	at java.base/java.lang.Thread.run(Thread.java:833)


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

-- Head --
Thread: Render thread
Stacktrace:
	at net.minecraft.class_3244.handler$zhc000$adventure$initTracking(class_3244.java:2698)
	at net.minecraft.class_3244.<init>(class_3244.java:203)
	at dev.cafeteria.fakeplayerapi.server.FakeServerPlayNetworkHandler.<init>(FakeServerPlayNetworkHandler.java:20)
	at dev.cafeteria.fakeplayerapi.server.FakeServerPlayer.<init>(FakeServerPlayer.java:18)
	at com.simibubi.create.content.contraptions.components.deployer.DeployerFakePlayer.<init>(DeployerFakePlayer.java:58)
	at com.simibubi.create.content.contraptions.components.deployer.DeployerTileEntity.initHandler(DeployerTileEntity.java:146)
	at com.simibubi.create.content.contraptions.components.deployer.DeployerTileEntity.initialize(DeployerTileEntity.java:139)
	at com.simibubi.create.foundation.tileEntity.SmartTileEntity.tick(SmartTileEntity.java:67)
	at com.simibubi.create.content.contraptions.base.KineticTileEntity.tick(KineticTileEntity.java:94)
	at com.simibubi.create.content.contraptions.components.deployer.DeployerTileEntity.tick(DeployerTileEntity.java:172)
	at com.simibubi.create.foundation.tileEntity.SmartTileEntityTicker.tick(SmartTileEntityTicker.java:15)
	at net.minecraft.class_2818$class_5563.method_31703(class_2818.java:659)
	at net.minecraft.class_2818$class_5564.method_31703(class_2818.java:713)
	at net.minecraft.class_1937.method_18471(class_1937.java:475)
	at net.minecraft.class_3218.method_18765(class_3218.java:368)

-- Block entity being ticked --
Details:
	Name: create:deployer // com.simibubi.create.content.contraptions.components.deployer.DeployerTileEntity
	Block: Block{create:deployer}[axis_along_first=false,facing=down]
	Block location: World: (4,72,13), Section: (at 4,8,13 in 0,4,0; chunk contains blocks 0,-64,0 to 15,319,15), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,-64,0 to 511,319,511)
	Block: Block{create:deployer}[axis_along_first=false,facing=down]
	Block location: World: (4,72,13), Section: (at 4,8,13 in 0,4,0; chunk contains blocks 0,-64,0 to 15,319,15), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,-64,0 to 511,319,511)
Stacktrace:
	at net.minecraft.class_2818$class_5563.method_31703(class_2818.java:659)
	at net.minecraft.class_2818$class_5564.method_31703(class_2818.java:713)
	at net.minecraft.class_1937.method_18471(class_1937.java:475)
	at net.minecraft.class_3218.method_18765(class_3218.java:368)
	at net.minecraft.server.MinecraftServer.method_3813(MinecraftServer.java:907)
	at net.minecraft.server.MinecraftServer.method_3748(MinecraftServer.java:851)
	at net.minecraft.class_1132.method_3748(class_1132.java:97)
	at net.minecraft.server.MinecraftServer.method_29741(MinecraftServer.java:697)
	at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer.java:273)
	at java.base/java.lang.Thread.run(Thread.java:833)

-- Affected level --
Details:
	All players: 1 total; [class_3222['ForkOfChaos'/127, l='ServerLevel[New World]', x=5.12, y=69.00, z=14.13]]
	Chunk stats: 2809
	Level dimension: minecraft:overworld
	Level spawn location: World: (0,72,0), Section: (at 0,8,0 in 0,4,0; chunk contains blocks 0,-64,0 to 15,319,15), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,-64,0 to 511,319,511)
	Level time: 756 game time, 756 day time
	Level name: New World
	Level game mode: Game mode: survival (ID 0). Hardcore: false. Cheats: true
	Level weather: Rain time: 83567 (now: false), thunder time: 98970 (now: false)
	Known server brands: fabric
	Level was modded: true
	Level storage version: 0x04ABD - Anvil
Stacktrace:
	at net.minecraft.server.MinecraftServer.method_3813(MinecraftServer.java:907)
	at net.minecraft.server.MinecraftServer.method_3748(MinecraftServer.java:851)
	at net.minecraft.class_1132.method_3748(class_1132.java:97)
	at net.minecraft.server.MinecraftServer.method_29741(MinecraftServer.java:697)
	at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer.java:273)
	at java.base/java.lang.Thread.run(Thread.java:833)

-- System Details --
Details:
	Minecraft Version: 1.18.2
	Minecraft Version ID: 1.18.2
	Operating System: Windows 10 (amd64) version 10.0
	Java Version: 17.0.3, Eclipse Adoptium
	Java VM Version: OpenJDK 64-Bit Server VM (mixed mode, sharing), Eclipse Adoptium
	Memory: 1156603152 bytes (1103 MiB) / 2147483648 bytes (2048 MiB) up to 2147483648 bytes (2048 MiB)
	CPUs: 12
	Processor Vendor: GenuineIntel
	Processor Name: Intel(R) Core(TM) i5-10600KF CPU @ 4.10GHz
	Identifier: Intel64 Family 6 Model 165 Stepping 5
	Microarchitecture: unknown
	Frequency (GHz): 4.10
	Number of physical packages: 1
	Number of physical CPUs: 6
	Number of logical CPUs: 12
	Graphics card #0 name: NVIDIA GeForce RTX 3070
	Graphics card #0 vendor: NVIDIA (0x10de)
	Graphics card #0 VRAM (MB): 4095.00
	Graphics card #0 deviceId: 0x2484
	Graphics card #0 versionInfo: DriverVersion=31.0.15.1694
	Memory slot #0 capacity (MB): 8192.00
	Memory slot #0 clockSpeed (GHz): 3.60
	Memory slot #0 type: DDR4
	Memory slot #1 capacity (MB): 8192.00
	Memory slot #1 clockSpeed (GHz): 3.60
	Memory slot #1 type: DDR4
	Virtual memory max (MB): 41906.01
	Virtual memory used (MB): 26015.60
	Swap memory total (MB): 25600.00
	Swap memory used (MB): 398.23
	JVM Flags: 3 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xms512m -Xmx2048m
	Fabric Mods: 
		create: Create 0.5.0e-733
			com_electronwill_night-config_core: core 3.6.3
			com_electronwill_night-config_toml: toml 3.6.3
			com_google_code_findbugs_jsr305: jsr305 3.0.2
			fake-player-api: Fake Player API 0.3.0
			flywheel: Flywheel 0.6.4-30
			forge_tags: Forge Tags 2.1
			forgeconfigapiport: Forge Config API Port 3.2.0
			milk: Milk Lib 0.3.2
				dripstone_fluid_lib: Dripstone Fluid Lib 1.2.0
			noindium: No Indium? 1.0.1+1.18.2
				omega-config: OmegaConfig 1.2.3-1.18.1
			porting_lib: Porting Lib 1.2.460-beta+1.18.2-dev.cca931b
				mm: Manningham Mills 2.3
				serialization_hooks: Serialization Hooks 0.3.23
			reach-entity-attributes: Reach Entity Attributes 2.1.1
			registrate-fabric: Registrate for Fabric MC1.18.2-1.1.4
				com_github_llamalad7_mixinextras: MixinExtras 0.0.11
		fabric-api: Fabric API 0.66.0+1.18.2
			fabric-api-base: Fabric API Base 0.4.4+d7c144a860
			fabric-api-lookup-api-v1: Fabric API Lookup API (v1) 1.6.2+2373a54560
			fabric-biome-api-v1: Fabric Biome API (v1) 8.0.6+651bcc5960
			fabric-block-api-v1: Fabric Block API (v1) 1.0.0+ee3621fc60
			fabric-blockrenderlayer-v1: Fabric BlockRenderLayer Registration (v1) 1.1.12+3ac43d9560
			fabric-command-api-v1: Fabric Command API (v1) 1.1.9+d7c144a860
			fabric-commands-v0: Fabric Commands (v0) 0.2.8+b4f4f6cd60
			fabric-containers-v0: Fabric Containers (v0) 0.1.23+d7c144a860
			fabric-content-registries-v0: Fabric Content Registries (v0) 3.1.1+c85f2e3860
			fabric-convention-tags-v1: Fabric Convention Tags 1.0.1+474e4f7960
			fabric-crash-report-info-v1: Fabric Crash Report Info (v1) 0.2.1+ee261a3e60
			fabric-data-generation-api-v1: Fabric Data Generation API (v1) 3.0.2+9fcb91d260
			fabric-dimensions-v1: Fabric Dimensions API (v1) 2.1.20+489d6f8260
			fabric-entity-events-v1: Fabric Entity Events (v1) 1.4.8+d7c144a860
			fabric-events-interaction-v0: Fabric Events Interaction (v0) 0.4.19+d7c144a860
			fabric-events-lifecycle-v0: Fabric Events Lifecycle (v0) 0.2.19+d7c144a860
			fabric-game-rule-api-v1: Fabric Game Rule API (v1) 1.0.13+d7c144a860
			fabric-item-api-v1: Fabric Item API (v1) 1.5.2+17cbbd4360
			fabric-item-groups-v0: Fabric Item Groups (v0) 0.3.14+91896a4960
			fabric-key-binding-api-v1: Fabric Key Binding API (v1) 1.0.12+54e5b2ec60
			fabric-keybindings-v0: Fabric Key Bindings (v0) 0.2.10+b4f4f6cd60
			fabric-lifecycle-events-v1: Fabric Lifecycle Events (v1) 2.1.0+cc71601c60
			fabric-loot-api-v2: Fabric Loot API (v2) 1.1.0+1997ad1260
			fabric-loot-tables-v1: Fabric Loot Tables (v1) 1.1.2+e747827960
			fabric-mining-level-api-v1: Fabric Mining Level API (v1) 2.1.4+cc71601c60
			fabric-models-v0: Fabric Models (v0) 0.3.6+d7c144a860
			fabric-networking-api-v1: Fabric Networking API (v1) 1.0.23+2d30af4b60
			fabric-networking-v0: Fabric Networking (v0) 0.3.10+b4f4f6cd60
			fabric-object-builder-api-v1: Fabric Object Builder API (v1) 2.1.3+032c981d60
			fabric-particles-v1: Fabric Particles (v1) 0.2.12+526dc1ac60
			fabric-registry-sync-v0: Fabric Registry Sync (v0) 0.9.11+bb2e047760
			fabric-renderer-api-v1: Fabric Renderer API (v1) 0.4.15+ee3621fc60
			fabric-renderer-indigo: Fabric Renderer - Indigo 0.5.5+41a02c8a60
			fabric-renderer-registries-v1: Fabric Renderer Registries (v1) 3.2.11+b4f4f6cd60
			fabric-rendering-data-attachment-v1: Fabric Rendering Data Attachment (v1) 0.3.8+ee3621fc60
			fabric-rendering-fluids-v1: Fabric Rendering Fluids (v1) 2.0.2+54e5b2ec60
			fabric-rendering-v0: Fabric Rendering (v0) 1.1.13+b4f4f6cd60
			fabric-rendering-v1: Fabric Rendering (v1) 1.10.7+54e5b2ec60
			fabric-resource-conditions-api-v1: Fabric Resource Conditions API (v1) 2.0.3+91b7aa6660
			fabric-resource-loader-v0: Fabric Resource Loader (v0) 0.5.2+446e059560
			fabric-screen-api-v1: Fabric Screen API (v1) 1.0.10+d882b91560
			fabric-screen-handler-api-v1: Fabric Screen Handler API (v1) 1.2.2+1f6558e860
			fabric-textures-v0: Fabric Textures (v0) 1.0.12+3ac43d9560
			fabric-transfer-api-v1: Fabric Transfer API (v1) 1.6.3+f4563ac860
			fabric-transitive-access-wideners-v1: Fabric Transitive Access Wideners (v1) 1.1.0+e747827960
		fabricloader: Fabric Loader 0.14.10
		java: OpenJDK 64-Bit Server VM 17
		minecraft: Minecraft 1.18.2
		tabtps-fabric: TabTPS 1.3.13
			adventure-platform-fabric: adventure-platform-fabric 5.2.1
				net_kyori_adventure-api: adventure-api 4.10.1
				net_kyori_adventure-key: adventure-key 4.10.1
				net_kyori_adventure-platform-api: adventure-platform-api 4.1.0
				net_kyori_adventure-text-minimessage: adventure-text-minimessage 4.10.1
				net_kyori_adventure-text-serializer-gson: adventure-text-serializer-gson 4.10.1
				net_kyori_adventure-text-serializer-plain: adventure-text-serializer-plain 4.10.1
				net_kyori_examination-api: examination-api 1.3.0
				net_kyori_examination-string: examination-string 1.3.0
			cloud: Cloud 1.7.0-SNAPSHOT
				cloud_commandframework_cloud-brigadier_: cloud-brigadier 1.7.0-SNAPSHOT
				cloud_commandframework_cloud-core_: cloud-core 1.7.0-SNAPSHOT
				cloud_commandframework_cloud-services_: cloud-services 1.7.0-SNAPSHOT
				fabric-permissions-api-v0: fabric-permissions-api 0.1-SNAPSHOT
				io_leangen_geantyref_geantyref: geantyref 1.3.13
			cloud_commandframework_cloud-minecraft-extras: cloud-minecraft-extras 1.7.0-SNAPSHOT
			com_typesafe_config: config 1.4.2
			net_kyori_adventure-serializer-configurate4: adventure-serializer-configurate4 4.10.1
			net_kyori_adventure-text-feature-pagination: adventure-text-feature-pagination 4.0.0-SNAPSHOT
			net_kyori_adventure-text-serializer-legacy: adventure-text-serializer-legacy 4.10.1
			org_spongepowered_configurate-core: configurate-core 4.1.2
			org_spongepowered_configurate-hocon: configurate-hocon 4.1.2
	Flywheel Backend: GL33 Instanced Arrays
	Server Running: true
	Player Count: 1 / 8; [class_3222['ForkOfChaos'/127, l='ServerLevel[New World]', x=5.12, y=69.00, z=14.13]]
	Data Packs: vanilla, Fabric Mods
	World Generation: Stable
	Type: Integrated Server (map_client.txt)
	Is Modded: Definitely; Client brand changed to 'fabric'; Server brand changed to 'fabric'
#@!@# Game crashed! Crash report saved to: #@!@# C:\Software\MultiMC\instances\1.18.21\.minecraft\crash-reports\crash-2022-11-19_14.13.25-server.txt
[14:13:25] [Server thread/INFO]: Stopping singleplayer server as player logged out
[14:13:25] [Server thread/INFO]: Saving worlds
AL lib: (EE) alc_cleanup: 1 device not closed
Process exited with code -1 (0xffffffffffffffff).
Please note that usually neither the exit code, nor its description are enough to diagnose issues!
Always upload the entire log and not just the exit code.
MultiMC: Log upload triggered at: 19 Nov 2022 14:14:00 +0000
MultiMC: Log uploaded to: https://paste.ee/p/kcTif

Complete log at https://paste.ee/p/kcTif

Expected behavior

The game continues to run.

Screenshots

N/A

Server Software and Version:

  • Vendor: Vanilla + Fabric
  • Minecraft Version: 1.18.2
  • Output of /version command: N/A

#39 duplicate, also only the latest TabTPS version is supported which for fabric currently is for 1.19.2