Nether Metals

Nether Metals

2M Downloads

Extra Utilities Quarry Crash (possible world corruption)

Senjar opened this issue ยท 6 comments

commented

MC version: 1.10.2
Forge: 12.18.3.2254
ExUtils version: 1.3.3
NetherMetals version: 1.1.3 (1.1.2 does NOT crash)

Can be reproduced
Place the quarry , put a chest above and as soon as you power it ,it crashes the game.
Crash Log
http://pastebin.com/SwqSZEuw

`
---- Minecraft Crash Report ----
// My bad.

Time: 3/13/17 7:30 PM
Description: Ticking block entity

java.lang.IllegalArgumentException: Invalid hand null
at net.minecraft.entity.EntityLivingBase.func_184586_b(EntityLivingBase.java:1487)
at com.mcmoddev.nethermetals.NetherMetals.onBlockBreak(NetherMetals.java:62)
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_64_NetherMetals_onBlockBreak_BreakEvent.invoke(.dynamic)
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90)
at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:185)
at net.minecraftforge.common.ForgeHooks.onBlockBreakEvent(ForgeHooks.java:742)
at net.minecraft.server.management.PlayerInteractionManager.func_180237_b(PlayerInteractionManager.java:287)
at com.rwtema.extrautils2.quarry.TileQuarry.func_73660_a(TileQuarry.java:307)
at net.minecraft.world.World.func_72939_s(World.java:1804)
at net.minecraft.world.WorldServer.func_72939_s(WorldServer.java:620)
at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:709)
at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:613)
at net.minecraft.server.integrated.IntegratedServer.func_71217_p(IntegratedServer.java:149)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:471)
at java.lang.Thread.run(Thread.java:745)

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

-- Head --
Thread: Server thread
Stacktrace:
at net.minecraft.entity.EntityLivingBase.func_184586_b(EntityLivingBase.java:1487)
at com.mcmoddev.nethermetals.NetherMetals.onBlockBreak(NetherMetals.java:62)
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_64_NetherMetals_onBlockBreak_BreakEvent.invoke(.dynamic)
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90)
at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:185)
at net.minecraftforge.common.ForgeHooks.onBlockBreakEvent(ForgeHooks.java:742)
at net.minecraft.server.management.PlayerInteractionManager.func_180237_b(PlayerInteractionManager.java:287)
at com.rwtema.extrautils2.quarry.TileQuarry.func_73660_a(TileQuarry.java:307)

-- Block entity being ticked --
Details:
Name: XU2:TileQuarry // com.rwtema.extrautils2.quarry.TileQuarry
Block type: ID #263 (tile.extrautils2:quarry // com.rwtema.extrautils2.quarry.BlockQuarry)
Block data value: 0 / 0x0 / 0b0000
Block location: World: (-140,74,71), Chunk: (at 4,4,7 in -9,4; contains blocks -144,0,64 to -129,255,79), Region: (-1,0; contains chunks -32,0 to -1,31, blocks -512,0,0 to -1,255,511)
Actual block type: ID #263 (tile.extrautils2:quarry // com.rwtema.extrautils2.quarry.BlockQuarry)
Actual block data value: 0 / 0x0 / 0b0000
Stacktrace:
at net.minecraft.world.World.func_72939_s(World.java:1804)
at net.minecraft.world.WorldServer.func_72939_s(WorldServer.java:620)

-- Affected level --
Details:
Level name: New World
All players: 1 total; [EntityPlayerMP['MrSenjar'/957, l='New World', x=-137.87, y=78.17, z=72.13]]
Chunk stats: ServerChunkCache: 625 Drop: 0
Level seed: -5712497314494526443
Level generator: ID 00 - default, ver 1. Features enabled: true
Level generator options:
Level spawn location: World: (-124,64,84), Chunk: (at 4,4,4 in -8,5; contains blocks -128,0,80 to -113,255,95), Region: (-1,0; contains chunks -32,0 to -1,31, blocks -512,0,0 to -1,255,511)
Level time: 2350 game time, 2350 day time
Level dimension: 0
Level storage version: 0x04ABD - Anvil
Level weather: Rain time: 117129 (now: false), thunder time: 128544 (now: false)
Level game mode: Game mode: creative (ID 1). Hardcore: false. Cheats: true
Stacktrace:
at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:709)
at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:613)
at net.minecraft.server.integrated.IntegratedServer.func_71217_p(IntegratedServer.java:149)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:471)
at java.lang.Thread.run(Thread.java:745)

-- System Details --
Details:
Minecraft Version: 1.10.2
Operating System: Windows 10 (amd64) version 10.0
Java Version: 1.8.0_25, Oracle Corporation
Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
Memory: 2822249552 bytes (2691 MB) / 4294967296 bytes (4096 MB) up to 4294967296 bytes (4096 MB)
JVM Flags: 12 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xmx4096m -Xms256m -XX:PermSize=256m -XX:+UseG1GC -Xmx4G -Xms4G -XX:+UnlockExperimentalVMOptions -XX:G1NewSizePercent=20 -XX:G1ReservePercent=20 -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=32M
IntCache: cache: 0, tcache: 0, allocated: 13, tallocated: 95
FML: MCP 9.32 Powered by Forge 12.18.3.2254 6 mods loaded, 6 mods active
States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored
UCHIJAAAA mcp{9.19} [Minecraft Coder Pack] (minecraft.jar)
UCHIJAAAA FML{8.0.99.99} [Forge Mod Loader] (forge-1.10.2-12.18.3.2254.jar)
UCHIJAAAA Forge{12.18.3.2254} [Minecraft Forge] (forge-1.10.2-12.18.3.2254.jar)
UCHIJAAAA extrautils2{1.0} [Extra Utilities 2] (extrautils2-1.10.2-1.3.3.jar)
UCHIJAAAA nethermetals{1.1.3} [Nether Metals] (NetherMetals-1.10.2-1.1.3.jar)
UCHIJAAAA orespawn{1.1.0} [Ore Spawn] (OreSpawn_1.10.2-1.1.0.jar)
Loaded coremods (and transformers):
GL info: ERROR RuntimeException: No OpenGL context found in the current thread.
Profiler Position: N/A (disabled)
Player Count: 1 / 8; [EntityPlayerMP['MrSenjar'/957, l='New World', x=-137.87, y=78.17, z=72.13]]
Type: Integrated Server (map_client.txt)
Is Modded: Definitely; Client brand changed to 'fml,forge'
`

