Spigot yasui 7.0.70

Control entity resource consumption by drop AI computing. Mobは安い。

  1. NyaaCore-mc1.14.4-7.0.341-shadowed.jar
     
  2. That is strange because we used the same jar's without problem.

    Can you try with a clean shutdown and start?
     
  3. I want to try out this plugin, but the nyaacat website seems down XD
     
  4. We confirm our web services are all good and reachable.

    Anyway you can expect our next version which adds a small feature that may helpful.
     
    • Like Like x 1
  5. I've tried accessing the websites all day with no luck.
    Bummer. Really wanted to try this amazing plugin for my lagging server

    EDIT:
    Okay so I downloaded the plugin :cool:
    But with the help of some friends from South East Asia.
    Seems like people from the U.S cannot access the website.
    Gonna test it out soon. XD

    Cheers
     
    #25 pugTpho, Sep 8, 2019
    Last edited: Sep 8, 2019
  6. The CI server is in Amsterdam and we set no limitation to any visitor.

    The feature we would like to add is almost the same with EntityTrackerFixer (https://www.spigotmc.org/resources/entitytrackerfixer-fix-1-14-4-entitytick-lag.70902/) by @Esmorall but to verify the effect, we tested this plugin on our production server.
    It turns out we get no apparent improvement in this way of optimization. After testing we digging into spark profiler samples and the NMS code, we now initially, assume it's Minecraft trying to determine that if a mob could spawn for a player, that consuming the compute power, if not mob join world event which forcibly ticked entities before yasui could remove their AI.

    Considering mob spawn has been changed in 1.14, we lifted the ticks-per.monster-spawns in bukkit.yml from 1 to 5, which should effectively slows down the mob spawning. But since it's late night here we have very few players online, we cannot say it's effective even though we get TPS steady at 20 now.

    I have no deviation to negative the actual effect of EntityTrackerFixer, we just need to source the root cause of lag before we can add the feature against it. It could be different result on a different server, so you may also try it if you have not.
     
    • Like Like x 1
  7. Lovely plugin. But how do we have the broadcast only to console?
    Thank you <3
     
  8. No option for that at this time, but it's added to our TODO list now.
     
  9. phoenixlzx updated yasui with a new update entry:

    New module: mobcap

    Read the rest of this update entry...
     
  10. I see randomTeleport is taking CPU.

    Yasui has only one invocation that taking CPU is a command, can you tell me which yasui command you are executing?

    Such as /yasui status and if you have huge amount of chunks or entities, it do takes a while.
     
  11. Code (Text):
    [19:55:16] [Server thread/ERROR]: Could not pass event ChunkLoadEvent to yasui v7.0.61
    com.google.common.cache.CacheLoader$InvalidCacheLoadException: CacheLoader returned null for key world Chunk -1, -1.
        at com.google.common.cache.LocalCache$Segment.getAndRecordStats(LocalCache.java:2463) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2425) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2298) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2211) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at com.google.common.cache.LocalCache.get(LocalCache.java:4154) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:4158) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:5147) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:5153) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at cat.nyaa.yasui.Configuration.getRegion(Configuration.java:141) ~[?:?]
        at cat.nyaa.yasui.task.ChunkTask.getOrCreateTask(ChunkTask.java:46) ~[?:?]
        at cat.nyaa.yasui.task.ChunkTask.getOrCreateTask(ChunkTask.java:39) ~[?:?]
        at cat.nyaa.yasui.other.Utils.checkLivingEntity(Utils.java:77) ~[?:?]
        at cat.nyaa.yasui.listener.WorldListener.onChunkLoad(WorldListener.java:27) ~[?:?]
        at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor292.execute(Unknown Source) ~[?:?]
        at org.bukkit.plugin.EventExecutor.lambda$create$1(EventExecutor.java:69) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:80) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:545) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at net.minecraft.server.v1_14_R1.Chunk.loadCallback(Chunk.java:644) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at net.minecraft.server.v1_14_R1.PlayerChunk.lambda$null$7(PlayerChunk.java:415) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at com.mojang.datafixers.util.Either$Left.ifLeft(Either.java:43) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at net.minecraft.server.v1_14_R1.PlayerChunk.lambda$a$8(PlayerChunk.java:413) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at java.util.concurrent.CompletableFuture.uniAccept(Unknown Source) ~[?:1.8.0_231]
        at java.util.concurrent.CompletableFuture$UniAccept.tryFire(Unknown Source) ~[?:1.8.0_231]
        at java.util.concurrent.CompletableFuture$Completion.run(Unknown Source) ~[?:1.8.0_231]
        at net.minecraft.server.v1_14_R1.PlayerChunkMap$CallbackExecutor.run(PlayerChunkMap.java:102) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at net.minecraft.server.v1_14_R1.ChunkProviderServer$a.executeNext(ChunkProviderServer.java:814) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.awaitTasks(IAsyncTaskHandler.java:119) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at net.minecraft.server.v1_14_R1.ChunkProviderServer.getChunkAt(ChunkProviderServer.java:285) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at net.minecraft.server.v1_14_R1.World.getChunkAt(World.java:373) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at net.minecraft.server.v1_14_R1.IWorldReader.getChunkAt(IWorldReader.java:80) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at net.minecraft.server.v1_14_R1.World.getChunkAt(World.java:334) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at net.minecraft.server.v1_14_R1.WorldProviderNormal.a(WorldProviderNormal.java:170) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at net.minecraft.server.v1_14_R1.EntityPlayer.a(EntityPlayer.java:183) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at net.minecraft.server.v1_14_R1.EntityPlayer.<init>(EntityPlayer.java:112) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at protocolsupport.zplatform.impl.spigot.network.handler.SpigotLoginListenerPlay.createJoinData(SpigotLoginListenerPlay.java:89) ~[?:?]
        at protocolsupport.protocol.packet.handler.AbstractLoginListenerPlay.joinWorld(AbstractLoginListenerPlay.java:119) ~[?:?]
        at protocolsupport.protocol.packet.handler.AbstractLoginListenerPlay.lambda$finishLogin$1(AbstractLoginListenerPlay.java:90) ~[?:?]
        at java.util.concurrent.FutureTask.run(Unknown Source) ~[?:1.8.0_231]
        at net.minecraft.server.v1_14_R1.MinecraftServer.b(MinecraftServer.java:1184) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at net.minecraft.server.v1_14_R1.DedicatedServer.b(DedicatedServer.java:417) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at net.minecraft.server.v1_14_R1.MinecraftServer.a(MinecraftServer.java:1098) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.java:925) ~[Paper-1.14.4-b236.jar:git-Paper-235]
        at java.lang.Thread.run(Unknown Source) [?:1.8.0_231]
    : (
     
  12. [NyaaCore] Enabling NyaaCore v7.0.349

    [NyaaCore] CraftBukkit Mapping changed! Use with caution!

    How can I solve this problem?
     
  13. Update required perchance ?. Got this after I did the latest BuildTools v111 update today

    [11:05:35] [Server thread/INFO]: This server is running CraftBukkit version git-Spigot-c574e08-807a677 (MC: 1.15.2) (Implementing API version 1.15.2-R0.1-SNAPSHOT)

    12:22:26] [Server thread/WARN]: [ViaVersion] There is a newer version available: 2.2.3, you're on: 2.2.3-SNAPSHOT
    [12:22:27] [Craft Scheduler Thread - 1/INFO]: [PlaceholderAPI] 166 placeholder expansions are available on the cloud.
    [12:27:58] [Server thread/ERROR]: Could not pass event EntityDeathEvent to yasui v7.0.x
    org.bukkit.event.EventException: null
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:319) ~[spigot-1.15.2.jar:git-Spigot-c574e08-807a677]
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[spigot-1.15.2.jar:git-Spigot-c574e08-807a677]
    at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:541) ~[spigot-1.15.2.jar:git-Spigot-c574e08-807a677]
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:528) ~[spigot-1.15.2.jar:git-Spigot-c574e08-807a677]
    at org.bukkit.craftbukkit.v1_15_R1.event.CraftEventFactory.callEntityDeathEvent(CraftEventFactory.java:721) ~[spigot-1.15.2.jar:git-Spigot-c574e08-807a677]
    at net.minecraft.server.v1_15_R1.EntityLiving.d(EntityLiving.java:1328) ~[spigot-1.15.2.jar:git-Spigot-c574e08-807a677]
    at net.minecraft.server.v1_15_R1.EntityLiving.die(EntityLiving.java:1277) ~[spigot-1.15.2.jar:git-Spigot-c574e08-807a677]
    at net.minecraft.server.v1_15_R1.EntityLiving.damageEntity(EntityLiving.java:1124) ~[spigot-1.15.2.jar:git-Spigot-c574e08-807a677]
    at net.minecraft.server.v1_15_R1.EntitySquid.damageEntity(EntitySquid.java:140) ~[spigot-1.15.2.jar:git-Spigot-c574e08-807a677]
    at net.minecraft.server.v1_15_R1.EntityWaterAnimal.a(SourceFile:49) ~[spigot-1.15.2.jar:git-Spigot-c574e08-807a677]
    at net.minecraft.server.v1_15_R1.EntityWaterAnimal.entityBaseTick(SourceFile:60) ~[spigot-1.15.2.jar:git-Spigot-c574e08-807a677]
    at net.minecraft.server.v1_15_R1.Entity.tick(Entity.java:358) ~[spigot-1.15.2.jar:git-Spigot-c574e08-807a677]
    at net.minecraft.server.v1_15_R1.EntityLiving.tick(EntityLiving.java:2265) ~[spigot-1.15.2.jar:git-Spigot-c574e08-807a677]
    at net.minecraft.server.v1_15_R1.EntityInsentient.tick(EntityInsentient.java:273) ~[spigot-1.15.2.jar:git-Spigot-c574e08-807a677]
    at net.minecraft.server.v1_15_R1.WorldServer.entityJoinedWorld(WorldServer.java:626) ~[spigot-1.15.2.jar:git-Spigot-c574e08-807a677]
    at net.minecraft.server.v1_15_R1.World.a(World.java:688) [spigot-1.15.2.jar:git-Spigot-c574e08-807a677]
    at net.minecraft.server.v1_15_R1.WorldServer.doTick(WorldServer.java:395) [spigot-1.15.2.jar:git-Spigot-c574e08-807a677]
    at net.minecraft.server.v1_15_R1.MinecraftServer.b(MinecraftServer.java:1082) [spigot-1.15.2.jar:git-Spigot-c574e08-807a677]
    at net.minecraft.server.v1_15_R1.DedicatedServer.b(DedicatedServer.java:406) [spigot-1.15.2.jar:git-Spigot-c574e08-807a677]
    at net.minecraft.server.v1_15_R1.MinecraftServer.a(MinecraftServer.java:984) [spigot-1.15.2.jar:git-Spigot-c574e08-807a677]
    at net.minecraft.server.v1_15_R1.MinecraftServer.run(MinecraftServer.java:824) [spigot-1.15.2.jar:git-Spigot-c574e08-807a677]
    at java.lang.Thread.run(Thread.java:834) [?:?]
    Caused by: java.lang.NoSuchMethodError: 'org.bukkit.Chunk org.bukkit.entity.LivingEntity.getChunk()'
    at cat.nyaa.yasui.listener.EntityListener.onMobDeath(EntityListener.java:84) ~[?:?]
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
    at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:315) ~[spigot-1.15.2.jar:git-Spigot-c574e08-807a677]
    ... 21 more
    [12:47:25] [Server thread/INFO]: [MobHunting] Checking for new updates...
    Nice plugin thanks
     
  14. 卷老师好~
    I use Yasui on Paper-129 (MC: 1.15.2).

    If a mob is in a unloaded chunk when yasui release suppress-entity-ai.
    Then, the mob's ai while never recover unless it's in a loaded chunk when next engage and release suppress-entity-ai by manual or automatic.

    I don't know if it is a exception or common case.:cry:

    The version I use:
    Yasui-mc1.15.2-7.0.68.jar
    NyaaCore-mc1.15.2-7.1.362-shadowed.jar
    LangUtils-mc1.15.1-2.3.25.jar
     
    #39 Techxiu, Mar 9, 2020
    Last edited: Mar 10, 2020