Команда в Minecraft не понимает слова «меч» или «камень». Ей нужен ID — внутреннее имя предмета, одинаковое во всех языках игры. Пока ребёнок пишет команды по подсказке на экране, это не проблема. Проблема начинается, когда он хочет выдать себе что-то конкретное и не знает, как это «что-то» называется внутри.

Ниже — ID, которые действительно нужны на первых командах, разложенные по назначению. Полного перечня здесь нет намеренно: в игре несколько тысяч предметов, и справочник на три экрана никто не читает. Зато в конце есть способ узнать любой ID прямо в игре, за две секунды и без интернета.

Как вообще устроен ID

Полное имя состоит из двух частей, разделённых двоеточием: minecraft:diamond_sword. Первая часть — пространство имён, то есть чья это вещь. В ванильной игре оно всегда minecraft, и именно поэтому его можно не писать: diamond_sword сработает так же. В поле зрения оно появляется тогда, когда на сервере стоят моды — у них свои пространства имён, и тогда двоеточие становится обязательным.

Вторая часть всегда записана маленькими латинскими буквами, а слова соединены нижним подчёркиванием: не DiamondSword и не diamond sword, а именно diamond_sword. Пробел внутри ID — самая частая причина, почему команда не проходит: игра считает, что имя закончилось, и остальное читает как следующий аргумент.

Блоки для застройки

БлокID
Каменьstone
Булыжникcobblestone
Земляdirt
Блок травыgrass_block
Дубовое бревноoak_log
Дубовые доскиoak_planks
Стеклоglass
Белая шерстьwhite_wool
Песокsand
Обсидианobsidian
Кирпичиbricks
Светокаменьglowstone

Цветные блоки устроены по одной схеме: цвет впереди, материал позади. white_wool, red_wool, blue_concrete, green_terracotta. Зная этот шаблон, ребёнок сам угадывает ID любого из шестнадцати цветов, а это уже не запоминание, а правило.

Предметы и инструменты

ПредметID
Алмазный мечdiamond_sword
Алмазная киркаdiamond_pickaxe
Железная лопатаiron_shovel
Лукbow
Стрелаarrow
Щитshield
Алмазdiamond
Изумрудemerald
Железный слитокiron_ingot
Хлебbread
Золотое яблокоgolden_apple
Элитраelytra
Жемчуг Краяender_pearl
Ведроbucket

Инструменты тоже складываются по шаблону: материал, подчёркивание, тип. wooden_, stone_, iron_, golden_, diamond_, netherite_ плюс _sword, _pickaxe, _axe, _shovel, _hoe. Единственное исключение, на котором все один раз спотыкались: деревянный инструмент — wooden_axe, а не wood_axe.

Редстоун и механика

Что этоID
Редстоуновая пыльredstone
Редстоуновый факелredstone_torch
Редстоуновый блокredstone_block
Повторительrepeater
Компараторcomparator
Поршеньpiston
Липкий поршеньsticky_piston
Нажимная плитаoak_pressure_plate
Рычагlever
Раздатчикdispenser
Воронкаhopper
Командный блокcommand_block

Командный блок в обычном режиме не выдаётся из инвентаря — только командой /give, и лишь в креативе с включёнными читами. Для занятий это даже удобно: ребёнок вынужден один раз написать команду, прежде чем начать ставить блоки мышкой.

Мобы

МобID
Зомбиzombie
Скелетskeleton
Криперcreeper
Паукspider
Эндерменenderman
Короваcow
Овцаsheep
Жительvillager

Моб — не предмет, поэтому /give с ним не работает. Для мобов своя команда: /summon zombie, при желании с координатами после имени. Перепутать эти две команды — классика первого занятия, и сообщение об ошибке там, к сожалению, не подсказывает, что именно не так.

Кому именно выдать: селекторы

ID отвечает на вопрос «что», а в команде есть ещё и вопрос «кому». Ответ на него — селектор, короткая пометка со значком собаки. Их четыре, и они объясняют большую часть того, почему команда сработала не так, как ребёнок ожидал.

СелекторКого выбирает
@sтого, кто выполняет команду
@pближайшего игрока
@aвсех игроков
@rслучайного игрока
@eвсе сущности, включая мобов