commented

Change the explosion chance to 0 and try loading the world. That bug its being caused by the mod expecting a player to mine the nether ores for explosion chances

commented

I'll look into adding support for non players mining the ores in next version

commented
commented

Nether Metals 1.1.4 fixes this for me, thank you! :)

commented

This also affects non-nether ores (e.g. Amber Ore from JurassiCraft), see Ellpeck/ActuallyAdditions#689 where I first ran into this after updating Nether Metals to 1.1.3, and was directed to Nether Metals.

Minecraft: 1.10.2
Forge Mod Loader: 1.10.2-12.18.3.2239
Actually Additions: 1.10.2-r105
Draconic Evolution: 1.10.2-2.0.8.177
JurassiCraft: 2.0.5
Nether Metals: 1.10.2-1.1.3

Breaking the blocks by a player (e.g. with a Tinker's Construct pickaxe) works without issue.

Auto-Breaking Amber Ore from JurassiCraft (not added by Nether Metals):
crash-2017-03-13_10.20.21-server.txt

AutoBreaking Ender Draconium Ore or Nether Draconium Ore from Draconic Evolutions:
crash-2017-03-13_09.54.54-server.txt

Per @Ellpeck

This is an issue with Nether Metals due to the fact that it uses the parameter swingingHand in its code right here, even though a player (especially a fake player) breaking something doesn't necessarily mean that they are swinging their arm while doing it. The mod should instead use EntityPlayer.getHeldItemMainhand().

commented

Yeah, will implement support for fake-players in the next update