Работа с командными блоками

Подробный разбор: как добыть командный блок, чем отличаются три типа, как настраивать NBT, направление, режим и как строить из них рабочие схемы.

1. Что такое командный блок

Командный блок — блок, который выполняет заданную команду, когда его активируют (сигналом редстоуна, кнопкой, давлением или соседним командным блоком). Командные блоки доступны только в творческом режиме и только игрокам с правами оператора.

Он невидим в Survival намеренно: командный блок может исполнять любые команды, включая /summon, /give, /tp, /setblock, /execute.

Включить командные блоки в настройках мира: «Разрешить читы» → Command Blocks = ON, либо на сервере в server.properties → enable-command-blocks=true.

2. Как получить командный блок

Через /give себе или другому игроку:

/give @p command_block
/give @p command_block 10
/give Alex minecraft:command_block

Есть три варианта блока, которые даются разными командами:

БлокКоманда / IDИконка
Импульсныйcommand_blockОранжевый
Цепнойchain_command_blockГолубой
Повторяющийсяrepeating_command_blockФиолетовый
/give @p chain_command_block
/give @p repeating_command_block

3. Три типа блока

🔸 Импульсный (Impulse)

Выполняет команду один раз при активации. Даёт вспышку сигнала редстоуна, разной длины. Классический «нажать — получил результат».

🔹 Цепной (Chain)

Активируется только от другого командного блока (не от редстоуна). Нужен для построения последовательностей: команда за командой.

🔺 Повторяющийся (Repeating)

Выполняет команду постоянно, каждый игровой тик, пока активирован. Идеален для «детекторов»: например, следить за положением игрока.

В реальной схеме типы комбинируют: повторяющийся проверяет условие → пускает сигнал в цепочку → цепочка выполняет действия.

4. Настройки и режимы

Кликните ПКМ по командному блоку, чтобы открыть его интерфейс.

Поле ввода команды

В верхней строке вводится команда (без косой черты / — её добавлять не нужно, но и с ней блок тоже сработает).

Режим условий

Направление стрелки

Стрелка на гранях блока показывает, в какую сторону он «смотрит». Для цепных блоков критично: сигнал идёт от блока к блоку через стрелку.

Режим «Нужен ли сигнал»

Опция «Always Active (Всегда активен)» у повторяющихся и цепных блоков заставляет их работать постоянно, без сигнала редстоуна.

5. Как активировать блок

СпособСтатус
Краткая вспышка редстоуна (кнопка, нажимная пластина)OK — импульсный
Постоянный редстоун (факел, повторитель)OK
Соседний командный блок (только для цепных)OK
Обычный блок «рядом» без питанияЗависит от режима

Условие Conditional для блока смотрит на блок позади (по направлению стрелки): если тот НЕ выполнился — текущий не выполнится.

6. NBT и направление блока

Побочный, но полезный способ создавать командные блоки с заранее прописанной командой — через /setblock или /data с NBT-тегами.

/setblock ~ ~1 ~ minecraft:command_block{Facing:1,Command:"say Привет из блока!"} replace

Популярные NBT-поля командного блока:

ПолеЗначениеОписание
CommandстрокаСама команда (без /)
Facing0–5Направление (0 вниз, 1 вверх, 2 север, 3 юг, 4 запад, 5 восток)
TrackOutput0/11 — показывать вывод команды
auto0/11 — «Always Active», работать всегда
Conditional0/11 — режим «с условием»
customnameстрокаПодпись блока

Направление Facing для цепных блоков определяет поток сигнала — всегда выставляйте стрелку от источника к следующему блоку.

7. Типовые схемы

Схема «Нажатие → последовательность»

Кнопка → Импульсный → цепочка → цепочка. Каждый цепной блок выполняется после предыдущего.

# Блок 1 (импульс, запуск)
say Ивент начался!
# Блок 2 (цепь)
tp @a[m=adventure] 0 65 0
# Блок 3 (цепь)
title @a title {"text":"Удачи!","color":"green"}

Разместите их в ряд с направлением стрелок друг на друга: стрелка блока 1 указывает на блок 2, у блока 2 — на блок 3.

Схема «Постоянный детектор»

Повторяющийся блок (Always Active) проверяет позицию игрока, и при совпадении пускает команду.

# Повторяющийся (всегда активен)
execute at @a[x=10,y=64,z=20,distance=..2] run say Кто-то в точке финиша!
# Цепной
scoreboard players add @p wins 1

Схема «Таймер обратного отсчёта»

Датапак или повторяющийся блок со скорбордом тиков. (Детали счётчиков — на странице Датапаки.)

# Повторяющийся (всегда активен) — обратный отсчёт 10 сек
scoreboard players add global timer 1
execute as @a if score global timer matches 50 run title @a title {"text":"Половина!"}
execute if score global timer matches 200 run function myevent:finish

Схема «Ловушка при входе»

Нажимная пластина активирует командный блок, который закрывает дверь и призывает моба.

# Импульс (активируется пластиной)
setblock ~ ~1 ~ iron_door[facing=north,half=lower,open=false] replace
summon zombie ~ ~1 ~ {CustomName:'{"text":"Страж"}'}
title @p title {"text":"Выхода нет!","color":"dark_red"}

Схема «Паркур с чекпоинтами»

Каждое касание чекпоинта записывает точку возврата через тег или скорборд.

# Повторяющийся: если игрок упал ниже, вернуть на чекпоинт
execute as @a at @s if entity @s[tag=cp2,y=-10..] run tp @s 100 80 50

# Импульс на пластине чекпоинта 2
tag @p add cp2

8. Оптимизация и частые ошибки

Частые ошибки

Повторяющиеся блоки с тяжёлым /execute по всем сущностям могут грузить сервер. Оптимизируйте выборку: задавайте x,y,z,distance и конкретные типы (@e[type=player,...]).

Как отлаживать

Смотрите сообщение, которое выводит блок (под полем ввода), и включите опцию «Show Output». Если команда даёт ошибку — она появится там.

# Проверить, существует ли блок и его команда
/data get block 10 64 20 Command