EnderChestViewer (2024)

EnderChestViewer

EnderChestViewer is a plugin that allows players with permission to view the EnderChest of another player.

==Main idea==
Have you ever seen someone stealing another player and never managed to find the stolen items? This plugin is for you! Now you can access and edit the EnderChest of another player by simply using a command!

This plugin was intended for server admins that are having trouble with some players saving stolen items on their EnderChest.
Now, this plugin is capable of controlling who can use, craft, place, and break EnderChests on your server.
Also, includes MultiInv support. Both vanilla and MultiInv support, just with one command.

==Features==
- Access the other players EnderChest using the command /enderchestviewer <player name>;
- When opening a EnderChest using this command, reproduce the sound of opening a chest; When leaving the GUI, reproduce the sound of closing the EnderChest.
- Players without the enderchestviewer.viewothers permission and with the enderchestviewer.enderchestviewer permission can only open own EnderChest.
-Ability to view and edit an offline player EnderChest;
-Permissions to Place, Use and Break EnderChests;
-MultiInv support. Both vanilla and MultiInv use the same command.
Permissions support: This plugin is ready for EssentialsGroupManager and Permissions. I never tested with another permissions plugin, but it should work with most of them.

==Planned features==
- Add compatibility with other plugins that store custom files for storing the Ender Chests (currently planned plugins: Multiverse. List to be expanded, if you have suggestions, please leave a comment!) (Starting from version 1.4.5, supports MultiInv!)
- Ability to only certain people can edit someone else's Ender Chest;

==Permissions==
-> this permission allow's you to use the /enderchestviewer command, but this will only allow you to open your own EnderChest. (Intended for people who have donated to your server, free mobile storage! :P)
-> This permission allows you to use the /enderchestviewer command to view and edit the Ender chest of other players.

Changes on version 1.4.3: (2nd part of the permissions system)
The plugin, if you only want to use it for accessing the Ender Chest of other people, doesn't need any permissions configuration below this section. That means that if you want to have control over Ender Chest usage on your server, then you should read this next section.
-> this permission allow's players to craft Ender Chests. It defaults to EVERYONE on the server. So, if you want to disallow players from crafting Ender Chests, you need to REVOKE the permission. On Essentials group manager, you setup a permission like this: "-enderchestviewer.block.craft" to revoke the crafting option. This system applies for the other permissions on the 1.4.3 changes, so, I won't put this there anymore.
-> this permission allow's players to place Ender Chests in the world.
-> this permission allow's players to use Ender Chests in the world.
-> this permission allow's players to break Ender Chests from the world.

==Installation==
Simply copy the downloaded file called EnderChestViewer.jar and copy it to your plugins folder.
If you want to use this only to see other people's Ender Chests, if you don't have a permissions system, just restart/reload your server and you're done. Obviously, you need to be OP to use the commands.
In case you have a permissions system, but you still only want to use this plugin to see other people's Ender Chests, then read the first part on the Permissions section. You don't need to read the 2nd part in this case. Then, restart/reload your server. You're done.
In case you want to control wich users can craft, place, interact or break Ender Chests, just read all the permissions section, and you should be good on how to setup the plugin for that case. Then, restart or reload your server.

==MultiInv limitations on version 1.4.5==
First of all, many thanks for TuxTwo for the authorization to allow MultiInv support with this plugin.
Now, lets talk about the limitations on version 1.4.5.
Version 1.4.5 of EnderChestViewer brings a new functionality: MultiInv support. Although, there are some limitations with it. I've worked for about two weeks (TuxTWO :P) to finally find that I almost do not need special support for MultiInv. Yeah, stupid, I know. But with this, I found limitations that I'm planning on removing in a future update. But since they're here, lets talk you trough them.
MultiInv handling of EnderChests uses per GameMode and per World data. Which means that in "survival" and in the world "spawn" you will have one inventory; but if you go in creative you will get another separate inventory on your EnderChest. While viewing the EnderChest of somebody, you are limited to their current GameMode and the World that they are currently in. This includes offline players too, so, if you try to view the EnderChest of somebody while they are offline, you will see the EnderChest according to the GameMode and to the World that they were in when they disconnected from the server.
I hope this is enough to explain the limitations, and yes, they will be removed in a future version.

