Inactive [ADMN/DEV] Pail v0.7.5 - The simplest and most extensible Bukkit GUI [1.0.1]

Discussion in 'Inactive/Unsupported Plugins' started by escape, Aug 8, 2011.

     
  1. Offline

    escape

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Pail
    The interface for and by the people
    [IMG]
    What is it?
    Pail is a Java swing Graphical User Interface designed specifically for bukkit.

    Why is it different?
    • Pail is written as a plugin, meaning the same, simple drag-and-drop install server owners have come to know.
    • Pail uses pure Java and no external libraries, eliminating the need for any dependencies.
    • Pail is designed for bukkit servers, allowing more control than any vanilla server GUI.
    • Pail is extensible! Other plugins can hook into Pail to add their own interfaces, creating a single place for server admins to manage their server and players.
    • Pail is completely cross-platform.
    What can other plugins do?
    Pail opens up many opportunities for plugin developers to take advantage of. Plugins can be written solely to add functionality to Pail, or Pail support can be integrated easily into existing plugins. Just imagine being able to edit your permissions groups, view server performance, or manage your world's economy all from a single interface!

    ===============================

    For Developers:
    You can start developing for Pail now! The API currently consists of several methods for adding your components to the interface. To add a tab for your plugin to the Pail GUI, pass the title of your plugin's tab and the JPanel containing your interface to:

    Code:
    PluginManager pm = this.getServer().getPluginManager();
    ((Pail)pm.getPlugin("Pail")).loadInterfaceComponent("Title", new JPanel());
    For more method descriptions, the JavaDoc is available here.

    Installation:
    Just drop Pail.jar into your plugins folder. That's it!

    Features:
    • Convenient access to player related functions
    • Interface for editing server settings
    • Command buffer to recall recent console commands by pressing up and down
    • Waypoint system for teleporting players
    • Searchable console (with regular expression support)
    • Much more!
    Commands:
    • Pail - Reopens the Pail GUI through the console
    Screenshots:

    [IMG]

    [IMG]
    [IMG]



    Todo:
    • Support for remote hosted servers (milestone 1.0)
    Credits:

    Pail has been brought to you by
    With contributions by
    Changelog:
    Version 0.7.5
    • Craftbukkit RB1240 support
    • Implemented simple gui api (docs coming soon)
    Version 0.7.4
    • Reimplemented CB1185 support
    Version 0.7.3 (Not promoted)
    • Fixed interface not loading bug
    Version 0.7.2
    • Minecraft 1.8.1 compatability (Craftbukkit RB 1185)
    • Added manual backup option
    • Added "say" option for console input
    • Possible fix for the gui not loading occasionally on server launch

    Version 0.7.1
    • Fixed the 'apple.eawt' bug on startup
    • Added language API
    • Window can now be resized
    Version 0.7
    • Features:
      • 8 new menu options
      • Automatic translations for more than 30 languages via Google translate API
      • Console is now searchable via Find option (ctrl+F)
      • Text from the console can be copied via ctrl+C
      • Mac integration improvments
      • Players' faces are displayed next to their names
      • OP/Deop is context sensitive
      • Player names bolded in the console
      • Minor interface refinements
    • Fixes:
      • Fixed labels being cut off on some systems
      • Give now works properly with non-vanilla items
      • Fixed exceptions starting up when the interface takes too long to load
      • Enable is now thread-safe
    Version 0.6
    • Implemented skin switching in the settings
    • Fixed a bug when giving non-standard items
    • Fixed occasional NPE on startup
    • Maven integration
    Version 0.5.2
    • Added Waypoint API
    • UTF-8 support in the console
    • Interface now matches more closely with the native OS
    Version 0.5.1
    • Color support in the console
    • Fixed a bug when the craftbukkit version can't be determined
    • Autoscrolling now works properly in all situations
    Version 0.5
    • Server stop, reload, and save-all moved to Server menu
    • Added one-click auto update
    • Fixed console not scrolling down when text is added (thanks @feildmaster)
    Version 0.4.1_1
    • Patched a bug in the teleport dialog
    Version 0.4.1
    • Fixed several bugs including:
      • Kill command not working
      • Command buffer skipping commands
      • Rare exceptions on disabling or reloading the plugin
    Version 0.4
    • Created waypoint system for teleporting players
    • Added command buffer to reuse recent console commands
    • Message, kick, and ban moved to player menu
    • Optimized the way settings are loaded
    • Several bugfixes and optimizations
    • Support for CB b1060
    Version 0.3.2
    • Bugfixes
    • Server IP is now configurable in settings
    Version 0.3.1
    • Several small bugfixes
    • About window shown by clicking pail version
    Version 0.3
    • Added settings section for hiding/showing tabs by other plugins
    • New API methods
    • Small optimizations and bugfixes
    Version 0.2
    • Added graphical item chooser
    • Added getInterfaceComponent to API
    • Refactoring and bugfixes
    Version 0.1
    • Preview release



    Download Pail 0.7.5 beta
    Latest dev build (unstable)
    [IMG]

    EDIT: removed external links. Please use http://dev.bukkit.org/server-mods/pail/

    This post has been edited 65 times. It was last edited by feildmaster Feb 11, 2013.
  2.  
  3. Offline

    escape

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Funny, I've never seen any of these on reload

    EDIT: Committed a possible fix for all three

    This post has been edited 2 times. It was last edited by escape Aug 16, 2011.
  4. Offline

    feildmaster Bukkit Team Member BukkitDev Staff

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    @escape : Yeah, these errors don't get triggered every time. It seems to be very random actually.

    Which means, the only way to get it fully tested is to release it in an update later.

    This post has been edited 1 time. It was last edited by feildmaster Aug 16, 2011.
  5. Offline

    escape

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    I suspect it happens when the server is laggy and finishes loading before the GUI is loaded.
  6. Offline

    feildmaster Bukkit Team Member BukkitDev Staff

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    instead of all the listeners you have, why not trigger a runnable task that opens the gui after it's loaded?
  7. Offline

    escape

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    I've considered that, but I felt the tradeoff between a rather rare bug and not being able to see the loading console output would be too high.
  8. Offline

    feildmaster Bukkit Team Member BukkitDev Staff

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Mmm.... that's a good point, but...

    When you load the data while the gui hasn't even loaded, you can have the following happen:
    1- Previous data isn't available
    2- The tab you're on doesn't get loaded
    (Rather, I never even knew it had that feature till I read the code. That feature doesn't even work on my server.)

    This post has been edited 1 time. It was last edited by feildmaster Aug 17, 2011.
  9. Offline

    escape

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    What data are you taking about? The previous console content and window position are already loaded after the gui.
  10. Offline

    feildmaster Bukkit Team Member BukkitDev Staff

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Not if you reload through the console, or game.. ;)

    ... I am using the latest data right... -looks-
    Yup. That's what's happening.

    (Also, if it's only storing on button reload... there's no need to even store the window position, it's always the ServerControl)
  11. Offline

    escape

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Okay so you mean that when you reload the server by any means, the aforementioned data is not saved and the console text is reset and the window goes to the center of the screen?
  12. Offline

    feildmaster Bukkit Team Member BukkitDev Staff

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    any means other than the "Reload Button"

    and ohh.. THAT position of the screen. Okay. Now I understand. =P (See, I thought you were saving... -thinks- nvm)
    -----
    The new fixes do seem to fix the aforementioned errors. (to get on topic of bug fixes)
  13. Offline

    escape

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    That's strange, it works for all means of reloading for me.
  14. Offline

    feildmaster Bukkit Team Member BukkitDev Staff

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Interesting.
  15. Offline

    escape

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    If you look at the ServerListener, it does indeed save the state on reload commands.
  16. Offline

    mdt7734

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    I'd like to say I love this, it is brilliant. Anyone who prefers using a GUI over console would love to configure and create worlds for Multiverse, settings for mcMMO and Vegetation, even PEX could use this interface of awesomeness. Anything with a complex config file could benefit.

    Does your API allow developers to have popup messages on mouse-over for any options they include in the interface?

    Not sure what to do to get it out there but pester the hell out of developers by posting in my favorite plugin threads =)

    The only negative I can think of are doubts to the longevity of this plugin, but if enough developers pile on, and the more it is used, Pail could take on a life of its own.
  17. Offline

    feildmaster Bukkit Team Member BukkitDev Staff

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    yeah i saw that.

    Well that's strange... It's working now. Hmm...
  18. Offline

    mdt7734

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Forgot to mention, will there be a 'plugins that include pail interface' list a some point?
  19. Offline

    feildmaster Bukkit Team Member BukkitDev Staff

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    They can add tool tips, yes.

    Also, I intend to code a multi-world manager in advanced pail.
  20. Offline

    feildmaster Bukkit Team Member BukkitDev Staff

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    If people post that they've made support for it... possibly. ;)

    @escape : Yes, I do indeed enjoy taking over your thread. ;)

    This post has been edited 1 time. It was last edited by feildmaster Aug 17, 2011.
  21. Offline

    escape

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
  22. Offline

    cyberdude

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    @escape
    Just curious, did you decide not to remote it using RMI? Or whatever happened?

    Edit:
    I also think it would be very plausible (easy if know the details) to hide to the console window (At least in windows) using JNI/JNA and Win32...

    This post has been edited 1 time. It was last edited by cyberdude Aug 17, 2011.
  23. Offline

    escape

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    I'm still working on it, I just haven't had enough time recently to sit down and work through it. Rest assured though, it's at the top of my todo list.
    cyberdude likes this.
  24. Offline

    cyberdude

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Starting next month, I will hopefully have a lot of sparetime, and I might be able to join the project and help out. I have forked the github. Will be checking out the code in the next couple of days, and will try to get started in taking part.
  25. Offline

    feildmaster Bukkit Team Member BukkitDev Staff

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    pleasure to have ya.
  26. Offline

    feildmaster Bukkit Team Member BukkitDev Staff

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    @cyberdude : If you INSIST, I will give you a file that will run the server without the CMD (WINDOWS ONLY)

    1- Download
    2- extract into minecraft server folder
    3- edit and point it to your bat
    OR
    3- change your bat to run_server.bat

    This post has been edited 1 time. It was last edited by feildmaster Aug 17, 2011.
  27. Offline

    escape

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Updated to 0.4.1 which contains all the recent fixes.
  28. Offline

    SuperPyroManiac

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    I want to use this so badly, it looks so cool but I get this. And the whole server is dead with it.



    21:04:45 [SEVERE] java.lang.NoSuchMethodError: org.bukkit.Server.getAllowNether()Z
    21:04:45 [SEVERE] at me.escapeNT.pail.GUIComponents.SettingsPanel.loadConfig(SettingsPanel.java:91)
    21:04:45 [SEVERE] at me.escapeNT.pail.GUIComponents.SettingsPanel.<init>(SettingsPanel.java:44)
    21:04:45 [SEVERE] at me.escapeNT.pail.util.ServerReadyListener.publish(ServerReadyListener.java:23)
    21:04:45 [SEVERE] at java.util.logging.Logger.log(Unknown Source)
    21:04:45 [SEVERE] at java.util.logging.Logger.doLog(Unknown Source)
    21:04:45 [SEVERE] at java.util.logging.Logger.log(Unknown Source)
    21:04:45 [SEVERE] at java.util.logging.Logger.info(Unknown Source)
    21:04:45 [SEVERE] at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:153)
    21:04:45 [SEVERE] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:335)
    21:04:45 [SEVERE] at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    21:04:45 [SEVERE] Unexpected exception
  29. Offline

    feildmaster Bukkit Team Member BukkitDev Staff

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
  30. Offline

    SuperPyroManiac

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Thanks so much! Also Thanks for the super fast reply!
  31. Offline

    Feed_Dante

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Can promote OP and demote OP be made context sensitive? In other words only show promote if it's a normal user and only show demote if it's an admin/op.

    My username is in both admin.txt and ops.txt and if I right click on my name in pail I see both promote and demote.
  32. Offline

    NinjaGrinch

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Its a shame this doesn't use the native GUI of the OS. :( Would look great on Windows if it did.

Share This Page