Jump to content

Recommended Posts

Posted (edited)

I'm porting some code (Create mod Shadow Steel tools, GitHub link below) from 1.14.4 to 1.16.5.

Link: https://github.com/Creators-of-Create/Create/tree/mc1.14/release/src/main/java/com/simibubi/create

And every time when I mine some blocks with the tools that toggle the event the game just crash.

Crash report:

Description: Ticking entity

java.lang.IllegalArgumentException: Invalid message com.jerrylu086.shadowsteeltools.items.utils.AbstractToolItem$HarvestPacket
	at net.minecraftforge.fml.network.simple.IndexedMessageCodec.build(IndexedMessageCodec.java:145) ~[?:?] {re:classloading}
	at net.minecraftforge.fml.network.simple.SimpleChannel.encodeMessage(SimpleChannel.java:85) ~[?:?] {re:classloading}
	at net.minecraftforge.fml.network.simple.SimpleChannel.toBuffer(SimpleChannel.java:98) ~[?:?] {re:classloading}
	at net.minecraftforge.fml.network.simple.SimpleChannel.toVanillaPacket(SimpleChannel.java:129) ~[?:?] {re:classloading}
	at net.minecraftforge.fml.network.simple.SimpleChannel.send(SimpleChannel.java:124) ~[?:?] {re:classloading}
	at com.jerrylu086.shadowsteeltools.items.ToolEvents.toolsCanModifyBlockDrops(ToolEvents.java:85) ~[?:mc1.16-b1.0.0] {re:classloading}
	at net.minecraftforge.eventbus.ASMEventHandler_31_ToolEvents_toolsCanModifyBlockDrops_BreakEvent.invoke(.dynamic) ~[?:?] {}
	at net.minecraftforge.eventbus.ASMEventHandler.invoke(ASMEventHandler.java:85) ~[eventbus-4.0.0.jar:?] {}
	at net.minecraftforge.eventbus.EventBus$$Lambda$2557/317960538.invoke(Unknown Source) ~[?:?] {}
	at net.minecraftforge.eventbus.EventBus.post(EventBus.java:302) ~[eventbus-4.0.0.jar:?] {}
	at net.minecraftforge.eventbus.EventBus.post(EventBus.java:283) ~[eventbus-4.0.0.jar:?] {}
	at net.minecraftforge.common.ForgeHooks.onBlockBreakEvent(ForgeHooks.java:601) ~[?:?] {re:classloading}
	at net.minecraft.server.management.PlayerInteractionManager.func_180237_b(PlayerInteractionManager.java:230) ~[?:?] {re:computing_frames,re:classloading}
	at net.minecraft.server.management.PlayerInteractionManager.func_73075_a(PlayerInteractionManager.java:96) ~[?:?] {re:computing_frames,re:classloading}
	at net.minecraft.entity.player.ServerPlayerEntity.func_70071_h_(ServerPlayerEntity.java:354) ~[?:?] {re:classloading,pl:accesstransformer:B}
	at net.minecraft.world.server.ServerWorld.func_217479_a(ServerWorld.java:611) ~[?:?] {re:classloading}
	at net.minecraft.world.server.ServerWorld$$Lambda$8066/167082997.accept(Unknown Source) ~[?:?] {}
	at net.minecraft.world.World.func_217390_a(World.java:554) ~[?:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:APP:create.mixins.json:TileWorldHookMixin,pl:mixin:A}
	at net.minecraft.world.server.ServerWorld.func_72835_b(ServerWorld.java:404) ~[?:?] {re:classloading}
	at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:851) ~[?:?] {re:classloading,pl:accesstransformer:B}
	at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:787) ~[?:?] {re:classloading,pl:accesstransformer:B}
	at net.minecraft.server.integrated.IntegratedServer.func_71217_p(IntegratedServer.java:118) ~[?:?] {re:classloading,xf:OptiFine:default}
	at net.minecraft.server.MinecraftServer.func_240802_v_(MinecraftServer.java:642) [?:?] {re:classloading,pl:accesstransformer:B}
	at net.minecraft.server.MinecraftServer.func_240783_a_(MinecraftServer.java:232) [?:?] {re:classloading,pl:accesstransformer:B}
	at net.minecraft.server.MinecraftServer$$Lambda$7541/1467198794.run(Unknown Source) [?:?] {}
	at java.lang.Thread.run(Thread.java:745) [?:1.8.0_51] {}


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

-- Head --
Thread: Server thread
Stacktrace:
	at net.minecraftforge.fml.network.simple.IndexedMessageCodec.build(IndexedMessageCodec.java:145) ~[?:?] {re:classloading}
	at net.minecraftforge.fml.network.simple.SimpleChannel.encodeMessage(SimpleChannel.java:85) ~[?:?] {re:classloading}
	at net.minecraftforge.fml.network.simple.SimpleChannel.toBuffer(SimpleChannel.java:98) ~[?:?] {re:classloading}
	at net.minecraftforge.fml.network.simple.SimpleChannel.toVanillaPacket(SimpleChannel.java:129) ~[?:?] {re:classloading}
	at net.minecraftforge.fml.network.simple.SimpleChannel.send(SimpleChannel.java:124) ~[?:?] {re:classloading}
	at com.jerrylu086.shadowsteeltools.items.ToolEvents.toolsCanModifyBlockDrops(ToolEvents.java:85) ~[?:mc1.16-b1.0.0] {re:classloading}
	at net.minecraftforge.eventbus.ASMEventHandler_31_ToolEvents_toolsCanModifyBlockDrops_BreakEvent.invoke(.dynamic) ~[?:?] {}
	at net.minecraftforge.eventbus.ASMEventHandler.invoke(ASMEventHandler.java:85) ~[eventbus-4.0.0.jar:?] {}
	at net.minecraftforge.eventbus.EventBus$$Lambda$2557/317960538.invoke(Unknown Source) ~[?:?] {}
	at net.minecraftforge.eventbus.EventBus.post(EventBus.java:302) ~[eventbus-4.0.0.jar:?] {}
	at net.minecraftforge.eventbus.EventBus.post(EventBus.java:283) ~[eventbus-4.0.0.jar:?] {}
	at net.minecraftforge.common.ForgeHooks.onBlockBreakEvent(ForgeHooks.java:601) ~[?:?] {re:classloading}
	at net.minecraft.server.management.PlayerInteractionManager.func_180237_b(PlayerInteractionManager.java:230) ~[?:?] {re:computing_frames,re:classloading}
	at net.minecraft.server.management.PlayerInteractionManager.func_73075_a(PlayerInteractionManager.java:96) ~[?:?] {re:computing_frames,re:classloading}
	at net.minecraft.entity.player.ServerPlayerEntity.func_70071_h_(ServerPlayerEntity.java:354) ~[?:?] {re:classloading,pl:accesstransformer:B}
	at net.minecraft.world.server.ServerWorld.func_217479_a(ServerWorld.java:611) ~[?:?] {re:classloading}
	at net.minecraft.world.server.ServerWorld$$Lambda$8066/167082997.accept(Unknown Source) ~[?:?] {}
