Discord
Wiki

Command Blocki w Minecraft

Command Blocki w Minecraft

Command block to specjalny blok, który wykonuje komendy bez wpisywania ich w czat. Nie zdobędziesz go w survivalu - dostępny jest wyłącznie przez komendę /give lub tryb kreatywny z włączonymi cheatami. Trzy typy command blockow (Impulse, Chain, Repeat) pozwalają budować od prostych teleporterow po całkowicie zautomatyzowane mini-gry. Ten przewodnik ogarnia wszystkie typy, tryby i ustawienia, a potem przechodzi do praktycznych projektów.

1. Impulse Command Block (pomarańczowy)

Impulse Command Block ma pomarańczowy kolor i jest domyślnym typem, który dostajesz po wpisaniu /give @s command_block. Wykonuje komendę dokładnie raz po otrzymaniu sygnału redstone (lub raz po ustawieniu, jeśli jest w trybie Always Active).

Typowe zastosowania Impulse Command Blocka:

  • Jednorazowe akcje - teleportacja gracza, zmiana pory dnia, nadanie przedmiotu. Naciskasz przycisk, komenda się wykonuje, gotowe.
  • Startery łańcuchów - Impulse Block może być pierwszym blokiem w łańcuchu, który uruchamia sekwencje Chain Command Blockow (o nich za chwile).
  • Systemy z przyciskami i plytkami naciskowymi - gracz wchodzi na płytkę, komenda się odpala. Prosty mechanizm, duże możliwości.

Przyklad: jednorazowa teleportacja

/tp @p 100 65 200

Po podlaczeniu przycisku do Impulse Command Blocka, najbliższy gracz zostanie przeniesiony na koordynaty X:100, Y:65, Z:200.

Wskazówka: Impulse Block z plytka naciskowa (Pressure Plate) to najprostszy sposób na zrobienie teleportera. Postaw command block pod ziemia, płytkę na powierzchni i gotowe - gracz wchodzi, zostaje przeniesiony. Więcej o tym w naszym dziale projektów.

2. Chain Command Block (zielony)

Chain Command Block ma zielony kolor i wykonuje komendę tylko wtedy, gdy command block wskazujący na niego (strzałka na teksturze) zakończył swoje zadanie. Nie potrzebuje osobnego sygnału redstone - wystarczy, ze poprzedni blok w łańcuchu się wykonal.

Chain Block to klucz do tworzenia sekwencji komend. Jeden Impulse Block uruchamia łańcuch, a Chain Blocki wykonują się kolejno, jeden po drugim, w ramach tego samego ticku gry (0,05 sekundy). Możesz ustawić ich dowolna ilość w rzedzie.

Zasady działania Chain Command Blockow:

  • Kierunek ma znaczenie - strzałka na teksturze Chain Blocka musi wskazywać kierunek, w którym łańcuch się kontynuuje. Blok A strzałka w prawo, Blok B obok z prawej strzałka w prawo, Blok C dalej w prawo - to poprawny lancuch.
  • Musisz ustawić Always Active - Chain Blocki powinny być w trybie Always Active, żeby reagowaly na poprzedni blok. W trybie Needs Redstone każdy z nich potrzebowalby osobnego sygnału, co mija się z celem.
  • Pierwszy blok nie może być Chain - łańcuch musi zaczynać się od Impulse lub Repeat Command Blocka.

Przyklad: łańcuch powitania gracza

Blok 1 (Impulse): /title @p title "Witaj!"

Blok 2 (Chain): /title @p subtitle "Masz 5 minut na zadanie"

Blok 3 (Chain): /effect give @p speed 300 1

Jedno naciśnięcie przycisku - gracz widzi tytuł, podtytuł i dostaje efekt szybkości. Trzy komendy, jeden sygnal.

Dlaczego Chain, a nie trzy Impulse Blocki?

Możesz podłączyć redstone do trzech oddzielnych Impulse Blockow - tez zadzialaja. Problem polega na tym, ze kolejność wykonania nie jest gwarantowana. Chain Blocki wykonują się zawsze w kolejności łańcucha, co jest kluczowe, gdy komenda nr 2 zależy od wyniku komendy nr 1. Poza tym łańcuch jest czystszy i łatwiejszy do debugowania. Więcej o składni komend znajdziesz w naszej encyklopedii komend.

