Alto Clef has a variety of commands, settings and modes. This will give users an overview on how to use the bot.
Keep in mind this project is still in rapid development. A lot of features are placeholders and a work in progress.
Commands are prefixed with @. Here's a list along with their functions:
| command | description | examples |
|---|---|---|
help |
Lists all commands | |
coords |
Prints the bot's current coordinates. This is here in cases where the F3 menu gets too crowded. |
|
equip {material} or equip [items...] |
Equips a material armor set or [items...]. If not in the bot's inventory, bot will obtain it. |
@equip [diamond_chestplate, gold_leggings] @equip netherite |
follow {player = <you>} |
Follow a player. If sent via /msg, will follow the player who sent the command. |
@follow TacoTechnica /msg Bot follow |
food {amount} |
Collects amount units of food (1 unit = 1/2 drumstick). Collects from various sources (animals, crops) |
@food 20 |
gamer |
Beats the game epic style | @gamer |
get [items...] |
Gets all items in [items...]. Can either do one item or pass a comma-separated list to get multiple items. Not every resource is get-able. |
@get diamond 3 @get [cobblestone 40, wooden_door, glass 4] |
list |
Prints a list of all get-able items | |
give {player = <you>} {item} {quantity=1} |
Gives player quantity units of item, getting said items if the bot doesn't have them. If sent via /msg, will follow the player who sent the command. |
/msg Bot give iron_pickaxe |
deposit [items... = <Everything>] |
Deposit a list of items in the nearest container, making a chest if we can't find one. Will only deposit items present in the bot's inventory (at the time of running this command). Leave out the list to deposit every non-tool/armor item in the bot's inventory. Useful with command chaining. | @deposit diamond 3 @deposit [cobblestone 1000, raw_iron 100] @deposit |
stash {x0} {y0} {z0} {x1} {y0} {z1} [items... = <Everything>] |
Same as @deposit, but you specify an area from (x0, y0, z0) to (x1, y1, z1) where the bot stores the item list (these coordinates being a chest stash). Just like @deposit, providing no items simply deposits everything in the bots inventory. |
@stash 100 64 100 200 70 100 diamond 3 |
goto {x} {y} {z} {dimension=<current>} |
Goes to (x,y, z) in a given dimension. Travels to dimension if not there already. Can also omit coordinates to just go to a dimension. Passing 2 values as coordinates goes to X Z coordinates instead. |
@goto 100 64 100 overworld @goto nether @goto 100 100 |
inventory {item=<Entire Inventory>} |
Prints the bots inventory, OR how many items of a specific type the bot has. Mostly useful when running through /msg. |
/msg Bot inventory /msg Bot inventory cobblestone |
locate_structure {structure_type} |
Attempts to locate a structure_type structure. Can find strongholds or desert temples. |
@locate_structure stronghold, @locate_structure desert_temple |
punk {player} |
Attacks player. |
|
reload_settings |
Reloads the local settings file. Run this every time you want your settings to be updated. | |
gamma {brightness=1} |
Sets the game's gamma. Useful for testing. 0 is "Moody" and 1 is "Bright", and you can go beyond to enable fullbright. | @gamma 1000 |
status |
Prints the status of the currently executing command. Mostly useful when running through /msg. |
|
stop |
Forcefully stops the currently running command. The shortcut CTRL+K also achieves this. |
|
test {testname} |
Runs a "test" command. These vary, and will be described below. |
Execute consecutve commands by separating them with ;
@get iron_axe;get log 100;goto 0 0;give Player log 100
will get an iron axe, then get 100 logs, then go to x=0 z=0 and then give 100 logs to a player with the name Player
Test commands are temporary/only exist as an experiment, but some of these might be interesting.
For example, @test terminate runs the terminator.
Here's a list of some highlights.
| test name | what it does |
|---|---|
terminate |
Runs the terminator task. When without diamond gear, the bot flees players and obtains diamond gear + food. When diamond gear is equipped, the bot hunts any nearby players down and searches for any chunks that were last seen to have players in them. |
deadmeme |
Expects a file to exist in your .minecraft directory called test.txt. Reads from this file, then displays the text contents of the file by placing signs in a line. Dubbed the "Bee Movie Task" for stupid reasons. Will automatically collect signs and building materials if the bot runs out. |
173 |
Attacks any player that doesn't have direct line of sight to the bot and stands still otherwise. Like a weeping angel. |
replace |
Replace grass block within around 100 blocks with crafting tables. Frequently fails when replacing grass blocks next to water. |
piglin |
Collects 12 ender pearls via piglin bartering. |
stacked |
Collects diamond armor, a sword and a crafting table. |
netherite |
Same as stacked but for netherite gear. |
sign |
Place a sign nearby that says "Hello there!" |
bed |
Right clicks a nearby bed to set the bot's spawnpoint, placing one if it does not exist. |
After running the game with the mod once, a folder called altoclef should appear in your .minecraft directory. This contains altoclef related settings and configurations.
With regards to the altoclef_settings.json file Check Settings.java
After modifying your local settings, run @reload_settings to apply your changes in-game.
This bot lets other players run commands on the bot via server messages. When sending a command via /msg you may omit the @.
You'll have to append each player's name to a file called altoclef_butler_whitelist.txt
located in your .minecraft/altoclef directory. Make sure your name is not found in altoclef_butler_blacklist.txt too.
To toggle whitelist/blacklist, check the useButlerBlacklist and useButlerWhitelist settings.
WARNING: If you set useButlerWhitelist to false, ALL PLAYERS will be able to send commands to the bot. Be extra careful with this one.
Servers auto-kick players that rapidly send messages. For this reason, the butler will send messages at a delayed rate. When sending messages, messages to authorized users are prioritized and sent first.
If the server's whisper /msg system doesn't send players a message that looks like X whispers to you: Y and it's not being
picked up by altoclef, you can append the server's custom whisper format in the whisperFormats setting.
NOTE: At least for now, you must escape brackets and paranthesis. Example: To receive messages that look like [Player -> me] message the format string is \[{from} -> {to}\] {message}
WARNING: Be careful with this one as well, as the bot will trust these formats for ALL non-player chat messages. Messing up the format's ordering can let unauthorized people execute bot commands.