-- Entity being ticked --
Details:
	Entity Type: minecraft:player (net.minecraft.entity.player.ServerPlayerEntity)
	Entity ID: 207
	Entity Name: JerryLu086
	Entity's Exact location: -36.60, 58.00, 112.67
	Entity's Block location: World: (-37,58,112), Chunk: (at 11,3,0 in -3,7; contains blocks -48,0,112 to -33,255,127), Region: (-1,0; contains chunks -32,0 to -1,31, blocks -512,0,0 to -1,255,511)
	Entity's Momentum: 0.00, -0.08, 0.00
	Entity's Passengers: []
	Entity's Vehicle: ~~ERROR~~ NullPointerException: null
Stacktrace:
	at net.minecraft.world.World.func_217390_a(World.java:554) ~[?:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:APP:create.mixins.json:TileWorldHookMixin,pl:mixin:A}
	at net.minecraft.world.server.ServerWorld.func_72835_b(ServerWorld.java:404) ~[?:?] {re:classloading}


-- Affected level --
Details:
	All players: 1 total; [ServerPlayerEntity['JerryLu086'/207, l='ServerLevel[Tests]', x=-36.60, y=58.00, z=112.67]]
	Chunk stats: ServerChunkCache: 2025
	Level dimension: minecraft:overworld
	Level spawn location: World: (-32,64,112), Chunk: (at 0,4,0 in -2,7; contains blocks -32,0,112 to -17,255,127), Region: (-1,0; contains chunks -32,0 to -1,31, blocks -512,0,0 to -1,255,511)
	Level time: 1077 game time, 1000 day time
	Level name: Tests
	Level game mode: Game mode: creative (ID 1). Hardcore: false. Cheats: true
	Level weather: Rain time: 0 (now: false), thunder time: 0 (now: false)
	Known server brands: forge
	Level was modded: true
	Level storage version: 0x04ABD - Anvil
Stacktrace:
	at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:851) ~[?:?] {re:classloading,pl:accesstransformer:B}
	at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:787) ~[?:?] {re:classloading,pl:accesstransformer:B}
	at net.minecraft.server.integrated.IntegratedServer.func_71217_p(IntegratedServer.java:118) ~[?:?] {re:classloading,xf:OptiFine:default}
	at net.minecraft.server.MinecraftServer.func_240802_v_(MinecraftServer.java:642) [?:?] {re:classloading,pl:accesstransformer:B}
	at net.minecraft.server.MinecraftServer.func_240783_a_(MinecraftServer.java:232) [?:?] {re:classloading,pl:accesstransformer:B}
	at net.minecraft.server.MinecraftServer$$Lambda$7541/1467198794.run(Unknown Source) [?:?] {}
	at java.lang.Thread.run(Thread.java:745) [?:1.8.0_51] {}


