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

    @Jackzilla88

    I still can't give out a definitive date for 1.0 since I've been very busy with school and such, but work is progressing.
     
  3. Offline

    Jackzilla88

    Aren't we all? Haha no problem, I'll just get it whenever it's done!
     
  4. Offline

    BackHandReaper

    [​IMG]

    [​IMG]
    [​IMG]







    It seems I have pail installed on that 1.8 bukkit easy installer. (I know how to install it :p) How do i get that manager open?

    Thanks
     
  5. Offline

    escape

    @BackHandReaper It should open when you start the server or enter the pail command in the console. But remember pail isn't updated for 1.8 yet and I can't garentee conpatability until the next RB is out.
     
  6. Offline

    OZ4RK

    Currently on build 1125, I'm getting some annoying extra notations like [34m[stevieg85 joined the game] This is a PAIL specific glitch, no sign of it in terminal.
     
  7. Offline

    escape

     
  8. Offline

    registered

    I love this plugin but the spanish translation is very very bad :mad: i think you use google translator.
    (I can translate better to spanish because i am spanish only put me the words and i translate to you because i dont know anything about java and i cant translate send me the list of words)
    PLEASE :)
     
  9. Offline

    DDSLoan96

    add an option to change time from the GUI instead of the command
     
  10. Offline

    feildmaster

    I'll be enhancing the translation system at a later date. :)
    This will be in PailPlus. ^^
     
  11. Offline

    DDSLoan96

    how much will PailPlus be and what payment options (student so no creditcard)
     
  12. Offline

    feildmaster

  13. Offline

    briankdk

    wow - it even looks like its working with PermissionsEX , or ???
     
  14. Offline

    feildmaster

    what?
     
  15. Offline

    Yoshinat0r

    Is it possible to minimize the pail window to the system tray only? I have been dieing for a way to do this with a minecraft server, and was hoping maybe your plugin had the ability to do so.
     
  16. Offline

    feildmaster

    Apparently it's possible... Maybe I'll add it at a later date. ^^

    :eek:
    Maybe I'll add it to PailPlus. I need to start making more "enhancements" to Pail through that plugin. :D

    @escape and @Yoshinat0r : Yes indeed, I will be adding this to PailPlus. :p Probably with the next update of the "MultiWorld Perms"
     
  17. Offline

    nicolaieno

    it can't find mobarena
     
  18. Offline

    grindle2000

    Just wanted to say i love this app and i cant wait till the permissions are done
     
  19. Offline

    nicolaieno

    pail can't find mobarena [1060] y?
     
  20. Offline

    feildmaster

    Don't multi-post.

    And what do you mean can't find mobarena? Error report? What is it supposed to find?
     
  21. Offline

    Justin17

    Something happened. Pail used to work fine... But now I get this error with only Pail installed:
    Error log through command console (open)
    Code:
    151 recipes
    16 achievements
    17:37:34 [INFO] Starting minecraft server version Beta 1.7.3
    17:37:34 [INFO] Loading properties
    17:37:34 [INFO] Starting Minecraft server on *:25565
    17:37:34 [INFO] This server is running Craftbukkit version git-Bukkit-0.0.0-980-
    g4ed23b1-b1060jnks (MC: 1.7.3)
    17:37:35 [INFO] [Pail] Pail 0.7.1 Enabled
    17:37:35 [INFO] Preparing level "Kingdom of the Sky"
    17:37:35 [INFO] Preparing start region for level 0 (Seed: -5836259217643549153)
    17:37:36 [INFO] Attempted to place a tile entity where there was no entity tile!
    
    17:37:36 [INFO] Attempted to place a tile entity where there was no entity tile!
    
    17:37:36 [INFO] Attempted to place a tile entity where there was no entity tile!
    
    17:37:36 [INFO] Attempted to place a tile entity where there was no entity tile!
    
    17:37:36 [INFO] Attempted to place a tile entity where there was no entity tile!
    
    17:37:36 [INFO] Attempted to place a tile entity where there was no entity tile!
    
    17:37:36 [INFO] Attempted to place a tile entity where there was no entity tile!
    
    17:37:36 [INFO] Attempted to place a tile entity where there was no entity tile!
    
    17:37:36 [INFO] Attempted to place a tile entity where there was no entity tile!
    
    17:37:36 [INFO] Preparing start region for level 1 (Seed: 8153300464865412536)
    17:37:36 [INFO] Preparing spawn area: 0%
    17:37:37 [INFO] Preparing spawn area: 89%
    17:37:37 [INFO] Server permissions file permissions.yml is empty, ignoring it
    17:37:37 [INFO] Done (0.234s)! For help, type "help" or "?"
    17:37:38 [SEVERE] java.lang.NullPointerException
    17:37:38 [SEVERE]       at me.escapeNT.pail.GUIComponents.WaypointEditPanel.upda
    teFields(WaypointEditPanel.java:76)
    17:37:38 [SEVERE]       at me.escapeNT.pail.GUIComponents.WaypointEditPanel.wayp
    ointsValueChanged(WaypointEditPanel.java:327)
    17:37:38 [SEVERE]       at me.escapeNT.pail.GUIComponents.WaypointEditPanel.acce
    ss$000(WaypointEditPanel.java:21)
    17:37:38 [SEVERE]       at me.escapeNT.pail.GUIComponents.WaypointEditPanel$1.va
    lueChanged(WaypointEditPanel.java:113)
    17:37:38 [SEVERE]       at javax.swing.JList.fireSelectionValueChanged(Unknown S
    ource)
    17:37:38 [SEVERE]       at javax.swing.JList$ListSelectionHandler.valueChanged(U
    nknown Source)
    17:37:38 [SEVERE]       at javax.swing.DefaultListSelectionModel.fireValueChange
    d(Unknown Source)
    17:37:38 [SEVERE]       at javax.swing.DefaultListSelectionModel.fireValueChange
    d(Unknown Source)
    17:37:38 [SEVERE]       at javax.swing.DefaultListSelectionModel.fireValueChange
    d(Unknown Source)
    17:37:38 [SEVERE]       at javax.swing.DefaultListSelectionModel.changeSelection
    (Unknown Source)
    17:37:38 [SEVERE]       at javax.swing.DefaultListSelectionModel.changeSelection
    (Unknown Source)
    17:37:38 [SEVERE]       at javax.swing.DefaultListSelectionModel.setSelectionInt
    erval(Unknown Source)
    17:37:38 [SEVERE]       at javax.swing.JList.setSelectedIndex(Unknown Source)
    17:37:38 [SEVERE]       at me.escapeNT.pail.GUIComponents.WaypointEditPanel.<ini
    t>(WaypointEditPanel.java:40)
    17:37:38 [SEVERE]       at me.escapeNT.pail.GUIComponents.SettingsPanel.<init>(S
    ettingsPanel.java:59)
    17:37:38 [SEVERE]       at me.escapeNT.pail.Util.ServerReadyListener.publish(Ser
    verReadyListener.java:23)
    17:37:38 [SEVERE]       at java.util.logging.Logger.log(Unknown Source)
    17:37:38 [SEVERE]       at java.util.logging.Logger.doLog(Unknown Source)
    17:37:38 [SEVERE]       at java.util.logging.Logger.log(Unknown Source)
    17:37:38 [SEVERE]       at java.util.logging.Logger.info(Unknown Source)
    17:37:38 [SEVERE]       at net.minecraft.server.MinecraftServer.init(MinecraftSe
    rver.java:154)
    17:37:38 [SEVERE]       at net.minecraft.server.MinecraftServer.run(MinecraftSer
    ver.java:337)
    17:37:38 [SEVERE]       at net.minecraft.server.ThreadServerApplication.run(Sour
    ceFile:422)
    17:37:38 [SEVERE] Unexpected exception
    java.lang.NullPointerException
            at me.escapeNT.pail.GUIComponents.WaypointEditPanel.updateFields(Waypoin
    tEditPanel.java:76)
            at me.escapeNT.pail.GUIComponents.WaypointEditPanel.waypointsValueChange
    d(WaypointEditPanel.java:327)
            at me.escapeNT.pail.GUIComponents.WaypointEditPanel.access$000(WaypointE
    ditPanel.java:21)
            at me.escapeNT.pail.GUIComponents.WaypointEditPanel$1.valueChanged(Waypo
    intEditPanel.java:113)
            at javax.swing.JList.fireSelectionValueChanged(Unknown Source)
            at javax.swing.JList$ListSelectionHandler.valueChanged(Unknown Source)
            at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source
    )
            at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source
    )
            at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source
    )
            at javax.swing.DefaultListSelectionModel.changeSelection(Unknown Source)
    
            at javax.swing.DefaultListSelectionModel.changeSelection(Unknown Source)
    
            at javax.swing.DefaultListSelectionModel.setSelectionInterval(Unknown So
    urce)
            at javax.swing.JList.setSelectedIndex(Unknown Source)
            at me.escapeNT.pail.GUIComponents.WaypointEditPanel.<init>(WaypointEditP
    anel.java:40)
            at me.escapeNT.pail.GUIComponents.SettingsPanel.<init>(SettingsPanel.jav
    a:59)
            at me.escapeNT.pail.Util.ServerReadyListener.publish(ServerReadyListener
    .java:23)
            at java.util.logging.Logger.log(Unknown Source)
            at java.util.logging.Logger.doLog(Unknown Source)
            at java.util.logging.Logger.log(Unknown Source)
            at java.util.logging.Logger.info(Unknown Source)
            at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:154)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:337)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    >

    Error log through Pail (open)
    Code:
    05:37 PM [INFO] [Pail] Pail 0.7.1 Enabled 
    05:37 PM [INFO] Preparing level "Kingdom of the Sky" 
    05:37 PM [INFO] Preparing start region for level 0 (Seed: -5836259217643549153) 
    05:37 PM [INFO] Attempted to place a tile entity where there was no entity tile! 
    05:37 PM [INFO] Attempted to place a tile entity where there was no entity tile! 
    05:37 PM [INFO] Attempted to place a tile entity where there was no entity tile! 
    05:37 PM [INFO] Attempted to place a tile entity where there was no entity tile! 
    05:37 PM [INFO] Attempted to place a tile entity where there was no entity tile! 
    05:37 PM [INFO] Attempted to place a tile entity where there was no entity tile! 
    05:37 PM [INFO] Attempted to place a tile entity where there was no entity tile! 
    05:37 PM [INFO] Attempted to place a tile entity where there was no entity tile! 
    05:37 PM [INFO] Attempted to place a tile entity where there was no entity tile! 
    05:37 PM [INFO] Preparing start region for level 1 (Seed: 8153300464865412536) 
    05:37 PM [INFO] Preparing spawn area: 0% 
    05:37 PM [INFO] Preparing spawn area: 89% 
    05:37 PM [INFO] Server permissions file permissions.yml is empty, ignoring it 
    05:37 PM [SEVERE] java.lang.NullPointerException 
    05:37 PM [SEVERE]     at me.escapeNT.pail.GUIComponents.WaypointEditPanel.updateFields(WaypointEditPanel.java:76) 
    05:37 PM [SEVERE]     at me.escapeNT.pail.GUIComponents.WaypointEditPanel.waypointsValueChanged(WaypointEditPanel.java:327) 
    05:37 PM [SEVERE]     at me.escapeNT.pail.GUIComponents.WaypointEditPanel.access$000(WaypointEditPanel.java:21) 
    05:37 PM [SEVERE]     at me.escapeNT.pail.GUIComponents.WaypointEditPanel$1.valueChanged(WaypointEditPanel.java:113) 
    05:37 PM [SEVERE]     at javax.swing.JList.fireSelectionValueChanged(Unknown Source) 
    05:37 PM [SEVERE]     at javax.swing.JList$ListSelectionHandler.valueChanged(Unknown Source) 
    05:37 PM [SEVERE]     at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source) 
    05:37 PM [SEVERE]     at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source) 
    05:37 PM [SEVERE]     at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source) 
    05:37 PM [SEVERE]     at javax.swing.DefaultListSelectionModel.changeSelection(Unknown Source) 
    05:37 PM [SEVERE]     at javax.swing.DefaultListSelectionModel.changeSelection(Unknown Source) 
    05:37 PM [SEVERE]     at javax.swing.DefaultListSelectionModel.setSelectionInterval(Unknown Source) 
    05:37 PM [SEVERE]     at javax.swing.JList.setSelectedIndex(Unknown Source) 
    05:37 PM [SEVERE]     at me.escapeNT.pail.GUIComponents.WaypointEditPanel.<init>(WaypointEditPanel.java:40) 
    05:37 PM [SEVERE]     at me.escapeNT.pail.GUIComponents.SettingsPanel.<init>(SettingsPanel.java:59) 
    05:37 PM [SEVERE]     at me.escapeNT.pail.Util.ServerReadyListener.publish(ServerReadyListener.java:23) 
    05:37 PM [SEVERE]     at java.util.logging.Logger.log(Unknown Source) 
    05:37 PM [SEVERE]     at java.util.logging.Logger.doLog(Unknown Source) 
    05:37 PM [SEVERE]     at java.util.logging.Logger.log(Unknown Source) 
    05:37 PM [SEVERE]     at java.util.logging.Logger.info(Unknown Source) 
    05:37 PM [SEVERE]     at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:154) 
    05:37 PM [SEVERE]     at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:337) 
    05:37 PM [SEVERE]     at net.minecraft.server.ThreadServerApplication.run(SourceFile:422) 
    05:37 PM [SEVERE] Unexpected exception
    
     
  22. Offline

    escape

    @Justin17 Try deleting your waypoints.dat in the pail folder, it might be corrupted.
     
  23. Offline

    GatsbyTheGreat

    I'm sure this has already been asked, but is there a list of Pail-enabled plugins?

    It would be incredibly useful to have a list linked from the sticky post at the top of this thread. Also, a brief explanation of Pail & PailPlus (and link to PailPlus) in the same post would be very helpful.

    (Awesome plugin, thanks for making this!)
     
  24. Offline

    feildmaster

    http://dev.bukkit.org/server-mods/pail/pages/plugins-that-use-pail/

    Any people that have plugins that use pail, please be sure to tell me. ^^
     
  25. Offline

    GatsbyTheGreat

    http://forums.bukkit.org/threads/vi...3-x-and-permissionsbukkit-pail-support.26456/

    ...The only one I've found so far aside from PailPlus

    On an unrelated note, one really awesome feature would be Spout integration:

    For instance, if a person were admin or some other permissions level, Spout could push Pail to their SpoutCraft client, and permissions could determine which settings they were allowed to change (or, later on, which options were even displayed)

    (http://forums.bukkit.org/threads/de...the-flow-of-endless-possibilities-1060.29259/)

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 18, 2016
  26. Offline

    feildmaster

    Sadly it is not possible to pass pail over spout. (Yet, or in the foreseeable future)
    Not... the screen as you see it. Anyway...

    Now it's even easier to develop with Pail.

    I have made a lightweight API for the general user: (Version 0.7.1)
    Download | Source | JavaDoc

    I will also make a lightweight AdvancedAPI, this is more for personal use, but I'll release it soon.

    Now to find where to place it in the wiki...

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 18, 2016
  27. Offline

    olloth

    Well, it would take us allowing pretty much full access to Swing and opening a new window, etc. I don't think that's the plan. Instead, maybe they should develop a Pail Client (not a modded minecraft client, just a standalone program) that logs in to the Pail server plugin. That would make a LOT more sense to me anyway.

    Reposting my reply from the Spout thread.
     
  28. Offline

    feildmaster

    That's indeed the plan.
     
  29. Offline

    Justin17

    It works :D Thanks.
     
  30. Offline

    Rellik29

    I apologize if it has been asked (searched and didn't see anything) But what are the waypoints commands?

    For example: How do I add waypoints and also teleport to them?

    Thanks!
     
  31. Offline

    feildmaster

    In Pail: Under "Settings -> Waypoints" (To teleport, right click the user and "Teleport")
    In game: You can't
    With other plugins: They can use the API
     

Share This Page