[INACTIVE][INFO] Help 0.2: The smart /help menu [531]

Discussion in 'Inactive/Unsupported Plugins' started by tkelly, Feb 28, 2011.

  1. Offline

    tkelly

    Help v0.2
    Download Help v0.2
    Download Help (Static Jar)
    Help Source Code
    Suggest Features

    Help has support for both GroupManager and Permissions, so you can use either one. You can also use neither if you so choose. Help will not force you to any which one.

    What is Help?
    Help is a clean and advanced /help menu. Help separates "main" commands from secondary ones, allowing you to have a clean initial menu, but still able to dig down and get access to every possible command.

    It is also the first /help menu to take into account permissions; some commands simply aren't applicable to all users, so those commands should clearly not be visible to those users. Now, default users' help menus won't be cluttered with commands for admin tools they have no way of using.

    Scroll down for a preview, or see below for how to hook into Help :)

    Help Commands
    /help (#) : Shows the /help menu.
    /help http://dev.bukkit.org/bukkit-plugins/ (#)[/I][/B]:[/FONT] Shows all the help entries for [I][plugin][/I]. [B][FONT=courier new]/help plugins[/FONT][/B] : Shows a list of all the plugins with Help entries. [FONT=courier new][B]/help search [I][query][/I][/B][/FONT] : Searches for [I][query][/I] within it' entries. [B][FONT=courier new]/help reload[/FONT][/B] : Reloads the entries from ExtraHelp.yml. [FONT=helvetica][SIZE=5][B]Plugin Support[/B][/SIZE][/FONT] Help requires that plugins tell Help about the commands they use. This makes sure that the commands and permissions are accurate and precise (rather than trying to auto fetch commands). Because it's ridiculous to assume that all plugins will instantly jump up and support Help (we can dream can't we? :D), server admins can mimic this behavior by supplying... [SIZE=5][FONT=helvetica][B]Custom ExtraHelp/[/B][/FONT][/SIZE] In the Help.zip download, I include a Help/ folder with a sample extra helps inside the ExtraHelp folder. This shows you how you can add custom commands to the /help menu. I'll also cover how to do that here. Each command has a "name", this name is only for you, as Help doesn't care about it (they just need to be unique names). In the following example the names are 'versions', 'pluginversions', 'kick' and 'essentialswho'. Within these Nodes you [U][I][B]need[/B][/I][/U] 3 things: command, description, and plugin. These should be self-explanatory. The two optional pieces are "main" and "permissions". If you specify a "main", you can choose whether or not the command is important enough to show up on the main /help menu; if you leave it blank or skip it, it will default to 'false'. If you specify a "visible", you can specify whether the command shows up at all. This is useful for overriding other plugins' built-in Help support (in case you don't want all the commands); if you leave it blank or skip it, it will default to 'true'. If you specify a "permissions", you can choose what is necessary for the user to see the command; and leaving it blank will allow all to see. So in the case of /version, all users can use it, so no permissions. But with /who, you have to have essentials.list, so that was specified. There is also a special permission case, "OP". By specifying this, this will require the user to be an OP to use the command (as is the case with Minecraft's built-in /kick command). [CODE] versions: command: version description: Show the version of Minecraft and CB plugin: CraftBukkit main: true pluginversions: command: version [plugin] description: Shows the version of [plugin] plugin: CraftBukkit kick: command: kick [player] description: Kicks [player] from the server plugin: Minecraft main: true permissions: OP essentialswho: command: who description: Show who's one the server plugin: Essentials main: true permissions: essentials.list [/CODE] [B][SIZE=5][FONT=helvetica]How To Hook into Help.[/FONT][/SIZE][/B] Hooking into Help is extremely easy, and very similar to hooking into any permission-plugin. When your plugin is starting up, just grab the Help plugin and register your commands with Help's registerCommand() method; that's it! Here's the API and some examples. If you'd like a concrete example, check out the relevant source code from [URL='https://github.com/tkelly910/MyHome/blob/master/src/main/java/me/taylorkelly/myhome/HomeHelp.java']MyHome[/URL] and [URL='https://github.com/tkelly910/BigBrother/blob/master/src/main/java/me/taylorkelly/bigbrother/BBHelp.java']BigBrother[/URL]. [SIZE=4][FONT=helvetica][B]Help API[/B][/FONT][/SIZE] [CODE] /** * Registers the given command, description, and plugin. * There are no permissions, so all users can see it. * It is also not a "main" help entry. * @return Whether or not it was successful */ public boolean registerCommand(String command, String description, Plugin plugin); /** * Registers the given command, description, and plugin. * There are no permissions, so all users can see it. * You can set whether the plugin is a "main" entry or not * @return Whether or not it was successful */ public boolean registerCommand(String command, String description, Plugin plugin, boolean main); /** * Registers the given command, description, and plugin. * You can specify one or more permissions. * If a user has permissions for at least (1) of them, he can see this command * It is also not a "main" help entry. * @return Whether or not it was successful */ public boolean registerCommand(String command, String description, Plugin plugin, String... permissions); /** * Registers the given command, description, and plugin. * You can specify one or more permissions. * If a user has permissions for at least (1) of them, he can see this command * You can set whether the plugin is a "main" entry or not * @return Whether or not it was successful */ public boolean registerCommand(String command, String description, Plugin plugin, boolean main, String... permissions); [/CODE] [SIZE=4][FONT=helvetica][B]Basic Example[/B][/FONT][/SIZE] [CODE] // plugin is the instance of your Plugin registering the commands Plugin test = plugin.getServer().getPluginManager().getPlugin("Help"); if (test != null) { Logger log = Logger.getLogger("Minecraft"); Help helpPlugin = ((Help) test); // Registers a main command. But all users will be able to see it helpPlugin.registerCommand("home help", "Help for all MyHome commands", plugin, true); // Registers a secondary command to our plugin (MyHome), but the user has to have the permission to see it helpPlugin.registerCommand("home", "Go home young chap!", plugin, "myhome.home.basic.home"); log.log(Level.INFO, "'Help' support enabled."); } else { Logger log = Logger.getLogger("Minecraft"); log.log(Level.WARNING, "'Help' isn't detected. No /help support."); } [/CODE] [SIZE=4][FONT=helvetica][B]Slightly More Advanced Example[/B][/FONT][/SIZE] [CODE] Help helpPlugin = ((Help) test); String[] permissions = new String[]{"bb.admin.watch", "bb.admin.info", "bb.admin.rollback", "bb.admin.cleanse"}; // If a user has any one of those permissions, they'll be able to see /bb help. A main command helpPlugin.registerCommand("bb help", "Help for all BigBrother commands", plugin, true, permissions); // If a user has "bb.admin.watch" they'll be able to see /bb watch [player]. A secondary command helpPlugin.registerCommand("bb watch [player]", "Toggle the watch on [player]", plugin, permissions[0]); [/CODE] [FONT=helvetica][SIZE=5][B]Plugins with Help Support[/B][/SIZE][/FONT] Here's a quick list of plugins (and version) that have built in Help support. - MyHome v1.9.2+ - MyWarp v1.10.3+ - BigBrother v1.6.4+ - Citizens v1.0+ - General 3.1+ - TelePlus 1.6+ - Pixl 1.3+ - Vampire 1.3+ [FONT=helvetica][SIZE=5][B]ExtraHelp Packs[/B][/SIZE][/FONT] [URL='https://github.com/FabianN/MC-Bukkit-HelpExtra']FabianN put together a repository of entries for your ExtraHelp/ that represent other plugins' commands.[/URL] It's really awesome and was helped put together by others from the community. [SIZE=5][B][FONT=helvetica]Preview[/FONT][/B][/SIZE] [IMG]http://i.imgur.com/AE9cG.jpg[/IMG] [IMG]http://i.imgur.com/cII2X.jpg[/IMG] [SIZE=5][B][FONT=helvetica]Changelog[/FONT][/B][/SIZE] [SPOILER="Changelog"] [SIZE=5][FONT=helvetica][B][URL='http://taylorkelly.me/plugins/Help/Help%20v0-2.zip'][COLOR=rgb(16, 97, 179)]Help v0.2 [531][/COLOR][/URL][/B][/FONT][/SIZE] [I]Released 15 Mar, 2011[/I] - Built with latest recommend build (531) - Multiline support. Descriptions of commands can now be as long as you'd like. - Separated ExtraHelp.yml into separate YML files (for each plugin, etc). - Plugin overriding. Don't like how a plugin has their Help support? Completely customize their entries. [SIZE=5][FONT=helvetica][B][URL='http://taylorkelly.me/plugins/Help/Help%20v0-1-1.zip']Help v0.1.1 [493][/URL][/B][/FONT][/SIZE] [I]Released 6 Mar, 2011[/I] - Built with latest recommend build (493) - Updated for GroupManager 1.0 [SIZE=5][FONT=helvetica][B][URL='http://taylorkelly.me/plugins/Help/Help%20v0-1.zip'][COLOR=rgb(16, 97, 179)]Help v0.1 [440][/COLOR][/URL][/B][/FONT][/SIZE] [I]Released 28 Feb, 2011[/I] - Intial Release [/SPOILER]/
     
  2. Offline

    Bjourk

    I think they're only valid if Java is programmed to do something with a blank value. This plugin even says to leave the "main" value blank if you want it to default to "false". I assumed that meant I could leave others blank too.
    Well, now I know and so can everyone else.
    And people can use the FishPeople addition!

    @tkelly
    Would you consider putting FabianN's GitHub page on the first post, so others can benefit from it?
     
  3. Offline

    starcitsura

    I wish the plug in would hide catagories in which the user has no rights to the commands in said catagory.
     
  4. Offline

    FabianN

    You can do that by making some permission setting for the category and assigning it to those that should be able to see it.

    I assume you mean the entries in the help menu like ESocial, WETools, etc?

    In my setup I added to the ESocial help entry essentials.ESocial as a permission requirement. Then I just need to add essentials.ESocial to the groups/users that I want to be able to see that entry and ta-da, happy sheep all around.

    I will be added this to the help files in my repo, though not till later tomorrow.

    And thanks for all the work the rest of you have done. So for I've just copy+pasted most of the sheets currently in my repo. (With our powers combined...)
     
  5. Offline

    MacG32

    Confirmed working with build #556. [​IMG]
     
  6. Offline

    Taeir

    Why does the plugin make plugin yml files with no lines? all is cropped in one line and thus hard to change. If i use notepad++ i get errors when i try to load the file. I know it has to do with tab replacements but how to turn it off?
     
  7. It is most likely using Unix line endings instead of DOS endings.
     
  8. Offline

    Celtic Minstrel

    That would only be a problem if using Notepad, and he said he was using Notepad++, which I think is a completely different program.
     
  9. My bad. I missed the ++ in his message. Notepad++ does work with Unix endings...
     
  10. Offline

    starcitsura

    I was doing that with fake permissions (fake.mod,fake.admin) but it would be nice if it was done nativily
     
  11. Offline

    Bjourk

    What does this mean and how do I correct it?
    Code:
    
    2011-03-16 20:45:14 [SEVERE] null
    org.bukkit.command.CommandException: Unhandled exception executing command 'help' in plugin Essentials v2.0.295
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:37)
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:80)
        at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:183)
        at net.minecraft.server.NetServerHandler.c(NetServerHandler.java:645)
        at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:608)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:602)
        at net.minecraft.server.Packet3Chat.a(SourceFile:24)
        at net.minecraft.server.NetworkManager.a(SourceFile:230)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:76)
        at net.minecraft.server.NetworkListenThread.a(SourceFile:100)
        at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:357)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:272)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
    Caused by: org.bukkit.command.CommandException: Unhandled exception executing command 'help' in plugin Help v0.2
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:37)
        at com.earth2me.essentials.Essentials.onCommand(Essentials.java:543)
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:35)
        ... 12 more
    Caused by: java.lang.NullPointerException
        at me.taylorkelly.help.HelpPermissions.permission(HelpPermissions.java:43)
        at me.taylorkelly.help.HelpEntry.playerCanUse(HelpEntry.java:48)
        at me.taylorkelly.help.HelpList.getSortedHelp(HelpList.java:38)
        at me.taylorkelly.help.Lister.setPage(Lister.java:32)
        at me.taylorkelly.help.Help.onCommand(Help.java:77)
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:35)
        ... 14 more
    
     
  12. Offline

    NateLogan

    Is it possible to somehow edit ExtraHelp.yml for MyHome and Help itself? I don't really want to do this by changing source code (it's just not right).
     
  13. Offline

    Celtic Minstrel

    Find the MyHome_orig.yml and Help_orig.yml files in your ExtraHelp folder, rename them to get rid of the "_orig" part, and edit.
     
  14. Offline

    NateLogan

    Yeah, just figured that out :).

    But still one problem remains: If I change for example "homeset" parameter "main" to false, Help plugin will choose default entry from orig file instead of the new one...
     
  15. Offline

    Amethyst

    Extra help isn't loading. It wasn't in my jar so I made the help commands (with help from FabianN's submissions) then renamed the file Extrahelp.yml (since I didn't have one) is there a certain place in the Jar file that I need to put it?

    Here's my Extrahelp.yml:

    http://pastebin.com/qCT1VswF
     
  16. Offline

    BPCM

    as
    I am having the same issue as well, I thought I was doing something wrong lol. Some entries that originally had true as the "main" parameter in FOO _orig.yml when it is set to false, the custom configuration is ignored and the config used in FOO _orig.yml is used. Is there any way to change this behavior? I would like to get it so that only /help http://dev.bukkit.org/bukkit-plugins/, /help plugins, and /help search [query] are displayed in "main"./
     
  17. Offline

    Taeir

    i get an error on loading:
    Code:
    17:49:39 [SEVERE] [HELP] Error!
    java.lang.NullPointerException
     at me.taylorkelly.help.HelpLoader.load(HelpLoader.java:33)
     at me.taylorkelly.help.Help.onEnable(Help.java:39)
     at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:118)
     at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:451)
     at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:217)
     at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:92)
     at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:70)
     at org.bukkit.craftbukkit.CraftServer.reload(CraftServer.java:260)
     at org.bukkit.command.SimpleCommandMap$ReloadCommand.execute(SimpleCommandMap.java:196)
     at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:80)
     at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:221)
     at net.minecraft.server.MinecraftServer.b(MinecraftServer.java:380)
     at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:366)
     at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:272)
     at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
    2011-03-17 17:49:39 [INFO] [HELP] 176 extra help entries loaded
    2011-03-17 17:49:39 [INFO] [HELP] Permissions enabled using: Permissions v2.5.4
    2011-03-17 17:49:39 [INFO] [HELP] Help 0.2 enabled
    
    how to find the problem? it still seems to work

    fabianN here is my Voxelmore file.
     

    Attached Files:

    Last edited by a moderator: May 10, 2016
  18. Offline

    Metalcat

    I get the same thing... =/
     
  19. Offline

    starcitsura

    I was getting errors with the worldedit.yml, removing it stopped the errors.
     
  20. Offline

    Bjourk

    I still get this when I type "/help" in game. Help so far is even less helpful than Essentials Help, hahaha. Is there some clash between the two? Is there a way to disable other "/help" commands so that Help works?

     
  21. Offline

    Alienware777

    Why is it that some of my extra help files do not show up? I have four of them that show up (CraftBukkit, Essentials, WorldEdit, Help), and two that don't (WorldGuard, Vanish). I paid close attention and double checked to be sure that they are correct, and except for the info they match perfectly. Is there a limit of like 4?
     
  22. Offline

    Celtic Minstrel

    There are some strange things happening with my registered commands. Some show up two or three times (all but the first time without the the description), and at least one is missing altogether.

    Also, here's a better line-splitting algorithm for you: :D
    Show Spoiler
    It might need some tweaking, but I tested it in General and it appears to work fine.
    Code:
        /**
         * Splits a message into lines of no more than 54 characters. Colour codes, as indicated
         * by §[0-9a-f], are not counted in the line length. Make sure you pass through colorize()
         * first to convert the colour codes to the § syntax.
         * 
         * Splitting at a space or hyphen will be preferred. Any newlines already present in the string
         * will be preserved. Colour codes will be duplicated at the beginning of wrapped lines.
         * 
         * @author Celtic Minstrel
         * @param original The string to split into lines.
         * @return The string with newlines inserted as required.
         */
        public static String splitLines(String original) {
            StringBuilder splitter = new StringBuilder(original);
            int splitAt = 0;
            int effectiveLen = 0;
            char lastColourCode = ' ';
            for(int i = 0; i < splitter.length(); i++) {
                if(splitter.charAt(i) == '\u00A7') { // §
                    try {
                        char c = splitter.charAt(i + 1);
                        if((c >= '0' && c <= '9') || (c >= 'a' && c <= 'f') || (c >= 'A' && c <= 'F')) {
                            lastColourCode = c;
                            i++;
                            continue;
                        }
                    } catch(IndexOutOfBoundsException x) {
                        
                    }
                }
                effectiveLen++;
                char c = splitter.charAt(i);
                if(c == ' ' || c == '-') splitAt = i;
                if(effectiveLen > 60) {
                    if(splitAt == 0) splitAt = i; // as a last resort, just split at the limit
                    effectiveLen = i - splitAt;
                    String toAdd = "\n";
                    if(lastColourCode != ' ') {
                        toAdd += '\u00A7';
                        toAdd += lastColourCode;
                        i += 2;
                    }
                    splitter.insert(splitAt+1, toAdd);
                    if(splitter.charAt(splitAt) == ' ')
                        splitter.deleteCharAt(splitAt);
                    else i++;
                    splitAt = 0;
                }
            }
            return splitter.toString();
        }


    EDIT: Updated the function to duplicate colour codes on wrapped lines.
     
  23. Offline

    manniL

    My Problem when i type in the /help:
    Code:
    2011-03-18 17:00:31 [SEVERE] Could not pass event CREATURE_SPAWN to AdminChat
    java.lang.NoSuchMethodError: org.bukkit.event.entity.CreatureSpawnEvent.getCreat
    ureType()Lorg/bukkit/entity/CreatureType;
            at me.Infernus.AntiCreeper.ACreeperEntityListener.onCreatureSpawn(ACreep
    erEntityListener.java:19)
            at org.bukkit.plugin.java.JavaPluginLoader$45.execute(JavaPluginLoader.j
    ava:359)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:59)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:225)
            at net.minecraft.server.World.a(World.java:750)
            at net.minecraft.server.SpawnerCreature.a(SourceFile:134)
            at net.minecraft.server.World.g(World.java:1412)
            at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:329)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:253)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
    2011-03-18 17:00:31 [SEVERE] Could not pass event CREATURE_SPAWN to AdminChat
    java.lang.NoSuchMethodError: org.bukkit.event.entity.CreatureSpawnEvent.getCreat
    ureType()Lorg/bukkit/entity/CreatureType;
            at me.Infernus.AntiCreeper.ACreeperEntityListener.onCreatureSpawn(ACreep
    erEntityListener.java:19)
            at org.bukkit.plugin.java.JavaPluginLoader$45.execute(JavaPluginLoader.j
    ava:359)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:59)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:225)
            at net.minecraft.server.World.a(World.java:750)
            at net.minecraft.server.SpawnerCreature.a(SourceFile:134)
            at net.minecraft.server.World.g(World.java:1412)
            at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:329)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:253)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
    2011-03-18 17:00:34 [SEVERE] Could not pass event CREATURE_SPAWN to AdminChat
    java.lang.NoSuchMethodError: org.bukkit.event.entity.CreatureSpawnEvent.getCreat
    ureType()Lorg/bukkit/entity/CreatureType;
            at me.Infernus.AntiCreeper.ACreeperEntityListener.onCreatureSpawn(ACreep
    erEntityListener.java:19)
            at org.bukkit.plugin.java.JavaPluginLoader$45.execute(JavaPluginLoader.j
    ava:359)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:59)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:225)
            at net.minecraft.server.World.a(World.java:750)
            at net.minecraft.server.SpawnerCreature.a(SourceFile:134)
            at net.minecraft.server.World.g(World.java:1412)
            at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:329)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:253)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
    2011-03-18 17:00:34 [SEVERE] Could not pass event CREATURE_SPAWN to AdminChat
    java.lang.NoSuchMethodError: org.bukkit.event.entity.CreatureSpawnEvent.getCreat
    ureType()Lorg/bukkit/entity/CreatureType;
            at me.Infernus.AntiCreeper.ACreeperEntityListener.onCreatureSpawn(ACreep
    erEntityListener.java:19)
            at org.bukkit.plugin.java.JavaPluginLoader$45.execute(JavaPluginLoader.j
    ava:359)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:59)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:225)
            at net.minecraft.server.World.a(World.java:750)
            at net.minecraft.server.SpawnerCreature.a(SourceFile:134)
            at net.minecraft.server.World.g(World.java:1412)
            at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:329)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:253)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
    2011-03-18 17:00:34 [SEVERE] Could not pass event CREATURE_SPAWN to AdminChat
    java.lang.NoSuchMethodError: org.bukkit.event.entity.CreatureSpawnEvent.getCreat
    ureType()Lorg/bukkit/entity/CreatureType;
            at me.Infernus.AntiCreeper.ACreeperEntityListener.onCreatureSpawn(ACreep
    erEntityListener.java:19)
            at org.bukkit.plugin.java.JavaPluginLoader$45.execute(JavaPluginLoader.j
    ava:359)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:59)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:225)
            at net.minecraft.server.World.a(World.java:750)
            at net.minecraft.server.SpawnerCreature.a(SourceFile:134)
            at net.minecraft.server.World.g(World.java:1412)
            at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:329)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:253)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
    2011-03-18 17:00:35 [SEVERE] Could not pass event CREATURE_SPAWN to AdminChat
    java.lang.NoSuchMethodError: org.bukkit.event.entity.CreatureSpawnEvent.getCreat
    ureType()Lorg/bukkit/entity/CreatureType;
            at me.Infernus.AntiCreeper.ACreeperEntityListener.onCreatureSpawn(ACreep
    erEntityListener.java:19)
            at org.bukkit.plugin.java.JavaPluginLoader$45.execute(JavaPluginLoader.j
    ava:359)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:59)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:225)
            at net.minecraft.server.World.a(World.java:750)
            at net.minecraft.server.SpawnerCreature.a(SourceFile:134)
            at net.minecraft.server.World.g(World.java:1412)
            at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:329)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:253)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
    2011-03-18 17:00:35 [SEVERE] Could not pass event CREATURE_SPAWN to AdminChat
    java.lang.NoSuchMethodError: org.bukkit.event.entity.CreatureSpawnEvent.getCreat
    ureType()Lorg/bukkit/entity/CreatureType;
            at me.Infernus.AntiCreeper.ACreeperEntityListener.onCreatureSpawn(ACreep
    erEntityListener.java:19)
            at org.bukkit.plugin.java.JavaPluginLoader$45.execute(JavaPluginLoader.j
    ava:359)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:59)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:225)
            at net.minecraft.server.World.a(World.java:750)
            at net.minecraft.server.SpawnerCreature.a(SourceFile:134)
            at net.minecraft.server.World.g(World.java:1412)
            at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:329)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:253)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
    2011-03-18 17:00:35 [SEVERE] Could not pass event CREATURE_SPAWN to AdminChat
    java.lang.NoSuchMethodError: org.bukkit.event.entity.CreatureSpawnEvent.getCreat
    ureType()Lorg/bukkit/entity/CreatureType;
            at me.Infernus.AntiCreeper.ACreeperEntityListener.onCreatureSpawn(ACreep
    erEntityListener.java:19)
            at org.bukkit.plugin.java.JavaPluginLoader$45.execute(JavaPluginLoader.j
    ava:359)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:59)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:225)
            at net.minecraft.server.World.a(World.java:750)
            at net.minecraft.server.SpawnerCreature.a(SourceFile:134)
            at net.minecraft.server.World.g(World.java:1412)
            at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:329)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:253)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
    2011-03-18 17:00:35 [SEVERE] Could not pass event CREATURE_SPAWN to AdminChat
    java.lang.NoSuchMethodError: org.bukkit.event.entity.CreatureSpawnEvent.getCreat
    ureType()Lorg/bukkit/entity/CreatureType;
            at me.Infernus.AntiCreeper.ACreeperEntityListener.onCreatureSpawn(ACreep
    erEntityListener.java:19)
            at org.bukkit.plugin.java.JavaPluginLoader$45.execute(JavaPluginLoader.j
    ava:359)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:59)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:225)
            at net.minecraft.server.World.a(World.java:750)
            at net.minecraft.server.SpawnerCreature.a(SourceFile:134)
            at net.minecraft.server.World.g(World.java:1412)
            at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:329)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:253)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
    2011-03-18 17:00:37 [SEVERE] Could not pass event CREATURE_SPAWN to AdminChat
    java.lang.NoSuchMethodError: org.bukkit.event.entity.CreatureSpawnEvent.getCreat
    ureType()Lorg/bukkit/entity/CreatureType;
            at me.Infernus.AntiCreeper.ACreeperEntityListener.onCreatureSpawn(ACreep
    erEntityListener.java:19)
            at org.bukkit.plugin.java.JavaPluginLoader$45.execute(JavaPluginLoader.j
    ava:359)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:59)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:225)
            at net.minecraft.server.World.a(World.java:750)
            at net.minecraft.server.SpawnerCreature.a(SourceFile:134)
            at net.minecraft.server.World.g(World.java:1412)
            at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:329)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:253)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
    2011-03-18 17:00:37 [SEVERE] Could not pass event CREATURE_SPAWN to AdminChat
    java.lang.NoSuchMethodError: org.bukkit.event.entity.CreatureSpawnEvent.getCreat
    ureType()Lorg/bukkit/entity/CreatureType;
            at me.Infernus.AntiCreeper.ACreeperEntityListener.onCreatureSpawn(ACreep
    erEntityListener.java:19)
            at org.bukkit.plugin.java.JavaPluginLoader$45.execute(JavaPluginLoader.j
    ava:359)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:59)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:225)
            at net.minecraft.server.World.a(World.java:750)
            at net.minecraft.server.SpawnerCreature.a(SourceFile:134)
            at net.minecraft.server.World.g(World.java:1412)
            at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:329)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:253)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
    2011-03-18 17:00:37 [SEVERE] Could not pass event CREATURE_SPAWN to AdminChat
    java.lang.NoSuchMethodError: org.bukkit.event.entity.CreatureSpawnEvent.getCreat
    ureType()Lorg/bukkit/entity/CreatureType;
            at me.Infernus.AntiCreeper.ACreeperEntityListener.onCreatureSpawn(ACreep
    erEntityListener.java:19)
            at org.bukkit.plugin.java.JavaPluginLoader$45.execute(JavaPluginLoader.j
    ava:359)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:59)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:225)
            at net.minecraft.server.World.a(World.java:750)
            at net.minecraft.server.SpawnerCreature.a(SourceFile:134)
            at net.minecraft.server.World.g(World.java:1412)
            at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:329)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:253)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
    2011-03-18 17:00:39 [SEVERE] Could not pass event CREATURE_SPAWN to AdminChat
    java.lang.NoSuchMethodError: org.bukkit.event.entity.CreatureSpawnEvent.getCreat
    ureType()Lorg/bukkit/entity/CreatureType;
            at me.Infernus.AntiCreeper.ACreeperEntityListener.onCreatureSpawn(ACreep
    erEntityListener.java:19)
            at org.bukkit.plugin.java.JavaPluginLoader$45.execute(JavaPluginLoader.j
    ava:359)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:59)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:225)
            at net.minecraft.server.World.a(World.java:750)
            at net.minecraft.server.SpawnerCreature.a(SourceFile:134)
            at net.minecraft.server.World.g(World.java:1412)
            at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:329)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:253)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
    2011-03-18 17:00:39 [SEVERE] Could not pass event CREATURE_SPAWN to AdminChat
    java.lang.NoSuchMethodError: org.bukkit.event.entity.CreatureSpawnEvent.getCreat
    ureType()Lorg/bukkit/entity/CreatureType;
            at me.Infernus.AntiCreeper.ACreeperEntityListener.onCreatureSpawn(ACreep
    erEntityListener.java:19)
            at org.bukkit.plugin.java.JavaPluginLoader$45.execute(JavaPluginLoader.j
    ava:359)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:59)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:225)
            at net.minecraft.server.World.a(World.java:750)
            at net.minecraft.server.SpawnerCreature.a(SourceFile:134)
            at net.minecraft.server.World.g(World.java:1412)
            at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:329)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:253)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
    2011-03-18 17:00:42 [SEVERE] Could not pass event CREATURE_SPAWN to AdminChat
    java.lang.NoSuchMethodError: org.bukkit.event.entity.CreatureSpawnEvent.getCreat
    ureType()Lorg/bukkit/entity/CreatureType;
            at me.Infernus.AntiCreeper.ACreeperEntityListener.onCreatureSpawn(ACreep
    erEntityListener.java:19)
            at org.bukkit.plugin.java.JavaPluginLoader$45.execute(JavaPluginLoader.j
    ava:359)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:59)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:225)
            at net.minecraft.server.World.a(World.java:750)
            at net.minecraft.server.SpawnerCreature.a(SourceFile:134)
            at net.minecraft.server.World.g(World.java:1412)
            at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:329)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:253)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
    2011-03-18 17:00:42 [SEVERE] Could not pass event CREATURE_SPAWN to AdminChat
    java.lang.NoSuchMethodError: org.bukkit.event.entity.CreatureSpawnEvent.getCreat
    ureType()Lorg/bukkit/entity/CreatureType;
            at me.Infernus.AntiCreeper.ACreeperEntityListener.onCreatureSpawn(ACreep
    erEntityListener.java:19)
            at org.bukkit.plugin.java.JavaPluginLoader$45.execute(JavaPluginLoader.j
    ava:359)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:59)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:225)
            at net.minecraft.server.World.a(World.java:750)
            at net.minecraft.server.SpawnerCreature.a(SourceFile:134)
            at net.minecraft.server.World.g(World.java:1412)
            at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:329)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:253)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
    
    
     
  24. Offline

    Celtic Minstrel

    That's a problem with AdminChat - it says so right in the error message. Try reporting it there.

    ...though, it surprises me that AdminChat would handle the CREATURE_SPAWN event. Whatever.
     
  25. Offline

    FDInoff

    I don't remember seeing this in the thread but...

    If you type help in the console you get "/help - Displays help for all commands". I do not think this should happen in the console because /help doesn't work. I think it should show you the normal console help or plugin specific help for commands that work from the console.
     
  26. Offline

    Celtic Minstrel

    Agreed. I brought this up somewhere in here already, as I recall.
     
  27. Offline

    FDInoff

    Whoops I see it now on page 3. but tkelly said he was going to fix this in 0.1.2 so this can be another reminder.
     
  28. Offline

    dompie

    Hi there,

    I started using this nice help plugin today and have one important question:
    How can I prevent Members and Guests from running the /help reload command?

    I tried adding permissions to ExtraHelp/Help.yml (helpreload section)
    Code:
        permissions: OP
    
    and
    Code:
        permissions: Admins
    
    but without success.
    I use Permissions 2.5.3 and tried even to deny access to commands help.reload, help.helpreload, helpreload but without success.
     
  29. Offline

    Taeir

    Multiline support screwed up all my help files. It now duplicates the command if it exceeds one line and sometimes i dont want it to be on an other line. Is there any way to turn multiline off?
     
  30. Offline

    Tim Yong

    Yep, I have the same issue.
     
  31. Offline

    Celtic Minstrel

    I updated the line-wrapping function in this post.
     

Share This Page