GUI Creator
Anyone who has been active on the main forums in the last few days must surely have already heard the news.
I'm not going to comment on why and how, but the short version is that Bukkit is almost certainly not getting passed this.
Consequently, the future of BukkitDev is very uncertain. Even if the legal matters were resolved tomorrow there isn't really anybody left to deal with file submissions anyway. There's no indication about how long the site will stay up and what will happen to the files.
Anyway, while I will continue updating and developing my plugins you will need to look for updates somewhere else, namely the wiki. I will be updating this wiki in the next few days to facilitate better communication (forums, email, etc.) and adding any documentation that's missing.
I will also, of course, be looking into porting the plugins over to whichever API emerges from the ashes!

GUI Creator
This is the successor to Admin GUI, featuring a simpler config but offering more powerful customisation!
How it works
Each screen is divided into ten rows, each having four columns (by default). Controls can be placed into any of these cells, and can span multiple rows and columns. It's also possible to set the exact x, y, width, and height values if needed. See the tutorial for more information.
Video overview
Tutorial
Available controls
- buttons
- text boxes
- checkboxes
- radio buttons
- textures (for images)
- sliders
- gradients
- labels
- spacers
- link buttons
Requirements
- SpoutPlugin
- Spoutcraft
Both of these can be downloaded here
Config
- open_screen
- set this to the id of a screen to have that screen automatically open when the GUI does
- make_player_skins
- set this to no to stop the plugin creating skins when players join the server
The rest of the config is used to change the default colours of things. Each value must be a string in the format r,g,b or r,g,b,a. Note that you can override these colours on any particular control.
Commands
- /reload_gui_creator or /rgc
- this will refresh the layout files if they have been changed since the plugin was started. The new screens will be visible the next time the GUI is opened
- /open_screen or /os
- this is an alternative to pressing the C key
- use on its own to open the GUI like normal
- use with a screen id to open the GUI directly to that screen
Permissions
- gui_creator.can_open_gui - controls whether the user can access the GUI. Default is false.
- gui_creator.can_reload_screens - controls whether the user can reload the screen files. Default is false.
Mac users
I've been informed that Macs have a very unfriendly behaviour of treating remote folders like local folders and creating hidden files on them. This has been causing the problems that I've seen come up a few times where the plugin is trying to read this hidden file.
I've fixed this from 1.6.7 but it you don't want to update, or you're seeing problems with other plugins, there are a couple of things you can do. One is to delete the file .DS_Store from any remote folders that are giving you trouble. Second is to follow the instructions here and stop the behaviour altogether.
Issues
- there are a couple of controls that are hard-coded in Spout so resizing them won't work as intended (mainly check_box and radio_button)
- this plugin is intended to be run full-screen, with GUI scale set to auto (see the previous point)
Like this and want to show appreciation? Send any unwanted TF2 items my way! id: coldandtired
-
View User Profile
-
Send Message
Posted Apr 7, 2012can you set a permission to View a whole screen? not just a control? So the player can not run /os 200 and open then window
-
View User Profile
-
Send Message
Posted Apr 6, 2012@marsilainen @Darkhand81The sound thing is probably easy to do - I'll look into it.
The other thing, however, is probably impossible.
I could do it (with difficulty) in code, but reacting to a user entered string would be very difficult.
If other plugin devs have written their plugins to allow external access (some do, some don't) then a few very specific commands could be added though.
-
View User Profile
-
Send Message
Posted Apr 6, 2012Thanks for the update!
@coldandtired
Pretty much what Darkhand81 said there. Other example would be that when i use a trading/shop plugin and give it command like /shop StevesShop list. Normally it would just list the items that are for sale in the chat field but if could i pass the command to GUI, then the the list values could be used in combo box or slider for example.
Some spout plugins can also play sounds. Could it be possible to give button a key that takes url to a sound file and then play it when its pressed?
-
View User Profile
-
Send Message
Posted Apr 5, 2012@coldandtired
If I understand marsilainen correctly, he's looking for the ability to pull text output from other plugins.
I've got a great example I'd love to see... NoLagg has a command, /nolagg mem, that displays used and available memory. I'd love to be able to see that every time I open an admin panel, for example.
-
View User Profile
-
Send Message
Posted Apr 5, 20121.6.3 is up - direct link
Changes
-
View User Profile
-
Send Message
Posted Apr 5, 2012@marsilainen The first part is doable but I don't really understand the second part. Could you give a specific example?
-
View User Profile
-
Send Message
Posted Apr 5, 2012@Beatkidz Sorry, I misunderstood your original post. I thought you were talking about the chat box, which does have code to not open the GUI when the key is pressed.
I will add something to do the same with any text box in the GUI.
-
View User Profile
-
Send Message
Posted Apr 5, 2012Would it be easy to add support for command line options like /os #guid #option1 #option2 and then i could use those values in controls?
Other idea was that could it be somehow possible to parse values from other plugins command lines and then send it to gui. Maybe the command would be something like /gcr parse %1 %2 ;/sometotherplugin command1 command2
This could sound really silly and completely useless but just some thoughts.
-
View User Profile
-
Send Message
Posted Apr 5, 2012@coldandtired
Ahhh. So if i use a text box on the main page it will still close with the G button right? I have to put my text box on a other screen?
-
View User Profile
-
Send Message
Posted Apr 5, 2012@coldandtired
Then there is a bug somewhere I guess, because if I have a screen open, focus on a text box, and start typing, the menu will close when I press the toggle key. This obviously is quite undesirable since I need to type that key...
-
View User Profile
-
Send Message
Posted Apr 5, 2012@claytonraymond2004It already works that way. The GUI will only open or close if the player is viewing the main screen (or the GUI itself for closing).
Technically, it also opens when G is pressed with the survival inventory open but that's a Spoutcraft bug.
It was changed to a toggle a while ago and did in fact work that way due to a Spout update but from 1.6.2 it works as expected.
-
View User Profile
-
Send Message
Posted Apr 5, 2012In 1.6.2 "G" was changed to a toggle for the screen. Can this be undone because I'm sure many users (myself included) are using text boxes to get some input to run commands on, and with G being a toggle, the GUI will close when I type a "G" in a text box.
Alternately, it could be programmed that if the focus is in a text box, "G" wouldn't close the GUI or make a setting in the config where the key could be set to toggle, or just bring it up.
(I have also remapped the toggle to a different key, but I find doing so somewhat inconvenient and really, I like "G" as a key since makes logical sense, but it is just slightly annoying as it is programmed now.)
-
View User Profile
-
Send Message
Posted Apr 5, 2012@Beatkidz Currently no.
What you can do at the moment is use a button to send a message to a user who can then click on it to go to the link.
-
View User Profile
-
Send Message
Posted Apr 5, 2012I'm not sure if this can be done but is there anyway to make a Url link open a webpage?
-
View User Profile
-
Send Message
Posted Apr 3, 2012That would be super! I'm using this for custom items and i want to keep everything command free. I don't want players to see the exact command though.
-
View User Profile
-
Send Message
Posted Apr 3, 2012@marsilainen Not currently, although I can add it.
-
View User Profile
-
Send Message
Posted Apr 3, 2012Thanks for this awesome tool!
One question. Can i hide the used command from tooltip?
-
View User Profile
-
Send Message
Posted Apr 3, 2012@dean2016258 Your YAML is malformed. See the ticket for details.
-
View User Profile
-
Send Message
Posted Apr 2, 2012wtf? org.bukkit.command.CommandException Unhandled exception executing command 'rgc' in plugin GUI Creator v1.6.2 at org.bukkit.command.PluginCommand.execute(PluginCommand.java:42) at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:166) at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:620) at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.java:821) at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:781) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:764) at org.getspout.spout.SpoutNetServerHandler.a(SpoutNetServerHandler.java:103) at net.minecraft.server.Packet3Chat.handle(Packet3Chat.java:33) at net.minecraft.server.NetworkManager.b(NetworkManager.java:229) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:113) at org.getspout.spout.SpoutNetServerHandler.a(SpoutNetServerHandler.java:169) at net.minecraft.server.NetworkListenThread.a(NetworkListenThread.java:85) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:625) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:509) at net.minecraft.server.ThreadServerApplication.run(SourceFile:490) Caused by: while parsing a flow mapping in "<reader>", line 1, column 1: {\rtf1\ansi\ansicpg1252\cocoartf ...
expected ',' or '}', but got FlowMappingStart in "<reader>", line 2, column 1: {\fonttbl\f0\fmodern\fcharset0 C ...
at org.yaml.snakeyaml.parser.ParserImpl$ParseFlowMappingKey.produce(ParserImpl.java:735) at org.yaml.snakeyaml.parser.ParserImpl.peekEvent(ParserImpl.java:161) at org.yaml.snakeyaml.parser.ParserImpl.checkEvent(ParserImpl.java:146) at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java:230) at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:160) at org.yaml.snakeyaml.composer.Composer.composeDocument(Composer.java:123) at org.yaml.snakeyaml.composer.Composer.getSingleNode(Composer.java:106) at org.yaml.snakeyaml.constructor.BaseConstructor.getSingleData(BaseConstructor.java:121) at org.yaml.snakeyaml.Yaml.loadFromReader(Yaml.java:480) at org.yaml.snakeyaml.Yaml.load(Yaml.java:411) at me.coldandtired.GUI_Creator.Main.get_screens(Main.java:232) at me.coldandtired.GUI_Creator.Main.onCommand(Main.java:252) at org.bukkit.command.PluginCommand.execute(PluginCommand.java:40) ... 14 more
-
View User Profile
-
Send Message
Posted Mar 29, 2012@QweSteR2221 Set ForceCraftBukkitBuildCheck: false in the Spout config.