Команды - это короткие строки текста, которые что-то делают в Minecraft: выдают предметы, телепортируют игроков, призывают мобов, меняют погоду и многое другое. Это ещё и самый простой способ добавить логику в аддон, ведь команды можно собрать в функции.
Быстрый способ: GodCraft
В GodCraft команды пишутся внутри Функции, а подсказки предлагают названия команд и аргументы прямо во время набора.
- Открой Мастерскую и добавь в аддон Функцию.
- Напиши команды. Подсказки помогут не ошибиться в синтаксисе.
- Выбери, когда она запускается: каждый тик, один раз при загрузке мира или только когда ты вводишь
/function. - Экспортируй её вместе с остальным аддоном.
Дальше на этой странице разбирается сам язык команд, который пригодится в любом случае.
Включаем читы
Большинство команд работают, только когда включены читы.
- Открой настройки мира.
- Включи Активировать читы (в разделе "Игра" или "Читы").
- Открой чат и введи
/. Появится список команд.
Достижения
Если включить читы, в этом мире отключатся достижения, даже если потом выключить читы обратно. Для работы с аддонами заведи отдельный тестовый мир.
Некоторые команды, например /say и /tell, работают и без читов.
Синтаксис команд
Каждая команда начинается с названия, за которым идут аргументы через пробел:
/give @p minecraft:diamond 5give- это команда.@p- кто получит предмет (селектор цели, о нём ниже).minecraft:diamond- ID предмета. Для ванильных предметовminecraft:можно не писать.5- количество. Оно необязательное: если его не указать, получишь 1.
На страницах справочника видно, какие аргументы обязательные, а какие нет. Например, /give нужны игрок и предмет, а количество и данные необязательны. Все аргументы должны идти в правильном порядке, и нельзя пропустить необязательный, чтобы задать следующий за ним.
Совет
В чате команды начинаются с /. В файлах функций и командных блоках слеш необязателен, и обычно его не пишут.
Селекторы целей
Селектор цели выбирает, на каких игроков или сущности подействует команда.
| Селектор | Выбирает |
|---|---|
@p | Ближайшего игрока |
@a | Всех игроков |
@r | Случайного игрока |
@s | Тебя: сущность, которая выполняет команду |
@e | Все сущности (мобы, предметы, игроки и не только) |
@initiator | Игрока, который разговаривает с NPC (используется в кнопках диалогов NPC) |
Вместо селектора можно написать ник игрока, например /give Steve diamond. Ники с пробелами пишутся в кавычках: "Steve Two".
Аргументы селекторов
Добавь аргументы в квадратных скобках, чтобы сузить выбор. Несколько аргументов разделяй запятыми и не ставь пробелы вокруг =.
/kill @e[type=minecraft:zombie,r=10]Эта команда убирает только зомби в радиусе 10 блоков. Самые полезные аргументы:
| Аргумент | Значение | Пример |
|---|---|---|
type | Тип сущности | @e[type=minecraft:cow] |
name | Имя или бирка | @e[name=Bob] |
family | Семейство моба | @e[family=monster] |
r и rm | Максимальное и минимальное расстояние | @a[r=20] |
c | Сколько выбрать, начиная с ближайших | @e[type=minecraft:pig,c=3] |
tag | Есть тег из /tag | @a[tag=red_team] |
m | Режим игры | @a[m=survival] |
l и lm | Максимальный и минимальный уровень опыта | @a[lm=10] |
x, y, z | Откуда отсчитывать расстояние | @e[x=0,y=64,z=0,r=5] |
scores | Значения таблицы счёта | @a[scores={points=10..}] |
Добавь !, чтобы перевернуть проверку: @e[type=!minecraft:player] значит "все сущности, кроме игроков". Отрицательный c выбирает самых дальних, а не ближайших.
Свои мобы тоже работают. Если ты сделал myname:critter в гайде Твой первый моб, попробуй @e[type=myname:critter] или @e[family=critter].
Координаты
Позиции записываются тремя числами: x (восток и запад), y (вверх и вниз) и z (юг и север).
Абсолютные координаты
Обычные числа - это точные места в мире:
/tp @s 100 70 -250Относительные координаты: ~
Тильда ~ значит "от места, где выполняется команда", по осям мира. Число после неё добавляет смещение.
/tp @s ~ ~10 ~
/setblock ~2 ~ ~ minecraft:gold_block
/summon minecraft:pig ~ ~1 ~~ ~10 ~- на 10 блоков прямо вверх.~2 ~ ~- на 2 блока на восток.- Одиночная
~значит "без изменений" по этой оси.
Смотри /teleport, /setblock и /summon.
Локальные координаты: ^
Знак ^ отсчитывается от того, куда смотрит сущность: влево, вверх и вперёд.
/tp @s ^ ^ ^5Эта команда перемещает тебя на 5 блоков в направлении взгляда, даже если ты смотришь по диагонали. Три части - это ^влево ^вверх ^вперёд, а отрицательные числа ведут в обратную сторону.
Заметка
Нельзя смешивать ^ с ~ или обычными числами в одной позиции. Либо все три ^, либо ни одного.
Выполнение команд от имени других
/execute меняет, кто выполняет команду и где. Это самая мощная команда в игре:
/execute as @a at @s run summon minecraft:lightning_bolt ~ ~ ~Читай слева направо: для каждого игрока (as @a), в его собственной позиции (at @s), выполни призыв. Внутри /execute @s по очереди означает каждую выбранную сущность, а ~ ~ ~ - её место.
Несколько команд, чтобы попробовать
/give @s minecraft:diamond_sword
/effect @a minecraft:speed 30 1
/time set day
/weather clear
/say Hello, world!
/kill @e[type=minecraft:item]- /effect даёт Скорость II на 30 секунд (усиление 1 - это уровень II).
- /time и /weather меняют мир.
- Последняя убирает все выброшенные предметы - удобно, когда в тесте начинается беспорядок.
Что дальше
- Сложи команды в файл, чтобы запускать много сразу: Функции и командные блоки.
- Запускай их из чата через /function.
- Посмотри все команды в справочнике, начиная с /execute.