Giter Site home page Giter Site logo

pufferfish's People

Contributors

kev626 avatar wefhy avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pufferfish's Issues

PluginClassLoader patch breaks plugin compatability with class loaders

https://github.com/pufferfish-gg/Pufferfish/blob/ver/1.19/patches/api/0003-Ignore-lookups-if-closed.patch

The above linked patch seems to cause an issue encountered in PlaceholderAPI, which also uses a classloader to load expansion jar files.
This has been reported here: PlaceholderAPI/PlaceholderAPI#868 and also on the HelpChat Discord numerous times.

I hope this can be fixed on your end, as there is (probably) no way for the plugin to fix it.

Build Failed

When I use ./gradlew createReobfBundlerJar to get jar, it build failed

> Task :pufferfish-server:compileJava FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':pufferfish-server:compileJava'.
> Could not resolve all files for configuration ':pufferfish-server:compileClasspath'.
   > Could not find datafixerupper-4.0.26.jar (com.mojang:datafixerupper:4.0.26).
     Searched in the following locations:
         https://papermc.io/repo/repository/maven-public/com/mojang/datafixerupper/4.0.26/datafixerupper-4.0.26.jar
   > Could not find brigadier-1.0.18.jar (com.mojang:brigadier:1.0.18).
     Searched in the following locations:
         https://papermc.io/repo/repository/maven-public/com/mojang/brigadier/1.0.18/brigadier-1.0.18.jar

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

* Get more help at https://help.gradle.org

Shulkers don't spawn properly in the end

For some reason shulkers aren't spawning as they should in the end, when I swithed to paper jar, shulkers spawned fine when loading new chunks in the end. Switched back to pufferfish jar and spawned in more new chunks, and the shulkers weren't spawning. All files are default, server was wiped before testing. No plugins other than multiverse & essentials tp to the end easily.

ItemSpawnEvent issue

Hello,
Does pufferfish call properly the ItemSpawnEvent ?

I'm using :
https://www.spigotmc.org/resources/upgradeable-hoppers-fast-hopper-plugin-link-containers-item-transfer-suction-chunk-1-19-support.69201/

And I use a setting "direct-suction: true" that's make items directly suctionned to the hopper when spawning in the chunk
It's working fine on paper 1.19.2, but not on pufferfish 1.19.2, so it might be related to paul's patches on hoppers.

On pufferfish (not working) : https://youtu.be/gfd32pVEy8k
On paper (working) : https://youtu.be/bNy_r4SXWiM

Discussion with the dev :
image

Excessive passive mob spawning

image
this happened and i think pufferfish is the most likely cause, i was afk at a nearby raid farm for a while (like 40k raids farmed kinda while) and then found this, in the area there were around 1000 turtles
image
this is the area, beaches are in black and the area marked in red is where most of the turtles were, also rabbits in the nearby desert

When watchdog shuts off the server there is possibility of null pointer being thrown preventing shutdown and stuck forever unless killed

