Servers
Sereath opened this issue ยท 8 comments
Sorry to bother you once again
The mod works perfectly on singleplayer worlds but doesn't seem to do anything on servers. By the way, the mod was added to an already running server world.
This is what I noticed:
[18:20:30] [Server thread/ERROR] [The Hordes]: player is null for OngoingHordeEvent@4059e52d[player=null, isActive=false, ticksLeft=0, entityCount=0, nextDay=0, day=0]
[18:20:30] [Server thread/INFO] [STDERR]: [net.smileycorp.hordes.common.Hordes:logError:61]: java.lang.NullPointerException
[18:20:30] [Server thread/INFO] [STDERR]: [net.smileycorp.hordes.common.Hordes:logError:61]: at net.smileycorp.hordes.common.hordeevent.OngoingHordeEvent.tryStartEvent(OngoingHordeEvent.java:239)
[18:20:30] [Server thread/INFO] [STDERR]: [net.smileycorp.hordes.common.Hordes:logError:61]: at net.smileycorp.hordes.common.hordeevent.HordeEventHandler.playerTick(HordeEventHandler.java:80)
[18:20:30] [Server thread/INFO] [STDERR]: [net.smileycorp.hordes.common.Hordes:logError:61]: at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_1924_HordeEventHandler_playerTick_PlayerTickEvent.invoke(.dynamic)
[18:20:30] [Server thread/INFO] [STDERR]: [net.smileycorp.hordes.common.Hordes:logError:61]: at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90)
[18:20:30] [Server thread/INFO] [STDERR]: [net.smileycorp.hordes.common.Hordes:logError:61]: at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:182)
[18:20:30] [Server thread/INFO] [STDERR]: [net.smileycorp.hordes.common.Hordes:logError:61]: at net.minecraftforge.fml.common.FMLCommonHandler.onPlayerPostTick(FMLCommonHandler.java:370)
[18:20:30] [Server thread/INFO] [STDERR]: [net.smileycorp.hordes.common.Hordes:logError:61]: at net.minecraft.entity.player.EntityPlayer.handler$zbn000$updateSize(EntityPlayer.java:42361)
[18:20:30] [Server thread/INFO] [STDERR]: [net.smileycorp.hordes.common.Hordes:logError:61]: at net.minecraft.entity.player.EntityPlayer.func_184808_cD(EntityPlayer.java)
[18:20:30] [Server thread/INFO] [STDERR]: [net.smileycorp.hordes.common.Hordes:logError:61]: at net.minecraft.entity.player.EntityPlayer.func_70071_h_(EntityPlayer.java:288)
[18:20:30] [Server thread/INFO] [STDERR]: [net.smileycorp.hordes.common.Hordes:logError:61]: at net.minecraft.entity.player.EntityPlayerMP.func_71127_g(EntityPlayerMP.java:382)
[18:20:30] [Server thread/INFO] [STDERR]: [net.smileycorp.hordes.common.Hordes:logError:61]: at net.minecraft.network.NetHandlerPlayServer.func_73660_a(NetHandlerPlayServer.java:173)
[18:20:30] [Server thread/INFO] [STDERR]: [net.smileycorp.hordes.common.Hordes:logError:61]: at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher$1.func_73660_a(NetworkDispatcher.java:209)
[18:20:30] [Server thread/INFO] [STDERR]: [net.smileycorp.hordes.common.Hordes:logError:61]: at net.minecraft.network.NetworkManager.func_74428_b(NetworkManager.java:285)
[18:20:30] [Server thread/INFO] [STDERR]: [net.smileycorp.hordes.common.Hordes:logError:61]: at net.minecraft.network.NetworkSystem.func_151269_c(NetworkSystem.java:180)
[18:20:30] [Server thread/INFO] [STDERR]: [net.smileycorp.hordes.common.Hordes:logError:61]: at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:790)
[18:20:30] [Server thread/INFO] [STDERR]: [net.smileycorp.hordes.common.Hordes:logError:61]: at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:397)
[18:20:30] [Server thread/INFO] [STDERR]: [net.smileycorp.hordes.common.Hordes:logError:61]: at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:668)
[18:20:30] [Server thread/INFO] [STDERR]: [net.smileycorp.hordes.common.Hordes:logError:61]: at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:526)
[18:20:30] [Server thread/INFO] [STDERR]: [net.smileycorp.hordes.common.Hordes:logError:61]: at java.lang.Thread.run(Unknown Source)
Full log:
https://gist.github.com/Aeron216/abd9e01ce8f453bd3deba94a7a4a41a1
Current config:
https://gist.github.com/Aeron216/07342d9dabf0c01f2b8c041681e01a06
When looking inside hordes_HordeEvent.dat:
Server's file to the left. Singleplayer's file to the right.
This is some very odd behavior, it seems like it might have something to do with changing the day length, I'll have a look into why this may be happening.
Would you be able to run /debugHorde as well?
It should print out a log with all the information related to the event.
Sure
Server:
https://gist.github.com/Aeron216/70063a8a1c90987a45b0c72c97ff5fee
Singleplayer:
https://gist.github.com/Aeron216/d3c75f8bb21c0de1b7b6612d3029bf98
Updated view of the dat files.:
I included the SP world information as well because the hordes have stopped occurring after opening the world for a second time.
And just in case. This is the day extender I use:
https://www.curseforge.com/minecraft/mc-mods/opticmanager
Its config:
https://gist.github.com/Aeron216/7bb2853df22029aaf000a5854982631e
Long ago when I added it, I made sure it had no compatibility problems and so far it hasn't had any.
And my complete list of mods (yet to release modpack):
https://gist.github.com/Aeron216/5b2e53bf774146a483327debb4ef5c80
Sorry for being a headache so do take your time.
The server just had its first horde now. As soon as I was no longer AFK after leaving my account logged in for some hours and after it started to get late in the day the horde started.
https://gist.github.com/Aeron216/e301c71ea49ee402b7d94d8aea09b671
Yeah, the problem has to be the fact that Hordes doesn't like the manual addition of ticks through FTB Utilities and probably the fact that the day has been extended through another mod.
After some more unintentional experimentation (I was testing other mods/scripts) I realized that the test world I was in was correctly working with Hordes even after quitting the game and returning to that world since that was one of the problems I reported here.
The total age of the world was once again matching what Hordes tracked.
So I then went to our servers world's folder and deleted hordes_HordeEvent.dat so it could regenerate. And it did indeed adjust correctly to the current server day.
debug log:
https://gist.github.com/Aeron216/6bb16c0c5612761924c63450c7344154
Now I'm going to wait for a horde to happen naturally.
Only things I did ever since I reported this:
Nope, as soon as I started manually adding ticks (because I wanted to test the hordes) through the buttons from FTB Utilities, Hordes would lose track of time.
That same test world is now at day 616 according to Hordes even though it should be at day 63:
https://gist.github.com/Aeron216/2d9ad21219dd6cfa41c74b4673bb7014
And from now on it started to climb nextDay= 's number quite high, in here it should be day 74 but is instead set at 884:
https://gist.github.com/Aeron216/f2c0d8111f3db171f2388cd5dafc9ae0
So the culprit right now seems to be adding ticks through FTB Utilities:
However, nextDay= only seems to break once you re-enter/re-open the same world after manually adding ticks with FTB in a previous session.
Right now I'm just going to wait for the hordes to naturally happen in the server and see what happens.
Hmm that's a bit of strange behaviour, it must be how ftb utilities handles it's tick adding.
I've tested with using extended days and /time set before.