-- System Details --
Details:
	Minecraft Version: 1.16.5
	Minecraft Version ID: 1.16.5
	Operating System: Windows 10 (amd64) version 10.0
	Java Version: 1.8.0_51, Oracle Corporation
	Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
	Memory: 2233564128 bytes (2130 MB) / 3221225472 bytes (3072 MB) up to 3221225472 bytes (3072 MB)
	CPUs: 4
	JVM Flags: 9 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xss1M -Xmx3G -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:G1NewSizePercent=20 -XX:G1ReservePercent=20 -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=32M
	ModLauncher: 8.0.9+86+master.3cf110c
	ModLauncher launch target: fmlclient
	ModLauncher naming: srg
	ModLauncher services: 
		/mixin-0.8.2.jar mixin PLUGINSERVICE 
		/eventbus-4.0.0.jar eventbus PLUGINSERVICE 
		/forge-1.16.5-36.1.0.jar object_holder_definalize PLUGINSERVICE 
		/forge-1.16.5-36.1.0.jar runtime_enum_extender PLUGINSERVICE 
		/accesstransformers-3.0.1.jar accesstransformer PLUGINSERVICE 
		/forge-1.16.5-36.1.0.jar capability_inject_definalize PLUGINSERVICE 
		/forge-1.16.5-36.1.0.jar runtimedistcleaner PLUGINSERVICE 
		/mixin-0.8.2.jar mixin TRANSFORMATIONSERVICE 
		/OptiFine_1.16.5_HD_U_G7.jar OptiFine TRANSFORMATIONSERVICE 
		/forge-1.16.5-36.1.0.jar fml TRANSFORMATIONSERVICE 
	FML: 36.1
	Forge: net.minecraftforge:36.1.0
	FML Language Providers: 
		[email protected]
		minecraft@1
	Mod List: 
		forge-1.16.5-36.1.0-client.jar                    |Minecraft                     |minecraft                     |1.16.5              |DONE      |NOSIGNATURE
		tetra-1.16.5-3.8.0.jar                            |Tetra                         |tetra                         |3.8.0               |DONE      |NOSIGNATURE
		cleancut-mc1.16-2.2-forge.jar                     |Clean Cut                     |cleancut                      |2.2                 |DONE      |NOSIGNATURE
		MouseTweaks-2.13-mc1.16.2.jar                     |Mouse Tweaks                  |mousetweaks                   |2.13                |DONE      |NOSIGNATURE
		Jade-1.16.4-2.6.1.jar                             |Jade                          |jade                          |2.6.1               |DONE      |NOSIGNATURE
		EntityCulling-1.16.5-1.0.0.jar                    |Entity Culling                |entity_culling                |1.0.0               |DONE      |NOSIGNATURE
		morecreatestuffs-mc1.16-1.4.1.jar                 |More Create Stuffs            |morecreatestuffs              |mc1.16-1.4.1        |DONE      |NOSIGNATURE
		tetrapak-0.1.1.jar                                |Tetra Pak                     |tetrapak                      |0.1.1               |DONE      |NOSIGNATURE
		ferritecore-2.0.4-forge.jar                       |Ferrite Core                  |ferritecore                   |2.0.4               |DONE      |41:ce:50:66:d1:a0:05:ce:a1:0e:02:85:9b:46:64:e0:bf:2e:cf:60:30:9a:fe:0c:27:e0:63:66:9a:84:ce:8a
		jei-1.16.5-7.6.4.90.jar                           |Just Enough Items             |jei                           |7.6.4.90            |DONE      |NOSIGNATURE
		shadowsteeltools-mc1.16-b1.0.0.jar                |Shadow Steel Tools: Reborn    |shadowsteeltools              |mc1.16-1.4.1        |DONE      |NOSIGNATURE
		forge-1.16.5-36.1.0-universal.jar                 |Forge                         |forge                         |36.1.0              |DONE      |22:af:21:d8:19:82:7f:93:94:fe:2b:ac:b7:e4:41:57:68:39:87:b1:a7:5c:c6:44:f9:25:74:21:14:f5:0d:90
		Neat+1.7-27.jar                                   |Neat                          |neat                          |1.7-27              |DONE      |NOSIGNATURE
		create-mc1.16.5_v0.3.1b.jar                       |Create                        |create                        |mc1.16.5_v0.3.1b+143|DONE      |NOSIGNATURE
		Xaeros_Minimap_21.2.0.2_Forge_1.16.5.jar          |Xaero's Minimap               |xaerominimap                  |21.2.0              |DONE      |NOSIGNATURE
		XaerosWorldMap_1.11.11.2_Forge_1.16.5.jar         |Xaero's World Map             |xaeroworldmap                 |1.11.11             |DONE      |NOSIGNATURE
		mgui-1.16.4-3.1.3.jar                             |mgui                          |mgui                          |3.1.3               |DONE      |NOSIGNATURE
		Controlling-7.0.0.11.jar                          |Controlling                   |controlling                   |7.0.0.11            |DONE      |NOSIGNATURE
	Crash Report UUID: 02d0a64a-badc-49c7-abd6-6e902a157b84
	Player Count: 1 / 8; [ServerPlayerEntity['JerryLu086'/207, l='ServerLevel[Tests]', x=-36.60, y=58.00, z=112.67]]
	Data Packs: vanilla, mod:tetra, mod:cleancut (incompatible), mod:mousetweaks, mod:jade, mod:entity_culling, mod:morecreatestuffs, mod:tetrapak, mod:ferritecore (incompatible), mod:jei, mod:shadowsteeltools, mod:forge, mod:neat (incompatible), mod:create, mod:xaerominimap, mod:xaeroworldmap, mod:mgui (incompatible), mod:controlling
	Type: Integrated Server (map_client.txt)
	Is Modded: Definitely; Client brand changed to 'forge'
	OptiFine Version: OptiFine_1.16.5_HD_U_G7
	OptiFine Build: 20210305-003221
	Render Distance Chunks: 8
	Mipmaps: 4
	Anisotropic Filtering: 1
	Antialiasing: 0
	Multitexture: false
	Shaders: null
	OpenGlVersion: 4.5.0 - Build 23.20.16.4973
	OpenGlRenderer: Intel(R) HD Graphics 520
	OpenGlVendor: Intel
	CpuCount: 4	Description: Ticking entity
	java.lang.IllegalArgumentException: Invalid message com.jerrylu086.shadowsteeltools.items.utils.AbstractToolItem$HarvestPacket
    at net.minecraftforge.fml.network.simple.IndexedMessageCodec.build(IndexedMessageCodec.java:145) ~[?:?] {re:classloading}
    at net.minecraftforge.fml.network.simple.SimpleChannel.encodeMessage(SimpleChannel.java:85) ~[?:?] {re:classloading}
    at net.minecraftforge.fml.network.simple.SimpleChannel.toBuffer(SimpleChannel.java:98) ~[?:?] {re:classloading}
    at net.minecraftforge.fml.network.simple.SimpleChannel.toVanillaPacket(SimpleChannel.java:129) ~[?:?] {re:classloading}
    at net.minecraftforge.fml.network.simple.SimpleChannel.send(SimpleChannel.java:124) ~[?:?] {re:classloading}
    at com.jerrylu086.shadowsteeltools.items.ToolEvents.toolsCanModifyBlockDrops(ToolEvents.java:85) ~[?:mc1.16-b1.0.0] {re:classloading}
    at net.minecraftforge.eventbus.ASMEventHandler_31_ToolEvents_toolsCanModifyBlockDrops_BreakEvent.invoke(.dynamic) ~[?:?] {}
    at net.minecraftforge.eventbus.ASMEventHandler.invoke(ASMEventHandler.java:85) ~[eventbus-4.0.0.jar:?] {}
    at net.minecraftforge.eventbus.EventBus$$Lambda$2557/317960538.invoke(Unknown Source) ~[?:?] {}
    at net.minecraftforge.eventbus.EventBus.post(EventBus.java:302) ~[eventbus-4.0.0.jar:?] {}
    at net.minecraftforge.eventbus.EventBus.post(EventBus.java:283) ~[eventbus-4.0.0.jar:?] {}
    at net.minecraftforge.common.ForgeHooks.onBlockBreakEvent(ForgeHooks.java:601) ~[?:?] {re:classloading}
    at net.minecraft.server.management.PlayerInteractionManager.func_180237_b(PlayerInteractionManager.java:230) ~[?:?] {re:computing_frames,re:classloading}
    at net.minecraft.server.management.PlayerInteractionManager.func_73075_a(PlayerInteractionManager.java:96) ~[?:?] {re:computing_frames,re:classloading}
    at net.minecraft.entity.player.ServerPlayerEntity.func_70071_h_(ServerPlayerEntity.java:354) ~[?:?] {re:classloading,pl:accesstransformer:B}
    at net.minecraft.world.server.ServerWorld.func_217479_a(ServerWorld.java:611) ~[?:?] {re:classloading}
    at net.minecraft.world.server.ServerWorld$$Lambda$8066/167082997.accept(Unknown Source) ~[?:?] {}
    at net.minecraft.world.World.func_217390_a(World.java:554) ~[?:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:APP:create.mixins.json:TileWorldHookMixin,pl:mixin:A}
    at net.minecraft.world.server.ServerWorld.func_72835_b(ServerWorld.java:404) ~[?:?] {re:classloading}
    at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:851) ~[?:?] {re:classloading,pl:accesstransformer:B}
    at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:787) ~[?:?] {re:classloading,pl:accesstransformer:B}
    at net.minecraft.server.integrated.IntegratedServer.func_71217_p(IntegratedServer.java:118) ~[?:?] {re:classloading,xf:OptiFine:default}
    at net.minecraft.server.MinecraftServer.func_240802_v_(MinecraftServer.java:642) [?:?] {re:classloading,pl:accesstransformer:B}
    at net.minecraft.server.MinecraftServer.func_240783_a_(MinecraftServer.java:232) [?:?] {re:classloading,pl:accesstransformer:B}
    at net.minecraft.server.MinecraftServer$$Lambda$7541/1467198794.run(Unknown Source) [?:?] {}
    at java.lang.Thread.run(Thread.java:745) [?:1.8.0_51] {}
	
