마인크래프트/명령어/JSON 문법

역사 raw
대문 랜덤 문서 최근 토론
이 문서의 상위 문서: 마인크래프트/명령어

1. 개요2. 참고3. 문법
3.1. JE
3.1.1. 글씨 효과3.1.2. 클릭 이벤트3.1.3. 호버 이벤트
3.2. BE

1. 개요[편집]

마인크래프트의 명령어 JSON 문법을 나열하는 문서이다.

2. 참고[편집]

이 사이트를 참고하는 것을 추천한다. 단, 복사 붙여넣기는 CCL 위반이니 주의하길 바란다.

참고로 이 사이트를 이용해 쉽게 JSON 문법을 이용한 명령어를 만들 수 있다.

3. 문법[편집]


["",{"객체":"내용","다음 객체":"다음 내용",...},{"객체":"내용","다음 객체":"다음 내용",...}]



이 때, 큰따옴표, 중괄호, 반점, 콜론이 하나라도 빠지면 제대로 실행되지 않을 것이다. 내용이 truefalse가 아니면 항상 객체와 내용 양 옆에 큰따옴표를 붙여야 한다는 것을 잊어서는 안 된다.

만약 큰따옴표 안에 큰따옴표나 콜론(:), 역슬래시(\)를 쓰고 싶다면 앞에 역슬래시를 써줘 이스케이프하면 된다.

\uXXXX (유니코드 16진수 숫자 4자리)나 \n, \t 같은 것도 되긴 하지만 제대로 표시되지 않는 경우가 많다.

이 때, 유니코드 16진수 숫자 4자리를 사용할 때는 \uXXXX 자체가 하나의 문자이기 때문에 앞에 역슬래시를 붙여서는 안된다.

입력
결과
옳은 예
"text": "안녕하세요 \u4e16"
틀린 예
"text": "안녕하세요 \\u4e16"
안녕하세요 \u4e16

3.1. JE[편집]


마인크래프트에서 tellraw, title 등의 명령어에서 사용한다.
{"이름":"내용"}의 형식으로 작성한다.

예)빨간색의 hi라는 글자
{"text":"hi","color":"red"}

안녕! 이라는 굵은 글자를 말하고 클릭하면 반가워! 라고 말하는 글자
{"text":"안녕!","bold":true,"clickEvent":{"action":"run_command","value":"/say 반가워!"}}

안녕 난 위키러야!(빨간 글씨)
["",{"text":"안녕 난"},{"text":"위키러야!","color":"red"}]

타이머 표현하기
["",{"text":"남은 시간:"},{"score":{"name":"<개체 이름>","objective":"<분을 나타내는 스코어보드>"}},{"text":":"},{"score":{"name":"<개체 이름>","objective":"<초를 나타내는 스코어보드>"}}]

3.1.1. 글씨 효과[편집]

  • text : 표시할 글자를 나타낸다. @a, @r ,@e 등의 대상 선택 인자는 selector를 사용해야한다. \n을 사용하면 줄바꿈을 할 수 있다.
  • score : 스코어보드에 점수를 표시한다. 형식: {"score":{"name":"점수를 가진 대상","objective":"점수 아이디"}}
  • selector : text에서 사용할 수 없는 대상 선택 인자(@a, @p, @r, @e, @s)를 사용할 수 있다. 형식: {"selector":"대상 선택 인자"}
  • color : 텍스트의 색을 지정한다. 사용 가능한 색은 dark_red, red, gold, yellow, dark_green, green, aqua, dark_aqua, dark_blue, blue, light_purple, dark_purple, white, gray, dark_gray, black 그리고 #RRGGBB이다(1.16~). 형식: {"color":"색깔"}
  • bold : true, false로 설정할 수 있으며, 글씨의 굵음을 설정한다. 형식: {"bold":"논리값"}
  • italic : true, false로 설정할 수 있으며, 글씨의 기울어짐을 설정한다. 형식: {"italic":"논리값"}}
  • underlined : true, false로 설정할 수 있으며, 글씨에 밑줄치는 것을 설정한다. 형식: {"underlined":"논리값"}
  • strikethrough : true, false로 설정할 수 있으며, 글씨에 취소선을 치는것을 설정한다. 형식: {"strikethrough":"논리값"}
  • obfuscated : true, false로 설정할 수 있으며, 글씨를 읽을수 없게 난독화 하는것을 설정한다. 형식: {"obfuscated":"논리값"}

3.1.2. 클릭 이벤트[편집]

클릭시 이벤트가 발생한다.
식 구성 : {"clickEvent":{"action":"이벤트","value":"이벤트 값"}}
  • run_command : 클릭시 이벤트 값에 있는 커맨드를 실행한다.[1]
  • suggest_command : 클릭시 이벤트 값에 있는것이 자동 타이핑 된다.
  • open_url : 클릭시 이벤트 값에 있는 URL에 들어간다.
  • copy_to_clipboard : value에 있는 클립보드에 복사한다.
  • change_page : 클릭시 이벤트 값에 있는 페이지로 이동한다. 책에서만 이용가능하다

3.1.3. 호버 이벤트[편집]

글자에 마우스를 가까이 대면 이벤트가 발생한다.
식 구성 : {"hoverEvent":{"action":"이벤트","value":"이벤트 값"}}
  • show_text : 글자에 마우스를 가까이 대면 이벤트 값에 있는 글자가 뜬다
  • show_item : 글자에 마우스를 가까이 대면 이벤트 값에 있는 아이템의 이름이 뜬다
  • show_entity : 글자에 마우스를 가까이 대면 이벤트 값에 있는 엔티티의 이름이 뜬다
  • show_achievement : 글자에 마우스를 가까이 대면 이벤트 값에 있는 도전과제의 이름이 뜬다.

3.2. BE[편집]

BE의 경우에는 titleraw 명령어에서 JSON 문법을 사용하며, 객체 목록은 JE와 같다. *text *selector *score[2] 등등이 가능해졌지만 여전히 클릭,호버이벤트는 지원을 안하고 있다. 추후 업데이트때 나올가능성도 있다. 단, BE의 경우 JSON 문법에 다음과 같은 처리를 해야 한다.

{"rawtext":[JSON]}
[1] 256자 까지만 된다. 클릭시 레드스톤 블럭을 특정 좌표에 설치하고 명령을 실행하면 된다.[2] 베타 1.16.210.53에서 띄어쓰기한 개체 이름이 인식이 안되는 버그가 있다