3. Repeat Command Block (fioletowy)

Repeat Command Block ma fioletowy kolor i wykonuje komendę 20 razy na sekundę (raz na tick) tak długo, jak otrzymuje sygnał redstone (lub cały czas, jeśli jest w trybie Always Active). To najpotężniejszy typ command blocka, ale tez najłatwiej nim cos zepsuc.

Zastosowania Repeat Command Blocka:

  • Ciagle efekty - utrzymywanie efektu na graczu, sprawdzanie warunków, aktualizowanie scoreboardu. Repeat Block robi to non-stop.
  • Detekcja gracza - sprawdzanie, czy gracz wszedł w konkretny obszar, czy ma dany przedmiot, czy osiągnął wynik. Działa jak czujnik, który skanuje 20 razy na sekunde.
  • Systemy gry - timery, odliczanie, dynamiczne bariery, strefy PVP. Wszystko, co wymaga ciągłego monitorowania świata.

Przyklad: strefa leczenia

/effect give @a[x=100,y=65,z=200,distance=..5] regeneration 1 2 true

Repeat Block z ta komenda daje regeneracje każdemu graczowi w promieniu 5 bloków od punktu 100, 65, 200. Efekt odswierza się co tick, więc gracz jest leczony, dopóki stoi w strefie.

Wskazówka: Repeat Block z trybem Always Active zaczyna działać natychmiast po postawieniu i nie da się go wyłączyć przyciskiem. Jeśli chcesz mieć kontrole nad tym, kiedy działa, używaj trybu Needs Redstone z dźwignia (Lever). Przerzucasz dzwignie - działa. Przerzucasz z powrotem - stop. Więcej o interakcji command blockow z redstone'em znajdziesz w dedykowanym poradniku.

4. Tryb warunkowy (Conditional)

Każdy command block - niezależnie od typu - może być ustawiony jako Conditional lub Unconditional. Przełączasz to prawym przyciskiem myszy w interfejsie bloku.

Unconditional (domyślny) - blok wykonuje komendę zawsze, gdy dostanie sygnał (lub gdy przyjdzie jego kolej w łańcuchu).

Conditional - blok wykonuje komendę tylko wtedy, gdy command block za nim (ten, który na niego wskazuje) zakończył się sukcesem. To odpowiednik instrukcji "if" w programowaniu.

Sukces komendy zależy od komendy samej w sobie. Na przykład /testfor @a[tag=vip] kończy się sukcesem, jeśli w grze jest co najmniej jeden gracz z tagiem "vip", a porazka, jeśli takiego gracza nie ma. Chain Block z trybem Conditional po nim wykona się tylko wtedy, gdy VIP jest online.

Przyklad: VIP-owski powitanie

Blok 1 (Repeat, Unconditional): /execute if entity @a[tag=vip,x=0,y=65,z=0,distance=..3]

Blok 2 (Chain, Conditional): /title @a[tag=vip,x=0,y=65,z=0,distance=..3] actionbar "Witaj, VIP!"

Pierwszy blok sprawdza, czy VIP jest w zasiegu. Jeśli tak (sukces), drugi blok wyświetla mu wiadomosc. Jeśli nie ma VIP-a, drugi blok się nie wykonuje. Zero błędu, zero spamu w konsoli.

Kiedy używać Conditional?

Używaj Conditional zawsze, gdy jedna komenda zależy od wyniku innej. Klasyczne przypadki: sprawdzenie, czy gracz ma przedmiot, zanim dostanie nagrodę; sprawdzenie, czy boss został pokonany, zanim otworza się drzwi; sprawdzenie, czy timer dobiegl końca, zanim zakończy się runda. Bez tego trybu musisz budować skomplikowane obwody redstone, żeby osiągnąć ten sam efekt.

5. Sygnały redstone - Needs Redstone vs Always Active

Drugie ustawienie w interfejsie command blocka dotyczy źródła sygnalu:

Needs Redstone (domyślny) - blok wymaga sygnału redstone, żeby się uruchomic. Przycisk, dźwignia, plytka naciskowa, obwód redstone - cokolwiek, co generuje sygnal. Impulse Block wykona się raz na sygnał, Repeat Block będzie się powtarzal, dopóki sygnał trwa.