how to reproduce

  • make sure prevent-moving-into-unloaded-chunks: false in paper's config
  • Launch a pufferfish server
  • make ton of players join the server (you can use https://github.com/PureGero/minecraft-stress-test for that) and tell bots to move in 1000x1000 or 2000x2000 radius
  • wait for watchdog to shutoff the server (due sync chunk loading)
[20:15:33 INFO]: Bot125 lost connection: Server is restarting
[20:15:33 INFO]: Bot125 left the game
[20:15:33 INFO]: Ham1255 lost connection: Server is restarting
[20:15:33 WARN]: Exception in thread "Paper Watchdog Thread" java.lang.NullPointerException: Cannot invoke "it.unimi.dsi.fastutil.ints.IntArrayList.getInt(int)" because "this.wrapped" is null
[20:15:33 WARN]: 	at it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap$MapIterator.nextEntry(Int2ObjectOpenHashMap.java:657)
[20:15:33 WARN]: 	at it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap$ValueIterator.next(Int2ObjectOpenHashMap.java:1164)
[20:15:33 WARN]: 	at net.minecraft.server.level.PlayerChunkMap.b(PlayerChunkMap.java:1237)
[20:15:33 WARN]: 	at net.minecraft.server.level.ChunkProviderServer.a(ChunkProviderServer.java:949)
[20:15:33 WARN]: 	at net.minecraft.server.level.WorldServer$a.f(WorldServer.java:2626)
[20:15:33 WARN]: 	at net.minecraft.server.level.WorldServer$a.b(WorldServer.java:2514)
[20:15:33 WARN]: 	at io.papermc.paper.chunk.system.entity.EntityLookup.entityStatusChange(EntityLookup.java:279)
[20:15:33 WARN]: 	at io.papermc.paper.chunk.system.entity.EntityLookup$EntityCallback.a(EntityLookup.java:823)
[20:15:33 WARN]: 	at net.minecraft.world.entity.Entity.b(Entity.java:4549)
[20:15:33 WARN]: 	at net.minecraft.world.entity.Entity.a(Entity.java:705)
[20:15:33 WARN]: 	at net.minecraft.world.entity.player.EntityHuman.a(EntityHuman.java:1491)
[20:15:33 WARN]: 	at net.minecraft.server.level.WorldServer.a(WorldServer.java:1578)
[20:15:33 WARN]: 	at net.minecraft.server.players.PlayerList.remove(PlayerList.java:624)
[20:15:33 WARN]: 	at net.minecraft.server.network.PlayerConnection.onDisconnect(PlayerConnection.java:2120)
[20:15:33 WARN]: 	at net.minecraft.server.network.PlayerConnection.disconnect(PlayerConnection.java:521)
[20:15:33 WARN]: 	at net.minecraft.server.network.PlayerConnection.disconnect(PlayerConnection.java:462)
[20:15:33 WARN]: 	at net.minecraft.server.players.PlayerList.removeAll(PlayerList.java:1315)
[20:15:33 WARN]: 	at net.minecraft.server.MinecraftServer.t(MinecraftServer.java:958)
[20:15:33 WARN]: 	at net.minecraft.server.dedicated.DedicatedServer.t(DedicatedServer.java:800)
[20:15:33 WARN]: 	at net.minecraft.server.MinecraftServer.close(MinecraftServer.java:901)
[20:15:33 WARN]: 	at org.spigotmc.WatchdogThread.run(WatchdogThread.java:233)

Server details

> plugins
[20:43:51 INFO]: Plugins (0): 
> version
[20:43:56 INFO]: Checking version, please wait...
[20:43:58 INFO]: This server is running Pufferfish version git-Pufferfish-58 (MC: 1.19.3) (Implementing API version 1.19.3-R0.1-SNAPSHOT) (Git: 9edb00b on HEAD)
You are on the latest version!
Previous version: git-Purpur-1915 (MC: 1.19.3)
> datapack list
[20:44:04 INFO]: There are 2 data packs enabled: [vanilla (built-in)], [file/bukkit (world)]
[20:44:04 INFO]: There are no more data packs available

more info

  • This issue does not happen on PaperMC

DAB drowns AI entities far away from the player

Expected behavior
Entities affected by the DAB should only slow down their behavior, but not cause them to die.

Actual behavior
Villagers far from the player will drown due to DAB. They should be able to stay afloat when away from the player.

https://youtu.be/eYJ5DcOBWxw

dab:
  enabled: true
  start-distance: 12
  max-tick-freq: 20
  activation-dist-mod: 8
  blacklisted-entities: []

Remove "icanhasbukkit" command from commands.yml

Hi!
I'm trying to remove "icanhasbukkit" command from commands.yml file but it keeps re-adding after a server restart.
It will work just if I completely disable the aliases using [].

We should be able to remove icanhasbukkit alias without completely disabling the feature.

Failed to light chunk and Failed to schedule load callback for chunk

After a short time of server operation, I came across a rather strange bug that appeared from nowhere. First, the error Failed to light chunk appeared, after that - Failed to schedule load callback for chunk, and after that the server completely froze, after which I had to turn it off personally, through the console terminal.

Full error - https://drive.google.com/file/d/1pbrP6mm2WD-d5GqZmoJpAqFKnekztHks/view?usp=sharing

bukkit.yml - https://pastebin.com/6N6rFc3x
spigot.yml - https://pastebin.com/7mqRdJ0j
paper.yml - https://pastebin.com/UqTiGEnp
pufferfish.yml - https://pastebin.com/YJJ7sci6

DAB distance selects the last player to join the server, not the nearest player

This is easy to test:

  1. Set activation-dist-mod: 1 max-tick-freq: 200 start-distance: 12 make the phenomenon more obvious.
  2. Build a fish tank and put the axolotl into it, because the axolotl is very active, make the phenomenon more obvious.
  3. Join two accounts successively, put the first one beside the fish tank for observation, and move the other one in different positions.
  4. Observe the activity of axolotl.

The video shows the screen of players who joined the game first:
https://www.youtube.com/watch?v=J0SJcGXnLII

On join client don't get some chunks loaded, server stops communicating with client and client disconnects

https://pastebin.com/BwCcgybG
https://pastebin.com/AJY1FkS7

After server restart I can't login two times - not all chunks are loaded and I got kicked, on the third time lobby is loaded~
I have lots (100+) of maps on my Lobby server

Minecraft Pufferfish-32 1.19.2, BungeeCord
Plugins on Lobby server (19): BungeeGuard, BungeeTabListPlus, DeluxeHub, DrMap, Essentials, EssentialsChat, EssentialsSpawn, FastAsyncWorldEdit (WorldEdit), KeepChunks, LuckPerms, nLogin, PlaceholderAPI, ProtocolLib, SimplePortals, SurvivalInvisiframes, Vault, VentureChat, WorldGuard, WorldGuardExtraFlags

Originally I wrote an issue to the DrMap plugin, dev said that it look like it might be pufferfish bug: akdukaan/DrMap#9

Could not load 'plugins/worldedit-mod-7.2.8.jar' in folder 'plugins'

[03:07:08 ERROR]: Could not load 'plugins/worldedit-mod-7.2.8.jar' in folder 'plugins'
org.bukkit.plugin.InvalidDescriptionException: Invalid plugin.yml
at org.bukkit.plugin.java.JavaPluginLoader.getPluginDescription(JavaPluginLoader.java:178) ~[pufferfish-api-1.18.1-R0.1-SNAPSHOT.jar:?]
at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:158) ~[pufferfish-api-1.18.1-R0.1-SNAPSHOT.jar:?]
at org.bukkit.craftbukkit.v1_18_R1.CraftServer.loadPlugins(CraftServer.java:422) ~[pufferfish-1.18.1.jar:git-Pufferfish-38]
at net.minecraft.server.dedicated.DedicatedServer.initServer(DedicatedServer.java:287) ~[pufferfish-1.18.1.jar:git-Pufferfish-38]
at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1204) ~[pufferfish-1.18.1.jar:git-Pufferfish-38]
at net.minecraft.server.MinecraftServer.lambda$spin$1(MinecraftServer.java:319) ~[pufferfish-1.18.1.jar:git-Pufferfish-38]
at java.lang.Thread.run(Thread.java:833) ~[?:?]
Caused by: java.io.FileNotFoundException: Jar does not contain plugin.yml
... 7 more

