Minecraft Commands - Minecraft command list (2022)

Command Description Success Conditions

/achievement give <achievementname> [playername] Gives a player an achievement, and all prerequisite achievements. achievementname must use "achievement." followed by the achievement name (see Scoreboard or Achievements for valid names). If playername is not specified, the achievement will be given to the command's executor. achievementname must be a valid achievement name. playername is not optional in command blocks and player must be online.

/blockdata blockdata <x> <y> <z> <dataTag> Edits the data tags of the block at the location x, y, z. For more information on data tags, see the Data tags section. The dataTag must be a valid argument at the block located at x, y, z.

/clear <playername> [item] [metadata] Clears the inventory of playername or the specified item:data. At least zero item(s) must be removed, and playername must be online. Can output a comparator signal if successfully cleard item(s).

/clone <x1> <y1> <z1> <x2> <y2> <z2> <x> <y> <z> [mode] Clones the given area. The destination is (x, y, z), where the blocks are placed going into positive coordinate values. The area being cloned and the area where the cloned blocks are going must both be rendered and must not overlap

/debug start | stop Starts a new debug profiling session or stops the session currently running. It notifies about potential performance bottlenecks in the console when active and creates a profiler results file in the folder debug when stopped. Can only stop if a session is running. Cannot be used in a command block.

/defaultgamemode survival | creative | adventure Sets the default game mode that is shown on the world selection menu. New players that join the world will be put into the default game mode; i.e., if the default game mode is creative, new players will start in creative. The game modes can be abbreviated to "s/c/a" or "0/1/2" respectively. This command cannot enable or disable Hardcore mode. Must be a valid game mode.

/difficulty peaceful | easy | normal | hard Changes the difficulty for as long as the server is running. If the server is restarted, the difficulty will go back to whatever difficulty is set in server.properties. The difficulties can be abbreviated to "p/e/n/h" or "0/1/2/3" respectively. Must be a valid difficulty.

/effect <playername> <effect> [seconds] [amplifier] Gives the targeted player the specified effect for the specified time (default is 30 seconds). Effects have a limit of 1,000,000 seconds, and the amplifier field has a limit of 255. Effect id's can be found on the potion effects page. Setting seconds to 0 clears this effect. If you put the amplifier to a number of a variably high value, it will not give the desired amplifier. If clearing an effect, the player must have this effect. Must be a valid effect. Playername must be online.

/effect <playername> clear Clears all effects on playername. At least one effect must be removed, and playername must be online.

/fill <x1> <y1> <z1> <x2> <y2> <z2> <TileName> [dataValue] [oldBlockHandling] [dataTag] Fills the given area with a block. A starting point and an end point must be inputted followed by a block. Your feet (y-value), will be the point where blocks will begin to fill

/enchant <playername> <enchantment ID> [enchantment level] Enchants the item that the player is currently holding, according to enchantment ID. Note that this works within the normal limitations of enchanting items. Enchantments can only be applied to items which can normally receive that specific enchantment. Enchantment levels can not be above the normal highest achievable for the selected enchantment. Conflicting or overpowering enchantment combinations usually prevented are also prevented with this command. The enchantment ID must be valid, the level must be valid for this enchantment (unless the held item is also invalid), the held item must be able to accept this enchantment, the held item cannot have conflicting enchantments, and playername must be online.

/gamemode <survival | creative | adventure> [playername] Changes the game mode for playername. The game modes can be abbreviated to "s/c/a" or "0/1/2" respectively. If no playername is given, it will set your own gamemode. Remember, this will only affect playername and no one else. Player must currently be online, and gamemode must be valid. Playername is not optional for command blocks.

/gamerule <rulename> [true | false] Activates or deactivates the rulename. If true/false is not given, displays the current status of rulename. Available rules are:

/commandBlockOutput - Whether command blocks should notify admins when they perform commands.

/doFireTick - Whether fire should spread.

/doMobLoot - Whether mobs should drop items.

/doMobSpawning - Whether mobs should naturally spawn.

/doTileDrops - Whether blocks should have drops.

/keepInventory - Whether the player should keep items in their inventory if they die.

/mobGriefing - Whether creepers, endermen, ghasts, and withers should be able to change blocks, or zombies, skeletons, and zombie pigmen can pick up items.

/naturalRegeneration - Whether the player can regenerate health naturally if their hunger is at a regenerable state.

/doDaylightCycle - Whether the day/night cycle is in effect or not.

