KillAllInterface - Safer /killall and /mobkill! 1.0.3

This plugin creates a safer interface for the /killall and /mobkill commands.

  1. S_Ryan
    KillAllInterface

    Short Summary:
    This plugin will change how the /killall and /mobkill commands work. It protects the server from players using those commands on certain entity types (item frames, paintings, etc). It also makes the /killall all or /mobkill all commands much safer! And usable! Instead of actually killing all the entity types, it will separately kill each type of entity except the types which are ignored in the config.

    What's it all about?
    If you occasionally use the command /killall or /mobkill, this is for you. This plugin was created due to my irritation with and fear of the killall and mobkill commands. It creates an interface (command front-end so-to-speak) for those commands. It allows the server to block the usage of the command on certain entity types, and it overrides the all type. The overriding of the all type allows some types to be ignored.

    Why should you use this plugin?
    • It's extremely lightweight.
    • It makes the /killall and /mobkill commands much safer.
    • No more accidentally deleting all those Item Frames, Paintings, etc!
    • Protect your server from foolish usage of the commands by server admins.
    • This does NOT replace the commands! It still uses the original commands.
    How to use:
    • Simply install the jar in your plugins folder.
    • The config is pre-configured for common use.
    • Please note that the commands will not be interfaced if run from the console. The console bypasses the interface. This means two things: these commands are unsafe when run from console, and the console can be used to bypass the interface.
    Commands:
    • /killallinterface The base command for KillAllInterface commands. This will also display plugin information.
    • /killallinterface help Displays all the KillAllInterface commands.
    • /killallinterface reload Reloads the plugin.
    Permissions:
    • killallinterface.help Gives access to the help command.
    • killallinterface.reload Gives access to the reload command.
    Config:
    Code (Text):
    #Default KillAllInterface Config

    #Should these commands be interfaced?
    interface:
      killall: true
      mobkill: true

    #These types will be ignored by the all type.
    all-ignore:
    - minecarts
    - tamed
    - itemframes
    - paintings
    - boats

    #Disallow players from using the killall/mobkill command on these types.
    disallow:
    - itemframes
    - paintings

    #All plugin message strings can be edited here.
    strings:
      commandNonExistant: '&cThat command does not exist.'
      entityNotAllowed: '&cYou are not allowed to use that command on that entity type.'
      help:
      - '&6[KillAllInterface] &7Commands:'
      - '&cUsage: /killallinterface <command>'
      - '&chelp  &7View a list of all KillAllInterface commands.'
      - '&creload  &7Reload the plugin.'
      info:
      - '&6[WGTreeFarmFlag] &7Version %version%'
      - '&6[WGTreeFarmFlag] &7By S_Ryan'
      noPermission: '&cYou do not have permission for that command.'
      reloaded: '&6[KillAllInterface] &7Successfully reloaded.'
    Types:
    These types will be recognized by the config.

    Code (Text):
    tamed
    named
    drops
    arrows
    boats
    minecarts
    xp
    paintings
    itemframes
    endercrystals
    monsters
    animals
    ambient


    Known "bug":
    I wanted to post this here because it may be mistaken for a bug, but it is NOT. If a player who does not have permission does /killall all or /mobkill all. They will receive a "no permission" message for every type which is not ignored (it will appear to be spam). Also, be aware that the entityNotAllowed message will also be displayed to players who do not have permission for the original command (if they enter a type which is not allowed). If you want to hide more from users, change the entityNotAllowed message to something more vague.


    The reason for me allowing this to stay is that in order to change this, I would have to add extra permissions/checks which would (in my opinion) stray from the purpose of this plugin: to keep the original commands in their original state and to instead interface them.

    Contact the Dev:
    If you need to contact me, please post in the discussion or private message me. If you are desperate to get in contact with me, you can add me on my skype (spencer.ryan.c).

Recent Updates

  1. Updated code
  2. Command Bug Fix
  3. Bug Fix