A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------
	-- Head --
Thread: Server thread
Stacktrace:
    at net.minecraftforge.fml.network.simple.IndexedMessageCodec.build(IndexedMessageCodec.java:145) ~[?:?] {re:classloading}
    at net.minecraftforge.fml.network.simple.SimpleChannel.encodeMessage(SimpleChannel.java:85) ~[?:?] {re:classloading}
    at net.minecraftforge.fml.network.simple.SimpleChannel.toBuffer(SimpleChannel.java:98) ~[?:?] {re:classloading}
    at net.minecraftforge.fml.network.simple.SimpleChannel.toVanillaPacket(SimpleChannel.java:129) ~[?:?] {re:classloading}
    at net.minecraftforge.fml.network.simple.SimpleChannel.send(SimpleChannel.java:124) ~[?:?] {re:classloading}
    at com.jerrylu086.shadowsteeltools.items.ToolEvents.toolsCanModifyBlockDrops(ToolEvents.java:85) ~[?:mc1.16-b1.0.0] {re:classloading}
    at net.minecraftforge.eventbus.ASMEventHandler_31_ToolEvents_toolsCanModifyBlockDrops_BreakEvent.invoke(.dynamic) ~[?:?] {}
    at net.minecraftforge.eventbus.ASMEventHandler.invoke(ASMEventHandler.java:85) ~[eventbus-4.0.0.jar:?] {}
    at net.minecraftforge.eventbus.EventBus$$Lambda$2557/317960538.invoke(Unknown Source) ~[?:?] {}
    at net.minecraftforge.eventbus.EventBus.post(EventBus.java:302) ~[eventbus-4.0.0.jar:?] {}
    at net.minecraftforge.eventbus.EventBus.post(EventBus.java:283) ~[eventbus-4.0.0.jar:?] {}
    at net.minecraftforge.common.ForgeHooks.onBlockBreakEvent(ForgeHooks.java:601) ~[?:?] {re:classloading}
    at net.minecraft.server.management.PlayerInteractionManager.func_180237_b(PlayerInteractionManager.java:230) ~[?:?] {re:computing_frames,re:classloading}
    at net.minecraft.server.management.PlayerInteractionManager.func_73075_a(PlayerInteractionManager.java:96) ~[?:?] {re:computing_frames,re:classloading}
    at net.minecraft.entity.player.ServerPlayerEntity.func_70071_h_(ServerPlayerEntity.java:354) ~[?:?] {re:classloading,pl:accesstransformer:B}
    at net.minecraft.world.server.ServerWorld.func_217479_a(ServerWorld.java:611) ~[?:?] {re:classloading}
    at net.minecraft.world.server.ServerWorld$$Lambda$8066/167082997.accept(Unknown Source) ~[?:?] {}
-- Entity being ticked --
Details:
    Entity Type: minecraft:player (net.minecraft.entity.player.ServerPlayerEntity)
    Entity ID: 207
    Entity Name: JerryLu086
    Entity's Exact location: -36.60, 58.00, 112.67
    Entity's Block location: World: (-37,58,112), Chunk: (at 11,3,0 in -3,7; contains blocks -48,0,112 to -33,255,127), Region: (-1,0; contains chunks -32,0 to -1,31, blocks -512,0,0 to -1,255,511)
    Entity's Momentum: 0.00, -0.08, 0.00
    Entity's Passengers: []
    Entity's Vehicle: ~~ERROR~~ NullPointerException: null
Stacktrace:
    at net.minecraft.world.World.func_217390_a(World.java:554) ~[?:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:APP:create.mixins.json:TileWorldHookMixin,pl:mixin:A}
    at net.minecraft.world.server.ServerWorld.func_72835_b(ServerWorld.java:404) ~[?:?] {re:classloading}
	
-- Affected level --
Details:
    All players: 1 total; [ServerPlayerEntity['JerryLu086'/207, l='ServerLevel[Tests]', x=-36.60, y=58.00, z=112.67]]
    Chunk stats: ServerChunkCache: 2025
    Level dimension: minecraft:overworld
    Level spawn location: World: (-32,64,112), Chunk: (at 0,4,0 in -2,7; contains blocks -32,0,112 to -17,255,127), Region: (-1,0; contains chunks -32,0 to -1,31, blocks -512,0,0 to -1,255,511)
    Level time: 1077 game time, 1000 day time
    Level name: Tests
    Level game mode: Game mode: creative (ID 1). Hardcore: false. Cheats: true
    Level weather: Rain time: 0 (now: false), thunder time: 0 (now: false)
    Known server brands: forge
    Level was modded: true
    Level storage version: 0x04ABD - Anvil
