Spigot Custom EnderChest 1.13.1

[1.7.10 - 1.16.3] Similar to popular EnderChest++ but with more features and up to date.

  1. How do i give non oped players a level 5 e chest?
     
  2. With a permission plugin give one of this permissions to the players

    • CustomEnderChest.level.0 - For 9 slots(1 raw) EnderChest size
    • CustomEnderChest.level.1 - For 18 slots(2 raw's) EnderChest size
    • CustomEnderChest.level.2 - For 27 slots(3 raw's) EnderChest size
    • CustomEnderChest.level.3 - For 36 slots(4 raw's) EnderChest size
    • CustomEnderChest.level.4 - For 45 slots(5 raw's) EnderChest size
    • CustomEnderChest.level.5 - For 54 slots(6 raw's) EnderChest size
     
  3. Players are losing all his items, idk why :(
     
    • Agree Agree x 1
  4. @brunyman Is this compatible with your Plugin Mysql PlayerDataBridge?
     
  5. If you disable enderchest sync on MPDB yes, as this creates a virtual enderchest and replaces the vanilla one in order to change it's inventory size.
     
    • Like Like x 1
  6. Is it possible that you can add an option to enderchest for worlds?
     
  7. Dev, please be aware that your plugin has a major duplication bug. Players will occasionally log off and trigger an issue where their ender chest goes into a static mode. This means that they can open the ender chest and take anything they want out, then when they open it again, all of the items are back as though nothing was taken. This also can cause players to lose items, as they put things in, and then it is not there when they open it again.

    You have multiple reports of this, please see the image below:

    https://imgur.com/a/ditv62F

    I will be moving away from your plugin because I can no longer trust it to perform correctly, and I have no idea how many of my players have used this as an exploit before reporting it / aren't reporting it at all.

    I hope this feedback has been useful.
     
    • Agree Agree x 1
  8. On my test server it always works fine, I don't know what configuration/server version/other variables trigger this. Do you use flatfile or mysql storage?
    For most users the plugin works fine, few report this issue but without proper logs, configs I cannot reproduce it in order to try fix it. But hey source code is public, so if you just like bad reviews without proper bug reports then go for it. (For those who strait post reviews)
     
  9. I am actually having this exact same problem on my server! Glad to find someone having the same problem.

    Sometimes my player's enderchest will not 'save' and player can take as many items as they want out of their enderchest without it 'updating' the item has been taken out. This allows players to duplicate as many copy of the same item they have, by taking out the same item over and over again. I did some experiments and I found out that this happens when players log out, and log back in again, and then their enderchests gets 'reverted' back to their original state, although the results are inconsistent and sometimes it will happen for no reason that I am aware of.

    I found a temporary fix for this, by resetting the player's enderchest by using the command, and the duplication bug will be 'fixed', however my players will lose their items, and the problem only goes away for a few hours and somehow it will happen again. For some reason only some players has this bug occurring to their enderchests, other players never have this problem in their life, so far. My server is running PaperSpigot 1.13.2, although I don't think the server version matters as it has always been happening on and off randomly, and it has started to happen more frequently now.

    @impmallet, are you also running this plugin on a PaperSpigot server? Version?

    @brunyman Alternatively, maybe add a '/enderchest save <player>' command or something like that, to force a player's enderchest to get updated. I am not using MySQL storage.
     
  10. Hello there Tonic.

    I am running the latest version of paper as of this writing, but I have also experienced the issue very intermittently on spigot. I've used the same fix that you described in your post to varying degrees of success, and generally the issue always comes back. It is anecdotal, but it seems to affect players with poor connections more often than those with good connections. This could indicate that the database is somehow getting corrupted during a transaction save or something to that nature. Of course, this is all just conjecture based on my observations.

    At this time, I am moving away from the plugin entirely because of unreliable it is and how unwilling the dev is to acknowledge and address the issue. I'd like to find another plugin that has similar functionality but works a bit better. I will let you know if I find something worthwhile.
     
    • Agree Agree x 1
  11. I wasn't going to add anything else to this discussion since I have already moved away from your unreliable plugin, but since you decided to take a shot at me with your remark, here's some additional feedback for you to chew on.

    I detect a bit of frustration toward people who criticize your work for legitimate reasons. If I leave a bad review of your plugin, it's because it doesn't operate correctly and I want to make others aware of it. I am not sure you quite understand how the review system works, but you are not entitled to specific bug report scenarios by users. If a user likes your plugin, they should leave a good review, if they do not, they can leave a bad review. There is nothing more to it. If you want better bug reporting, perhaps make yourself a bit more easy to reach/work with. You could also take user reports in your reviews a bit more constructively. Just because it's in a review section does not make it invalid. People are trying to tell you what is wrong but you make no attempt to actually reach out to them. In fact, you responded to one review that was reporting this very same duplication bug, and said "it works fine if configured correctly". What kind of response is that? What configuration item in your plugin would cause duplication issues to begin with? EnableDuping = true???? This makes no sense.

    I also noticed that you like to resort to "well it's open source, fix it yourself" responses. I think it's great that your work is open source, thank you for choosing to make it this way. However, the majority of your users are not skilled devs like you are, otherwise they wouldn't need your plugin, they could just make their own. This kind of response makes you seem standoffish and uncaring of your user base / work. This may not be the case, but it certainly makes you appear that way.

    Also, just because you can't reproduce the issue doesn't mean that it does not exist. Again, this is a very intermittent bug and didn't show up for me until over a month of using your plugin. You won't be able to track this one down easily, you might actually have to work with your user base outside of this discussion thread to figure it out. You have multiple reports, the bug is confirmed, deal with it or don't. Up to you.

    For the record, I am using flatfile as the storage system and Paper on 1.15.2. The issue has occurred for me on Spigot / Paper 1.14.2 as well.

    Hope this provides some assistance and that you figure it out.
     
    • Agree Agree x 1
  12. This bug also seems to only occur to my players who has over 500+ ms ping too, players with less than 100 ms ping never had this bug happen to them... but I can't seem to figure out what exactly trigger this bug for them initially... also, once the bug is triggered, it seems to stay for that specific player until I clear that player's enderchest again, then after a while, it will trigger and start all over again.
     
  13. I've noticed that when using this plugin, commands like /ec or /enderchest do not work from Essentials or CMI. This plugin is an entirely separated storage for ender chests. It also causes things like Slimefun Talismans to break because they aren't being stored in actual ender chest. Is there a way to fix these issues?
     
  14. Hello, I sent you a pm with bug in this plugin.
     
  15. Can you make a configuration that can be upgraded using money to level up?
     
  16. Removed items from chests
    Code (Text):
    [09:43:59] [Server thread/INFO]: HyperGamesYT[/79.162.247.103:47341] logged in with entity id 1343556 at ([SkyBlock]600.2226383641643, 117.0, -1164.0512035089969)
    [09:44:01] [Craft Scheduler Thread - 1013/WARN]: java.lang.IllegalArgumentException: Item cannot be null
    [09:44:01] [Craft Scheduler Thread - 1013/WARN]:     at org.apache.commons.lang.Validate.noNullElements(Validate.java:364)
    [09:44:01] [Craft Scheduler Thread - 1013/WARN]:     at org.bukkit.craftbukkit.v1_12_R1.inventory.CraftInventory.addItem(CraftInventory.java:282)
    [09:44:01] [Craft Scheduler Thread - 1013/WARN]:     at net.craftersland.customenderchest.storage.MysqlStorage.decodeInventory(MysqlStorage.java:303)
    [09:44:01] [Craft Scheduler Thread - 1013/WARN]:     at net.craftersland.customenderchest.storage.MysqlStorage.loadEnderChest(MysqlStorage.java:264)
    [09:44:01] [Craft Scheduler Thread - 1013/WARN]:     at net.craftersland.customenderchest.DataHandler.loadPlayerFromStorage(DataHandler.java:65)
    [09:44:01] [Craft Scheduler Thread - 1013/WARN]:     at net.craftersland.customenderchest.PlayerHandler$1.run(PlayerHandler.java:54)
    [09:44:01] [Craft Scheduler Thread - 1013/WARN]:     at org.bukkit.craftbukkit.v1_12_R1.scheduler.CraftTask.run(CraftTask.java:64)
    [09:44:01] [Craft Scheduler Thread - 1013/WARN]:     at org.bukkit.craftbukkit.v1_12_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:52)
    [09:44:01] [Craft Scheduler Thread - 1013/WARN]:     at com.destroystokyo.paper.ServerSchedulerReportingWrapper.run(ServerSchedulerReportingWrapper.java:22)
    [09:44:01] [Craft Scheduler Thread - 1013/WARN]:     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    [09:44:01] [Craft Scheduler Thread - 1013/WARN]:     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    [09:44:01] [Craft Scheduler Thread - 1013/WARN]:     at java.lang.Thread.run(Thread.java:748)
    [09:44:01] [Craft Scheduler Thread - 1013/ERROR]: [CustomEnderChest] Failed to decode inventory for HyperGamesYT! Error: Length of Base64 encoded input string is not a multiple of 4.
    [09:44:01] [Craft Scheduler Thread - 1013/WARN]: java.lang.IllegalArgumentException: Length of Base64 encoded input string is not a multiple of 4.
    [09:44:01] [Craft Scheduler Thread - 1013/WARN]:     at org.yaml.snakeyaml.external.biz.base64Coder.Base64Coder.decode(Base64Coder.java:267)
    [09:44:01] [Craft Scheduler Thread - 1013/WARN]:     at org.yaml.snakeyaml.external.biz.base64Coder.Base64Coder.decodeLines(Base64Coder.java:218)
    [09:44:01] [Craft Scheduler Thread - 1013/WARN]:     at net.craftersland.customenderchest.utils.EncodingUtil.fromBase64(EncodingUtil.java:37)
    [09:44:01] [Craft Scheduler Thread - 1013/WARN]:     at net.craftersland.customenderchest.storage.MysqlStorage.decodeInventory(MysqlStorage.java:311)
    [09:44:01] [Craft Scheduler Thread - 1013/WARN]:     at net.craftersland.customenderchest.storage.MysqlStorage.loadEnderChest(MysqlStorage.java:264)
    [09:44:01] [Craft Scheduler Thread - 1013/WARN]:     at net.craftersland.customenderchest.DataHandler.loadPlayerFromStorage(DataHandler.java:65)
    [09:44:01] [Craft Scheduler Thread - 1013/WARN]:     at net.craftersland.customenderchest.PlayerHandler$1.run(PlayerHandler.java:54)
    [09:44:01] [Craft Scheduler Thread - 1013/WARN]:     at org.bukkit.craftbukkit.v1_12_R1.scheduler.CraftTask.run(CraftTask.java:64)
    [09:44:01] [Craft Scheduler Thread - 1013/WARN]:     at org.bukkit.craftbukkit.v1_12_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:52)
    [09:44:01] [Craft Scheduler Thread - 1013/WARN]:     at com.destroystokyo.paper.ServerSchedulerReportingWrapper.run(ServerSchedulerReportingWrapper.java:22)
    [09:44:01] [Craft Scheduler Thread - 1013/WARN]:     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    [09:44:01] [Craft Scheduler Thread - 1013/WARN]:     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    [09:44:01] [Craft Scheduler Thread - 1013/WARN]:     at java.lang.Thread.run(Thread.java:748)
     
  17. same thing happened to me @ziomek, have you figured out how to give players stuff back?
     
  18. Duplication glitch, here is how you do it. Let's say it's bungeecord network, you have hub and survival with this plugin. You will have to use mod like macrokeybind or something similar. Put any items in your enderchest, then press two binds at the same time, one for opening enderchest via command and another is "/hub" - and "/ec" should be pressed slightly before hub, just a few ms earlier. After this your enderchest is bugged, any time you join the game you will have same items - you can take them out of your enderchest, throw them on the ground, go to hub and back to survival and you will have items both on ground and in enderchest. Fix this please!
     
    • Informative Informative x 2
  19. I love the look of this plugin and am posting here so I can stay updated of all notifications here. I am not going to download until the dupe bug is fixed, as this is not something I want on the server.

    I hope you can find a fix soon, as again - this look super good!