Minepax Chest LogoMinepax.com
블로그로 돌아가기

마인크래프트 고급 명령어 가이드: 구문, 대상 선택자, 그리고 명령어 블록

Minepax.com 팀2026년 6월 25일
마인크래프트 고급 명령어 가이드: 구문, 대상 선택자, 그리고 명령어 블록

마인크래프트 고급 명령어 가이드: 구문, 대상 선택자, 그리고 명령어 블록

탈출맵 제작자, 서버 관리자, 그리고 기술적인 자동화 매니아들에게 마인크래프트 명령어(치트라고도 불리는)는 사실 게임 내에 내장된 간이 프로그래밍 언어와 같습니다. 명령어를 이용하면 날씨를 바꾸고, 인벤토리를 조작하고, 전설적인 속성을 지닌 맞춤형 아이템을 소환하며, 명령어 블록(Command Block)을 사용해 완전히 새로운 커스텀 게임 메커니즘을 창조할 수 있습니다.

하지만 단순히 /gamemode creative 같은 간단한 명령어를 넘어 복잡한 데이터 조작 및 NBT 명령어 단계로 넘어가면 마인크래프트의 구문은 극도로 엄격해집니다. 따옴표나 대괄호 하나만 빠뜨려도 전체 명령어가 완전히 무효화됩니다. 이 종합 가이드에서는 마인크래프트 명령어 구문의 내부 작동 방식, 게임에서 사용하는 JSON 데이터 구조, 그리고 채팅창이나 명령어 블록에 스크립트를 작성할 때의 오류를 방지하는 방법에 대해 자세히 알아보겠습니다.


1. 명령어 작성 시 겪는 좌절감과 구문 오류