[Patch Request] Porting some patches for getting great performance

In the previous issue I mentioned the server I manage. We have a large amount of entities and tile entities, it would be interesting to have patches on Pufferfish that optimize these.

Patina, a very good and stable software, in 1.17 offers these stable patches:

  1. lithium-entity.fast_retrieval.patch - lithium-entity.fast_retrieval.patch
  2. New-nbt-cache.patch
  3. Optimize-TileEntity-load-unload.patch
  4. Item-stuck-sleep.patch

The third patch is very useful for servers that have high amounts of TE.

Please consider adding these patches, so that our servers will enjoy high performance!

Hoglins don't move on Pufferfish-Purpur

Builds tested:
Paper 77 (Hoglins move)
Purpur 1443 (Hoglins move)
Pufferfish-Purpur 7 (Hoglins do not move, AI broken?)

I've tested Pufferfish-Purpur with DEAR/DAB disabled and async mob spawning disabled, still doesn't work. Switching back to normal Purpur re-activates their AI.

Liquid optimizations

Hello I currently manage a network with over 800 daily players and the network has 2 skyblock servers with 320 max players for each server. Both servers are a copy paste (Diamond 1 and Diamond 2) and one of them is heavily lagging and we noticied that liquids are taking a huge chunk of performances :
https://spark.lucko.me/n0X9Ybg9su
image

We did a ton of config optimizations and more and only this is the main thing lagging the server.

Flare support for aarch64

Hi!
Currently flare doesn't work on aarch64 based machines due to missing of libasyncprofiler.so in the jar.

[11:20:10 WARN]: Failed to enable Flare:
co.technove.flare.internal.profiling.InitializationException: Failed to find linux-aarch64/libasyncProfiler.so inside JAR, is this operating system supported?
at co.technove.flare.internal.profiling.AsyncProfilerIntegration.init(AsyncProfilerIntegration.java:61) ~[Flare-34637f3f87.jar:?]
at co.technove.flare.internal.FlareInternal.initialize(FlareInternal.java:91) ~[Flare-34637f3f87.jar:?]
at co.technove.flare.FlareInitializer.initialize(FlareInitializer.java:10) ~[Flare-34637f3f87.jar:?]
at gg.pufferfish.pufferfish.flare.FlareSetup.init(FlareSetup.java:20) ~[pufferfish-1.18.2.jar:git-Pufferfish-66]
at gg.pufferfish.pufferfish.PufferfishConfig.airplaneWebServices(PufferfishConfig.java:275) ~[pufferfish-1.18.2.jar:git-Pufferfish-66]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[?:?]
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
at java.lang.reflect.Method.invoke(Method.java:568) ~[?:?]
at gg.pufferfish.pufferfish.PufferfishConfig.load(PufferfishConfig.java:80) ~[pufferfish-1.18.2.jar:git-Pufferfish-66]
at net.minecraft.server.dedicated.DedicatedServer.initServer(DedicatedServer.java:238) ~[pufferfish-1.18.2.jar:git-Pufferfish-66]
at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1165) ~[pufferfish-1.18.2.jar:git-Pufferfish-66]
at net.minecraft.server.MinecraftServer.lambda$spin$1(MinecraftServer.java:317) ~[pufferfish-1.18.2.jar:git-Pufferfish-66]
at java.lang.Thread.run(Thread.java:833) ~[?:?]

from what I know libasyncProfiler.so, is supported for aarch64 also. Is it possbile to have builds for aarch64 too? or somehow I can nudge it in while building?

strange error

[17:06:08 WARN]: Skipping Entity with id
[17:06:10 WARN]: Skipping Entity with id

ver: Pufferfish version git-Pufferfish-58 (MC: 1.19.3) (Implementing API version 1.19.3-R0.1-SNAPSHOT) (Git: 9edb00b on HEAD)

Suggestion: DAB settings per entity type

DAB settings that apply to all entities, as currently possible, and then the option to override some settings for specific entity types.

That's it, really. Reason: different entity types have different time costs to tick, and different impacts on gameplay when not ticked.

Clean up output name of Jenkins

It would make automatic downloading easier if the artifact name was more similar to Airplane's output, i.e. pufferfish-launcher.jar or something like that.

It seems Paul did this using a quick cp build/libs/Airplane-1.17.1-R0.1-SNAPSHOT.jar launcher-airplane.jar at the end of the Jenkins job.

Error when running the .jar file with ubuntu

When I run the file with an ubuntu server I get this error:

