kellerkindt / ShowCaseStandalone

GNU General Public License v3.0
2 stars 9 forks source link

java.lang.IllegalArgumentException: Cannot drop air #12

Open ghost opened 5 years ago

ghost commented 5 years ago

Hello ! When I start SCS with Paper, items don't show above selling blocks, and there's this error :

[Server thread/ERROR]: Could not pass event ShowCaseItemSpawnEvent to ShowCaseStandalone v789
java.lang.IllegalArgumentException: Cannot drop air
    at com.google.common.base.Preconditions.checkArgument(Preconditions.java:122) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.EntityItem.setItemStack(EntityItem.java:409) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.EntityItem.<init>(EntityItem.java:42) ~[patched_1.13.2.jar:git-Paper-561]
    at org.bukkit.craftbukkit.v1_13_R2.CraftWorld.dropItem(CraftWorld.java:348) ~[patched_1.13.2.jar:git-Paper-561]
    at com.kellerkindt.scs.internals.SimpleShopHandler.onShowCaseItemSpawnEvent(SimpleShopHandler.java:757) ~[?:?]
    at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor323.execute(Unknown Source) ~[?:?]
    at org.bukkit.plugin.EventExecutor.lambda$create$1(EventExecutor.java:67) ~[patched_1.13.2.jar:git-Paper-561]
    at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:78) ~[patched_1.13.2.jar:git-Paper-561]
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[patched_1.13.2.jar:git-Paper-561]
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:514) ~[patched_1.13.2.jar:git-Paper-561]
    at com.kellerkindt.scs.ShowCaseStandalone.callShowCaseEvent(ShowCaseStandalone.java:522) ~[?:?]
    at com.kellerkindt.scs.internals.SimpleShopHandler.show(SimpleShopHandler.java:724) ~[?:?]
    at com.kellerkindt.scs.internals.SimpleShopHandler.showShopsFor(SimpleShopHandler.java:420) ~[?:?]
    at com.kellerkindt.scs.listeners.WorldListener.onChunkLoad(WorldListener.java:48) ~[?:?]
    at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor335.execute(Unknown Source) ~[?:?]
    at org.bukkit.plugin.EventExecutor.lambda$create$1(EventExecutor.java:67) ~[patched_1.13.2.jar:git-Paper-561]
    at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:78) ~[patched_1.13.2.jar:git-Paper-561]
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[patched_1.13.2.jar:git-Paper-561]
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:514) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.Chunk.addEntities(Chunk.java:981) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.PaperAsyncChunkProvider$PendingChunk.postChunk(PaperAsyncChunkProvider.java:535) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.PaperAsyncChunkProvider$PendingChunk.postChunkToMain(PaperAsyncChunkProvider.java:487) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.PaperAsyncChunkProvider$PendingChunk.loadFinished(PaperAsyncChunkProvider.java:436) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.PaperAsyncChunkProvider$PendingChunk.run(PaperAsyncChunkProvider.java:579) ~[patched_1.13.2.jar:git-Paper-561]
    at com.destroystokyo.paper.util.PriorityQueuedExecutor.lambda$createPendingTask$1(PriorityQueuedExecutor.java:133) ~[patched_1.13.2.jar:git-Paper-561]
    at com.destroystokyo.paper.util.PriorityQueuedExecutor$PendingTask.run(PriorityQueuedExecutor.java:273) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.PaperAsyncChunkProvider.requestChunk(PaperAsyncChunkProvider.java:197) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.PaperAsyncChunkProvider.loadOrGenerateChunk(PaperAsyncChunkProvider.java:154) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.PaperAsyncChunkProvider.getChunkAt(PaperAsyncChunkProvider.java:150) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.ChunkProviderServer.getChunkAt(ChunkProviderServer.java:111) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.PaperAsyncChunkProvider.getChunkAt(PaperAsyncChunkProvider.java:136) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.World.getChunkAt(World.java:385) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.World.getChunkAtWorldCoords(World.java:381) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.World.getType(World.java:819) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.BlockDiodeAbstract.a(BlockDiodeAbstract.java:132) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.BlockDiodeAbstract.b(BlockDiodeAbstract.java:128) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.BlockRepeater.a(SourceFile:62) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.BlockDiodeAbstract.c(BlockDiodeAbstract.java:82) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.BlockDiodeAbstract.doPhysics(BlockDiodeAbstract.java:65) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.IBlockData.doPhysics(IBlockData.java:208) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.World.a(World.java:680) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.World.a(World.java:658) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.BlockDiodeAbstract.d(BlockDiodeAbstract.java:172) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.BlockDiodeAbstract.onPlace(BlockDiodeAbstract.java:154) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.IBlockData.onPlace(IBlockData.java:220) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.Chunk.setType(Chunk.java:589) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.World.setTypeAndData(World.java:431) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.BlockDiodeAbstract.a(BlockDiodeAbstract.java:46) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.IBlockData.a(IBlockData.java:228) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.WorldServer.b(WorldServer.java:674) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.TickListServer.a(TickListServer.java:85) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.WorldServer.q(WorldServer.java:656) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.WorldServer.doTick(WorldServer.java:296) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.MinecraftServer.b(MinecraftServer.java:1084) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.DedicatedServer.b(DedicatedServer.java:439) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.MinecraftServer.a(MinecraftServer.java:938) ~[patched_1.13.2.jar:git-Paper-561]
    at net.minecraft.server.v1_13_R2.MinecraftServer.run(MinecraftServer.java:836) ~[patched_1.13.2.jar:git-Paper-561]
    at java.lang.Thread.run(Thread.java:748) [?:1.8.0_201]

