AbyssalCraft

AbyssalCraft

20M Downloads

Ticking Block Entity Crash when swapping a ritual/sacrificial altars

BasedFlannel opened this issue ยท 2 comments

commented

Description:

Added Abyssalcraft into Enigmatica 2 Light for a friend since it's not included by default. They tried to replace their ritual altar with a sacrificial altar and suddenly the whole server crashed. After attempting to restart the server wouldn't boot until we loaded up an old backup of the world.

Crash report:

crash-2020-01-06_21.35.32-server.txt
For googling purposes though, the relevant stacktrace was this

Time: 1/6/20 9:35 PM
Description: Ticking block entity

java.lang.ClassCastException: com.shinoow.abyssalcraft.common.blocks.tile.TileEntitySacrificialAltar cannot be cast to com.shinoow.abyssalcraft.lib.util.blocks.IRitualAltar
at com.shinoow.abyssalcraft.common.blocks.tile.TileEntityRitualPedestal.getAltar(TileEntityRitualPedestal.java:218)
at com.shinoow.abyssalcraft.common.blocks.tile.TileEntityRitualPedestal.func_73660_a(TileEntityRitualPedestal.java:97)
at net.minecraft.world.World.func_72939_s(World.java:1838)
at net.minecraft.world.WorldServer.func_72939_s(WorldServer.java:613)
at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:767)
at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:397)
at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:668)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:526)
at java.lang.Thread.run(Thread.java:748)

Upon reloading the server it gave a slightly different stacktrace when loading the world as seen in this next crash report.
crash-2020-01-06_21.38.22-server.txt


Affected versions ("latest" is NOT a version):

  • Minecraft: 1.12.2
  • Forge:14.23.5.2847
  • AbyssalCraft: 1.9.14 (Though attempting to update to 1.9.15 didn't fix the issue)

Latest log file for when the issue was present:

Original:
2020-01-06-4.log

After Reload:
2020-01-06-5.log

commented

I'm a bit curious as to what gave them the idea to do that, as that is not a thing you would ever do in the mod.
The crash itself is due to the pedestals expecting a ritual altar at the position where there's now a sacrificial altar, since there's not supposed to be anything other than a ritual altar there.
Naturally I'm gonna throw in some code to evaluate that a ritual altar actually is at the position where it's supposed to be, but I really am curious to the reasoning that lead to this.

commented

According to them, they kinda just thought that's how sacrificial rituals were supposed to work. "Swap an altar for an altar right?"

They're pretty new to modded MC, in fact they really only got interested when I told them Lovecraftian horror was a thing so thank you for making this mod!