Коротко: команди працюють лише з увімкненими читами, пишуться у чат після скісної риски, а половина підказок з інтернету не спрацьовує через те, що написана під іншу версію гри. Java і Bedrock відрізняються саме синтаксисом — не можливостями.

Команди в Minecraft — перший текстовий інтерфейс у житті більшості дітей. До них усе робилося мишею, тут уперше треба написати рядок без жодної помилки, інакше нічого не станеться. Досвід корисний рівно тим, чим дратує: гра не пробачає зайвого пробілу.

Спершу — чити

У новому світі треба поставити галочку «Дозволити чити» при створенні. Якщо світ уже створено, у Java допомагає відкриття світу для мережі з дозволом читів — до перезаходу. У Bedrock перемикач лежить у налаштуваннях світу й доступний у будь-який момент, але вмикання читів вимикає досягнення.

На сервері все інакше: там потрібні права оператора, і видає їх власник командою /op. Через це діти, які пробують команди на чужому сервері, бачать відмову й вирішують, що помилилися в написанні.

Координати: без них половина команд марна

У Java координати показує клавіша F3, у Bedrock їх вмикають у налаштуваннях світу. Три числа — X, Y, Z, де Y це висота. Саме Y посередині, і саме його плутають найчастіше.

Замість точних чисел можна писати відносні з тильдою: ~ ~5 ~ означає «тут же, але на п'ять блоків вище». Це рятує від постійного підглядання в координати й працює в обох версіях гри.

Чотирнадцять команд, якими користуються постійно

Базовий набір
КомандаЩо робить
/gamemode creativeтворчий режим; також survival, adventure, spectator
/tp @s 100 70 200телепорт до координат
/give @p diamond 64видати предмет і кількість
/time set dayранок; також night, noon, midnight
/weather clearрозігнати дощ; також rain, thunder
/difficulty peacefulприбрати ворожих мобів
/gamerule keepInventory trueне губити речі після смерті
/gamerule doDaylightCycle falseзупинити час
/setblock 10 70 10 stoneпоставити блок у точці
/fill 0 70 0 10 70 10 glassзаповнити область блоками
/summon cowстворити істоту поряд
/kill @e[type=zombie]прибрати всіх зомбі
/xp add @p 100додати досвід
/clear @pочистити інвентар

Найкорисніша з них довгий час лишається непоміченою — це /fill. Вона ставить тисячі блоків за мить, і саме з неї починається розуміння, що будувати можна не руками. Обмеження на кількість блоків за один виклик існує, і коли діти намагаються залити пів світу каменем, гра відмовляє.

Селектори: @p, @a, @s, @e, @r

Замість імені гравця зручніше писати селектор. @p — найближчий гравець, @a — усі, @s — той, хто виконує команду, @e — будь-які сутності, включно з мобами й предметами, @r — випадковий.

У квадратних дужках додаються уточнення: @e[type=cow] вибере лише корів, @a[distance=..10] — гравців у радіусі десяти блоків, @e[limit=1] обмежить вибір одним. Уточнення комбінуються через кому, і саме тут починається справжня гнучкість команд.

Саме тут ховається найчастіша неприємність. Команда /kill @e без уточнення прибирає геть усе разом із самим гравцем. Писати її варто тільки з типом у дужках.

На занятті ми спеціально даємо дітям помилитися з координатами й телепортуватися під землю. Виправляється це тим самим /tp, зате після такого жоден не плутає порядок X, Y, Z: Y — це висота, і вона посередині. Пояснення словами такого ефекту не дає.

Командні блоки: місток до програмування

Команду, написану в чат, можна покласти всередину командного блока — його видають через /give @p command_block. Далі починається найцікавіше: блоки спрацьовують від сигналу редстоуну, ланцюжком, за умовою.

Три режими командного блока — «імпульс», «ланцюг» і «повтор» — це вже справжня логіка виконання. Ланцюг спрацьовує після попереднього, повтор виконується щотік. Дитина, яка зібрала таку конструкцію, фактично написала програму, просто без жодного рядка коду.

Чотири помилки в написанні, які повторюються

  • Велика літера в назві блока. Гра чекає stone, а не Stone: усі внутрішні імена пишуться малими літерами з підкресленням замість пробілу — oak_planks, iron_sword.
  • Пробіл у назві. «Dirt Block» — це назва з гри, внутрішнє ім'я інше. Підглянути справжнє можна тим самим F3 у Java, навівши приціл на блок.
  • Кількість більша за стак. /give @p diamond 500 у Java видасть кілька стаків, а в Bedrock відмовиться — обмеження різні.
  • Зайва скісна риска. У чаті команда починається з одного знака, а в командному блоці його писати не треба взагалі.

Коли однієї команди замало

Команда /execute дозволяє виконати іншу команду від імені когось або в іншому місці. Запис /execute as @a run give @s apple видасть яблуко кожному гравцеві, а не тільки найближчому. Звучить складно, але саме з неї починаються справжні ігрові механіки на картах.

Дітям цю команду ми показуємо не одразу. Спершу має закріпитися звичка до селекторів і координат — інакше execute перетворюється на набір символів, які треба списати з дошки.

Java і Bedrock: чому підказка не працює

Версії відрізняються написанням, а не набором можливостей. У Bedrock режим можна скоротити до /gamemode c, у Java — ні. Ефекти в Java видаються через /effect give, у Bedrock — через /effect без додаткового слова. Назви блоків у Java пишуться з префіксом minecraft:, який у Bedrock зазвичай не потрібен.

Тому перше питання, коли команда «не працює», — не про помилку в написанні, а про те, яка це взагалі версія гри. Другий спосіб перевірити себе простіший: гра підсвічує частину команди червоним ще до натискання Enter, а в Java показує підказку з очікуваним аргументом.

Перед експериментами варто зберегтися

Команди міняють світ без запитань і без кнопки скасування. Випадковий /fill із переплутаними координатами перетворює будинок на скло за мить, і повернути його можна лише з копії.

У Java копія світу лежить у теці saves, і достатньо скопіювати потрібну теку до початку дослідів. У Bedrock світ експортується в окремий файл через меню редагування. Звичка робити копію перед великою командою — те, чого в іграх зазвичай не вчать, а в роботі з кодом вона знадобиться постійно.

Окремо варто знати межі. Командою не можна змінити правила генерації світу заднім числом, не можна видати предмет, якого немає у версії гри, і не можна повернути блок, зруйнований тридцять команд тому. Усе інше в межах світу — можна.

Від команд до коду

На курсі Minecraft для 10–14 років команди — не самоціль, а місток. Спочатку дитина пише їх у чат руками, потім ховає ту саму команду в командний блок, а далі з'ясовується, що блоки можна пов'язати в послідовність із умовами.

Молодша група 8–10 років зупиняється на цьому рівні, і цього цілком достатньо. Старші йдуть далі — до Python, який керує світом ззовні. Чим саме відрізняються ці два шляхи, ми розбирали в матеріалі Minecraft чи Python: у чому різниця.