Коротко: командний блок — перша в житті дитини «програма»: одна команда, яка виконується сама. З нього починається розуміння того, що комп'ютеру можна не натискати кнопки, а описувати дії заздалегідь.

Серед усіх елементів Minecraft командний блок особливий. Його не збудуєш з матеріалів і не виб'єш киркою, у звичайному інвентарі він теж не лежить. Але саме він відкриває дверцята до програмування, і діти відчувають це з першої хвилини.

Що це таке

Командний блок — блок, у який записують команду. Він отримує сигнал від кнопки, важеля чи редстоуну і виконує записане. Наприклад:

  • /give @p diamond 64 — дає гравцю 64 алмази
  • /tp @p 100 64 200 — телепортує в точку 100, 64, 200
  • /summon creeper ~ ~1 ~ — викликає крипера над гравцем
  • /fill ~-5 ~-1 ~-5 ~5 ~5 ~5 air — стирає все в кубі 11×7×11

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

Як його взагалі отримати

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

Побічний ефект приємний: щоб дійти до командного блоку, дитині доводиться розібратися з режимами гри й налаштуваннями світу. Це вже маленький урок про те, що середовище має свої правила.

Три типи, три концепції

Звичайний (оранжевий). Виконує команду один раз при сигналі. Аналог звичайного рядка коду.

Ланцюговий (зелений). Виконується після попереднього блоку. Тут дитина вперше бачить послідовність команд — основу будь-якого алгоритму.

Повторюваний (фіолетовий). Виконується кожен такт гри, двадцять разів на секунду. Аналог циклу while True.

Трьох типів вистачає, щоб зібрати майже будь-яку механіку. Складне в Minecraft народжується не зі складних елементів, а з їх поєднання — і це теж думка, яку варто проговорити вголос.

Селектори: кому саме адресована команда

Значок @ у команді — це вибір адресата, і саме тут починається перше справжнє програмування.

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

До селектора можна додати умову: @a[distance=..10] — усі гравці ближче десяти блоків. Це вже фільтр вибірки, той самий, що потім зустрінеться в будь-якій мові програмування.

Координати: абсолютні й відносні

Запис 100 64 200 — конкретна точка світу. Запис ~ ~1 ~ — «тут же, але на блок вище». Тильда означає «відносно того, хто виконує команду».

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

Перший проєкт: бойова арена

Один з найпопулярніших перших проєктів на курсі — арена з власними правилами. Командні блоки, які послідовно:

  1. дають гравцям броню і зброю при старті;
  2. оголошують відлік через повідомлення на екрані;
  3. оголошують переможця після закінчення часу;
  4. скидають усе до початкового стану для нового раунду.

Це справжня програма з ініціалізацією, основним циклом і завершенням. Тільки написана блоками — тому зрозуміла навіть наймолодшим на курсі.

Типові помилки початківців

  • Немає сигналу. Блок стоїть, команда написана, але кнопку ніхто не натиснув — найчастіша причина «нічого не працює».
  • Ланцюг дивиться не туди. Ланцюговий блок виконується після того, на кого вказує стрілка; повернутий не в той бік ланцюг мовчить.
  • Повторюваний без умови. Двадцять спрацювань за секунду швидко перетворюють нешкідливу команду на завал з предметів.
  • Зайвий пробіл або кирилиця. Команда виглядає правильною, але гра її не приймає.

Схожі граблі трапляються і в редстоуні — розбір найчастіших зібрано у переліку типових помилок.

Що дитина зробить за перші заняття

  • Двері, які відчиняються самі при наближенні гравця
  • Пастку, що спрацьовує на натискну плиту
  • Привітання в чаті для кожного, хто заходить у світ
  • Кнопку, яка миттєво розчищає майданчик під будівництво
  • Міні-гру з відліком часу й оголошенням переможця

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

Як виглядає заняття

Півтори години, шестеро дітей максимум. Схема заняття така: нове поняття розбирається хвилин за десять, решту часу кожен щось збирає у себе, а фраза «у мене не працює» ловиться того ж дня, а не наступного тижня.

Пропущене відпрацьовується за записом. Групи є і в Zoom з Google Meet, і очні в Дніпрі.

Чому це вже програмування

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

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

Чим командний блок відрізняється від редстоуну

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

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

Від блоків до Python

Учні, які починали з командних блоків, помітно швидше переходять до Python: вони вже мислять алгоритмами, просто в іншому форматі. У Minecraft Education Edition перехід ще плавніший — командні блоки сусідять з Code Builder, і дитина буквально бачить, як блокова команда перетворюється на рядок коду.

Як влаштований цей перехід і що пишуть у перші тижні — у статті про Python у Minecraft.

З якого віку і скільки коштує

Командні блоки ми даємо на сходинці «Minecraft Старт» — це 6–10 років, синтаксис простий, результат миттєвий. До десяти років діти впевнено комбінують кілька блоків у складні схеми й переходять до текстового коду.

Урок іде півтори години, дітей у групі не більше шести. Місяць занять раз на тиждень обійдеться від 1 800 грн, двічі на тиждень — 3 600 грн. Перший урок безкоштовний, і перша команда буде вже на ньому.

Що ще питають про командні блоки

Чи не навчиться дитина «читерити»?
Командний блок працює тільки у своєму світі з увімкненими читами. На чужих серверах він недоступний, тож це інструмент творця, а не спосіб обійти правила.

Чи потрібна Education Edition?
Не обов'язково для першого знайомства, але на курсі зручніша саме вона. Яка версія потрібна на кожній сходинці — розібрано окремо.

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