Stacktrace:
    at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:851) ~[?:?] {re:classloading,pl:accesstransformer:B}
    at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:787) ~[?:?] {re:classloading,pl:accesstransformer:B}
    at net.minecraft.server.integrated.IntegratedServer.func_71217_p(IntegratedServer.java:118) ~[?:?] {re:classloading,xf:OptiFine:default}
    at net.minecraft.server.MinecraftServer.func_240802_v_(MinecraftServer.java:642) [?:?] {re:classloading,pl:accesstransformer:B}
    at net.minecraft.server.MinecraftServer.func_240783_a_(MinecraftServer.java:232) [?:?] {re:classloading,pl:accesstransformer:B}
    at net.minecraft.server.MinecraftServer$$Lambda$7541/1467198794.run(Unknown Source) [?:?] {}
    at java.lang.Thread.run(Thread.java:745) [?:1.8.0_51] {}
	
-- System Details --
Details:
    Minecraft Version: 1.16.5
    Minecraft Version ID: 1.16.5
    Operating System: Windows 10 (amd64) version 10.0
    Java Version: 1.8.0_51, Oracle Corporation
    Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
    Memory: 2233564128 bytes (2130 MB) / 3221225472 bytes (3072 MB) up to 3221225472 bytes (3072 MB)
    CPUs: 4
    JVM Flags: 9 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xss1M -Xmx3G -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:G1NewSizePercent=20 -XX:G1ReservePercent=20 -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=32M
    ModLauncher: 8.0.9+86+master.3cf110c
    ModLauncher launch target: fmlclient
    ModLauncher naming: srg
    ModLauncher services: 
        /mixin-0.8.2.jar mixin PLUGINSERVICE 
        /eventbus-4.0.0.jar eventbus PLUGINSERVICE 
        /forge-1.16.5-36.1.0.jar object_holder_definalize PLUGINSERVICE 
        /forge-1.16.5-36.1.0.jar runtime_enum_extender PLUGINSERVICE 
        /accesstransformers-3.0.1.jar accesstransformer PLUGINSERVICE 
        /forge-1.16.5-36.1.0.jar capability_inject_definalize PLUGINSERVICE 
        /forge-1.16.5-36.1.0.jar runtimedistcleaner PLUGINSERVICE 
        /mixin-0.8.2.jar mixin TRANSFORMATIONSERVICE 
        /OptiFine_1.16.5_HD_U_G7.jar OptiFine TRANSFORMATIONSERVICE 
        /forge-1.16.5-36.1.0.jar fml TRANSFORMATIONSERVICE 
    FML: 36.1
    Forge: net.minecraftforge:36.1.0
    FML Language Providers: 
        [email protected]
        minecraft@1
    Mod List: 
        forge-1.16.5-36.1.0-client.jar                    |Minecraft                     |minecraft                     |1.16.5              |DONE      |NOSIGNATURE
        tetra-1.16.5-3.8.0.jar                            |Tetra                         |tetra                         |3.8.0               |DONE      |NOSIGNATURE
        cleancut-mc1.16-2.2-forge.jar                     |Clean Cut                     |cleancut                      |2.2                 |DONE      |NOSIGNATURE
        MouseTweaks-2.13-mc1.16.2.jar                     |Mouse Tweaks                  |mousetweaks                   |2.13                |DONE      |NOSIGNATURE
        Jade-1.16.4-2.6.1.jar                             |Jade                          |jade                          |2.6.1               |DONE      |NOSIGNATURE
        EntityCulling-1.16.5-1.0.0.jar                    |Entity Culling                |entity_culling                |1.0.0               |DONE      |NOSIGNATURE
        morecreatestuffs-mc1.16-1.4.1.jar                 |More Create Stuffs            |morecreatestuffs              |mc1.16-1.4.1        |DONE      |NOSIGNATURE
        tetrapak-0.1.1.jar                                |Tetra Pak                     |tetrapak                      |0.1.1               |DONE      |NOSIGNATURE
        ferritecore-2.0.4-forge.jar                       |Ferrite Core                  |ferritecore                   |2.0.4               |DONE      |41:ce:50:66:d1:a0:05:ce:a1:0e:02:85:9b:46:64:e0:bf:2e:cf:60:30:9a:fe:0c:27:e0:63:66:9a:84:ce:8a
        jei-1.16.5-7.6.4.90.jar                           |Just Enough Items             |jei                           |7.6.4.90            |DONE      |NOSIGNATURE
        shadowsteeltools-mc1.16-b1.0.0.jar                |Shadow Steel Tools: Reborn    |shadowsteeltools              |mc1.16-1.4.1        |DONE      |NOSIGNATURE
        forge-1.16.5-36.1.0-universal.jar                 |Forge                         |forge                         |36.1.0              |DONE      |22:af:21:d8:19:82:7f:93:94:fe:2b:ac:b7:e4:41:57:68:39:87:b1:a7:5c:c6:44:f9:25:74:21:14:f5:0d:90
        Neat+1.7-27.jar                                   |Neat                          |neat                          |1.7-27              |DONE      |NOSIGNATURE
        create-mc1.16.5_v0.3.1b.jar                       |Create                        |create                        |mc1.16.5_v0.3.1b+143|DONE      |NOSIGNATURE
        Xaeros_Minimap_21.2.0.2_Forge_1.16.5.jar          |Xaero's Minimap               |xaerominimap                  |21.2.0              |DONE      |NOSIGNATURE
        XaerosWorldMap_1.11.11.2_Forge_1.16.5.jar         |Xaero's World Map             |xaeroworldmap                 |1.11.11             |DONE      |NOSIGNATURE
        mgui-1.16.4-3.1.3.jar                             |mgui                          |mgui                          |3.1.3               |DONE      |NOSIGNATURE
        Controlling-7.0.0.11.jar                          |Controlling                   |controlling                   |7.0.0.11            |DONE      |NOSIGNATURE
    Crash Report UUID: 02d0a64a-badc-49c7-abd6-6e902a157b84
    Player Count: 1 / 8; [ServerPlayerEntity['JerryLu086'/207, l='ServerLevel[Tests]', x=-36.60, y=58.00, z=112.67]]
    Data Packs: vanilla, mod:tetra, mod:cleancut (incompatible), mod:mousetweaks, mod:jade, mod:entity_culling, mod:morecreatestuffs, mod:tetrapak, mod:ferritecore (incompatible), mod:jei, mod:shadowsteeltools, mod:forge, mod:neat (incompatible), mod:create, mod:xaerominimap, mod:xaeroworldmap, mod:mgui (incompatible), mod:controlling
    Type: Integrated Server (map_client.txt)
    Is Modded: Definitely; Client brand changed to 'forge'
    OptiFine Version: OptiFine_1.16.5_HD_U_G7
    OptiFine Build: 20210305-003221
    Render Distance Chunks: 8
    Mipmaps: 4
    Anisotropic Filtering: 1
    Antialiasing: 0
    Multitexture: false
    Shaders: null
    OpenGlVersion: 4.5.0 - Build 23.20.16.4973
    OpenGlRenderer: Intel(R) HD Graphics 520
    OpenGlVendor: Intel
    CpuCount: 4
	

