Skip to content

Documentation

kr1viah_ edited this page Sep 15, 2025 · 30 revisions

Macros

One of Redstone Tools' biggest features is the macro system it adds. The macro system allows users to increase their productivity by allowing users to press a keybind to quickly run a command or list of commands. Below is a guide on how to get started using macros.

The Macro Menu

To add, edit, delete, disable/enable or simply inspect macros, you have to open the macro menu. To do this, open the main menu (escape) and go to Options... -> Controls... -> Macros..., use the keybind, or simply run /edit-macros. Once you're in the macro menu you'll be able to:

  • Edit macros by clicking the Edit button next to the macro you want to edit.
  • Delete macros by clicking the Remove button to the macro you want to delete.
  • Create a new macro by clicking the Add macro button.
  • Drag and drop a .txt file to add the contents of the .txt file as a new macro

The Macro Edit Screen

Once you're editing a macro you'll have the option to change its name, keybind, commands, and its muted and enabled status. You can also use advanced keybind settings by clicking its icon next the hotkey.


Gamerules

Redstone Tools adds gamerules to help users configure their worlds just the way they like them, below is a list of all gamerules added by Redstone Tools and what they do.

doContainerDrops

Whether or not containers should drop their items when they're broken, defaults to true.


Options

Redstone Tools has a few configurable options. Below is a list of these options.

Chat

Variable begin string

The string that is used to denote the start of a variable


Variable end string

The string that is used to denote the end of a variable


Math begin string

The string that is used to denote the start of a math expression


Math end string

The string that is used to denote the end of a math expression


First world entry

Runs the first time you join a world/server in this session


World entry

Runs every time you join a world/server


Dimension change

Runs every time you change dimension

General

Hotkey to open menu

When pressing this hotkey, will open the config menu, defaults to V+C


Improved command suggestions

When typing "/give @s redstblock" in chat, with this disabled it will give no suggestions (default behaviour, or "prefix matching"), but with this enabled it will give "redstone_block" as a suggestion (so called "fuzzy matching"), defaults to true.


Airplace outline

Whether to show the block outline when airplace is enabled, defaults to true.


Bigdust size

How tall the redstone dust hitbox should be when bigdust is enabled. Can be from 0 (flat) to 16 (full block), defaults to 3.

Toggles

Airplace

Whether or not to enable Airplace. Triggering the hotkey will toggle Airplace.


Autodust

Whether or not to enable Autodust. Triggering the hotkey will toggle Autodust.


Autorotate

Whether or not to enable Autorotate. Triggering the hotkey will toggle Autorotate.


Bigdust

Whether or not to enable Bigdust. Triggering the hotkey will toggle Bigdust.


Clickcontainers

Whether or not to enable Clickcontainers. Triggering the hotkey will toggle Clickcontainers.


Chat

Redstone tools adds some nifty features to the chat. This part assumes you have everything set to default.

Variables

Variables allow for certain strings to be replaced with others.
Note that, even though the formatting in the chatbox may not always work how you'd expect, variables will always be inserted into commands.
Also note that variables will not work in normal chat messages.

Rules

Given these commands have been run in order:
/clientdata set gm gamemode
/clientdata set s say
/clientdata set var \'gm'
/clientdata set m turnOn
/clientdata set toggleMacro macro \'m'

If the literal string 'gm' is found in a command, it will get replaced by its value
'gm' creative -> gamemode creative

You can escape variables by using a backslash (\)
\'gm' creative -> 'gm' creative

You can stack variables
'var' creative -> gamemode creative

If you make a macro M that executes /'var' creative, then do /clientdata set var \'s', running M will execute /say creative[^1]. If you then do /clientdata set var \'gm', running M will execute /gamemode creative[^2].

Math

You can do math expressions
{1 + 3} -> 4
It supports +, -, *, /, ^ and parentheses. Spaces don't matter

You can use variables with commands
Given these commands have been run in order:
/clientdata set x 2
/clientdata set y 4
/clientdata set addXY {\'x' + \'y'}

Now, doing /g stone 'addXY' will give you 6 stone
If you now do /clientdata set x 4, running /g stone 'addXY' will give you 8 stone

If statements

Say you want to put this into macros

/print hello!
if (condition) {
    /print true
} else {
    /print false
}
/print whats up

You could do the following

macro setConditionTrue:

/clientdata set condition macro onTrue

macro setConditionFalse:

/clientdata set condition macro onFalse

macro onTrue:

/print true

macro onFalse:

/print false

macro whatever

/print hello
/'condition'
/print whats up

Now, if you run /macro setTrue and then /macro whatever, it'll print

hello!
true
whats up

If you do /macro setFalse and then /macro whatever, it'll print

hello!
false
whats up

You can do else if too

if (condition1) {
    /print condition is true
} else if (condition2) {
    /print condition2 is true
} else {
    /print both are false
}

By just rewriting it a bit

if (condition1) {
    /print condition1 is true
} else {
    if (condition2) {
        /print condition2 is true
    } else {
        /print both are false
    }
}