채팅 콘솔이나 명령어 블록 체인에 복잡한 명령어를 직접 입력하는 과정은 흔히 좌절감을 줍니다:

  • 보이지 않는 오류: 명령어가 잘못되었을 때 게임 화면에 빨간색 표시기가 뜨지만 기본 구문 오류 메시지는 매우 모호합니다. 200자가 넘는 명령어에서 중첩된 15개의 대괄호 중 어떤 것을 닫지 않았는지 알려주지 않고 단지 "구분 기호가 필요합니다"라고만 표시하는 것은 전혀 도움이 되지 않습니다.
  • 버전별 차이점: 명령어 형식은 업데이트에 따라 크게 변경됩니다(예: 숫자 ID에서 문자 ID로의 전환, 버전 1.20.5+부터 아이템 컴포넌트 도입으로 인한 아이템 데이터 구조의 전면 개편). 현재 게임에서 옛날 버전의 명령어를 사용하면 즉시 오류가 발생합니다.
  • JSON 문자 이스케이프: 맞춤형 책, 텍스트가 서식화된 표지판, 색상 이름이 들어간 무기를 만들려면 명령어 태그 내에 JSON 문자열을 중첩해야 합니다. 이를 위해서는 복잡한 큰따옴표 이스케이프(예: \"text\")가 필요하여, 간단한 한 줄짜리 텍스트를 읽기 힘들고 오류가 나기 쉬운 문자 수프로 만들어 버립니다.

2. 수동 방식: 마인크래프트 명령어의 해부학

명령어를 수동으로 마스터하려면 이를 지탱하는 세 가지 축인 대상 선택자, 인수 필터, 그리고 NBT/JSON 컴포넌트를 이해해야 합니다.

1. 대상 선택자 (Target Selectors)

선택자는 명령어가 수행될 대상을 정의합니다. 플레이어의 정확한 닉네임을 입력하는 대신 전역 변수를 사용합니다:

  • @p: 가장 가까운 플레이어를 선택합니다(스폰 장소의 버튼이나 감압판에 유용).
  • @a: 접속 중인 모든 플레이어를 선택합니다(전체 메시지 전송 또는 전체 텔레포트에 적합).
  • @r: 무작위 플레이어 한 명을 선택합니다(확률 기반 미니게임에 적합).
  • @e: 로드된 청크 안의 모든 활성 엔티티를 선택합니다(몬스터, 바닥에 떨어진 아이템, 투사체 포함).
  • @s: 현재 명령어를 실행하고 있는 엔티티 자체를 선택합니다(/execute 명령어에서 주로 사용).

2. 선택자 필터 (조건 인수)

대괄호 [] 안에 필터를 추가하여 기본 선택자를 더 구체화할 수 있습니다. 예를 들어 10블록 반경 내에 있는 양들만 텔레포트하고 싶다면:

@e[type=sheep,distance=..10]

자주 쓰이는 파라미터는 다음과 같습니다:

  • type: 엔티티 ID로 필터링합니다(예: cow, zombie, arrow).
  • distance: 범위를 이용해 거리를 정의합니다. ..10은 최대 10블록, 10..은 10블록 초과, 5..10은 5블록에서 10블록 사이를 의미합니다.
  • limitsort: 반환되는 대상의 수를 제한합니다. limit=1,sort=nearest는 기준을 충족하는 가장 가까운 엔티티 하나만 선택합니다.
  • tag: 엔티티와 연결된 맞춤형 태그로 필터링합니다(/tag 명령어로 추가 가능).

3. 아이템 구조와 NBT (Named Binary Tag)

1.20.4 버전까지는 NBT 형식을 사용하여 명령어 구문 내에서 아이템에 메타데이터를 직접 추가할 수 있었습니다:

/give @p minecraft:diamond_sword{Enchantments:[{id:\"minecraft:sharpness\",lvl:5s}]} 1

마인크래프트의 최신 버전에서는 성능 향상을 위해 이 구문이 아이템 컴포넌트를 사용하도록 개편되었습니다. 이제 데이터는 아이템 ID 뒤에 중괄호가 아닌 대괄호로 구분되어 선언됩니다:

/give @p minecraft:diamond_sword[enchantments={levels:{\"minecraft:sharpness\":5}}] 1

여러 에디션과 버전에 걸쳐 이러한 구문 변화를 익히고 추적하려면 위키나 업데이트 노트를 끊임없이 검색해야 합니다.


3. 스마트한 솔루션: Minepax 명령어 생성기

마인크래프트 키보드로 중첩된 NBT 태그를 직접 입력하거나 복잡한 JSON 형식을 맞추는 것은 비효율적이고 지루한 작업입니다. 가장 좋은 대안은 코드를 오류 없이 빌드해 주는 외부의 그래픽 인터페이스를 사용하는 것입니다.

Minepax 명령어 생성기/give, /summon, /effect, /teleport 명령어를 시각적이고 직관적으로 생성해 줍니다.

생성기로 할 수 있는 작업:

  • 맞춤형 아이템 제작: 게임의 기본 한계를 넘어선 마법 부여(예: 날카로움 10 레벨)를 추가하고, 속도나 체력 등의 능력치를 변경하며, 색상 이름과 맞춤형 설명을 설정할 수 있습니다.
  • 맞춤형 몹 소환: 네더라이트 풀세트 방어구를 입고 닭을 탄 좀비나 영구적인 물약 효과 및 특정 면역을 가진 몬스터 소환을 구성할 수 있습니다.
  • 다중 버전 지원: 선택한 게임 버전(클래식 Java, 최신 Java, Bedrock)에 맞추어 명령어를 자동으로 변환해 줍니다.

⌨️ 오류 없는 명령어 작성하기

명령어 블록의 복잡한 구문 때문에 더 이상 고민하지 마세요. 비주얼 생성기를 사용하여 전설적인 아이템, 맞춤형 효과, 복잡한 소환 명령어를 즉시 만들어 보세요!

👉 Minepax 명령어 생성기 사용하기


4. 명령어 블록 엔지니어링을 위한 고급 팁

명령어 블록을 사용하여 대규모 자동화를 구현할 때는 다음의 엔지니어링 개념을 적용하세요:

1. 명령어 블록 종류 이해

  • 반응 (Orange): 레드스톤 신호를 받을 때 명령어를 단 한 번만 실행합니다.
  • 반복 (Purple): 활성화된 동안 매 게임 틱마다(초당 20회) 명령어를 실행합니다. 플레이어의 위치 감지나 지속적인 효과 적용에 탁월합니다.
  • 연쇄 (Green): 자신 바로 뒤에 있는 명령어 블록이 실행을 마친 후에만 명령어를 실행합니다. 이를 통해 단일 게임 틱 내에서 일련의 작업 순서를 완벽하게 제어할 수 있습니다.

2. /execute 명령어의 강력함

/execute 명령어는 마인크래프트 프로그래밍의 핵심 기둥입니다. 이를 통해 명령어가 실행되는 맥락(실행하는 주체, 실행 위치, 특정 조건)을 완전히 제어할 수 있습니다.

사용 예시:

/execute at @a run playsound minecraft:entity.experience_bottle.throw master @s ~ ~ ~

이 명령어는 각 플레이어의 정확한 위치(at @a)에서 경험치 병을 던지는 소리를 발생시키고, 해당 플레이어 본인(master @s)에게 현재 좌표(~ ~ ~)를 기준으로 들리게 합니다.

3. 대형 프로젝트를 위한 데이터 팩의 함수 활용

미니게임을 위해 수백 개의 명령어를 동시에 실행해야 한다면, 맵을 명령어 블록으로 가득 채우지 마세요. 가장 좋은 방법은 함수 파일(.mcfunction 확장자)들로 이루어진 **데이터 팩(Data Pack)**을 만드는 것입니다. 파일의 각 줄은 명령어를 나타내며, 게임에서 네이티브하고 깔끔하게 컴파일되므로 물리적인 레드스톤 회로로 인한 랙 현상을 완벽하게 예방해 줍니다.