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 7, 2011.

  1. Offline

    escape

    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:
    Show Spoiler

    [​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
    Show Spoiler

    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/
     
  2. Offline

    escape

    @Zarius @feildmaster
    I'm pretty sure I know what it is.

    EDIT: I thought I knew what it was ha. I did end up fixing an unrelated bug in the process though ;)
    I'll have to keep looking. Anyone who figures it out first feel free to submit a pull.

    EDIT2: Nevermind, I found the real problem
     
  3. Offline

    feildmaster

    Haven't even had time to even look at it myself.

    Another window to consider adding, on top of a "monitor" window, would be BukkitPerms. If I can get time I'll do these, either as a separate plugin or merge it with yours.
     
  4. Offline

    alfeh

    Code:
    [Minecraft@mc plugins]$ java -jar -Xmx32M Pail.jar
    Exception in thread "main" java.lang.NoClassDefFoundError: Pail/jar
    Caused by: java.lang.ClassNotFoundException: Pail.jar
            at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
            at java.security.AccessController.doPrivileged(Native Method)
            at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
            at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
    Could not find the main class: Pail.jar. Program will exit.
    
     
  5. Offline

    escape

    @Alfie Cleveland The jar goes in your plugins folder and then you just run your server normally. Don't change your command line.
     
  6. Offline

    alfeh

    Ah I see! Can't you make a desktop GUI?
     
  7. Offline

    escape

    The idea behind it is to act as a plugin, allowing it to interact with other plugins and with bukkit. There are other server guis that act as a wrapper.
     
  8. Offline

    Zarius

    The other bonus is that it's also compatible with other wrappers :)
     
  9. Offline

    escape

    Indeed
     
  10. Offline

    Hubok

    If I were to add Permissions into Pail, would it work for each group, not just ops/non-ops?
    Or do we need to do something special to make it compatible?
     
  11. Offline

    feildmaster

    what are you asking here?
     
  12. Offline

    Hubok

    If I were to install Permissions into Pail, could I promote/demote to any ranks I use in Permissions with Pail?
     
  13. Offline

    feildmaster

    It would need to hook into pail, and have a gui for the permissions.
     
  14. Offline

    kaise123

    Hey, you can run the server without the console window by just running the .jar file in windows if you want. it will just run in the background and load pail when it loads normally, therefore losing the console window (you could delete the batch file you use to run it if you wanted)

    Also i think the idea of being able to use this to edit permissions would be fantastic, any way of integrating visual permissions (http://forums.bukkit.org/threads/visualpermissions-a-gui-editor-for-permissions-3-x-and-permissionsbukkit.26456/) with this?
     
  15. Offline

    feildmaster

    You know, I completely forgot I posted I wanted to make a BukkitPerms gui in pail.

    Also, I would only support BukkitPerms. (Which currently I can't make that work anyway.. That part of the plugin will have to wait)

    EDIT: Good job on the fixes @escape
     
  16. Offline

    escape

    A gui for bukkitperms would be great! I think it would be best to release as a standalone plugin however.

    EDIT: You could also try asking the person who wrote bukkitperms if they'd like to integrate it directly first.
     
    kaise123 likes this.
  17. Offline

    cyberdude

    I would definitely recommend that this could be split in two parts, one for the server as plugin (current) and one for remote access, could be easily made using RMI
    http://www.oracle.com/technetwork/java/javase/tech/index-jsp-136424.html

    Basically RMI is calling and running Java classes and functions across TCP/IP. You can even create a client application that is as empty as basically only containing some very basic RMI code, and the server plugin will then stream/send the UI to this client, basically allowing to easily create a remote client/server platform for Pail.
    Remote control of Pail is a must, it would make this project so much more perfect.

    I might be able to put some time into this if you want someone to cooperate with. This has really great potential.
     
  18. Offline

    Gbhsl

    Amazing work! i hope there will be lots of developers using this! :D
     
  19. Offline

    FuturaEX

    i really like this :D
    but can i 'x' out of the normal server starter ?

    EDIT: nvm, i found out you can't :p
     
  20. Offline

    escape

    This sounds like a great idea! I did some researching but something it wasn't clear. Can the security .policy file that grants clearance for the rmiregistry be included in the application or does it have to be manually changed on the server?
     
  21. Offline

    cyberdude

    I am not sufficiently into RMI that I can say anything about this matter ;). I don't remember adjusting anything with security policy when I used RMI (3 years ago).
    But I'm glad you took my advice and research the subject, that means there might be some hope in getting remote in Pail ;)... Yay!
     
  22. Offline

    escape

    Indeed!
     
  23. Offline

    feildmaster

    I'm not going to add the 'groups' plugin, I meant a standard plugin that allows you to assign permissions to individual people by looking at all the possible registered permissions. (Which Isn't currently available)

    I will be making it a stand alone plugin. Probably call it "AdvancedPail" that adds quite a few options to the mix. ;)

    So I guess I should say "SuperPerms" support. Since that's the name given to them.
     
  24. Offline

    escape

    Sounds great! Right now my priorities are getting the remote server access working and maybe a few small refinements. While I could implement tons of other stuff myself, I'd still like to stick to the bukkit philosophy of providing the solid base functionality and letting plugins do the rest. :)
     
  25. Offline

    feildmaster

    @escape : Sounds great. I don't have too much time at the moment, so I'll probably work on adding features and not caring for the layout. :D

    (A built in layout structuring API would be nice though. If that's even possible using this type of layout structure ;))
     
  26. Offline

    escape

    @feildmaster What do you mean by layout structure?
     
  27. This is a excellent plugin for newbie noobs who want to run a server! Or just anyone who like nice GUI's :) great job man!

    Suggestion: Perhaps add nice colors for the timestamps and or [PLUGINNAME] stuff? :)
     
  28. Offline

    feildmaster

    I was wondering if you could make like... Dynamic/resizing cells based on the amount of cells you input.

    Mm... never mind though. I'll explain a bit more later. But it might just be too much work. ;)
     
  29. Offline

    escape

    @feildmaster If you mean what I think you mean, I did the same thing with GridLayout to display the checkboxes for hiding the tabs in settings here.
     
  30. Offline

    feildmaster

    Hmm... well I'll figure something out.
     
  31. Offline

    pengh

    Very nice, I can't wait to see this expand. I'm currently using crafty, as soon as this has server stats and color coded logs for [info], [warning] and [severe] I'm so switching over ;->
     
    dak393 likes this.

Share This Page