Help Plus
This project is now inactive, for more information see comment http:dev.bukkit.org/bukkit-plugins/help-plus/?comment=136
HelpPlus is an automated database-powered help plugin. It collects all commands from all your plugins and displays them when you type /help.
Features
- Displays all commands from all plugins
- Help is split up into pages
- No need to write your own documentation on commands if you don't want to (description of a lot of commands is stored in plugins' ymls)
- Configurable colors
- Fast help search (SQL)
- Players who don't have permission to use some command won't see the command. - Doesn't have to work for every command, but covers most commands.
- From version 1.0, plugin is more efficient
Command usage
- /help - Displays 1st page of commands
- /help [page] - Displays specified page of commands
- /help <command> - Displays information about single command
- /hplisting - Lists all your commands & permission nodes into a single TXT file
- /hpexport - Exports specified command to config file for overriding. Can be used like /hpexport <command name> or with patterns like /hpexport -p <pattern>
- You can always type /h+ or /hp instead of /help if you want.
Installation
Download HelpPlus.jar and copy it to your plugins folder.
What does it display?
- Command name
- Permission needed for command(if any) - Important note: some commands don't include information about what permission do you need, so even if you setup everything right, it doesn't have to work.
- Usage
- Command aliases
Configuration
On the first launch, HelpPlus generates its own configuration file. If not, you can create it manually( it must be located in plugins/HelpPlus and must be named config.yml ) by copying an example one from this page.
Configuration Nodes
- perms - Permissions system to use. Possible values(must exactly match): OP, None, SP.
- cmds-on-page - How much commands to display on one page
- colors.a - 1st color (default = blue) Possible values(can be lowercase): BLACK, DARK_BLUE, DARK_GREEN, DARK_AQUA, DARK_RED, DARK_PURPLE, GOLD, GRAY, DARK_GRAY, BLUE, GREEN, AQUA, RED, LIGHT_PURPLE, YELLOW, WHITE.
- colors.b - 2nd color (default = gold) Possible values = same as above
- colors.c - 3rd color (default = green) Possible values = same as above
- show.plugin - Whether the user should see which plugin takes care of specified command( true/false )
- help.perm - Whether you need permission(helpplus.help) to use /help (true or false)
- commands - See Page "Overriding commands' info"
- config-is-primary - If configuration should override information in database
Where are those information from?
Information are downloaded on each plugin list change or bukkit version change from plugins' ymls. If you're a plugin developer, please always put information about your commands into your plugins' ymls. Thanks. Don't know how to format commands in plugin.yml? Check page 'Formatting commands in plugin.yml'
Permissions
- If you set help.perm to true in your config file, your users need to have permission "helpplus.help" to use /help.
- helpplus.listing is needed for /hplisting command.
- helpplus.hpexport is needed for /hpexport.
Achievement get!
Contact Author
If you wish to contact author somewhere else, you can do so on:
- Blog: http://tomsik68.blogspot.com/
- Twitter: https://twitter.com/tomsik68
- E-Mail: [email protected]
- GitHub: https://github.com/tomsik68 (also, sources of all plugins!)
- Skype: Tomsik68 (my pic is redstone dust ;) )
Great, Thank you!
@therealspoljo
@kakirocks
Download 0.91. It should fix your problem. Thanks for reporting :)
Plugins we use
http://pastebin.com/cb2XQs0e
@therealspoljo
I have the same error here
Getting this error when my server starts: http://pastie.org/6275985
@therealspoljo
Aw, I didn't link the permission library :(
Thanks for submitting! :)
@tomsik68
If you can make the plugin less self destructive to its existing database, I'll put togather a PHP script that anyone using this plugin could use to host a Web-version of their help for their website. Once they clean up some of their plugins non-existant information and it's filled in. They'd be able to have a viable medium for any server using any plugins.
If the plugin only does not update if the "name" part of the database already exists, it would only generate the file the first time, but would continue to add new plugins as they are put onto the server. If one was removed, the person would simply remove them in the database.
When I type /help im getting ''An internal error occured while attemping to perform this command'' and in console: http://pastie.org/6221829
@Krevex
Sorry, but the plugin updates the database regardless of your config file availability :( because the secondary source of information are plugin.yml files. I see you're very interested in this option. Maybe I could get some time to update the plugin today to 0.91 & implement the option not to rewrite database ;)
@tomsik68
Aaah, in the plugin version 1.0, not the bukkit R1.0. Got a bit ahead of myself. I'll be lurking around for the next edition!
@tomsik68
Spectacular! On a side note, if i had edited the config.yml, rewrote that and made it read only, the updating the SQL would have stopped? Ive seen a few plugins that are capable of deleting even a read-only file if it was inaccessable.
Those changes would have been dumped to the SQL database?
Either way, now that 1.0 is out =Downloads and tinkers= Appreciate the grand work!
@Krevex I'm glad you like the plugin :) Yeah, config file is primarily used for overriding database. Now, I've made it to remove the whole database after plugin disables. In 1.0, it's going to be configurable. Like you'll be able to set your primary source of information for help(YAML/SQL).
The MySQL addition to the plugin is great. With a bit of effort you can go back and correct some of the plugins missing information making it a viable tool. With a bit more work you can use PHP to organize all the information by any row you want, great for web resources.
I'm looking to see if you'd be able to change the way the database is updated. Instead of rebuilding the library every time the server loaded, if the row "Name" already exists, it wouldn't replace the information already provided. I learned it updated after a few hours of work updating the listing, and it wasn't untill I reloaded the server that I realized all the work was destroyed.
Im so annoyed with this plugin and essentials. Every time I use /help there is an internal error with your plugin and with essentials it wont show all the plugin commands. executing command 'help' in plugin HelpPlus v0.81 at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:186) at org.bukkit.craftbukkit.v1_4_6.CraftServer.dispatchCommand(CraftServer.java:510) at net.minecraft.server.v1_4_6.PlayerConnection.handleCommand(PlayerConnection.java:980) at net.minecraft.server.v1_4_6.PlayerConnection.chat(PlayerConnection.java:898) at net.minecraft.server.v1_4_6.PlayerConnection.a(PlayerConnection.java:853) at net.minecraft.server.v1_4_6.Packet3Chat.handle(Packet3Chat.java:44) at net.minecraft.server.v1_4_6.NetworkManager.b(NetworkManager.java:290) at net.minecraft.server.v1_4_6.PlayerConnection.d(PlayerConnection.java:112) at net.minecraft.server.v1_4_6.ServerConnection.b(SourceFile:39) at net.minecraft.server.v1_4_6.DedicatedServerConnection.b(SourceFile:30) at net.minecraft.server.v1_4_6.MinecraftServer.r(MinecraftServer.java:598) at net.minecraft.server.v1_4_6.DedicatedServer.r(DedicatedServer.java:224) at net.minecraft.server.v1_4_6.MinecraftServer.q(MinecraftServer.java:494) at net.minecraft.server.v1_4_6.MinecraftServer.run(MinecraftServer.java:427) at net.minecraft.server.v1_4_6.ThreadServerApplication.run(SourceFile:849) Caused by: java.lang.ArithmeticException: / by zero at sk.tomsik68.helpplus.HelpPlus.onCommand(HelpPlus.java:217) at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ... 15 more Can you fix my config or something? I have no Idea how this is supposed to work.
@Jungle_Law
Resetting config: Was there any error on plugin load? If yes, could you please send me the error report? You can't change help 1 to help-economy, but you can use plugin that provides you with shortcut commands for that. Symbols in YML file must be put in quotes. I see you're doing it correct. I'll look at it.
My config keeps resetting on reload... Is there a limit to the number of lines per page? And can i change help-1, help-2, help-3 > to like help-social, help-economy and so on..? Or do I have to add that to the buttom?
Also is there any symbols i cannot use like < : > ?
I'm pretty sure I placed all the text inside quotes '%color%text%newcolor%'
And each line like: - '%color%...blah'
What am i doing wrong?
BTW for some reason it worked the first time I edited the text... But i didnt add special page-names...
@Calenria
Wow, thanks! :)
@tomsik68
will work, i think ;)
@Calenria
Ok. I'd implement it into plugin, but Bukkit's database engine doesn't give me that much control, so I'll just post it onto front page. Thanks for making the query public :).
@tomsik68
I created the table with:
now it works :)