The code in ToolEvents:

package com.jerrylu086.shadowsteeltools.items;

import java.util.List;

import com.jerrylu086.shadowsteeltools.items.material.ToolTiers;
import com.jerrylu086.shadowsteeltools.items.utils.AbstractToolItem;
import com.jerrylu086.shadowsteeltools.items.utils.AbstractToolItem.HarvestPacket;
import com.simibubi.create.foundation.networking.AllPackets;

import net.minecraft.block.Block;
import net.minecraft.block.BlockState;
import net.minecraft.block.Blocks;
import net.minecraft.enchantment.EnchantmentHelper;
import net.minecraft.enchantment.Enchantments;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.entity.player.ServerPlayerEntity;
import net.minecraft.item.IItemTier;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.item.TieredItem;
import net.minecraft.util.EntityDamageSource;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.vector.Vector3d;
import net.minecraft.world.IWorld;
import net.minecraft.world.World;
import net.minecraft.world.server.ServerWorld;
import net.minecraft.loot.LootContext.Builder;
import net.minecraft.loot.LootParameters;
import net.minecraftforge.event.entity.living.LivingDropsEvent;
import net.minecraftforge.event.entity.living.LivingExperienceDropEvent;
import net.minecraftforge.event.world.BlockEvent;
import net.minecraftforge.eventbus.api.Event.Result;
import net.minecraftforge.eventbus.api.EventPriority;
import net.minecraftforge.eventbus.api.SubscribeEvent;
import net.minecraftforge.fml.common.Mod.EventBusSubscriber;
import net.minecraftforge.fml.network.PacketDistributor;

@EventBusSubscriber
public class ToolEvents {

	@SubscribeEvent(priority = EventPriority.LOWEST)
	public static void toolsCanModifyBlockDrops(BlockEvent.BreakEvent event) {
		if (event.isCanceled())
			return;
		PlayerEntity player = event.getPlayer();
		ItemStack held = player.getHeldItemMainhand();
		if (player.isCreative())
			return;
		if (!(held.getItem() instanceof AbstractToolItem))
			return;
		AbstractToolItem tool = (AbstractToolItem) held.getItem();
		if (!tool.modifiesDrops())
			return;
		BlockState state = event.getState();
		if (!tool.canHarvestBlock(held, state) && state.getRequiresTool())
			return;

		IWorld world = event.getWorld();
		BlockPos pos = event.getPos();
		boolean onServer = !world.isRemote();

		if (!onServer) {
			tool.spawnParticles(world, pos, held, state);
			return;
		}

		World actualWorld = event.getPlayer().world;
		if (!(actualWorld instanceof ServerWorld))
			return;

		List<ItemStack> drops = state.getDrops(new Builder((ServerWorld) actualWorld)
				.withRandom(actualWorld.getRandom()).withParameter(LootParameters.field_237457_g_, Vector3d.copy(pos))
				.withParameter(LootParameters.TOOL, held).withParameter(LootParameters.THIS_ENTITY, player)
				.withNullableParameter(LootParameters.BLOCK_ENTITY, world.getTileEntity(pos)));

		tool.modifyDrops(drops, world, pos, held, state);
		tool.onBlockDestroyed(held, actualWorld, state, pos, player);
		world.setBlockState(pos, Blocks.AIR.getDefaultState(), 3);
		for (ItemStack dropped : drops)
			Block.spawnAsEntity(actualWorld, pos, dropped);

		AllPackets.channel.send(PacketDistributor.TRACKING_ENTITY.with(() -> player),
				new HarvestPacket(state, held, pos, false));
		AllPackets.channel.send(PacketDistributor.PLAYER.with(() -> (ServerPlayerEntity) player),
				new HarvestPacket(state, held, pos, true));
		event.setResult(Result.DENY);
	}

	@SubscribeEvent
	public static void toolsMayModifyEntityLoot(LivingDropsEvent event) {
		if (!(event.getSource() instanceof EntityDamageSource))
			return;

		EntityDamageSource source = (EntityDamageSource) event.getSource();
		Entity target = event.getEntity();
		Entity trueSource = source.getTrueSource();
		World world = target.getEntityWorld();

		if (trueSource != null && trueSource instanceof PlayerEntity) {
			PlayerEntity player = (PlayerEntity) trueSource;
			ItemStack heldItemMainhand = player.getHeldItemMainhand();
			Item item = heldItemMainhand.getItem();
			IItemTier tier = item instanceof TieredItem ? ((TieredItem) item).getTier() : null;

			if (tier == ToolTiers.SHADOW_STEEL)
				event.setCanceled(true);

		}
	}

	@SubscribeEvent
	public static void shadowSteelToolsDropMoreXPonKill(LivingExperienceDropEvent event) {
		PlayerEntity attackingPlayer = event.getAttackingPlayer();
		if (attackingPlayer == null)
			return;
		ItemStack heldItemMainhand = attackingPlayer.getHeldItemMainhand();
		Item item = heldItemMainhand.getItem();
		IItemTier tier = item instanceof TieredItem ? ((TieredItem) item).getTier() : null;
		
		if (tier == ToolTiers.SHADOW_STEEL) {
			int level = EnchantmentHelper.getEnchantmentLevel(Enchantments.LOOTING, heldItemMainhand);
			float modifier = 1 + event.getEntity().world.getRandom().nextFloat() * level;
			event.setDroppedExperience((int) (event.getDroppedExperience() * modifier + 0.4f));
		}
	}

}