On a newer version, the same problem happens, but with this message : [ShowCaseStandalone] Unable to drop air for shop

I love SCS and I don't want to abandon it. Because floating items is nice. So please, can you fix it ? Thanks a lot, really, this is an awesome plugin. This is why I use it for soooo long ! Have a nice day !

kellerkindt commented 5 years ago

Hi, do you want to test the latest version? https://dev.bukkit.org/projects/scs/files/2684543

ghost commented 5 years ago

Hello, thank you for your answer. I tested on builds 789 and 793 from your Jenkins : https://jenkins.tallbyte.com/job/ShowCaseStandalone/

kellerkindt commented 5 years ago

Hi, you might want to try b803. It'll probably take a few hours until it's downloadable from Bukkit, Bit it's already available on Jenkins

ghost commented 5 years ago

Hello, I just tested, and the same problem occurs : Items above showcases don't show up, and there's the same message in the console : [ShowCaseStandalone] Unable to drop air for shop id=... (But, I repeat : Only with Paper, it doesn't happen with Spigot.)

Drift91 commented 4 years ago

@kellerkindt Do you plan on supporting PaperMC? I know your ticket guidelines over on BukkitDev state you don't support anything other than Bukkit. However Bukkit has essentially died and been replaced by Spigot, which is now being slowly supplanted by Paper. Any update would be greatly appreciated.

creekorful commented 4 years ago

Hey there!

I have faced the same issue on the latest build of PaperMC 1.13.2. I will have a look this week to see if I can fix this.

ghost commented 3 years ago

Hello, I just fixed this problem : https://github.com/Sailoriae/ShowCaseStandalone/commit/5e63136e968078907c4ea492a84259e1c003da0f Have a nice day ! ^^

kellerkindt commented 3 years ago

@Sailoriae If you open a PR, I will update the official version on bukkit with your fix.

ghost commented 3 years ago

@kellerkindt Okidoki, I've done it : https://github.com/kellerkindt/ShowCaseStandalone/pull/14 I also opened a PR for another bug : https://github.com/kellerkindt/ShowCaseStandalone/pull/15

BTW, if you still want to maintain this plugin, I think you should use AddstarMC's fork. They made a lot of good improvements. If you're interested, I made an 1.16.4 updated fork of their fork : https://github.com/Sailoriae/ShowCaseStandalone/tree/addstarmc-fork

By the way : Thank you for developping this amazing plugin and thank you for being still here ! :D

kellerkindt commented 3 years ago

I am not actively playing minecraft at the moment (thus no fixes from me), but I am happy to accept and I do welcome any sort of PRs :)

PS: as Promised, new version is on its way

grafik

grafik

ghost commented 3 years ago

Thank you ! :D

About the AddstarMC, do you want me to open a PR ? Pros to merge their modifications :

Cons :

What do you think ?

kellerkindt commented 3 years ago

That would be great! I glossed over the changes and also saw what you described. I`d love to adjust it so that new builds can be created by and downloaded from the GitHub Actions. But I do not have the time at hand to fix all the conflicts (#16) nor to verify everything is working after that.

I think it is a bit saddening to drop support for plugins which I pushed on for for so long. But I also see that getting artifacts for maven for compilation can be quite hard, if they are not up on a maven repo (I have them cached in my local maven directory... after all those years /inserte meme here/). TLDR; dropping legacy support is fine ... I guess

It would be lovely if you could chop up the changes into smaller-ish PRs, which makes it a lot easier for me to reason about the changes - and not to have to deal with all changes at once. But I also understand if this is too time consuming for you.

ghost commented 3 years ago

@kellerkindt I'll try. ^^ If you prefere, here's another solution : Create a branch "legacy", with the current code. It will be for servers on older version with dead plugins support. And we update to new Minecraft version on the "master" branch, with AddstarMC's improvements. What do you think ?

Important edit : It's useless to create a Pull Request. And too complicate. I think it would be better if you only rename your "master" branch to "legacy", and take my "addstarmc-fork" branch as your "master" branch. The AddstarMC fork is "synchronised" with your original repository, but with different commits names. You just need to cherry-pick your GH Actions commit. :D What do you think ? ^^

BTW, I'm really sorry if me english is a bit weird. ^^

Edit : List of plugins which listeners can be re-added on AddstarMC's fork for newer Minecraft versions :