Mod Conflict, Pokecube. Server-Side Crash when the Ender Dragon spawns.
Wilevar opened this issue ยท 12 comments
Love the mod's concept, and am looking forward to it reaching a more finished state. Unfortunately it has a server-only conflict with Pokecube AOI, causing a Ticking World Crash when entering The End, shortly after the ender dragon delivers her first statement.
Through mod removal testing I've confirmed that it's a conflict with Pokecube. Remove either it or Dragon Survival fixes the crash. I'll submit a report to Pokecube as well to let them know.
Crash Report:
https://pastebin.com/sv05aVPV
Forge Version:
forge-1.16.5-36.2.0
Mod Version:
0.0.39
Understood. Having checked my config, I can confirm that I do have those spawn weights set to 0.0
. They were spawning from pokemon deaths on a regular basis, likely due to the sheer amount of pokemon murder when training.
Thanks for the attention and the work-around! Looking forward to Dragon Survival getting more features. ^_^
As mentioned in the OP, I only got the crash on a server with that set to true. It doesn't happen in single-player worlds.
If you can't reproduce it on a server, I'll do further mod removal testing to see if it's somehow a complex conflict. That said, changing that one option, removing Dragon Survival, or removing Pokecube, were all ways that would separately fix the crash.
Ok, I managed to trigger the crash and I found that it is caused by magical predators disabled in the config, that is, in the section [common.predator.spawnChances] weight
is set to 0. This what causes to add their spawn entry with zero weight, and the crash. Until I fix this, a workaround would be setting the weight to 1 and leave their spawn biome list blank, that is, in section [common.predator.spawnBiomes] set include
to []
.
Thanks. ^_^
For reference, I'm not using a any server hosting. Just a private server running from a command line batch file. Standard Forge server setup.
Mohist is not hosting, but a server core that allows you to use Forge mods and Bukkit plugins on the same server. If you meant what I wrote on Curseforge.
Ah. Didn't know that. But no, I'm not using any hybrid server software. Just Forge.
Troubleshot this with Thutmose over discord and discovered that the crash has to do with a config option for Pokecube that deactivates vanilla monsters and how Dragon Survival reacts to that with the ender dragon. Link to the other github issue here.
The specific details seem to be somehow related to pokecube removes vanilla spawns if the config is enabled:
This is currently done by removing the matching spawn entries from the list passed along the WorldEvent.PotentialSpawns
event fired by net.minecraftforge.event.ForgeEventFactory.getPotentialSpawns
when vanilla is trying to decide what mobs spawn at a site.
It appear that somewhere a spawn entry with something null in weight is added to this list?
What options must be enabled to trigger the crash? I tested the mods with the defaults and it didn't crash.
Pokecube-common.tmol
[Spawning]
....
# Vanilla monsters will not spawn via normal spawning, this does not prevent mob spawners or special spawns. [Default: false]
deactivateMonsters = false
If set to true, the crash happens.