Разница между @s и @p заметна лишь в двух случаях: когда команду выполняет командный блок и когда на сервере больше одного человека. В блоке «ближайший игрок» считается от самого блока, а не от того, кто его поставил, — и подарок может уехать соседу, стоящему на два метра ближе. Для раздачи всем сразу есть @a, и именно его стоит ставить в командах, которые включаются автоматически.

Отдельно про @e: он захватывает вообще всё живое и неживое, что игра считает сущностью — мобов, предметы на земле, стрелы, даже вагонетки. Команда /kill @e в мире ребёнка выглядит как апокалипсис, и этот опыт у нас на курсе получает почти каждый. Правильная форма сужает круг: /kill @e[type=zombie] уберёт только зомби.

Где именно: координаты в командах

Большинство команд принимает координаты после основных аргументов, и записываются они тремя числами через пробел: сначала X, потом Y (высота), потом Z. Увидеть свои можно, нажав F3 — они в левом верхнем углу.

Полезнее абсолютных чисел две относительные формы. Значок волны означает «относительно меня»: /summon cow ~ ~ ~5 поставит корову за пять блоков по оси Z от того, кто пишет. Три волны без чисел — это просто «здесь». Значок крышки означает «относительно направления взгляда»: ^ ^ ^3 — три блока вперёд, куда бы игрок ни смотрел.

Разницу между волной и крышкой стоит показать на одном опыте: поставить блок обоими способами, повернуться на девяносто градусов и повторить. С волной блок появится в том же месте, с крышкой — в другом. После этого объяснять словами уже не нужно.

Где взять ID, которого нет в таблице

Самый надёжный источник — сама игра, и работает он без всяких справочников. Начните писать команду в чате, наберите /give @p d и нажмите Tab: игра покажет все предметы, начинающиеся с этой буквы, и даст выбрать нужный из списка. Промахнуться в написании после этого почти невозможно.

Второй способ в Java-версии: нажать F3 и H вместе. Включатся расширенные подсказки, и под названием любого предмета в инвентаре появится его ID мелким шрифтом. Навести курсор, прочитать, выключить тем же F3 и H. Ребёнку стоит показать оба приёма сразу — они снимают потребность искать таблицы в интернете, а вместе с ними и половину ошибок в командах.

Java или Bedrock: где справочник расходится

Само название предмета в обеих версиях игры совпадает — diamond_sword остаётся мечом и там, и там. Расходится всё, что вокруг названия, и об этом стоит знать заранее, потому что инструкция из интернета почти никогда не указывает, для какой версии написана.

Подсказка F3 и H работает только в Java-версии: в Bedrock расширенных подсказок нет, остаётся Tab в чате. Часть команд существует лишь в одном из изданий, поэтому найденная команда может быть совершенно правильной и всё равно не сработать — просто она не из той игры. Education Edition, в которой мы ведём занятия с младшей группой, построена на Bedrock, и это первое, что мы проверяем, когда у ребёнка «команда из видео не работает».

Самая простая проверка, которая не требует знаний: начать набирать команду и посмотреть, подсказывает ли её игра. Если автодополнение команду не знает — её в этой версии нет, и дальше мучиться с написанием нет смысла.

Три вещи, из-за которых команда не работает

Первая: числовые ID. Раньше предметы обозначались числами, и в старых видео до сих пор можно услышать «дай сто тридцать седьмой блок». Эти номера из игры убрали ещё в версии 1.13, и любая найденная в сети таблица с числами сегодня просто ничего не даст. Если инструкция предлагает цифру вместо имени — она устарела, и дальше по ней идти не стоит.

Вторая: регистр и пробелы. Diamond_Sword не сработает, diamond sword тоже. Только маленькие буквы и подчёркивание.

Третья: синтаксис дополнительных свойств. Выдать меч с зачарованием одной командой можно, но именно эта запись в свежих версиях игры изменилась, и старая форма в новой версии выдаёт ошибку. Здесь единственный надёжный совет — не копировать длинную команду из видео, а собрать её через Tab: подсказка всегда показывает тот формат, который понимает именно ваша версия.

Когда ID перестают быть препятствием, начинается собственно программирование: условия, счётчики, последовательности действий. О том, из каких команд это складывается, мы писали в справочнике команд, а командные блоки разобраны отдельно — именно они превращают набор команд в работающий механизм.