Make your own, customized Minecraft commands


  • Make new commands!. (Also registered command)
  • Run others command in new one
  • Perform several commands in one
  • Delayed commands with custom pause, warmups and cooldowns
  • Make Shortcut/alias commands
  • Run commands with any item , any block, signs, book and villager npcs.
  • Various functions for costumize commands, like placeholders, scripts (if-else) and more.
  • Console support
  • Economy support (Require Vault)
  • Command Scheduler.
  • Bungee Teleport command.
  • All features are highly customizable
  • No command limits.
  • Customizable IconMenu, ActionBar, BossBar, Hover/ClickableText, Title, Scoreboard commands.
  • And much more..!

Configuration and example

Commands & permissions

Download latest version (5.3.4)

Dev Build 5.3.5dev2 (02-7-2016). This file isn't approved by the bukkitdev staff. Download at your own RISK.

Video Tutorial :

(English) by Koz4Christ. (MyCommand 5.1.8)

If you have to report an error in the chat, or just a command section, use pastebin or a similar website. Help with YML code error :

This plugin uses Metrics-Lite. INFO



If you like this plugin , click the button on the top right corner for donate! Thanks.

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of MCDrgo001 MCDrgo001 Jul 30, 2016 at 11:17 UTC - 0 likes

    Hello, is there a way to add a cooldown only when arguments are specified? For example, when a player does /helpop, it should show help for that command and the cooldown shouldn't be applied. But, when the player uses /helpop <message>, there should be a cooldown

    Last edited Jul 30, 2016 by MCDrgo001
  • Avatar of Vert3xITA Vert3xITA Jul 29, 2016 at 20:24 UTC - 0 likes

    1) Add a way to specify a certain command to execute if specifying a certain argument 2) Placeholders editing: instead of required-args or require_all_arguments just modify the argument placeholder so par example for optional arguments using $argo1 and for requested ones $argr1 or as you'd like to add, getting rid of that required-args "tag" will clean your conscience xD 3) Another placeholder request: what about improving the $multiargs adding numbers also for those? (also implementing eventually the optional and the requested) 4) Add a better argument location specifier and implementing also characters that, when needed, close the multiple arguments.

    command: /title $argo1 $argr2 "$multiargs3" "$multiargs4"

    5) I noted that, if not specifying any tab-completation, it automatically turns to players, I suggest to remove this to make sure that, if a command has no argument, it does not default on players and does not do anything. About players I notice to add the $ponline placeholder on the tab_completer list to make it look for online players or, as I'd prefer, you can add a singular argument type par example $targetplayer. 6) Only two words: Command case sensitivity, I think this will be the easiest feature to implement to the plugin that I proposed here and this is not good, so just add a little trick: try adding an optional wrong case error message. 7) Optional multiple error messages type to help the user, this is hard to explain clearly, I'll put what I mean in the example below, a little thing: add also a way to set multiple rows of error message text just wrapping and using the runcmd style, see below this too (to specify par example a description). 8 ) Custom placeholders for every command, starting from removing the "&=§" and making eventually add it manually by owner and a way to set a permission to use specified or all placeholders, see below. 9) Remove the type: *TYPE* and replace it with runcmds's placeholders: $text$ is already existing, just add %barapi%20%40%PINK%*TEXT* and others as %console% or $console$ and you'll no longer need that "type" specifier. 10) Tab_completer for every single argument: get rid of that generic "tab_completer" and just set "$argr4_tab_completer" (e.g.), I think that this feature is pretty large but It should be really really interesting and optionally consider also multiple argument tab completing (see below). Here is an example in code block of an advanced version of /title utilizing the features that I requested.

      command: /aTitle $targetplayerr1 "$mutliargsr2" "$multiargso3" $argo4 $argo5 $argo6
      - '/title $targetplayerr1 title {"text":"$multiargsr2"}'
      - '/title $targetplayerr1 subtitle {"text":"$multiargso3"}'
      - '/title $targetplayerr1 times $argo4 $argo5 $argo6'
      - '$delay$/title $targetplayerr1 clear'
      - '$delay$/title $targetplayerr1 reset'
          require-permission: true
          require-permission: true
          permission-node: placeholder.advanced_title.hearth
      case_sensitive: true
      - '&cWhat about applying multiple rows to this'
      - '&coptional message too? Anyway you had to write /aTitle'
      - '&cInstead of /%wrongcase%.'
        completed-args: 1,2,3
        missed-args: 4,5,6
        error-message-select: 2
      - '&cUsage: /aTitle <player> "<title>" "[subtitle]" [fadeIn] [stay] [fadeOut]'
      - '&cDescription: Sends a title do the specified player.'
      - '&cUsage: /aTitle <player> "<title>" "[subtitle]" [fadeIn] [stay] [fadeOut]'
      - '&cThis is just an example about multiple error message types, here there''s not a real usage.'
      - '&cBut for commands as vanilla /title this should be helpful'
      cost: 0
      register: true
      - $ponline
      # logically avoidable because $targetplayer should automatically take players.
      command: /weirddice $argo1 $argo2
      - '$text$&9Dice> &c$rnd6&6.'
        - '$text$&99 Faces Dice?> &c$rnd9&6.'
        - '$text$&9Dice> &c$rnd6&6.'
       - '$text$&9Random>&6Just a random 2nd argument specifying demonstration'
      - 9
      - 6
      - random
      - multiple
      - argument
      - tab_completing

    Here is an explanation if you did not understand the multiple error message type mechanic: If a player specifies the arguments 1, 2 and 3 and leaves blank the 4, 5 and 6 it gets the 2nd error message (error-message-select: 2) I know that this method should not be totally clear for users in fact you can implement this as you prefer, what I want is this mechanic that should be really interesting with other 8. I hope you'll implement those features! Edit: I added a weird dice command to show also what I was saying for specific commands for specific arguments and to show better the tab_completer, here I mean that, if a player types /weirddice it gets a text as a normal dice, if he types /weirddice 9 he gets a random number between 1 and 9 (as a 9 face dice), logically it's just a stupid example and the 9 it going to be tab-completed only where he must go, so as first argument after the command and for example typing 6 it is going to execute the command as if nothing is specified (2nd argument "random" is just an example). Logically, if the first and the second arguments were requested, the first one's command would be an error message.

    Last edited Jul 30, 2016 by Vert3xITA
  • Avatar of spetznack spetznack Jul 25, 2016 at 18:20 UTC - 0 likes

    I am trying to do this: $randomnumber%$arg1%

    This works as long as the $arg1 is a valid number, but if a player writes 001 as the argument then the server crashes :/ The same happens if the player writes +60

    I also get a weird number when a player writes 5.5

    My question is if there is a way to check if $arg1 is a integer?

  • Avatar of KyBLKuBA KyBLKuBA Jul 24, 2016 at 13:26 UTC - 0 likes

    Please, add player event: PlayerSendCommand, PlayerSendMessage :)

  • Avatar of Ivanpro Ivanpro Jul 23, 2016 at 16:31 UTC - 0 likes

    @TheClubMC: Go

    This features are missing in the 1.8 and lower Api's. I forgot to block them. The Armorstand maybe dont work because it's an entity and not a block. I look in it when i have time.

    @Ikeetjeop: Go

    You can use an script line for do that. Like this :

     - $Script$%if%$player!=$arg1
     - /respect $arg1
     - $Script$%else%
     - $text$You can't do that.

    @BiGUNMAN: Go Nothing, just the console don't support the custom timing. > On todo list.

    Last edited Jul 23, 2016 by Ivanpro
  • Avatar of KyBLKuBA KyBLKuBA Jul 23, 2016 at 14:58 UTC - 0 likes

    itemset doesn't work :(

  • Avatar of Ikeetjeop Ikeetjeop Jul 23, 2016 at 13:28 UTC - 0 likes

    Hi i have a sugestion to XD

    can u add anti your self

    /respect ikeetjeop
    You can not give ur self respect

    /respect notch
    You gave Notch respect


  • Avatar of TheClubMC TheClubMC Jul 22, 2016 at 12:05 UTC - 0 likes

    Hello, I'm having the errors with mycmd-npcs.

    I was wonder is there a way to add command to armor stand. I tried add ARMOR_STAND to BLOCKS: section even run /mycmd-blockset create in-game but it doesn't work. It would be great if you could implement to add command to armor stand.

    Any suggestion would be appreciate, Thanks.

  • Avatar of DrakeSnodgrass DrakeSnodgrass Jul 21, 2016 at 20:49 UTC - 0 likes

    @Mat1azkenblock43: Go

    thanks i will give this a try :D

  • Avatar of BiGUNMAN BiGUNMAN Jul 19, 2016 at 23:25 UTC - 0 likes

    @Ivanpro Thanks a lot! I was hoping you could also help me out with the following issue: - What's suppose to happen is that the delay command is executed 4 times, which it is. But then when doing $delay$<60>, which would be a 60 ticks delay instead of a 1 second delay, it doesn't work. Instead the console returns "unknown command".


Date created
Mar 11, 2012
Last update
Jun 22, 2016
Development stage
  • enUS
All Rights Reserved
Curse link
Recent files