This is a read-only snapshot of the ComputerCraft forums, taken in April 2020.
Hellpest's profile picture

[1.7.4] [CCEdu] Game crash and permanent chunk errors.

Started by Hellpest, 28 July 2015 - 06:32 PM
Hellpest #1
Posted 28 July 2015 - 08:32 PM
VERSION:
ComputerCraft 1.7.4 and ComputerCraftEdu 1.7.4

DESCRIPTION:
After letting mining turtles run for a while, the game crashes and a permanent chunk error is created where the turtle previously was.

Crash report:
Spoiler—- Minecraft Crash Report —-
// Don't do that.

Time: 28/07/15 10:05
Description: Exception ticking world

java.lang.NullPointerException: Exception ticking world
at dan200.computercraft.shared.computer.blocks.TileComputerBase.getFamily(TileComputerBase.java:412)
at dan200.computercraft.shared.turtle.blocks.TileTurtle.createComputer(TileTurtle.java:97)
at dan200.computercraft.shared.turtle.blocks.TileTurtle.createComputer(TileTurtle.java:115)
at dan200.computercraft.shared.computer.blocks.TileComputerBase.createServerComputer(TileComputerBase.java:427)
at dan200.computercraft.shared.computer.blocks.TileComputerBase.writeDescription(TileComputerBase.java:481)
at dan200.computercraft.shared.turtle.blocks.TileTurtle.writeDescription(TileTurtle.java:601)
at dan200.computercraft.shared.common.TileGeneric.func_145844_m(TileGeneric.java:188)
at net.minecraft.server.management.PlayerManager$PlayerInstance.func_151252_a(PlayerManager.java:591)
at net.minecraft.server.management.PlayerManager$PlayerInstance.func_73254_a(PlayerManager.java:533)
at net.minecraft.server.management.PlayerManager.func_72693_b(PlayerManager.java:67)
at net.minecraft.world.WorldServer.func_72835_b(WorldServer.java:185)
at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:625)
at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:547)
at net.minecraft.server.integrated.IntegratedServer.func_71217_p(IntegratedServer.java:111)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:427)
at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:685)


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

– Head –
Stacktrace:
at dan200.computercraft.shared.computer.blocks.TileComputerBase.getFamily(TileComputerBase.java:412)
at dan200.computercraft.shared.turtle.blocks.TileTurtle.createComputer(TileTurtle.java:97)
at dan200.computercraft.shared.turtle.blocks.TileTurtle.createComputer(TileTurtle.java:115)
at dan200.computercraft.shared.computer.blocks.TileComputerBase.createServerComputer(TileComputerBase.java:427)
at dan200.computercraft.shared.computer.blocks.TileComputerBase.writeDescription(TileComputerBase.java:481)
at dan200.computercraft.shared.turtle.blocks.TileTurtle.writeDescription(TileTurtle.java:601)
at dan200.computercraft.shared.common.TileGeneric.func_145844_m(TileGeneric.java:188)
at net.minecraft.server.management.PlayerManager$PlayerInstance.func_151252_a(PlayerManager.java:591)
at net.minecraft.server.management.PlayerManager$PlayerInstance.func_73254_a(PlayerManager.java:533)
at net.minecraft.server.management.PlayerManager.func_72693_b(PlayerManager.java:67)
at net.minecraft.world.WorldServer.func_72835_b(WorldServer.java:185)

– Affected level –
Details:
Level name: I Liek Turtles
All players: 1 total; [EntityPlayerMP['Hellpest'/182, l='I Liek Turtles', x=-887.48, y=8.88, z=2406.40]]
Chunk stats: ServerChunkCache: 679 Drop: 0
Level seed: -1778555556
Level generator: ID 02 - largeBiomes, ver 0. Features enabled: true
Level generator options:
Level spawn location: World: (-200,64,256), Chunk: (at 8,4,0 in -13,16; contains blocks -208,0,256 to -193,255,271), Region: (-1,0; contains chunks -32,0 to -1,31, blocks -512,0,0 to -1,255,511)
Level time: 1112527 game time, 4384 day time
Level dimension: 0
Level storage version: 0x04ABD - Anvil
Level weather: Rain time: 12455 (now: true), thunder time: 137691 (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:625)
at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:547)
at net.minecraft.server.integrated.IntegratedServer.func_71217_p(IntegratedServer.java:111)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:427)
at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:685)