Succeeds in literally all cases - even absent/invalid rulename or a property besides 'true' or 'false'.

/give <playername> <item> [amount] [metadata] [dataTag] Spawns amount (defaults to 1) of the item defined by item with the specified metadata (defaults to 0) at playername 's location, using dataTag for the "tag" NBT tag. For example typing /give John 5 30 1 {display:{Lore:["Wooden planks"]}} will give a player called John 30 blocks of Spruce Wood Planks with Lore that says "Wooden planks". Item must be a valid ID or item name, amount must be from 0 to 64, and playername must be online.

/kill [playername] Inflicts 1000 ( × 500) void damage to the target, killing the target instantly even if in Creative mode (a high-level Resistance effect cannot protect the player either). The text "Ouch! That looks like it hurt." will be displayed after executing. Useful when lost, stuck, or to restore health and hunger (assuming you can get your items back easily or the keepInventory gamerule is set to "true"). If playername is not specified, the player running the command will be killed.

/The playername argument will be added in 1.8 and is currently available only in the snapshots.

/playername is not optional in command blocks.

/particle <name> <x> <y> <z> <xd> <yd> <zd> <speed> [count] Spawns particles in a given area

/playsound <sound> <playername> [x] [y] [z] [volume] [pitch] [minimumVolume] Plays the selected sound to the selected player. The format for sound is as follows:

Example: Sound located at .minecraft\assets\virtual\legacy\sound\mob\pig\death.ogg

The value for sound would be written as mob.pig.death, as the command originates from the sound folder. For sequentially numbered files pertaining to the same event (Example: various walking sounds), the player must exclude the number of the sound.

Example: Sound located at .minecraft\assets\virtual\legacy\sound\mob\pig\say[1-3].ogg The value for sound would be written as mob.pig.say in this case. Since there are multiple mob.pig.say files (say1, say2, and say3), the command will play a randomly selected sound out of the three available.

The coordinates x, y, and z are the coordinates to play the sound from. If prefixed with "~", they will be relative to the player's current location. Note that "~" is shorthand for "~0", and thus "~ ~ ~" can be used as a substitute for the player's current location.

The volume argument controls the distance from which a sound may be heard. At values less than 1.0, the sound will be quieter and have a smaller sphere within which it may be heard. At values greater than 1.0, the sound will not actually grow louder, but its audible range (a 16-block radius at 1.0) will be multiplied by volume.

The minimumVolume argument controls the volume of the sound outside its normal audible sphere. Note that the sound inside this sphere may actually be less than the volume of the sound outside this sphere, if volume is less than minimumVolume.

