This page discusses the legacy EasySigns package written in CommandHelper Method Script. The CommandHelper package is deprecated for new uses and will eventually be removed. New signs should instead use the EasySigns plugin, documented at https://github.com/NerdNu/EasySigns.
EasySigns is a CommandHelper package that makes signs perform actions when (left-or-right) clicked.
Any player can activate a sign. Only staff are permitted to configure sign actions.
Staff-facing commands can be used to edit a list of actions associated with any sign. That list constitutes a simple "script" or "program". Actions are numbered in the order they were added to the sign, and are executed in numerical order. The package has commands to re-order actions and remove selected actions from the list.
The actions performed by a sign are not affected by the visible text on the sign. Examples of frequently used actions would be:
- to send the player a message,
- to set their bed spawn location, or
- teleport the player to another location.
Signs can also check certain conditions, such as how many times the sign has been clicked, and then decide not to execute subsequent actions in the list.
You can list documentation on all possible sign actions by running
/easy-sign with no command arguments. This will also show brief documentation on related commands and provide a link to this wiki page.
Adding An Action
To add an action to a sign, look at it, and run
/easy-sign <type> [<args>], where the <type> is one of those described in the following table.
|Announce||/easy-sign announce <id> <message>||Announces in-game - the message is broadcast only once when the player clicks the sign. Supports /signtext colors and %s is replaced with the players name. The ID sets the 'key' for the sign gropup, players can only announce once per group|
|Bed (Set)||/easy-sign setbed [<world>] x y z||Sets the players bed location at the specified position|
|Bed (Teleport)||/easy-sign tpbed||Teleports the player back to their bed|
|Cart||/easy-sign cart [<world>] x y z||Spawns a minecart at the specified location|
|Command||/easy-sign cmd <command>||runs the command as the user|
|Give||/easy-sign give <item> <qty> [<slot>]||gives the player an item|
|Give Held||/easy-sign giveheld [<slot>]||gives the player a duplicate of your currently held item|
|Give Max||/easy-sign givemax <id> <item> <qty> <max gives> [<slot>]||gives the player max # of an item|
|Heal||/easy-sign heal [<gap>]||refills a players health. If ia gap is provided then the player gets half a heart every gap seconds. default is 0 = instant|
|Hunger||/easy-sign hunger||refills a players hunger bar|
|Inventory (Check for Empty)||/easy-sign check-empty-inventory [<message>]||If the player's inventory is not empty, do not execute any subsequent sign actions and show <message>, if specified, or a default message. Default message: Your inventory must be completely empty to use this.|
|Inventory (Clear)||/easy-sign ci||clears the players inventory|
|Inventory (Drop)||/easy-sign dropinventory [scatter] [<world>] x y z||Drops a copy of your current inventory at the specified coordinates. Specify 'scatter' as the first argument to give the dropped items random velocities|
|Inventory (Give)||/easy-sign giveinventory||Gives the player the items in your inventory, filling the empty space|
|Inventory (Replace)||/easy-sign inventory||Clears the players inventory and gives them an exact copy of your current inventory|
|Launch||/easy-sign launch x y z||Launches the player with the specified velocity vector.|
|Leather||/easy-sign leather <red> <green> <blue> <item1> ... <itemN>||gives the player leather armor with the specificed red, green, and blue color components (0-255). <item1> to <itemN> are a list of items to give and can only be: helmet, chestplte, leggings, or boots|
|Lore||/easy-sign lore <item> <qty> <lore>||<itemmsg>||<qtymsg>||Takes a specified qty of an item from a player if it has the required lore. Colors are ignored and lines are concatenated without spaces. The item must be in the players hand. If the wrong item is held <itemmsg> is shown. If it is the right item but insufficient qty <qtymsg> is shown. The <itemmsg> and <qtymsg> can be multiple words and color codes are allowed. The double bar seq || is used to separate those arguments. If the item is not taken for whatever reason, subsuquent sign actions are not processed. Caution: multiple consecutive spaces in any of these strings will be replaced with single spaces|
|Max (uses)||/easy-sign max <id> <uses>||Allows the sign to be used <uses> items and no more. No other commands will run when limit is reached|
|Message||/easy-sign msg <message>||Sends the player a message. Color codes with & are supported. See Formatting Codes.|
|Potion||/easy-sign potion <id> <strength> <seconds>||applies a potion effect to the player. <ID> must be 1-23 <strength> has a minimum level of 1 These potion effects can be used.|
|Potion (clear)||/easy-sign clearpotions||Clears all potion effects|
|Random Location||/easy-sign randloc <max_distance>||Randomly spawns the player max_distance away from 0,0|
|Sleep||/easy-sign sleep||resets spawn at the point of the sign|
|Take||/easy-sign take <item> <qty> <failmsg>||takes an item from the player. If they dont have enough a failmsg is shown and no other commands are run|
|Warp||/easy-sign warp [<world>] x y z||sends player to coordinates listed, <world> is optional|
Listing A Sign's Actions
To list all the actions on the sign, look at it and run
/easy-sign-info. Each action will have a number in this list. The number can be supplied to other EasySigns commands in order to alter that action.
To remove one action from a sign, look at it and run
/easy-sign-remove <number>, specifying the 1-based list position of the action, as shown by
To remove all actions from a sign, look at it and run
/easy-sign-delete, or simply break the sign.
Reordering Sign Actions
To move an action from one position to another in the order, use
/easy-sign-reorder <from> <to>, where:
- <from> is the list position number of the action to be moved,
- <to> is the new list position to insert the action.
The action at the <to> position prior to executing the command, and all subsequent actions, will be moved down one position in the list.
For example, if the current actions on a sign are:
(1) sound ENTITY_IRON_GOLEM_DEATH 1.00 1.00 (2) heal 2 (3) sleep (4) msg Hi
/easy-sign-reorder 3 1 will change the actions to be:
(1) sleep (2) sound ENTITY_IRON_GOLEM_DEATH 1.00 1.00 (3) heal 2 (4) msg Hi
announce actions support Minecraft formatting codes beginning with the ampersand,
& characters in succession adds a single ampersand to the message.
/signtext command shows a guide to colour codes in chat.
Minecraft's formatting codes are documented in the Minecraft Wiki Formatting Codes article.