==Disclaimer==
This plugin uses the Metrics system by Hidendra (as known on the Minecraft Forums) to collect anonymous stats about the plugin usage on servers. If you wish to stop this service, go to your plugins folder, and look for a folder called "PluginMetrics". Open that folder, and edit the config.yml file in there, and set opt-out to true.

==Bugs==
You can report any bug with this plugin, suggest new features, etc. by opening a issue or a pull request (depending on what you want to do) on my GitHub repository at https://github.com/D4rKDeagle/EnderChestViewer.

==Developers/Source-code==
You can check the source code at https://github.com/D4rKDeagle/EnderChestViewer but remember: this plugin is licensed under the GNU General Public License v3.0.

Note: Do you like messing around with scoreboards? Check out my other plugin: http://dev.bukkit.org/bukkit-plugins/multiple-scoreboards/ (Its still a WIP)

Comments

    • Join Date: 10/10/2011
    • Posts: 12
    • Member Details

    Also confirmed that getting the same errors as @Ozelo just for offline players. Running 1.7.5, could that be the issue?

    • Join Date: 11/9/2011
    • Posts: 18
    • Member Details

    I can confirm that this simply does not work on offline players.. It throws an error.

    • Join Date: 8/2/2011
    • Posts: 132
    • Member Details

    I was getting the same offline errors in bukkit dev and beta, it wasn't just Spigot. I also run Spigot so I tested the others.

    • Join Date: 8/25/2012
    • Posts: 68
    • Member Details

    @Ozelo

    I noticed you are using Spigot. I am going to have to look into it, I tested with vanilla Craftbukkit and it worked (on offline players, of course).

    Anyway, I'll try to do it this year :D

    EDIT: I just did it. Spigot is a good platform for server admins, I'm not going to lie, but it is not very good at meeting the goals of the Bukkit project. Anyway, yes, that didn't work because the class that I'm looking for does not exist in the same package if you're using Spigot. For that, I just made a quick change to my NMSHacks class which should make it compatible with Spigot too.

    Last edited by _ForgeUser9468170: Dec 30, 2013

    • Join Date: 5/27/2009
    • Posts: 204
    • Member Details

    Ye, it is working. But when I try on offline players, it says:

    [14:36:28 WARN]: java.lang.ClassNotFoundException: net.minecraft.server.v1_7_R1.GameProfile[14:36:28 WARN]: at org.bukkit.plugin.java.PluginClassLoader.findClass0(PluginClassLoader.java:70)[14:36:28 WARN]: at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:53)[14:36:28 WARN]: at java.lang.ClassLoader.loadClass(ClassLoader.java:423)[14:36:28 WARN]: at java.lang.ClassLoader.loadClass(ClassLoader.java:356)[14:36:28 WARN]: at java.lang.Class.forName0(Native Method)[14:36:28 WARN]: at java.lang.Class.forName(Class.java:188)[14:36:28 WARN]: at me.darkdeagle.bukkit.enderchestviewer.NMSHacks.getNMSClass(NMSHacks.java:144)[14:36:28 WARN]: at me.darkdeagle.bukkit.enderchestviewer.NMSHacks.getPlayerObjectOfOfflinePlayer(NMSHacks.java:42)[14:36:28 WARN]: at me.darkdeagle.bukkit.enderchestviewer.handlers.VanillaHandler.openEnderChest(VanillaHandler.java:84)[14:36:28 WARN]: at me.darkdeagle.bukkit.enderchestviewer.EnderChestViewerCommandExecutor.onCommand(EnderChestViewerCommandExecutor.java:62)[14:36:28 WARN]: at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44)[14:36:28 WARN]: at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:196)[14:36:28 WARN]: at org.bukkit.craftbukkit.v1_7_R1.CraftServer.dispatchCommand(CraftServer.java:546)[14:36:28 WARN]: at net.minecraft.server.v1_7_R1.PlayerConnection.handleCommand(PlayerConnection.java:940)[14:36:28 WARN]: at net.minecraft.server.v1_7_R1.PlayerConnection.a(PlayerConnection.java:815)[14:36:28 WARN]: at net.minecraft.server.v1_7_R1.PacketPlayInChat.a(PacketPlayInChat.java:28)[14:36:28 WARN]: at net.minecraft.server.v1_7_R1.PacketPlayInChat.handle(PacketPlayInChat.java:65)[14:36:28 WARN]: at net.minecraft.server.v1_7_R1.NetworkManager.a(NetworkManager.java:147)[14:36:28 WARN]: at net.minecraft.server.v1_7_R1.ServerConnection.c(SourceFile:134)[14:36:28 WARN]: at net.minecraft.server.v1_7_R1.MinecraftServer.u(MinecraftServer.java:657)[14:36:28 WARN]: at net.minecraft.server.v1_7_R1.DedicatedServer.u(DedicatedServer.java:273)[14:36:28 WARN]: at net.minecraft.server.v1_7_R1.MinecraftServer.t(MinecraftServer.java:540)[14:36:28 WARN]: at net.minecraft.server.v1_7_R1.MinecraftServer.run(MinecraftServer.java:446)[14:36:28 WARN]: at net.minecraft.server.v1_7_R1.ThreadServerApplication.run(SourceFile:617)[14:36:28 WARN]: java.lang.NoSuchMethodException: net.minecraft.server.v1_7_R1.EntityPlayer.<init>(net.minecraft.server.v1_7_R1.MinecraftServer, net.minecraft.server.v1_7_R1.World, null, net.minecraft.server.v1_7_R1.PlayerInteractManager)[14:36:28 WARN]: at java.lang.Class.getConstructor0(Class.java:2730)[14:36:28 WARN]: at java.lang.Class.getDeclaredConstructor(Class.java:2004)[14:36:28 WARN]: at me.darkdeagle.bukkit.enderchestviewer.NMSHacks.getPlayerObjectOfOfflinePlayer(NMSHacks.java:47)[14:36:28 WARN]: at me.darkdeagle.bukkit.enderchestviewer.handlers.VanillaHandler.openEnderChest(VanillaHandler.java:84)[14:36:28 WARN]: at me.darkdeagle.bukkit.enderchestviewer.EnderChestViewerCommandExecutor.onCommand(EnderChestViewerCommandExecutor.java:62)[14:36:28 WARN]: at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44)[14:36:28 WARN]: at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:196)[14:36:28 WARN]: at org.bukkit.craftbukkit.v1_7_R1.CraftServer.dispatchCommand(CraftServer.java:546)[14:36:28 WARN]: at net.minecraft.server.v1_7_R1.PlayerConnection.handleCommand(PlayerConnection.java:940)[14:36:28 WARN]: at net.minecraft.server.v1_7_R1.PlayerConnection.a(PlayerConnection.java:815)[14:36:28 WARN]: at net.minecraft.server.v1_7_R1.PacketPlayInChat.a(PacketPlayInChat.java:28)[14:36:28 WARN]: at net.minecraft.server.v1_7_R1.PacketPlayInChat.handle(PacketPlayInChat.java:65)[14:36:28 WARN]: at net.minecraft.server.v1_7_R1.NetworkManager.a(NetworkManager.java:147)[14:36:28 WARN]: at net.minecraft.server.v1_7_R1.ServerConnection.c(SourceFile:134)[14:36:28 WARN]: at net.minecraft.server.v1_7_R1.MinecraftServer.u(MinecraftServer.java:657)[14:36:28 WARN]: at net.minecraft.server.v1_7_R1.DedicatedServer.u(DedicatedServer.java:273)[14:36:28 WARN]: at net.minecraft.server.v1_7_R1.MinecraftServer.t(MinecraftServer.java:540)[14:36:28 WARN]: at net.minecraft.server.v1_7_R1.MinecraftServer.run(MinecraftServer.java:446)[14:36:28 WARN]: at net.minecraft.server.v1_7_R1.ThreadServerApplication.run(SourceFile:617)[14:36:28 ERROR]: nullorg.bukkit.command.CommandException: Unhandled exception executing command 'enderchestviewer' in plugin EnderChestViewer v1.5.0 at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[spigot.jar:git-Spigot-1225] at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:196) ~[spigot.jar:git-Spigot-1225] at org.bukkit.craftbukkit.v1_7_R1.CraftServer.dispatchCommand(CraftServer.java:546) ~[spigot.jar:git-Spigot-1225] at net.minecraft.server.v1_7_R1.PlayerConnection.handleCommand(PlayerConnection.java:940) [spigot.jar:git-Spigot-1225] at net.minecraft.server.v1_7_R1.PlayerConnection.a(PlayerConnection.java:815) [spigot.jar:git-Spigot-1225] at net.minecraft.server.v1_7_R1.PacketPlayInChat.a(PacketPlayInChat.java:28) [spigot.jar:git-Spigot-1225] at net.minecraft.server.v1_7_R1.PacketPlayInChat.handle(PacketPlayInChat.java:65) [spigot.jar:git-Spigot-1225] at net.minecraft.server.v1_7_R1.NetworkManager.a(NetworkManager.java:147) [spigot.jar:git-Spigot-1225] at net.minecraft.server.v1_7_R1.ServerConnection.c(SourceFile:134) [spigot.jar:git-Spigot-1225] at net.minecraft.server.v1_7_R1.MinecraftServer.u(MinecraftServer.java:657) [spigot.jar:git-Spigot-1225] at net.minecraft.server.v1_7_R1.DedicatedServer.u(DedicatedServer.java:273) [spigot.jar:git-Spigot-1225] at net.minecraft.server.v1_7_R1.MinecraftServer.t(MinecraftServer.java:540) [spigot.jar:git-Spigot-1225] at net.minecraft.server.v1_7_R1.MinecraftServer.run(MinecraftServer.java:446) [spigot.jar:git-Spigot-1225] at net.minecraft.server.v1_7_R1.ThreadServerApplication.run(SourceFile:617) [spigot.jar:git-Spigot-1225]Caused by: java.lang.NullPointerException at me.darkdeagle.bukkit.enderchestviewer.handlers.VanillaHandler.openEnderChest(VanillaHandler.java:86) ~[?:?] at me.darkdeagle.bukkit.enderchestviewer.EnderChestViewerCommandExecutor.onCommand(EnderChestViewerCommandExecutor.java:62) ~[?:?] at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[spigot.jar:git-Spigot-1225] ... 13 more
    • Join Date: 8/25/2012
    • Posts: 68
    • Member Details

    Alright. Probably many of you know what Apache Maven (http://maven.apache.org/) is. I also knew since I started making plugins. The thing is: I always thought it was too complicated to setup. But, today, I found M2E, an Eclipse plugin that interacts with Maven pretty well. So, in the last few hours (about 10) I've been messing with Maven trying to get it to work with Eclipse and Git. I ended up editing the xml file directly instead of using M2E for that, but, now that I figured it out, I'm probably going to "Mavenize" EnderChestViewer. Stay tuned! (Spoiler alert: Probably doing that tomorrow.) :D

    • Join Date: 8/25/2012
    • Posts: 68
    • Member Details

    @Ozelo

    It should also be compatible with 1.7.2. Don't forget, the update was to make that possible :)

    Edit: Sorry. I just noticed that the BukkitDev staff hasn't approved the file yet. It was submitted 3 days ago from when I'm editing this (today is 2013-12-28). I thought it was approved already, that's why I was talking like that. Probably because of the holiday it's taking a lot longer, so, I'm sorry!

    Last edited by _ForgeUser9468170: Dec 27, 2013

    • Join Date: 5/27/2009
    • Posts: 204
    • Member Details

    @D4rKDeagle

    I will sure enjoy it! Looking forward for a 1.7.2 compatible version. Thank you very much!

    • Join Date: 8/25/2012
    • Posts: 68
    • Member Details

    @Ozelo

    Alright. After a lot of tinkering around with Reflection, a new build is coming that should be compatible with pretty much any CraftBukkit version starting at 1.6.X. Hope you enjoy and have a nice Christmas!

    Last edited by _ForgeUser9468170: Dec 27, 2013

    • Join Date: 5/27/2009
    • Posts: 204
    • Member Details
    • Join Date: 5/27/2009
    • Posts: 204
    • Member Details

    Sure, no problem. That's wise! Thank you! :)

    • Join Date: 8/25/2012
    • Posts: 68
    • Member Details

    @Ozelo

    No, but yes. I am making a massive change that will allow me to not need to update every single version, that's why it's taking a lot longer. Sorry.

    • Join Date: 5/27/2009
    • Posts: 204
    • Member Details

    Is it that hard to update?

    • Join Date: 8/25/2012
    • Posts: 68
    • Member Details

    @Ozelo

    I wasn't planning on updating any plugin for 1.7.2 until there was at least a beta build out. But I guess that since there are already servers on 1.7.2, I will update. In the next hours there should be an update.

    • Join Date: 5/27/2009
    • Posts: 204
    • Member Details

    Thank you! Please update to 1.7.2? :)

    • Join Date: 8/25/2012
    • Posts: 68
    • Member Details
    • Join Date: 5/27/2009
    • Posts: 204
    • Member Details

    Please update to 1.6.4

    • Join Date: 8/25/2012
    • Posts: 68
    • Member Details

    @JustisR

    Please specify what you want. Do you just want to give them access to commands, and to place and interact in every way with ender chests? If that's the case, you just need to give them the permission enderchestviewer.*

    • Join Date: 7/22/2013
    • Posts: 33
    • Member Details

    I use group manager, and would like to give all permissions to specific players... Could i just ...

    - enderchestviewer.*

    for all commands ever?

  • To post a comment, please login or register a new account.