The pitch argument alters both the pitch and the duration of the sound (which means that it's actually changing its speed).

playername must be online, volume must be at least 0.0, pitch must be between 0.0 and 2.0 (inclusive), minimumVolume must be between 0.0 and 1.0 (inclusive), and the player must be able to hear the sound from where it is played.

/publish Opens your single-player game for LAN friends to join. This command appears in the singleplayer cheats. Cannot be used in a command block.

/say <message> Broadcasts message to all players on the server. If a multi-person target selector (e.g. @a) is used, the list of names is formatted as "name1, name2, and name3", or "name1 and name2" for two names. Therefore, regardless of any target selectors which are used, this command will only output once. All target selectors (e.g. @p) in the message must evaluate.

/scoreboard objectives|players|teams See Scoreboard for more information. Scoreboard-specific commands. Main Article

/seed Displays the seed. This command can always be used in single-player mode, regardless of whether cheats are enabled or not. Always succeeds (if user is a command block, player in singleplayer, or server op).

/setblock <x> <y> <z> <tilename> [datavalue] [oldblockHandling] [dataTag] Places the block in the x, y and z coordinates specified. tilename must exist, datavalue must exist if specified, oldBlockHandling must be either "replace", "keep" or "destroy" if specified and dataTag must evaluate if specified.

/setworldspawn [x] [y] [z] Sets the world's spawn to the specified coordinates. If no coordinates are specified, the world spawn will be set to the executor's current location. x, y, and z must be within the range -30,000,000 to 30,000,000 (inclusive). x, y, and z are not optional in command blocks.

/spawnpoint <playername> [x] [y] [z] Sets the spawnpoint of that player to that position, or to the current position if x y and z are not specified. Player is optional if x y z are not specified; will set the spawnpoint of the user to their current location. NOTE: Spawnpoint coordinates must be specified in integers. No decimals. playername must be online, and x, y, and z must be within the range -30,000,000 to 30,000,000 (inclusive). NOTE: Sleeping in a bed will also set a spawn point where the bed is, but you can only sleep in beds at night or when it rains.

/spreadplayers <x> <z> [spreadDistance] [maxRange] [respectTeams] <playernames> This command allows players to spread out over a long or short distance.

x and z mark the center of the area across which players are to be spread. spreadDistance is the rough minimum distance players will be spread apart.

maxRange is the maximum distance from x, z where players will be put. Note that this distance is not a circular radius; it represents the maximum distance on either coordinate (thus forming a box ranging from x-maxRange to x+maxRange and z-maxRange to z+maxRange).

respectTeams may be true or false, and represents whether players should be moved individually or teams should be kept together.

playernames is the list of players to spread. Names are separated by spaces.

x and z must be within the range -30,000,000 to 30,000,000 (exclusive), spreadDistance must be at least 0, maxRange must be at least 1.0 greater than spreadDistance, and there must not be too many players to fit within the area (note that if maxRange is larger than 30,000,000, this can fail with even one player if it attempts to place them in the Far Lands).

/summon <EntityName> [x] [y] [z] [dataTag] Spawns desired entity. For example, /summon Creeper ~ ~ ~ {powered:1,CustomName:Powered Creeper} would create a charged creeper named Powered Creeper at the player's current location. x and z must fall within the range -30,000,000 to 30,000,000 (exclusive), and y must be at least 0. If coordinates aren't specified the entity will spawn at the player's location (or inside a command block if the command was executed by one).

/tellraw <playername> <raw message> Sends a message to a specified player, or to every player online on a server. Links can also be sent, with customizable actions when they are clicked, for example giving an apple to a player or teleporting the player to another location. This command can also be used to fake player messages. For a more specific guide to tellraw commands, see this link

raw message uses JSON. Here is a useful tool to help create messages with JSON. Note that in the game, color will default to white if not given and all formatting (bold, italic, etc.) will default to false if not given, so you don't have to use the exact command the tool gives you.

playername must be online, and the message text must be correctly coded in JSON.

/testforblock <x> <y> <z> <tilename> [datavalue] [dataTag] Used to test whether a particular block is in the x, y and z coordinates specified. Datatags will not work unless a special syntax is used to specify what type of NBT tag is used (s for Short, b for Byte, l for Long, f for Float and d for Double). Also all relevant tags must be included even if they are unused (e.g.: Chest contents must include Slot, id, Damage, and Count.) tilename must exist, datavalue must exist if specified, and dataTag must evaluate if specified.

/time set <number | day | night> Sets the world time. number is an integer between 0 and 24000, inclusive, where 0 is dawn, 6000 midday, 12000 dusk and 18000 midnight. Number can be greater than 24000; in this case, the time of day wraps around, but the moon's phase is advanced. However, Setting the time "backward" (earlier than the current time) does not change the moon. "time set day" sets the time to 1000, and "time set night" sets the time to 13000. Number must be 0 or positive, or "day" or "night".

/time add <number> Increments the world time, as above. Number must be 0 or positive. The daytime wraps, and the moon's phase advances; adding 24000 will advance the moon's phase by one day.

/toggledownfall Toggles rain and snow. Always succeeds.

/tp [playername] <targetplayer> Teleports player playername to targetplayer 's location. If no player is specified, it will teleport yourself. Playername is not optional in command blocks. Both players must be online.

/tp [playername] <x> <y> <z> Teleports player playername (or yourself if no player is specified) to coordinates x,y,z. (the y value cannot be smaller than 0). Can also relatively move the player by adding the ~ character before the coordinate value. For example typing /tp John ~3 64 ~3 will teleport a player called John 3 blocks away from his current x and z, and to y 64. x and z must fall within the range -30,000,000 to 30,000,000 (exclusive), and y must be at least 0. Playername is not optional in command blocks, and the player must be online.

/weather (clear | rain | thunder) [seconds] Changes the weather for the specified duration. Seconds must be at least 1, and cannot be greater than 1,000,000, and a valid weather condition must be provided.

/xp <amount> [playername] Gives the specified user the given number of orbs. Maximum is 2,147,483,647 per command. Negative amounts may not be used to remove experience points. Amount can be at most 2,147,483,647. Playername is not optional in command blocks, and player must be online.

/xp <amount>L [playername] Gives playername the amount number of experience levels. Maximum is 2,147,483,647 — if a player is given levels pushing them past this limit, they get reset to 0. Negative amounts may be used to remove experience levels. Amount must be between -2,147,483,648 and 2,147,483,647, inclusive. Playername is not optional in command blocks, and player must be online.

Multiplayer-only Commands

These commands are usable by ops (operators) from the server console as well as through the chat window when prefixed by the command character (a forward slash). These commands are only available in multiplayer mode. With the exception of the list command, none of these commands can be executed by a command block, and none make use of target selectors. Many of these commands can be used on players who have never been to the server, or even on names which are not (or cannot be) registered as Minecraft accounts.

Command Description Success Conditions

/ban <playername> [reason] Blacklists the name playername from the server so that they can no longer connect. Note: Bans supersede any whitelisting in place. Always succeeds.

/ban-ip ip-address | playername Blacklists an IP address so that all subsequent connections from it are rejected. ip-address must be valid or playername must be online.

/banlist [ips] Displays banned players. To display banned IP addresses, use the command "banlist ips" Always succeeds.

/deop <playername> Revokes a player's operator status. Always succeeds.

/kick <playername> [reason] Forcibly disconnects playername from the server, displaying an optional reason to them. Playername must be online.

/list Shows the names of all currently-connected players (the same can be achieved when pressing tab) Always succeeds, even in a command block.

/op <playername> Grants playername operator status on the server. Always succeeds.

/pardon <playername> Removes playername from the blacklist, allowing them to connect again. Always succeeds.

/pardon-ip <ip-address> Removes ip-address from the IP blacklist, allowing players from that IP address to connect to the server. ip-address must be valid.

/save-all Forces the server to write all pending changes to the world to disk. Always succeeds.

/save-off Disables the server writing to the world files. All changes will temporarily be queued. Always succeeds.

/save-on Enables the server writing to the world files. This is the default behavior. Always succeeds.

/setidletimeout <Minutes until kick> Set the idle kick timer. Any players idle for Minutes until kick will be kicked. Always succeeds.

stop Saves all changes to disk, then shuts down the server. Always succeeds.

/whitelist <add | remove> <playername> Adds or removes playername from the whitelist. Always succeeds.

/whitelist list Displays all players in the whitelist. Always succeeds.

/whitelist <on | off> Enables/disables the server's use of a whitelist. Note: Server ops will always be able to connect when the whitelist is active, even if their names do not appear in the whitelist. Always succeeds.

/whitelist reload Reloads the list of playernames in white-list.txt from disk (used when white-list.txt has been modified outside of Minecraft). Always succeeds.

Command-Block-only commands

These commands can be used only in a Command Block and cannot be used in other ways. Command blocks are only obtainable via the /give <playername> minecraft:command_block command. Using /give <playername> 137 is currently being deprecated by Mojang.

Command Description Success Conditions

/testfor <playername | selector> [dataTag] Used to test whether playername is online, or if selector has matches and every tags specified by dataTag matches. A Redstone Comparator as output from a command block with this command will indicate the number of players matched by selector. For example, "testfor @a[r=3]" will output the number of players within 3 meters of the command block, and "testfor @e[type=Arrow,r=3] {inGround:1b}" will output the number of arrows stuck in a block within 3 meters. To shrink the range to 1 block (when using specific x y z coordinates) you must intentionally cause an overflow by using 65536 as the range. More information about selectors may be found here. selector and dataTag must be valid if specified.

Data tags

NBT tags can be specified for items and entities created with the /give, /summon and other commands. Data tags are data structures. The format is JSON, although it is not strict (lenient). The data is represented as a comma separated list of pairs. Each pair has the format <key>:<value>. The key is the name of the NBT tag and the value is the data that should be assigned to it. Tag names are case-sensitive, and whitespace outside keys or values is ignored.

Top Articles

Latest Posts

Article information

Author: Virgilio Hermann JD

Last Updated: 11/07/2022

Views: 6017

Rating: 4 / 5 (41 voted)

Reviews: 88% of readers found this page helpful

Author information

Name: Virgilio Hermann JD

Birthday: 1997-12-21

Address: 6946 Schoen Cove, Sipesshire, MO 55944

Phone: +3763365785260

Job: Accounting Engineer

Hobby: Web surfing, Rafting, Dowsing, Stand-up comedy, Ghost hunting, Swimming, Amateur radio

Introduction: My name is Virgilio Hermann JD, I am a fine, gifted, beautiful, encouraging, kind, talented, zealous person who loves writing and wants to share my knowledge and understanding with you.