--- a/net/minecraft/server/TickListServer.java +++ b/net/minecraft/server/TickListServer.java @@ -37,11 +37,17 @@ this.b(); int i = this.nextTickList.size(); - if (i != this.nextTickListHash.size()) { + if (false) { // CraftBukkit throw new IllegalStateException("TickNextTick list out of synch"); } else { if (i > 65536) { - i = 65536; + // CraftBukkit start - If the server has too much to process over time, try to alleviate that + if (i > 20 * 65536) { + i = i / 20; + } else { + i = 65536; + } + // CraftBukkit end } this.h.getMethodProfiler().enter("selecting");