– System Details –
Details:
Minecraft Version: 1.7.10
Operating System: Windows 8.1 (amd64) version 6.3
Java Version: 1.8.0_40, Oracle Corporation
Java VM Version: Java HotSpotâ„¢ 64-Bit Server VM (mixed mode), Oracle Corporation
Memory: 207337744 bytes (197 MB) / 496537600 bytes (473 MB) up to 1060372480 bytes (1011 MB)
JVM Flags: 6 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xmx1G -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:-UseAdaptiveSizePolicy -Xmn128M
AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
IntCache: cache: 0, tcache: 0, allocated: 13, tallocated: 103
FML: MCP v9.05 FML v7.10.99.99 Minecraft Forge 10.13.4.1448 5 mods loaded, 5 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.05} [Minecraft Coder Pack] (minecraft.jar)
UCHIJAAAA FML{7.10.99.99} [Forge Mod Loader] (forge-1.7.10-10.13.4.1448-1.7.10.jar)
UCHIJAAAA Forge{10.13.4.1448} [Minecraft Forge] (forge-1.7.10-10.13.4.1448-1.7.10.jar)
UCHIJAAAA ComputerCraft{1.74} [ComputerCraft] (ComputerCraftPlusComputerCraftEdu1.74.jar)
UCHIJAAAA ComputerCraftEdu{1.74} [ComputerCraftEdu] (ComputerCraftPlusComputerCraftEdu1.74.jar)
GL info: ~~ERROR~~ RuntimeException: No OpenGL context found in the current thread.
Profiler Position: N/A (disabled)
Vec3 Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
Player Count: 1 / 8; [EntityPlayerMP['Hellpest'/182, l='I Liek Turtles', x=-887.48, y=8.88, z=2406.40]]
Type: Integrated Server (map_client.txt)
Is Modded: Definitely; Client brand changed to 'fml,forge'

EXPECTED RESULT:
Turtles to mine for a while then return.

REPRODUCTION STEPS:
Create Mining turtle with the 'startup' code (below).
Create a mining turtle with the 'stripMine' code (Below), place 64 of other turtle in slot 1, at least 33 chests in slot 2, and 64 of any solid block in slot 3.

CODE:
startup:
Spoilerlocal X
local function dig()
turtle.select(1)
for X=1,128 do
while turtle.detect()==true do
turtle.dig()
end
turtle.forward()
end
end

local function back()
turtle.turnLeft()
turtle.turnLeft()
while turtle.detect()==false do
turtle.forward()
end
end

local function drop()
for X=1,16 do
turtle.select(X)
turtle.drop()
end
end

dig()
back()
drop()
if turtle.detectDown() then
turtle.digDown()
end
turtle.down()
turtle.turnLeft()
turtle.turnLeft()

dig()
turtle.up()
back()
drop()
turtle.down()

stripMine
SpoilerstripMine

local X
local Y
local Z
local function turtleOn()
Z=peripheral.wrap("front")
Z.turnOn()
end
local function left2()
turtle.turnLeft()
turtle.turnLeft()
end
local function breakBlocks()
while turtle.detect() do
turtle.dig()
end
end
local function turtlePlace()
breakBlocks()
turtle.forward()
breakBlocks()
turtle.select(3)
turtle.place()
turtle.back()
turtle.select(1)
turtle.place()
turtleOn()
end

for Y=1,32 do
for X=1,3 do
breakBlocks()
turtle.forward()
end
turtle.turnLeft()
turtlePlace()
left2()
turtlePlace()
turtle.turnLeft()
breakBlocks()
turtle.forward()
left2()
turtle.select(2)
turtle.place()
left2()
end

Y=32
left2()
if turtle.detectDown() then
turtle.digDown()
end
turtle.down()
while true do
if turtle.detectUp() then
Y=Y-1
if Y==0 then
break
end
end
breakBlocks()
turtle.forward()
end
for X=1,3 do
breakBlocks()
turtle.forward()
end
turtle.select(2)
turtle.placeUp()

Edit: Changed spoiler positions to separate the two codes and the spoiler titles. Thanks to Cranium for putting the spoilers in, I wasn't quite sure how.
Edited by
Hellpest #2
Posted 29 July 2015 - 01:44 PM
I have done a bit more testing, and it seems that the chunk error is always made on the turtle running the 'startup' code. It can happen at any time the turtle is digging.