Always Active - blok nie potrzebuje redstone'a. Impulse Block wykona się natychmiast po zamknięciu interfejsu. Repeat Block zacznie powtarzać komendę od razu i nie przestanie. Chain Block będzie czekał na swoja kolej w łańcuchu bez dodatkowego zasilania.

Dobór trybu zależy od zastosowania:

  • Teleporter z przyciskiem - Impulse + Needs Redstone. Gracz naciska, teleportuje sie.
  • Łańcuch komend - pierwszy blok Impulse/Repeat z własnym trybem, Chain Blocki na Always Active.
  • Ciagle monitorowanie - Repeat + Always Active. Sprawdzanie warunków non-stop.
  • Wlaczalny system - Repeat + Needs Redstone + dzwignia. Masz kontrole nad tym, kiedy system pracuje.
Wskazówka: W mapach przygodowych i mini-grach zostawiaj systemy na Needs Redstone z dzwignia. Dzięki temu możesz wyłączyć cały system, kiedy go debugujesz, zamiast wyciągać command blocki. Oszczędza nerwy przy złożonych konstrukcjach. Więcej o redstone w architekturze znajdziesz w redstone w budowlach.

6. Łańcuchy command blockow

Łańcuch (chain) to seria command blockow połączonych kierunkiem - strzałka każdego bloku wskazuje na następny w kolejnosci. Jeden sygnał na początku łańcucha uruchamia cała sekwencje w jednym ticku (0,05 sekundy). Gracz nie zauważy opóźnienia między komendami.

Budowa łańcucha krok po kroku

  1. Postaw Impulse Command Block (lub Repeat, jeśli chcesz ciągle powtarzanie) - to starter lancucha. Ustaw tryb Needs Redstone i podłącz przycisk.
  2. Postaw Chain Command Block obok startera - strzałka Chain Blocka musi wskazywać na następny blok (czyli "od startera w dal"). Ustaw tryb Always Active.
  3. Postaw kolejne Chain Blocki w rzędzie, każdy z Always Active. Strzałki musza tworzyć ciąg - jeśli jeden blok wskazuje w prawo, następny musi być po prawej.
  4. Wpisz komendy w każdy blok po kolei. Pamietaj: kolejność wykonania = kolejność w lancuchu.
  5. Nacisij przycisk. Cały łańcuch wykona się w jednym ticku.
Maksymalna długość łańcucha

W Java Edition domyślny limit to 65 536 command blockow w jednym łańcuchu (ustawienie maxCommandChainLength w gamerules). W Bedrock Edition limit wynosi 10 000. W praktyce łańcuchy dłuższe niż 50-100 bloków sa rzadkością - jeśli potrzebujesz więcej, prawdopodobnie lepiej użyć data packow z funkcjami (.mcfunction).

Zakręty w łańcuchu

Łańcuch nie musi być prosty. Możesz skrecac - wystarczy, ze strzałka każdego bloku wskazuje na następny. Praktyczny wzorzec to "waz" (serpentyna): rząd w prawo, jeden blok w dół/górę, rząd w lewo, jeden blok w dół/górę itd. Pozwala to zmieścić długi łańcuch w małej przestrzeni.

Wskazówka: Nazywaj command blocki. W polu "Hover Note" (albo "Custom Name" na Bedrock) wpisz krotki opis, co robi dany blok. Przy łańcuchach 20+ bloków to jedyny sposób, żeby się nie pogubic. Organizacja to polowa sukcesu w pracy z command blockami.

7. Porównanie typów command blockow

Cecha Impulse (pomarańczowy) Chain (zielony) Repeat (fioletowy)
Kolor Pomarańczowy Zielony Fioletowy
Wykonanie Raz na sygnał Raz, po poprzednim bloku 20 razy/s (co tick)
Wymaga redstone? Tak (domyślnie) Nie (ustaw Always Active) Zalecana dźwignia
Typowe użycie Starter łańcucha, jednorazowe akcje Kolejne kroki w łańcuchu Ciagle monitorowanie, timery
Może być Conditional? Tak Tak Tak
Komenda /give /give @s command_block /give @s chain_command_block /give @s repeating_command_block

Dalsze rozdziały

Znasz już typy command blockow i ich ustawienia. Czas przejść do praktyki:

Powiązane poradniki

Komentarze