ubuntu@ubuntu:~/pufferfish$ ./pufferfish-1.18.1.jar ./pufferfish-1.18.1.jar: line 1: $'PK\003\004': command not found ./pufferfish-1.18.1.jar: line 2: $'}\035ST': command not found gbgbgbPK: No such file or directoryTMETA-INF/maven/UT gbgbgbPK: No such file or directoryTMETA-INF/maven/io.sigpipe/UT �1gbgb}ST�k�2cd0META-INF/maven/io.sigpipe/jbsdiff/pom.propertiesUT/UT �0�=������I/��T�Ж� �^��G�٠~pV7;(��5!5���yY�����c�*+أ�����${��b����k�}ST�9ɩZ�)META-INF/maven/io.sigpipegbgbgb�Y_o�6��>l�$&i7��6K;�m�M��(��D :��?�f��.ϼ[: bad substitution ./pufferfish-1.18.1.jar: line 8: $'\221\362\200\233ɧˍR\305': command not found ./pufferfish-1.18.1.jar: line 10: syntax error near unexpected token ')' ./pufferfish-1.18.1.jar: line 10: '2����vC�jn{���l+{��T�X/4�0�T]v��^upd����J�M�Zx�n8�M�ǽ�����w�G ��u�P;yXFa��'cȋa���S��9d���C�p�Uע�8[Gq�J8��❜�In��)ѭE�D ��O�� �K�4q�L����;��19t'�iؑ;����p�׵�UJ�@�9Ξr��l������quhB�q��! ̹�9e4���k,��kmҰPL���߽��$"�[�7}�]�3gL���)���<�� ʴ#�D&�̝~c�ͣy���b��'��A����~B�z�;��{p�їL �'

For what OS is this minecraft server made?

Player command after kicked -> Potential dupe bug

Hey, on my server Players discovered copying items, after reviewing the logs it turned out that their commands are executed after they are kicked off the server, so for example they could bug the auction market and copy items with it.

On my second server with version 1.19.3 this error does not occur, only on version 1.19.4. Logs below

[09:47:01] [Server thread/INFO]: Vodka2Best issued server command: /ah
[09:47:01] [Server thread/INFO]: Vodka2Best issued server command: /ah
[09:47:01] [Server thread/INFO]: Vodka2Best issued server command: /ah
[09:47:01] [Server thread/INFO]: Vodka2Best lost connection: Kicked for spamming
[09:47:01] [Server thread/INFO]: Vodka2Best issued server command: /ah
[09:47:01] [Server thread/INFO]: Vodka2Best issued server command: /ah
[09:47:01] [Server thread/ERROR]: null
org.bukkit.command.CommandException: Unhandled exception executing command 'ah' in plugin rgmc-auctions v1.0-SNAPSHOT
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:47) ~[pufferfish-api-1.19.4-R0.1-SNAPSHOT.jar:?]
at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:155) ~[pufferfish-api-1.19.4-R0.1-SNAPSHOT.jar:?]
at org.bukkit.craftbukkit.v1_19_R3.CraftServer.dispatchCommand(CraftServer.java:906) ~[pufferfish-1.19.4.jar:git-Pufferfish-67]
at org.bukkit.craftbukkit.v1_19_R3.command.BukkitCommandWrapper.run(BukkitCommandWrapper.java:64) ~[pufferfish-1.19.4.jar:git-Pufferfish-67]
at com.mojang.brigadier.CommandDispatcher.execute(CommandDispatcher.java:264) ~[pufferfish-1.19.4.jar:?]
at net.minecraft.commands.Commands.performCommand(Commands.java:322) ~[?:?]
at net.minecraft.commands.Commands.performCommand(Commands.java:306) ~[?:?]
at net.minecraft.server.network.ServerGamePacketListenerImpl.performChatCommand(ServerGamePacketListenerImpl.java:2291) ~[?:?]
at net.minecraft.server.network.ServerGamePacketListenerImpl.lambda$handleChatCommand$20(ServerGamePacketListenerImpl.java:2251) ~[?:?]
at net.minecraft.util.thread.BlockableEventLoop.lambda$submitAsync$0(BlockableEventLoop.java:59) ~[?:?]
at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768) ~[?:?]
at net.minecraft.server.TickTask.run(TickTask.java:18) ~[pufferfish-1.19.4.jar:git-Pufferfish-67]
at net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:153) ~[?:?]
at net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:24) ~[?:?]
at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:1344) ~[pufferfish-1.19.4.jar:git-Pufferfish-67]
at net.minecraft.server.MinecraftServer.d(MinecraftServer.java:197) ~[pufferfish-1.19.4.jar:git-Pufferfish-67]
at net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:126) ~[?:?]
at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1321) ~[pufferfish-1.19.4.jar:git-Pufferfish-67]
at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1314) ~[pufferfish-1.19.4.jar:git-Pufferfish-67]
at net.minecraft.util.thread.BlockableEventLoop.managedBlock(BlockableEventLoop.java:136) ~[?:?]
at net.minecraft.server.MinecraftServer.waitUntilNextTick(MinecraftServer.java:1292) ~[pufferfish-1.19.4.jar:git-Pufferfish-67]
at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1180) ~[pufferfish-1.19.4.jar:git-Pufferfish-67]
at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:322) ~[pufferfish-1.19.4.jar:git-Pufferfish-67]
at java.lang.Thread.run(Thread.java:833) ~[?:?]
Caused by: net.minecraft.server.CancelledPacketHandleException
[09:47:01] [Server thread/INFO]: Vodka2Best issued server command: /ah sell 1000