AbstractToolItem:

package com.jerrylu086.shadowsteeltools.items.utils;

import static com.jerrylu086.shadowsteeltools.items.utils.ToolTypes.AXE;
import static com.jerrylu086.shadowsteeltools.items.utils.ToolTypes.HOE;
import static com.jerrylu086.shadowsteeltools.items.utils.ToolTypes.PICKAXE;
import static com.jerrylu086.shadowsteeltools.items.utils.ToolTypes.SHOVEL;
import static com.jerrylu086.shadowsteeltools.items.utils.ToolTypes.SWORD;

import java.util.Collection;
import java.util.HashSet;
import java.util.Set;
import java.util.function.Supplier;

import net.minecraft.block.Block;
import net.minecraft.block.BlockState;
import net.minecraft.block.Blocks;
import net.minecraft.block.material.Material;
import net.minecraft.client.Minecraft;
import net.minecraft.client.world.ClientWorld;
import net.minecraft.enchantment.Enchantment;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.item.IItemTier;
import net.minecraft.item.ItemStack;
import net.minecraft.item.ItemUseContext;
import net.minecraft.item.Items;
import net.minecraft.item.ToolItem;
import net.minecraft.nbt.NBTUtil;
import net.minecraft.network.PacketBuffer;
import net.minecraft.tags.BlockTags;
import net.minecraft.util.ActionResultType;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.IWorld;
import net.minecraft.world.World;
import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.api.distmarker.OnlyIn;
import net.minecraftforge.common.ToolType;
import net.minecraftforge.fml.DistExecutor;
import net.minecraftforge.fml.network.NetworkEvent.Context;

public abstract class AbstractToolItem extends ToolItem {

	protected ToolTypes[] toolTypes;

	public AbstractToolItem(float attackDamageIn, float attackSpeedIn, IItemTier tier, Properties builder,
			ToolTypes... types) {
		super(attackDamageIn, attackSpeedIn, tier, getEffectiveBlocks(types), setToolTypes(builder, tier, types));
		toolTypes = types;
	}

	@Override
	public boolean canApplyAtEnchantingTable(ItemStack stack, Enchantment enchantment) {
		boolean canEnchant = super.canApplyAtEnchantingTable(stack, enchantment);
		for (ToolTypes type : toolTypes) {
			switch (type) {
			case AXE:
				canEnchant |= enchantment.canApply(new ItemStack(Items.DIAMOND_AXE));
				break;
			case HOE:
				canEnchant |= enchantment.canApply(new ItemStack(Items.DIAMOND_HOE));
				break;
			case PICKAXE:
				canEnchant |= enchantment.canApply(new ItemStack(Items.DIAMOND_PICKAXE));
				break;
			case SHEARS:
				canEnchant |= enchantment.canApply(new ItemStack(Items.SHEARS));
				break;
			case SHOVEL:
				canEnchant |= enchantment.canApply(new ItemStack(Items.DIAMOND_SHOVEL));
				break;
			case SWORD:
				canEnchant |= enchantment.canApply(new ItemStack(Items.DIAMOND_SWORD));
				break;
			default:
				break;
			}
		}

		return canEnchant;
	}

	private static Set<Block> getEffectiveBlocks(ToolTypes... types) {
		Set<Block> blocks = new HashSet<>();
		for (ToolTypes type : types) {
			switch (type) {
			case AXE:
				blocks.addAll(EffectiveBlocks.AXE);
				break;
			case HOE:
				break;
			case PICKAXE:
				blocks.addAll(EffectiveBlocks.PICKAXE);
				break;
			case SHEARS:
				break;
			case SHOVEL:
				blocks.addAll(EffectiveBlocks.SHOVEL);
				break;
			case SWORD:
				break;
			default:
				break;
			}
		}
		return blocks;
	}

	private static Properties setToolTypes(Properties builder, IItemTier tier, ToolTypes... types) {
		for (ToolTypes type : types) {
			if (type == PICKAXE)
				builder.addToolType(ToolType.PICKAXE, tier.getHarvestLevel());
			if (type == SHOVEL)
				builder.addToolType(ToolType.SHOVEL, tier.getHarvestLevel());
			if (type == AXE)
				builder.addToolType(ToolType.AXE, tier.getHarvestLevel());
		}
		return builder;
	}

	protected boolean hasType(ToolTypes typeIn) {
		for (ToolTypes type : toolTypes)
			if (type == typeIn)
				return true;
		return false;
	}

	@Override
	public ActionResultType onItemUse(ItemUseContext context) {
		if (hasType(HOE) && !context.getPlayer().isSneaking())
			return Items.WOODEN_HOE.onItemUse(context);
		if (hasType(SHOVEL))
			return Items.WOODEN_SHOVEL.onItemUse(context);
		return super.onItemUse(context);
	}

	@Override
	public boolean canHarvestBlock(ItemStack stack, BlockState state) {
		int i = this.getTier().getHarvestLevel();
		if (getToolTypes(stack).contains(state.getHarvestTool()))
			return i >= state.getHarvestLevel();
		Material material = state.getMaterial();
		boolean canHarvestMaterial = false;
		if (hasType(PICKAXE))
			canHarvestMaterial |= material == Material.ROCK || material == Material.IRON || material == Material.ANVIL;
		if (hasType(SHOVEL))
			canHarvestMaterial |= Items.WOODEN_SHOVEL.canHarvestBlock(stack, state);
		if (hasType(SWORD))
			canHarvestMaterial |= Items.WOODEN_SWORD.canHarvestBlock(stack, state);
		if (hasType(ToolTypes.SHEARS))
			canHarvestMaterial |= Items.SHEARS.canHarvestBlock(state);

		return canHarvestMaterial;
	}

	@Override
	public boolean canPlayerBreakBlockWhileHolding(BlockState state, World worldIn, BlockPos pos, PlayerEntity player) {
		return !hasType(SWORD) || !player.isCreative();
	}

