HomeJavaModsMyCommand for BungeeCord
MyCommand for BungeeCord
MyCommand for BungeeCord main mission is to act as a bridge and allow standard MyCommand plugin to communicate with the BungeeCord Proxy and execute, otherwise, unacessible proxy commands from the server.

MyCommand for BungeeCord is also a standalone plugin who allows you to create custom commands directly on the proxy side. The commands created, appears to the player like a registered one.

Take in mind this is a brand new plugin, and doesn't provide you all the tools the standard MyCommand has.

What commands i can create with this plugin then?

You can create TEXT based commands
or create aliases, perform multiple commands in one, using the RUN_COMMAND or RUN_AS_PROXY command types.

Block BungeeCord Commands with an additional permission. (type : ADD_PERMISSION)

Other command types :

RAW_TEXT (Send clickable text, with the ability to hover messages, run commands and open links directly).

BROADCAST_TEXT (Same as TEXT but send it to all the proxy players)
BROADCAST_RAW_TEXT (Same as RAW_TEXT but send it to all the proxy players)

(Both configurable, with specific permission or specific servers)

TITLE
(Send a Title message to the sender)
BROADCAST_TITLE (Same as above but to all the players)

CHANGE_SERVER
(Create teleport commands.)

It's possible customize the commands by applying delays "$delay$", using placeholders and changing the permission node/message
It's also possible create commands with IF and ELSE script conditions

Check the example to see how to create one.

Main Commands :

Permissions :

/bmycmd - bmycmd.admin (This permission, also allow's you to run every command you create)
/bmycmd-run - bmycmd.run

PlaceHolders :

RUN_COMMAND PlaceHolders:

To be used as a prefix :

$delay$
(Wait x seconds before doing the action, configure it with delaytimer: 1)
$text$ (Send a text message instead of running a command)
$broadcasttext$ (Same as above but broadcast)
$log$ (show a log message in the console)

Normal one's
$multiargs
(Place this at the desider position to get it replaced with the arguments typed in the chat prompt)
$arg1 , $arg2 ... $arg9 (Replace each one with the correspondent argument typed in the chat prompt.


Player PlaceHolders:

$player (Returns with the player name)
$display_name (Differently from $player, this return with the name formatted, with color ecc.)
$uuid (Return with the sender unique id)
$ping (Return with the ping of the sender)
$server_name (Gets the name of the sender server)
$server_motd (Gets the motd of the sender server)
$language
$online (Returns with the amount of people connected in the whole network)
$randomnumber%10% or $randomnumber%5<to>10%
$main_hand (Returns with the default hand set up from the player. LEFT or RIGHT )
$chat_mode (Returns with HIDDEN, SHOWN or COMMANDS_ONLY. Useful to determinate if a player has the chat limited in one of this state)
$server_online (Returns with the amount of people connected in that same serverof the player sender)

Colorcode: &1 to &f or $random_color

1.16+ support for hex rgb 24bit colors. Use this placeholder to set-up the color
$hex%#000000% -> $hex%#FFFFFF%

Some command examples (commands.yml) :

If you used MyCommand before, you can see how it looks exactly the same.

RUN_COMMAND and RUN_AS_PROXY can run only proxy commands, not the server one's.

Code (Text):

block_bungee_command:
 command: /bungee
 type: ADD_PERMISSION
 permission-required: true
 register: false
example:
 command: /mybungeetext
 type: TEXT
 text:
   - "&aLine 1"
   - "&bLine 2"
   - "&cecc.."
 permission-required: false
rawmessage_example:
  command: /bungee_raw
  type: RAW_TEXT
  text:
  - "&aHello &b$player! &aHover your mouse over me!; &dMAGIC"
  - "&0[&d*&0]&e Click me; &eClick here to suggest the command &d/bmycmd;/bmycmd"
  - "$RUN_COMMAND$&0[&e*&0]&c Set the time to day; &eClick to Execute;/time set day"
  - "$OPEN_URL$&0[&e*&0]$random_color Open Google.com; &eClick to open;http://www.google.com"
 permission-required: false
server_info:
 command: /serverinfo
 type: TEXT
 text:
  - "&eHello &2$player!"
  - "&aYou're currently connected on the server &2$server_name"
  - "&b$server_motd"
  - "&2And your current PING to &a$server_name &2is &a$ping"
 permission-required: false
run_command_example:
 command: /bungeeruncmd
 type: RUN_COMMAND
 runcmd:
  - "$text$&eHello &2$player! &bTesting TEXT"
  - "$delay$/alert 3"
  - "$delay$/alert 2"
  - "$delay$/alert 1"
 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
only_from_the_lobby:
 command: /onlyfromlobby
 type: TEXT
 text:
   - "&eThis Command works only from the lobby"
 permission-required: false
 error-message: "&cThis command can be used only from the lobby"
 allowed_servers:
 - lobby
dynamic_title_example:
  command: /bungee_dynamic_title
  type: TITLE
  text:
  - '&aHello &e$player'
  - '&aha&3ve a &4nice &bDAY'
  title:
    effect_type: 1
title_example2:
  command: /bungee_broadcast_title
  type: BROADCAST_TITLE
  text:
  - '&0[&cINFO&0]&a $multiargs'
  - '&9(&bBroadcast message&9)'
  title:
    effect_type: 0
    fadein: 1
    stay: 5
    fadeout: 2
script_example:
 command: /bscript_example
 type: RUN_COMMAND
 runcmd:
  - $Script$%if%$server_name==lobby
  - $delay$
  - $text$You're in the lobby, and the massage waited one second to appear cause the $delay!
  - $Script$%if%$server_name==lobby<and>$arg1==password
  - $text$&aAccess Granted!
  - $text$&aTo see this message you had to soddisfy 2 condition. Servername lobby and the correct password!
  - $Script$%else%
  - $text$&cYou're not in the lobby and the password isn't correct too
 permission-required: false
 delaytimer: 1
broadcast_only_to_specific_servers:
  command: /bungee_bc_sky
  type: BROADCAST_TEXT
  text:
  - '&aHello players of skygames!'
  broadcast_to_specific_servers:
  - bedwars
  - skygames
  permission-required: true
teleport_example:
  command: /gohub
  type: CHANGE_SERVER
  server_name: lobby
hexcolorexample:
 command: /hexcolormessage
 type: TEXT
 text:
  - "$hex%#16a085%This is how you can set-up a custom color using the HEX RGB code."
  - "$hex%#ff7111%Just $hex%#760fcb%some $hex%#8b7d6b%color $hex%#ffe181%here $hex%#c3cde6%and $hex%#760fcb%there"
 permission-required: false
 
If you want to hide a command, or override another plugin command, you can use "register: false" to unregistered that command. By default they are registered.

Custom commands, Permissions fields:

permission-required: true #(Put true to use a permission, with false, anyone can run the command)
permission-node: "mynode.something" #(Put what you want here).
permission-error: "&cYou can't use this command!"

Other fields:
"broadcast_message_permission_node: permission.to.see.this.message" (Put this field in a broadcast command to allow only certain players to see that message)


It's possible turn off the chat_listener from the main config.yml to reduce to zero this plugin impact (if there is any). In that case, unregistered commands can't work.

Turning off the custom command feature, it always leave the Bridge working allowing server-side MyCommand to communicate with the proxy.
Quick facts

Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.

MyCommand for BungeeCord is a free Minecraft Java mod. Compatible with Minecraft 1.13, 1.14, 1.15, 1.16 and newer. Downloaded 10,985 times (via Spigot). Download it and open it directly in the game.

Explore more