Posts Quoted:

Reply

Clear All Quotes

About This Project

Categories

  • EnderChestViewer (21)
  • EnderChestViewer (22)

Members

../../Controllers/Backend/AuthController.cs

Recent Files

As an expert in Minecraft server administration and plugin development, I can confidently provide insights into the content you've shared about the "EnderChestViewer" plugin. My expertise in plugin development and server management allows me to analyze the details and features mentioned in the article. Here's a breakdown of the concepts discussed:

EnderChestViewer Plugin Overview:

Main Idea:

  • The EnderChestViewer is a plugin designed for Minecraft servers, allowing players with specific permissions to view the EnderChest of another player.

Features:

  1. Command Usage:

    • Players can use the command "/enderchestviewer " to access another player's EnderChest.
    • Reproduces the sound of opening and closing the EnderChest when the command is used.
  2. Permission System:

    • Different levels of permissions control who can use, craft, place, and break EnderChests on the server.
    • MultiInv support is included, allowing both vanilla and MultiInv use with a single command.
  3. Offline Player Interaction:

    • The plugin supports the ability to view and edit the EnderChest of offline players.

Planned Features:

  • Compatibility with other plugins that store custom files for Ender Chests (e.g., Multiverse).

Permissions:

  • Detailed explanation of various permissions for using, crafting, placing, and breaking EnderChests.