	@Override
	public float getDestroySpeed(ItemStack stack, BlockState state) {
		Material material = state.getMaterial();
		if (hasType(PICKAXE) && (material == Material.IRON || material == Material.ANVIL || material == Material.ROCK))
			return this.efficiency;
		if (hasType(AXE) && (material == Material.WOOD || material == Material.PLANTS
				|| material == Material.TALL_PLANTS || material == Material.BAMBOO))
			return this.efficiency;
		if (hasType(SWORD)
				&& (state.getBlock() == Blocks.COBWEB || material == Material.PLANTS || material == Material.TALL_PLANTS
						|| material == Material.CORAL || state.isIn(BlockTags.LEAVES) || material == Material.GOURD))
			return this.efficiency;
		return super.getDestroySpeed(stack, state);
	}

	public boolean modifiesDrops() {
		return false;
	}

	public void modifyDrops(final Collection<ItemStack> drops, IWorld world, BlockPos pos, ItemStack tool,
			BlockState state) {
	}

	public void spawnParticles(IWorld world, BlockPos pos, ItemStack tool, BlockState state) {
	}

	public static class HarvestPacket extends SimplePacketBase {

		private BlockState state;
		private ItemStack stack;
		private BlockPos pos;
		private boolean self;

		public HarvestPacket(BlockState state, ItemStack stack, BlockPos pos, boolean self) {
			this.state = state;
			this.stack = stack;
			this.pos = pos;
			this.self = self;
		}

		public HarvestPacket(PacketBuffer buffer) {
			state = NBTUtil.readBlockState(buffer.readCompoundTag());
			stack = buffer.readItemStack();
			pos = buffer.readBlockPos();
			self = buffer.readBoolean();
		}

		@Override
		public void write(PacketBuffer buffer) {
			buffer.writeCompoundTag(NBTUtil.writeBlockState(state));
			buffer.writeItemStack(stack);
			buffer.writeBlockPos(pos);
			buffer.writeBoolean(self);
		}

		@Override
		public void handle(Supplier<Context> context) {
			context.get().enqueueWork(() -> DistExecutor.runWhenOn(Dist.CLIENT, () -> () -> this.spawnParticles(self)));
			context.get().setPacketHandled(true);
		}

		@OnlyIn(Dist.CLIENT)
		void spawnParticles(boolean self) {
			if (!(stack.getItem() instanceof AbstractToolItem))
				return;
			ClientWorld world = Minecraft.getInstance().world;
			if (!self)
				world.playEvent(2001, pos, Block.getStateId(state));
			((AbstractToolItem) stack.getItem()).spawnParticles(world, pos, stack, state);
		}
	}

}
Edited by JerryLy086
solved
Posted (edited)
On 6/2/2021 at 3:45 PM, diesieben07 said:

You have not registered the packet to the network channel.

Finally fixed, thank you so much. Didn't even know I have to register that before, sorry about that silly guessing of the issues, I'm bad at doing this.

 

 

Edited by JerryLy086
solved
  • JerryLy086 changed the title to Solved: Packet crashing

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • Reach Out To Rapid Digital: What sapp Info: +1 41 4 80 7 14 85 Email INFO: rap iddi gita lrecov ery @ exe cs. com Hello, my name is Jayson, and I’m 35 years old from the United Kingdom. My family and I recently endured an incredibly challenging experience that I wouldn’t wish on anyone. We became victims of a cryptocurrency investment fraud scheme that saw us lose a staggering $807,000 in USDT and Bitcoins. The fraudsters had created a convincing facade, and we were lured into investing, only to discover later that the platform was a complete scam. We were left devastated, not just financially, but emotionally, as we had trusted these people and believed in the legitimacy of the investment. After the initial shock wore off, we desperately searched for ways to recover the lost funds. It seemed like an impossible task, and we felt as though there was no hope. That’s when, by sheer luck, we stumbled across a post about Rapid Digital Recovery, a cryptocurrency and funds recovery organization with a proven track record in cybersecurity and fraud recovery. We decided to reach out to them, and from the first interaction, we were impressed with their professionalism and transparency. They explained the recovery process in detail and reassured us that they had the skills and expertise to track down the perpetrators and recover our funds. This gave us a renewed sense of hope, something we hadn’t felt in months. What truly stood out during our experience with Rapid Digital Recovery was their dedication to the recovery process. The team went above and beyond, using sophisticated tracking tools and cyber forensics to gather critical information. Within a matter of weeks, they had successfully located the funds and traced the scam back to the fraudsters responsible. They worked with the authorities to ensure the criminals were held accountable for their actions. To our relief, the team at Rapid Digital Recovery was able to recover every single penny we had lost. The funds were returned in full, and the sense of closure we felt was invaluable. We couldn’t have imagined such a positive outcome in the early stages of our recovery journey, and we are deeply grateful for the work they did. If you ever find yourself in a similar situation, I highly recommend contacting Rapid Digital Recovery. Their expertise, transparency, and dedication to their clients make them the go-to choice for anyone seeking to recover lost cryptocurrency or funds. They truly gave us back our financial future.  
    • This is my first time modding anything, so maybe just skill issue. I'm using Forge 54.0.12 and Temurin 21.0.5+11-LTS I wanted to create a custom keybind and to check whether it works I'd like to send a chat message. I tried using Minecraft.getInstance().player.sendSystemMessage(Component.literal("test")); but IntelliJ couldnt resolve sendSystemMessage(...). Since I saw people using it in earlier versions, I tried the same thing with 1.20.6(- 50.1.0), where it works fine, now I can't figure out if this is intentional and whether there are other options for sending chat messages. On that note, is there more documentation than https://docs.minecraftforge.net/en/1.21.x/? It seems very incomplete compared to something like the Oracle Java docs
    • Hi, i'm having this error and I wanna fix it. we try: -Reload drivers -Eliminate .minecraft -Eliminate Java -Restart launcher -Verify if minecraft is using gpu -Mods  in .minecraft is empty -Install the latest and recomended version of forge idk what i have to do, help me pls. the lastest log is: https://mclo.gs/WAMao8x  
    • Read the FAQ, Rule #2. (https://forums.minecraftforge.net/topic/125488-rules-and-frequently-asked-questions-faq/)  
    • The link to your log does not work, it says it is forbidden, Error, this is a private paste or is pending moderation.
  • Topics

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.