MyCommand
MyCommand
Donations
If you like this plugin, and want to offer me a coffee, consider to click the button on the top right corner of the navbar to donate! Thank you :D

Make your own, customized Minecraft commands
Features:
- 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 or override commands.
- Run commands with any item , block, signs or even (villager) NPC's.
- Various functions for costumize commands, like placeholders, scripts (if-else) and more.
- Console support
- Economy support (Require Vault)
- All features are highly customizable
- No command limits with multiple file support
- Customizable IconMenu (ChestGUI), ActionBar, BossBar, Hover/ClickableText, Title and Scoreboard commands.
- Allow the execution of commands in various circumstances (per world, by worldguard regions and more.
- Custom players database where you can store anything you want to personalize even more your commands. SQL database supported.
- BungeeCord feature, Scheduler, Join/Quit/Death events, PHP/GET request ...
- ... And much, much more..!
Configuration and examples (Documentation)
Commands & permissions
Video Tutorial :
(French) Getting Started (TEXT and ALIAS commands) by Texier (MyCommand 5.5.0)
(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 : http://yaml-online-parser.appspot.com/
This plugin uses bStats Metrics - MyCommand stats page
-
View User Profile
-
Send Message
Posted Jun 3, 2019In reply to ivanfromitaly:
This idea is very good. It would be really nice to be able to implement that. And to start with a txt file it's enought i think.
-
View User Profile
-
Send Message
Posted Jun 15, 2019In reply to ivanfromitaly:
I was going to suggest this idea too, makes for finding logs based on Player created systems much easier :)
-
View User Profile
-
Send Message
Posted Jun 1, 2019This might be a noobish question, but is it possible to compare %playerdata% information between 2 different usernames within a script?
I also wanted to say I love this plugin. This is one of the main plugins the server I admin on has been using for the last couple of years. It adds a whole new dimension to the game.
Keep up the good work!
-
View User Profile
-
Send Message
Posted Jun 2, 2019In reply to Forge_User_90669409:
You can retrieve information with the placeholder "$PlayerDataFor%PlayerName%VarName%".
So, if you put them in a if condition, like :
you can compare them.
-
View User Profile
-
Send Message
Posted Jun 3, 2019In reply to ivanfromitaly:
Thank you for this!
-
View User Profile
-
Send Message
Posted May 30, 2019Version: 5.5.0
MC: 1.8.9
Hello!
I really like your plugin, it's very useful, I tried to use it to grant ranks replacing the pex command (pex user <user> group set <rank>) and it works really well with variables:
The problem is that when I use it in game it works but it doesn't tab names or variables, so I tried to add the tab option but it only works with ranks in the wrong place (e.g. /grant <it tabs the rank and not the player> <it doesn't tab anything>).
Is there a way to set the tabbing option on players for the first variable and defaults rank names for the second variable?
-
View User Profile
-
Send Message
Posted May 31, 2019In reply to Forge_User_42196809:
For now no. without tab_completer the list will return with the player list, with tab_completer it returns the custom list.
I need to work on it to make it flexible, but takes time and i've see how to maintain compatibility.
-
View User Profile
-
Send Message
Posted May 31, 2019In reply to Forge_User_42196809:
Considering it was something people already asked, i finaly made it out. Try it in the new dev version here
Link Removed: https://www.mediafire.com/file/7u5z8c32e0a43kc/MyCommand_v5.5.1dev_may31.zip/file
and tell me if it's all ok. I don't know if implement a way to have a list who return anyway when isn't the call one, or you exceeded the last list created How to use :
-
View User Profile
-
Send Message
Posted May 31, 2019In reply to ivanfromitaly:
Thank you so much! You read my mind, I wanted to ask you that :)
I can't try it right now but I will when it's published :D [I'm using aternos (which allows unlimited plugins but only selected plugins from here and the spigot website) to play with my friends and I download this plugin because I'm into IT :D]
Nevermind, I tried it on a localhost spigot 1.8 server and it worked perfectly, I can't wait to see this fantastic feature in future!
-
View User Profile
-
Send Message
Posted May 29, 2019Version : 5.5.0
MC : 1.13.2
Hey Ivan,
I am having problems with my scripts. I am making custom variables for items in the game.
2 of these are:
"buy_sand"
"buy_sandstone"
But in the script, it is replacing "buy_sand" before it even finishes reading "buy_sandSTONE"
- '$text$[Shop] Bought %mycommand_variables_amount_sandstone% sandstone for buy_sandstone Pure Gold.
Is returning in chat:
[Shop] Bought 32stone sandstone for 3stone Pure Gold.
Should be returning:
[Shop] Bought 32 sandstone for 3 Pure Gold.
I don't know if this issue is related, but it is replacing variables even when they're just text.
For example, if I have a variable named "stone" and set it to "10",
if I try:
- "$text$You just mined some stone!"
It would replace it with
- "$text$You just mined some 10!"
-
View User Profile
-
Send Message
Posted May 29, 2019In reply to Forge_User_98674312:
The mycmd-variables function works as a global placeholder storage. If you create a variable called stone, everytime a string contains stone it will replace it with it's content. Create variables with special character in it, like $stone or %_stone_% ecc to avoid that. Anyway, if you need to store data per player, you need to use /mycmd-playerdata. Variables is here if you want to create a variable who is global to show for everyone.
-
View User Profile
-
Send Message
Posted May 29, 2019In reply to ivanfromitaly:
Didn't think of creating it as $stone or %_stone_%, thank you.
-
View User Profile
-
Send Message
Posted May 28, 2019Hello Ivan.
I love your plugin. <3
My problem is itemset.
pls help, thank you. :)
(sorry i very bad english)
[09:36:14] [Server thread/ERROR]: Could not pass event PlayerInteractEvent to MyCommand v5.5.1dev
org.bukkit.event.EventException: null
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:320) ~[server.jar:git-Spigot-8043ebc-f690957]
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[server.jar:git-Spigot-8043ebc-f690957]
at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:520) ~[server.jar:git-Spigot-8043ebc-f690957]
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:505) ~[server.jar:git-Spigot-8043ebc-f690957]
at org.bukkit.craftbukkit.v1_14_R1.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:423) ~[server.jar:git-Spigot-8043ebc-f690957]
at org.bukkit.craftbukkit.v1_14_R1.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:390) ~[server.jar:git-Spigot-8043ebc-f690957]
at org.bukkit.craftbukkit.v1_14_R1.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:386) ~[server.jar:git-Spigot-8043ebc-f690957]
at net.minecraft.server.v1_14_R1.PlayerConnection.a(PlayerConnection.java:1704) ~[server.jar:git-Spigot-8043ebc-f690957]
at net.minecraft.server.v1_14_R1.PacketPlayInArmAnimation.a(SourceFile:32) ~[server.jar:git-Spigot-8043ebc-f690957]
at net.minecraft.server.v1_14_R1.PacketPlayInArmAnimation.a(SourceFile:9) ~[server.jar:git-Spigot-8043ebc-f690957]
at net.minecraft.server.v1_14_R1.PlayerConnectionUtils.lambda$0(PlayerConnectionUtils.java:13) ~[server.jar:git-Spigot-8043ebc-f690957]
at net.minecraft.server.v1_14_R1.TickTask.run(SourceFile:18) [server.jar:git-Spigot-8043ebc-f690957]
at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeTask(SourceFile:135) [server.jar:git-Spigot-8043ebc-f690957]
at net.minecraft.server.v1_14_R1.IAsyncTaskHandlerReentrant.executeTask(SourceFile:23) [server.jar:git-Spigot-8043ebc-f690957]
at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeNext(SourceFile:114) [server.jar:git-Spigot-8043ebc-f690957]
at net.minecraft.server.v1_14_R1.MinecraftServer.aW(MinecraftServer.java:895) [server.jar:git-Spigot-8043ebc-f690957]
at net.minecraft.server.v1_14_R1.MinecraftServer.executeNext(MinecraftServer.java:888) [server.jar:git-Spigot-8043ebc-f690957]
at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeAll(SourceFile:99) [server.jar:git-Spigot-8043ebc-f690957]
at net.minecraft.server.v1_14_R1.MinecraftServer.sleepForTick(MinecraftServer.java:871) [server.jar:git-Spigot-8043ebc-f690957]
at net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.java:805) [server.jar:git-Spigot-8043ebc-f690957]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_211]
Caused by: java.lang.NullPointerException
at it.mri.mycommand.itemset.LoadItems.CheckIfContainsThisMaterial(LoadItems.java:98) ~[?:?]
at it.mri.mycommand.listener.ItemsListener.onPlayerInteract(ItemsListener.java:52) ~[?:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_211]
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_211]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_211]
at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_211]
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:316) ~[server.jar:git-Spigot-8043ebc-f690957]
... 20 more
-
View User Profile
-
Send Message
Posted May 28, 2019In reply to Forge_User_73643943:
What version of Spigot/bukkit are you using? I guess you need to update the itemset.yml file with newer 1.13 item names... or i can see to implement something like the icon_menu to add a temporary compatibility. If you want make a fast fix, first make a backup of your itemset.yml file, then open the main one and add LEGACY_ prefix to every item name. That's should fix the null pointer.
-
View User Profile
-
Send Message
Posted May 28, 2019In reply to ivanfromitaly:
It works. But when you create an empty hand interaction, throw the error message.
Server version: 1.14
[11:41:09] [Server thread/ERROR]: Could not pass event PlayerInteractEvent to MyCommand v5.5.0
org.bukkit.event.EventException: null
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:320) ~[server.jar:git-Spigot-8043ebc-f690957]
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[server.jar:git-Spigot-8043ebc-f690957]
at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:520) ~[server.jar:git-Spigot-8043ebc-f690957]
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:505) ~[server.jar:git-Spigot-8043ebc-f690957]
at org.bukkit.craftbukkit.v1_14_R1.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:423) ~[server.jar:git-Spigot-8043ebc-f690957]
at org.bukkit.craftbukkit.v1_14_R1.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:390) ~[server.jar:git-Spigot-8043ebc-f690957]
at org.bukkit.craftbukkit.v1_14_R1.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:386) ~[server.jar:git-Spigot-8043ebc-f690957]
at net.minecraft.server.v1_14_R1.PlayerConnection.a(PlayerConnection.java:1704) ~[server.jar:git-Spigot-8043ebc-f690957]
at net.minecraft.server.v1_14_R1.PacketPlayInArmAnimation.a(SourceFile:32) ~[server.jar:git-Spigot-8043ebc-f690957]
at net.minecraft.server.v1_14_R1.PacketPlayInArmAnimation.a(SourceFile:9) ~[server.jar:git-Spigot-8043ebc-f690957]
at net.minecraft.server.v1_14_R1.PlayerConnectionUtils.lambda$0(PlayerConnectionUtils.java:13) ~[server.jar:git-Spigot-8043ebc-f690957]
at net.minecraft.server.v1_14_R1.TickTask.run(SourceFile:18) [server.jar:git-Spigot-8043ebc-f690957]
at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeTask(SourceFile:135) [server.jar:git-Spigot-8043ebc-f690957]
at net.minecraft.server.v1_14_R1.IAsyncTaskHandlerReentrant.executeTask(SourceFile:23) [server.jar:git-Spigot-8043ebc-f690957]
at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeNext(SourceFile:114) [server.jar:git-Spigot-8043ebc-f690957]
at net.minecraft.server.v1_14_R1.MinecraftServer.aW(MinecraftServer.java:895) [server.jar:git-Spigot-8043ebc-f690957]
at net.minecraft.server.v1_14_R1.MinecraftServer.executeNext(MinecraftServer.java:888) [server.jar:git-Spigot-8043ebc-f690957]
at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.awaitTasks(SourceFile:123) [server.jar:git-Spigot-8043ebc-f690957]
at net.minecraft.server.v1_14_R1.MinecraftServer.sleepForTick(MinecraftServer.java:872) [server.jar:git-Spigot-8043ebc-f690957]
at net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.java:805) [server.jar:git-Spigot-8043ebc-f690957]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_211]
Caused by: java.lang.NullPointerException
at it.mri.mycommand.itemset.LoadItems.CheckIfContainsThisMaterial(LoadItems.java:98) ~[?:?]
at it.mri.mycommand.listener.ItemsListener.onPlayerInteract(ItemsListener.java:52) ~[?:?]
at sun.reflect.GeneratedMethodAccessor57.invoke(Unknown Source) ~[?:?]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_211]
at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_211]
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:316) ~[server.jar:git-Spigot-8043ebc-f690957]
... 20 more
-
View User Profile
-
Send Message
Posted May 28, 2019In reply to Forge_User_73643943:
Are you adding items from in-game with the command /mycmd-itemset or you're directly editing the yml file? Because the intended usage is to use only the in-game command.
-
View User Profile
-
Send Message
Posted May 28, 2019In reply to ivanfromitaly:
I editing the .yml file all config ,i always do that and i like notepad++ configuration.
(config picture)
and the blockset also writes an error.
-
View User Profile
-
Send Message
Posted May 28, 2019In reply to Forge_User_73643943:
Still, the intended use to prevent error is to use the in-game command. The null pointer probably is the wrong item_name. Add them from the game, and then, if you want, edit the file manually.
-
View User Profile
-
Send Message
Posted Jun 21, 2019In reply to ivanfromitaly:
Hello Ivan.
Can we talk elsewhere?
-
View User Profile
-
Send Message
Posted May 26, 2019Hello Ivan:)
Or anyone else who is better at mycmd than me ;)
Im looking for a way to make a variable that counts the amount of unique players that join my server. But i cannot figure out a way to do it properly, i will post my idea below:
On a players first join, i run a command as the player: /first_join_message .
That command will then add +1 to a variable that is %unique_players_joined%.
But how can i make such a global variable? (one variable thats shared across all players?)
Also can i somehow use this to do something like:
%your_unique_number% = %unique_players_joined%
Without the %your_unique_number% updating when the %unique_players_joined% update?
My use for this is to make 2 messages: One will show how many players that have joined my server, and one to show what number the player was.
Thank you for an amazing plugin and support!
- Digi