Changes in Version 1.4.3:

  • Introduces a permissions system for controlling Ender Chest usage on the server.

Installation:

  • Instructions for installing the plugin by copying the downloaded file to the plugins folder.

MultiInv Limitations (Version 1.4.5):

  • Discusses limitations in MultiInv support, specifically related to handling EnderChests based on game mode and world data.

Disclaimer:

  • Mentions the use of the Metrics system for collecting anonymous stats about plugin usage on servers.

Bug Reporting:

  • Encourages users to report bugs, suggest new features, etc., through the GitHub repository.

Developers/Source-code:

  • Provides links to the plugin's source code on GitHub and mentions the GNU General Public License v3.0.

User Comments:

  • Various user comments from the plugin's BukkitDev page, discussing issues, compatibility, and update requests.

Expert Opinion:

Based on the provided information, the plugin seems well-designed for server admins seeking control over EnderChest usage. The detailed permissions system and planned features showcase the developer's commitment to functionality and adaptability. The engagement with user comments on the BukkitDev page also demonstrates ongoing support and improvement efforts.

If you have any specific questions or need further clarification on certain aspects, feel free to ask!

EnderChestViewer (2024)
Top Articles
Latest Posts
Article information

Author: Rev. Porsche Oberbrunner

Last Updated:

Views: 5285

Rating: 4.2 / 5 (53 voted)

Reviews: 92% of readers found this page helpful

Author information

Name: Rev. Porsche Oberbrunner

Birthday: 1994-06-25

Address: Suite 153 582 Lubowitz Walks, Port Alfredoborough, IN 72879-2838

Phone: +128413562823324

Job: IT Strategist

Hobby: Video gaming, Basketball, Web surfing, Book restoration, Jogging, Shooting, Fishing

Introduction: My name is Rev. Porsche Oberbrunner, I am a zany, graceful, talented, witty, determined, shiny, enchanting person who loves writing and wants to share my knowledge and understanding with you.