MyCommand 5.6.0

Make your own, customized Minecraft commands

  1. MyCommand 5.6.0

    MRI
    Built with spigot 1.14.4 API's.



    Main:
    It's now possible give more command TYPES to one command.

    To do so, instead of placing the TYPE right afer "type", put them below like a list.

    Code (Text):
    command_name:
    type:
    - TEXT
    - RUN_COMMAND


    You can still use the old way of setting up the command type, infact the plugin is completly compatible and usable in the old way.

    Not every type works well togheter or work at all, but overall, if you want, it's here.



    The consequence of this lead me to remove those 2 now obsolete command type (RUN_COMMAND_TEXT and RUN_COMMAND_BROADCAST_TEXT). If you are using one of these 2 type, please update your command like the example above.



    Args:

    Added DEBUG.REPLACE_ARGS_WITH_NOTHING_IF_EMPTY: true in config.yml (This function will replace any empty $arg with "" nothing)



    Mycmd-npc's function :

    "/mycmd-npcs changetype <id> <type>" now change Villager types instead of the old professions list (DESERT, JUNGLE, PLAINS, SAVANNA, SNOW, SWAMP, TAIGA)
    New command "/mycmd-npcs changeprofession <id> <type>" change as it says the professions of a Villager. Values can be (NONE, ARMORER, BUTCHER, CARTOGRAPHER, CLERIC, FISHERMAN, FARMER, FLETCHER, LEATHERWORKER, LIBRARIAN, MASON, NITWIT, SHEPHERD, TOOLSMITH, WEAPONSMITH)
    (Old Version compatibility added)





    Added a LEADERBOARD command type.



    Sort playerdata number values by the highest amount. Configure it using the new field "playerdata_value" , "leaderboard_size" and "leaderboard_text"



    PlaceHolders : $index , $username , $points

    Code (Text):
    leaderboard_coins:
    command: /topcoins
    type:
    - TEXT
    - LEADERBOARD
    text:
    - "&dCoins Leaderboard :"
    playerdata_value: coins
    leaderboard_size: 20
    leaderboard_text: "&a$index: &b$username &a- &b$points"

    Added a BOOK command type.
    Open up a Book GUI without the need of having a book in the inventory.

    Code (Text):
    book1_test:
    command: /booktest
    type: BOOK
    text:
    - "&2Hello &a$player\n\n\n&3This is a book created with \n&9       MyCommand!\n\n\n\n\n\n\n\n &d         -->&5 Next Page"
    - "Write what you want here!"
    book_title: MyCommand
    book_author: emmerrei
    book_add_to_inventory: false


    IconMenu's command type:

    Added a way to set RGB colors to the IconMenu POTION Items. (POTION, SPLASH_POTION and LINGERING_POTION)

    Put the values like the playerhead name way, splitted by <rgb> 0 to 255 max.

    Code (Text):
     iconmenu_commands:
      - 1:POTION%255<rgb>120<rgb>0:0:/say hey:COLOR RGB TEST:RGB TEST
    %stayopen% now works with execute_mode.

    Added $RUN_CONSOLE$ prefix (before the command). This allow's you to execute the command directly as console.
    Fixed an exploit.



    PlayerData :
    Added MYSQL.AUTO_RECONNECT in config.yml (true or false)



    Placeholders :
    Added : $hasemptyinventory (return true or false) and $inventorysize (return as a number of items inside the inventory)
    Example : $Script$%if%$hasemptyinventory==true or $Script$%if%$inventorysize==0 (Empty inventory) $Script$%if%$inventorysize==41 (Full Inventory)

    Added $randomnumber%25<to>50% Placeholder. It will return a number between the 2 numbers.





    Cooldown's :
    Added "cooldown-message" make you be able to customize per-command cooldown's messages.



    Scoreboard's:
    Fixed the support for old server versions 1.12<



    Itemset:
    Fixed $targetentity triggering 2 times instead of once.



    RUN_COMMAND command type:
    Added $RUN_CONSOLE$ prefix. Using this live allow's you to run command by the console, per line, where required.


    Code (Text):
    mycmd:
    command: /test
    type: RUN_COMMAND
    runcmd:
    - "/runthisfromgame"
    - "$RUN_CONSOLE$/andmefromtheconsole"


    $log$ - Custom Logger
    It's now possible save logs text in separate log file. Just use log_filename: "filename.log" like the exampel here below, and the $log$ message will get saved in "/plugin/MyCommand/logs/filename.log"



    Code (Text):
    my_custom_logger:
    command: /mylog
    type: RUN_COMMAND
    runcmd:
      - "$text$&aThis log file is getting saved in &2/MyCommand/logs/filename.log"
      - "$log$[$player] $multiargs"
    log_filename: filename.log


    Added $rawtext$ , $rawbroadcasttext$ . Allow's to send MyCommand RAW Text's formatted text's to players directly from runcmd.

    How to use : Both act the same way of the other placeholder like $text$



    Added "$Script$%if%HasNotPermission==perm.node" does the inverse of HasPermission.



    Playerevents.yml



    Added $PERFORM_COMMAND$ .Placing it before the command you need to run (like in quit or kick event) to perform only a registered command. (This function is for compatibility with VentureChat and similar)
    PlayerInteractEvent -> Added an antiflood function. By default is 3 Sec. Added "INTERACTION.DELAY_SEC: 3" in config.yml , and "LANGUAGE.INTERACTION_DELAY" in language.yml



    Added a way to communicate to the BungeeCord Proxy and allowing the execution of proxy commands.


    Preparation :

    1. Place the MyCommand_BungeeCord.jar file inside the BungeeCord plugin folder
    2. Open up the config file of the Main MyCommand (config.yml) and put PLUGIN_MESSAGE_LISTENER on true

    3. Done. Restart proxy and server.



    How to use in MyCommand Spigot side.

    Use those placeholder at the start of a runcmd line to execute commands on the BungeeCord Proxy. Or use /mycmd bungee (to debug stuffs).



    Code (Text):
    bungeecord_bridge_example:
      command: /bcb_execute
      type: RUN_COMMAND
      runcmd:
      - "$bungeecord_execute$command_to_execute_on_the_proxy"
     
      runcmd:
      - "$bungeecord_runasproxy$command_to_execute" #It run's the command's as the proxy and not the player. This is like RUN_CONSOLE, it will bypass any permission.
     
      runcmd:
      - "$bungeecord_chat$Chat as a player or execute /server commands NOT PROXY one's"
     
      runcmd:
      - "$bungeecord_broadcast_message$PRIVATE MESSAGE to the sender"

      runcmd:
      - "$bungeecord_broadcast_message$BROADCAST MESSAGE on whole PROXY"


    REMOVED STUFFs:

    $script$HasEmptyInventory who wasn't even working right now. Replaced with the new placeholders : $hasemptyinventory and $inventorysize . Use them in a if condition.





    MyCommand for BungeeCord v1.0


    MyCommand_BungeeCord.jar isn't just a bridge for the local MyCommand plugin.



    I've added some features that's make it a bit more useful.


    It's possible create non registered commands directly on the MyCommand_BungeeCord proxy side plugin.



    What you can do is to create simple TEXT commands, or RUN_COMMAND and RUN_AS_PROXY one's. There is the support for some features, like the multiple commands in a list, $delay$ and some placeholders.
    It is a fresh plugin, it doesn't have any of the MyCommand feature beyond these i've written



    Examples :

    Code (Text):
    run_command_example:
    command: /bungeeruncmd
    type: RUN_COMMAND
    runcmd:
      - "$text$&eHello &2$player! &bTesting TEXT"
      - "$delay$/alert 3"
      - "$delay$/alert 2"
      - "$delay$/alert 1"
      - "/do something"
    permission-required: true
    permission-node: "bmycmd.runcommand.test"
    permission-error: "&cYou can't use this command!"
    delaytimer: 1
    run_as_proxy_ex:
    command: /gotolobby
    type: RUN_AS_PROXY
    runcmd:
      - "/send $player lobby"
      - "$text$&eTeleported to lobby."
    permission-required: false


    Main Commands :


    /bmycmd (Permission: bmycmd.admin).
    /bmycmd reload
    /bmycmd list
    /bmycmd check <command>
    /bmycmd runasproxy <command>



    bmycmd.admin permission also allow's you to run every command you create.



    If you don't want to use those features, you can disable the Listener in the config.yml and the impact it will be zero. (if there is any).
    Turning off the custom command feature, it always leave the Bridge working allowing server-side MyCommand to communicate with the proxy.
    Mugai, pinkpig, Felixx61 and 5 others like this.
Return to update list...