Or just if too

if (condition1) {
    /print condition is true
}

By rewriting it again

if (condition1) {
    /print condition is true
} else {
    
}

Commands

Redstone Tools adds a bunch of commands to improve productivity. Below is a list of the names of all commands added by Redstone Tools and what they do.

Basic commands

/print <text>

Client side - Since v3.1.0
Prints something to the chat.

text

What to print


/clientdata <set|delete> <name> <value>

Client side - Since v3.1.0
See variables

name

The variable of the name.

value

What to set the variable to.


/macro <macro>

Client side
Runs a macro.

macro

The name of the macro to run.


/m <macro>

Client side - Since v3.1.0
Runs a macro.

macro

The name of the macro to run.


/rst

Client side - Since v3.1.0
Opens the settings menu.


/quicktp [<distance=50.0>] [<throughFluids=false>] [<resetVelocity=true>]

Server and client side
Teleports you distance blocks in the direction you're looking or to the block you are looking at if it's closer.

If after 10 seconds it is still calculating where you should end up, it will cancel the teleport.

distance

The distance to teleport you in blocks, defaults to 50.0.

throughFluids

Whether to teleport to a fluid you're looking at if it's closer than distance, will let you teleport through fluids if set to true, defaults to false.

resetVelocity - Since v3.0.0

Whether to reset your velocity to 0 after teleporting, defaults to true.


/base <number> <toBase>

Server and client side
Converts a number to a different base and outputs it.

number

The number to convert, e.g. 0b1001, 0xffe2, 0o25, 0d123 or 123.

toBase

The base to convert number to, e.g. 10.


/reach <block|entity|reset> <distance>

Server and client side - Since v3.0.0
Changes your default reach.

distance

The distance in blocks to set your block and entity reach to.


/g <item> [<count=1>]

Server and client side - Since v3.0.0
Shorthand for the vanilla /give @s.

item

The item to give.

count

The amount to give, defaults to 1.


/copystate

Server side
Gives you an exact copy of the block you're looking at including it's NBT data.


/colored [<blockType=wool>]

Server side
Gives you a block of the specified type with the color of the block you're looking at.

blockType

The block type. Can be concrete, glass, terracotta or wool.


/ssb [<signalStrength=15>] [<block=auto>]

Server side
Gives you a container that outputs the specified signal strength.

signalStrength

The signal strength the barrel should output, defaults to 15.

block

The container type to give you, defaults to auto meaning it'll be a barrel.


/itembind [<reset>]

Server side
Binds the next command you run to the item you're holding.

reset

If true, will remove the currently bound item.


/component [<target>]

Server side - Since v3.1.0
Shows the item components of the item in your main hand.

target

Whose main hand to use.


Toggles

For toggles that have settings (Currently /airplace and /bigdust) their settings can be found in the config menu, accessible by pressing the Hotkey to open menu hotkey

/airplace

Client side
Lets you place blocks in the air if there is no block in reach.


/bigdust

Client side
Makes the redstone dust hitboxes bigger.


/autodust

Server side
Automatically places redstone dust on colored blocks such as wool and glass that you place.


/autorotate

Server side
Automatically rotates rotatable blocks by 180 degrees.


/clickcontainers

Server side - Since v3.0.0
Increases the level of cauldrons and composters by one when right-clicking them with an empty hand.


WorldEdit Extensions

//colorcode <color> [<onlyColor=all>]

Server side
Converts all colored blocks such as wool and glass in your selection to the given color.

color

The color to convert the selected blocks to.

onlyColor

If set will only color the blocks with this color. For example, if onlyColor is red only red blocks will be recolored.


//rstack [<count=1>] [<direction=me>] [<offset=2>] [<moveSelection=false>]

Server side
Stacks your selection with a custom distance.

count

The amount of times to stack your selection, defaults to 1.

direction

The direction to stack your selection in, defaults to me (the direction you're looking in).

offset

The offset between copies. 1 means 0 air gaps in between, 2 means one air gap in between, defaults to 2.

moveSelection - Since v3.1.0

Whether or not to move the selection to the last pasted position.


//minsel

Server side
Minimizes your selection by removing surrounding layers consisting of only air. Note that this might not work with some selection visualisers like //drawsel.

//read [<offset=2>] [<onBlock=redstone_lamp[lit=true]>] [<toBase=10>] [<reverseBits=false>]

Server side
Interprets your selection as a binary number and outputs it. First position is the MSB.

offset

The offset between tested blocks, defaults to 2.

onBlock

The block that represents a 1 bit. Otherwise, if it doesn't match, it will be a 0 bit, defaults to redstone_lamp[lit=true] (a lit redstone lamp).

toBase

The base to output the value of the binary number in, defaults to decimal.

reverseBits

Whether the bits are in reverse, defaults to false.

[^1]: /'var' creative -> /'s' creative -> /print creative [^2]: /'var' creative -> /'gm' creative -> /gamemode creative

Clone this wiki locally