Having issue with activate pillager raid machine

Pufferfish unable to activate the non-stop raid process on the pillager raid machine, which the process relay on keep switching the villager's working block to refresh the "bad-omen" buff.
The process works perfectly on the Paper client, with the paper.yml config that validatenearbypoi: -1 under the villager behavior under the tick-rates`

Add a command line argument to rename/move config folder

Same as PaperMC/Paper#7948

Add a --pufferfish-settings command-line argument to the startup flags so we are able to specify where pufferfish.yml is saved. For example --paper-settings-directory "settings/" saves all the paper configs to the settings/paper.yml folder within the server directory.

So it could be for example --pufferfish-settings "settings/pufferfish.yml"

An error occurred while using the LuckyTreasure plugin.

[18:34:15 INFO]: Gizus_ issued server command: /tr test world mystery
[18:34:16 ERROR]: null
org.bukkit.command.CommandException: Unhandled exception executing command 'tr' in plugin LuckyTreasure v4.192
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:47) ~[pufferfish-api-1.18.1-R0.1-SNAPSHOT.jar:?]
at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:159) ~[pufferfish-api-1.18.1-R0.1-SNAPSHOT.jar:?]
at org.bukkit.craftbukkit.v1_18_R1.CraftServer.dispatchCommand(CraftServer.java:907) ~[pufferfish-1.18.1.jar:git-Pufferfish-47]
at net.minecraft.server.network.ServerGamePacketListenerImpl.handleCommand(ServerGamePacketListenerImpl.java:2290) ~[?:?]
at net.minecraft.server.network.ServerGamePacketListenerImpl.handleChat(ServerGamePacketListenerImpl.java:2101) ~[?:?]
at net.minecraft.server.network.ServerGamePacketListenerImpl.handleChat(ServerGamePacketListenerImpl.java:2082) ~[?:?]
at net.minecraft.network.protocol.game.ServerboundChatPacket.handle(ServerboundChatPacket.java:46) ~[?:?]
at net.minecraft.network.protocol.game.ServerboundChatPacket.a(ServerboundChatPacket.java:6) ~[?:?]
at net.minecraft.network.protocol.PacketUtils.lambda$ensureRunningOnSameThread$1(PacketUtils.java:56) ~[?:?]
at net.minecraft.server.TickTask.run(TickTask.java:18) ~[pufferfish-1.18.1.jar:git-Pufferfish-47]
at net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:149) ~[?:?]
at net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:23) ~[?:?]
at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:1416) ~[pufferfish-1.18.1.jar:git-Pufferfish-47]
at net.minecraft.server.MinecraftServer.c(MinecraftServer.java:189) ~[pufferfish-1.18.1.jar:git-Pufferfish-47]
at net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:122) ~[?:?]
at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1393) ~[pufferfish-1.18.1.jar:git-Pufferfish-47]
at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1386) ~[pufferfish-1.18.1.jar:git-Pufferfish-47]
at net.minecraft.util.thread.BlockableEventLoop.runAllTasks(BlockableEventLoop.java:110) ~[?:?]
at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1521) ~[pufferfish-1.18.1.jar:git-Pufferfish-47]
at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1266) ~[pufferfish-1.18.1.jar:git-Pufferfish-47]
at net.minecraft.server.MinecraftServer.lambda$spin$1(MinecraftServer.java:319) ~[pufferfish-1.18.1.jar:git-Pufferfish-47]
at java.lang.Thread.run(Thread.java:833) ~[?:?]
Caused by: java.lang.NoClassDefFoundError: org/bukkit/craftbukkit/v1_17_R1/CraftWorld
at me.lamma.luckytreasure.Utils.changeSkin(Utils.java:123) ~[LuckyTreasure-4.192.jar:?]
at me.lamma.luckytreasure.LuckyTreasure.setTreasure(LuckyTreasure.java:598) ~[LuckyTreasure-4.192.jar:?]
at me.lamma.luckytreasure.commands.TR.onCommand(TR.java:960) ~[LuckyTreasure-4.192.jar:?]
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45) ~[pufferfish-api-1.18.1-R0.1-SNAPSHOT.jar:?]
... 21 more
Caused by: java.lang.ClassNotFoundException: org.bukkit.craftbukkit.v1_17_R1.CraftWorld
at org.bukkit.plugin.java.PluginClassLoader.loadClass0(PluginClassLoader.java:153) ~[pufferfish-api-1.18.1-R0.1-SNAPSHOT.jar:?]
at org.bukkit.plugin.java.PluginClassLoader.loadClass(PluginClassLoader.java:105) ~[pufferfish-api-1.18.1-R0.1-SNAPSHOT.jar:?]
at java.lang.ClassLoader.loadClass(ClassLoader.java:520) ~[?:?]
at me.lamma.luckytreasure.Utils.changeSkin(Utils.java:123) ~[LuckyTreasure-4.192.jar:?]
at me.lamma.luckytreasure.LuckyTreasure.setTreasure(LuckyTreasure.java:598) ~[LuckyTreasure-4.192.jar:?]
at me.lamma.luckytreasure.commands.TR.onCommand(TR.java:960) ~[LuckyTreasure-4.192.jar:?]
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45) ~[pufferfish-api-1.18.1-R0.1-SNAPSHOT.jar:?]

Console Spam Error Head

Hi, I have a problem with PufferFish 1.18
My console spams the following messages:

[User Authenticator #2/WARN]: Couldn't look up profile properties for com.mojang.authlib.GameProfile@6839051a[id=3568ed37-1108-40ab-b93d-ce5184936e66,name=Persant,properties={},legacy=false] com.mojang.authlib.exceptions.AuthenticationUnavailableException: Cannot contact authentication server at com.mojang.authlib.yggdrasil.YggdrasilAuthenticationService.makeRequest(YggdrasilAuthenticationService.java:126) ~[authlib-3.2.38.jar:?] at com.mojang.authlib.yggdrasil.YggdrasilAuthenticationService.makeRequest(YggdrasilAuthenticationService.java:100) ~[authlib-3.2.38.jar:?] at com.mojang.authlib.yggdrasil.YggdrasilMinecraftSessionService.fillGameProfile(YggdrasilMinecraftSessionService.java:194) ~[authlib-3.2.38.jar:?] at com.destroystokyo.paper.profile.PaperMinecraftSessionService.fillGameProfile(PaperMinecraftSessionService.java:38) ~[pufferfish-1.18.1.jar:git-Pufferfish-47] at com.mojang.authlib.yggdrasil.YggdrasilMinecraftSessionService.fillProfileProperties(YggdrasilMinecraftSessionService.java:187) ~[authlib-3.2.38.jar:?] at com.destroystokyo.paper.profile.PaperMinecraftSessionService.fillProfileProperties(PaperMinecraftSessionService.java:31) ~[pufferfish-1.18.1.jar:git-Pufferfish-47] at com.destroystokyo.paper.profile.CraftPlayerProfile.complete(CraftPlayerProfile.java:229) ~[pufferfish-1.18.1.jar:git-Pufferfish-47] at com.destroystokyo.paper.profile.CraftPlayerProfile.complete(CraftPlayerProfile.java:223) ~[pufferfish-1.18.1.jar:git-Pufferfish-47] at net.minecraft.server.network.ServerLoginPacketListenerImpl$LoginHandler.fireEvents(ServerLoginPacketListenerImpl.java:398) ~[?:?] at net.minecraft.server.network.ServerLoginPacketListenerImpl$1.run(ServerLoginPacketListenerImpl.java:285) ~[?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?] at java.lang.Thread.run(Thread.java:833) ~[?:?] Caused by: com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 1 column 1 path $ at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:226) ~[gson-2.8.8.jar:?] at com.google.gson.Gson.fromJson(Gson.java:932) ~[gson-2.8.8.jar:?] at com.google.gson.Gson.fromJson(Gson.java:897) ~[gson-2.8.8.jar:?] at com.google.gson.Gson.fromJson(Gson.java:846) ~[gson-2.8.8.jar:?] at com.google.gson.Gson.fromJson(Gson.java:817) ~[gson-2.8.8.jar:?] at com.mojang.authlib.yggdrasil.YggdrasilAuthenticationService.makeRequest(YggdrasilAuthenticationService.java:106) ~[authlib-3.2.38.jar:?] ... 12 more Caused by: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 1 column 1 path $ at com.google.gson.stream.JsonReader.beginObject(JsonReader.java:384) ~[gson-2.8.8.jar:?] at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:215) ~[gson-2.8.8.jar:?] at com.google.gson.Gson.fromJson(Gson.java:932) ~[gson-2.8.8.jar:?] at com.google.gson.Gson.fromJson(Gson.java:897) ~[gson-2.8.8.jar:?] at com.google.gson.Gson.fromJson(Gson.java:846) ~[gson-2.8.8.jar:?] at com.google.gson.Gson.fromJson(Gson.java:817) ~[gson-2.8.8.jar:?] at com.mojang.authlib.yggdrasil.YggdrasilAuthenticationService.makeRequest(YggdrasilAuthenticationService.java:106) ~[authlib-3.2.38.jar:?] ... 12 more

And here is another error

[16:41:50 FATAL]: Error executing task on Server java.lang.IllegalArgumentException: Comparison method violates its general contract! at java.util.TimSort.mergeHi(TimSort.java:903) ~[?:?] at java.util.TimSort.mergeAt(TimSort.java:520) ~[?:?] at java.util.TimSort.mergeCollapse(TimSort.java:448) ~[?:?] at java.util.TimSort.sort(TimSort.java:245) ~[?:?] at java.util.Arrays.sort(Arrays.java:1307) ~[?:?] at java.util.stream.SortedOps$SizedRefSortingSink.end(SortedOps.java:353) ~[?:?] at java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:528) ~[?:?] at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:513) ~[?:?] at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) ~[?:?] at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150) ~[?:?] at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173) ~[?:?] at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:?] at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596) ~[?:?] at net.minecraft.server.players.GameProfileCache.save(GameProfileCache.java:304) ~[?:?] at net.minecraft.server.players.GameProfileCache.add(GameProfileCache.java:138) ~[?:?] at net.minecraft.world.level.block.entity.SkullBlockEntity.lambda$updateGameprofile$2(SkullBlockEntity.java:160) ~[?:?] at net.minecraft.server.TickTask.run(TickTask.java:18) ~[pufferfish-1.18.1.jar:git-Pufferfish-47] at net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:149) ~[?:?] at net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:23) ~[?:?] at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:1416) ~[pufferfish-1.18.1.jar:git-Pufferfish-47] at net.minecraft.server.MinecraftServer.c(MinecraftServer.java:189) ~[pufferfish-1.18.1.jar:git-Pufferfish-47] at net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:122) ~[?:?] at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1393) ~[pufferfish-1.18.1.jar:git-Pufferfish-47] at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1386) ~[pufferfish-1.18.1.jar:git-Pufferfish-47] at net.minecraft.util.thread.BlockableEventLoop.managedBlock(BlockableEventLoop.java:132) ~[?:?] at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1465) ~[pufferfish-1.18.1.jar:git-Pufferfish-47] at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1266) ~[pufferfish-1.18.1.jar:git-Pufferfish-47] at net.minecraft.server.MinecraftServer.lambda$spin$1(MinecraftServer.java:319) ~[pufferfish-1.18.1.jar:git-Pufferfish-47] at java.lang.Thread.run(Thread.java:833) ~[?:?]

I am not blacklisted by mojang, and the uuid or nickname is always different. I tried with and without plugin, I tried to remove my firewall rules.

My version :
image

My plugin list:
image

Spark:
https://spark.lucko.me/kKoBER0XWW

Flare:
https://flare.airplane.gg/0385e4dc

Entity discard problem

Hello, I have problem with Pufferfish core jar, I'm getting this error when players try to join, any idea what can cause it? Tested with paper and it doesn't happen there:
21.10 03:18:33 [Server] INFO Attempt to teleport removed player Celesth restricted
21.10 03:18:33 [Server] WARN [EntityLookup] Refusing to add removed entity: EntityPlayer['Celesth'/384, uuid='50797f08-0abc-42fb-8b0f-711d78969078', l='ServerLevel[world]', x=0.00, y=80.00, z=0.00, cpos=[0, 0], tl=0, v=false, removed=DISCARDED](Celesth at 0.0,80.0,0.0)
https://pastebin.com/NNFKrPff

Levitation 255 does not disable gravity

Using Pufferfish 1.19 on test server, custom plugin can't avoid vanilla gravity using levitation lvl 255.
Changed server to work with Paper 1.19 and gravity turned off.

Is it possible to put this in the config?

Server crash

This server is running Purpur version git-Purpur-1763 (MC: 1.19.2)

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x000002276b49f668, pid=8420, tid=1620
#
# JRE version: OpenJDK Runtime Environment Zulu18.32+11-CA (18.0.2+9) (build 18.0.2+9)
# Java VM: OpenJDK 64-Bit Server VM Zulu18.32+11-CA (18.0.2+9, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, windows-amd64)
# Problematic frame:
# J 62603 c2 gg.pufferfish.pufferfish.tracker.MultithreadedTracker.processChunk(Lnet/minecraft/world/level/chunk/Chunk;)V (136 bytes) @ 0x000002276b49f668 [0x000002276b49f200+0x0000000000000468]
#
# No core dump will be written. Minidumps are not enabled by default on client versions of Windows
#
# If you would like to submit a bug report, please visit:
#   http://www.azul.com/support/
#

hs_err_pid8420.log - https://pastebin.com/40XhDeP8

[1.19] Enabling anti-xray causes an error.

Pufferfish-1.19 #2
Enabling anti-xray causes an error.

paper-world-defaults.yml

anticheat:
  anti-xray:
    enabled: true

log

[22:27:15] [Server thread/ERROR]: Encountered an unexpected exception
java.lang.NullPointerException: Cannot invoke "net.minecraft.util.RandomSource.a(int)" because the return value of "net.minecraft.server.level.WorldServer.getThreadUnsafeRandom()" is null
	at net.minecraft.world.level.chunk.LevelChunk.<init>(LevelChunk.java:139) ~[?:?]
	at net.minecraft.world.level.chunk.LevelChunk.<init>(LevelChunk.java:110) ~[?:?]
	at net.minecraft.world.level.chunk.EmptyLevelChunk.<init>(EmptyLevelChunk.java:20) ~[?:?]
	at com.destroystokyo.paper.antixray.ChunkPacketBlockControllerAntiXray.<init>(ChunkPacketBlockControllerAntiXray.java:127) ~[pufferfish-1.19.jar:git-Pufferfish-2]
	at net.minecraft.world.level.Level.<init>(Level.java:375) ~[?:?]
	at net.minecraft.server.level.ServerLevel.<init>(ServerLevel.java:491) ~[?:?]
	at net.minecraft.server.MinecraftServer.loadWorld0(MinecraftServer.java:585) ~[pufferfish-1.19.jar:git-Pufferfish-2]
	at net.minecraft.server.MinecraftServer.loadLevel(MinecraftServer.java:421) ~[pufferfish-1.19.jar:git-Pufferfish-2]
	at net.minecraft.server.dedicated.DedicatedServer.initServer(DedicatedServer.java:308) ~[pufferfish-1.19.jar:git-Pufferfish-2]
	at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1123) ~[pufferfish-1.19.jar:git-Pufferfish-2]
	at net.minecraft.server.MinecraftServer.lambda$spin$1(MinecraftServer.java:304) ~[pufferfish-1.19.jar:git-Pufferfish-2]
	at java.lang.Thread.run(Thread.java:833) ~[?:?]

CaveVinesBlock ticking crash

After trying to run the CI build for commit b0a86c4, the server promptly crashes when loading in.

[01:47:14] [Server thread/ERROR]: Encountered an unexpected exception
net.minecraft.ReportedException: Exception ticking world
	at net.minecraft.server.MinecraftServer.tickChildren(MinecraftServer.java:1628) ~[pufferfish-1.18.jar:git-Pufferfish-4]
	at net.minecraft.server.dedicated.DedicatedServer.tickChildren(DedicatedServer.java:483) ~[pufferfish-1.18.jar:git-Pufferfish-4]
	at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1472) ~[pufferfish-1.18.jar:git-Pufferfish-4]
	at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1266) ~[pufferfish-1.18.jar:git-Pufferfish-4]
	at net.minecraft.server.MinecraftServer.lambda$spin$1(MinecraftServer.java:319) ~[pufferfish-1.18.jar:git-Pufferfish-4]
	at java.lang.Thread.run(Thread.java:831) ~[?:?]
Caused by: java.lang.NoSuchMethodError: 'float java.util.Random.nextFloat(float)'
	at net.minecraft.world.level.block.CaveVinesBlock.getGrowIntoState(CaveVinesBlock.java:56) ~[pufferfish-1.18.jar:git-Pufferfish-4]
	at net.minecraft.world.level.block.GrowingPlantHeadBlock.randomTick(GrowingPlantHeadBlock.java:61) ~[?:?]
	at net.minecraft.world.level.block.state.BlockBehaviour$BlockStateBase.randomTick(BlockBehaviour.java:962) ~[?:?]
	at net.minecraft.server.level.ServerLevel.tickChunk(ServerLevel.java:846) ~[?:?]
	at net.minecraft.server.level.ServerChunkCache.tickChunks(ServerChunkCache.java:1047) ~[?:?]
	at net.minecraft.server.level.ServerChunkCache.tick(ServerChunkCache.java:926) ~[?:?]
	at net.minecraft.server.level.ServerLevel.tick(ServerLevel.java:622) ~[?:?]
	at net.minecraft.server.MinecraftServer.tickChildren(MinecraftServer.java:1609) ~[pufferfish-1.18.jar:git-Pufferfish-4]
	... 5 more
[01:47:14] [Server thread/ERROR]: 	Cause of unexpected exception was
java.lang.NoSuchMethodError: 'float java.util.Random.nextFloat(float)'
	at net.minecraft.world.level.block.CaveVinesBlock.getGrowIntoState(CaveVinesBlock.java:56) ~[pufferfish-1.18.jar:git-Pufferfish-4]
	at net.minecraft.world.level.block.GrowingPlantHeadBlock.randomTick(GrowingPlantHeadBlock.java:61) ~[?:?]
	at net.minecraft.world.level.block.state.BlockBehaviour$BlockStateBase.randomTick(BlockBehaviour.java:962) ~[?:?]
	at net.minecraft.server.level.ServerLevel.tickChunk(ServerLevel.java:846) ~[?:?]
	at net.minecraft.server.level.ServerChunkCache.tickChunks(ServerChunkCache.java:1047) ~[?:?]
	at net.minecraft.server.level.ServerChunkCache.tick(ServerChunkCache.java:926) ~[?:?]
	at net.minecraft.server.level.ServerLevel.tick(ServerLevel.java:622) ~[?:?]
	at net.minecraft.server.MinecraftServer.tickChildren(MinecraftServer.java:1609) ~[pufferfish-1.18.jar:git-Pufferfish-4]
	at net.minecraft.server.dedicated.DedicatedServer.tickChildren(DedicatedServer.java:483) ~[pufferfish-1.18.jar:git-Pufferfish-4]
	at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1472) ~[pufferfish-1.18.jar:git-Pufferfish-4]
	at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1266) ~[pufferfish-1.18.jar:git-Pufferfish-4]
	at net.minecraft.server.MinecraftServer.lambda$spin$1(MinecraftServer.java:319) ~[pufferfish-1.18.jar:git-Pufferfish-4]
	at java.lang.Thread.run(Thread.java:831) ~[?:?]
[01:47:14] [Server thread/ERROR]: This crash report has been saved to: /home/container/./crash-reports/crash-2021-12-04_01.47.14-server.txt
[01:47:14] [Server thread/INFO]: Stopping server

[Patch Request] Purpur Sign Utility Patches/Purpur Branch

Your Pufferfish fork looks very interesting.
I manage an Italian vanilla server of a YouTuber/Streamer very well known in the community, with very high build quality and is very played by about 50 players up to 100/150 peak.

I am creating this issue to ask you if it was possible to add 2 useful sign patches to Pufferfish, or to totally incorporate Purpur (as it also offers performance optimization patches).

  1. Signs Color Codes
  2. Editable Signs

Suggestion: Pick up 3 items in Hopper

Set the hoppers so that they can only hold 3 items at a time to avoid laggs

The funnels ask if there are items above it, if there are any, it forwards them, and it usually does this about 20 times a second. This can lead to lags.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.