개인 자료란 (JE)

  서버 커뮤니티

Profile yusin12 대표칭호 없음

yusin_YT 1e0511f92377434a9f27b5724c29fbe3

Profile

강좌 자바 에디션(JE) 커맨드 공략

[NEW .2 중급자 강의] JSON문법

2023.12.24 조회 수 255 추천 수 0
게임버전 1.20.x 

다들 메리크리스마뚜!


4. keybind

복습을 잠깐 해봅시다

keybind는 조작키를 띄워주는 JSON문법 친구였습니다.

ex)

{"keybind":"key.attack"}

이렇게 말입니다. 조작법을 바꿔도 key.attack에 바뀐 조작법이 저장되니

좌클릭을 h로 바꿔면 h를 띠워줍니다.


여기서 keybind를 중급자로 대리고온 이유는 단지 암기이기 때문입니다. 초보자편에서도 JSON문법이 외우는거 밖에 없는데

조작법까지 하는건 조금 그렇거 같았습니다.

keybind

key.attack
기본 : 마우스 좌클릭
key.use
기본 : 마우스 우클릭
key.forward기본 : 앞으로 이동
key.left
기본 : 왼쪽으로 이동
key.right기본 :오른쪽으로 이동
key.back기본 : 뒤로 이동
key.jump기본 : 점프
key.sneak
기본 : 웅크리기
key.inventory
기본 : 인벤토리 열기
key.drop
기본 : 아이템 버리기
key.chat
기본 : 채팅 열기

정도가 있습니다.


5. nbt

nbt는 어떤한 개체에 저장되어있는 값을 불러오는 친구였습니다.

ex)

{"storage/block/entity":"namespace/X Y Z/선택인자","nbt":"path"}

이렇게 말이죠!


이 친구를 중급자편에 끌고온 이유는 storage때문이였습니다. storage는 nbt들이 모여있는걸 storage라고 합니다.

이렇게 여러가지 nbt들이 하나로 묶어져 있는걸 storage라고 합니다.


6. clickEvent

클릭 이벤트를 글자를 클릭 했을 때 나오는 이벤트였습니다.

ex)

{"text":"클릭 해봐","clickEvent":{"action":"run_command","value":"/give @s diamond 1"}}

[사진X]

이렇게 말이죠!


이 친구를 중급자로 끌고온 이유는 생각보다 규칙이 많아서입니다.

일단 쓰기는 귀찮지만 이해가 안될정도의 친구를 아닙니다.

다만 꾀나 이게 왜 안되지?하는 일들이 많이 일어납니다.


run_command

run_command는 클릭 했을 때 value값에 있는 것을 채팅창에 쓰고 엔터까지 누르는거였습니다.

근데 클릭한 플레이어가 쓰고 엔터 누르는거기 때문에

1. gamemode creative같은 op가 있어야하는 명령어를 썼을 때 플레이어가 op가 없다면 작동되지 않습니다.


2. say,teammsg같은 일부 명령어들은 안된다.


3. JSON문법에는 큰 따옴표 안에 큰 따옴표를 쓰지 못한다.

예를 들어보자면..

/tellraw @a {"text":"클릭 해봐","clickEvent":{"action":"run_command","value":"/tellraw @a [{"selector":"@s"}]"}}

이렇게 " " " "이렇게 큰 따옴표 안에 큰 따옴표를 들어가게 할 수 없습니다.

그럼 위에 같이 클릭했을 때 selector를 하고 싶다면 어떡해 해야 할까요?

\"\" 을 쓰면됩니다.

/tellraw @a {"text":"클릭 해봐","clickEvent":{"action":"run_command","value":"/tellraw @a [{\"selector\":\"@s\"}]"}}

이렇게요.


change_page

체인지 페이지는 해당 페이지로 옮기는 명령어입니다.

이 명령어는 책에서만 통하며, 책 nbt에다가 입력해줘야합니다.


7. hoverEvent

호버 이벤트는 마우스를 가까이 가져가면 띠우는 글자였습니다.

ex)

{"text":"123","hoverEvent":{"action":"show_text","contents":"응애"}}

[사진 X]

이렇게 말이죠!


show_text

1. value자리에 contents를 넣어야한다.


show_item

1. value자리에 contents를 넣어야한다.


2. "content":"{"id":"minecraft:diamond"}" 식으로 적어야한다.


3. 물론 색도 넣고 다 할 수 있다. 어떡해?

/tellraw @a {"text":"123","hoverEvent":{"action":"show_item","contents":{"id":"minecraft:diamond","tag":"{display:{Name:'{\"text\":\"다이아몬드\",\"color\":\"yellow\"}'}}"}}}}

이렇게!


show_entity

1. value자리에 contents를 넣어야한다.


2. id와 type name을 입력해야한다.

id는 uuid이며

name이 이름이며

type이 id입니다.


8.score

score은 어떤 목표의 이 친구의 점수를 띄워주는 친구였습니다.

ex)

{"score":{"objective":"스코어보드 이름","name":"선택인자"}}

[사진 X]

이렇게 말이죠!


이 친구를 중급자로 뺀 이유는 scoreboard라는 명령어와 합작을 하기 때문이였습니다.


마무리

여기 있는 모든 JSON문법은 아 이런게 있구나 하면서 보시면뎀다!

어차피 본격적으로 명령어를 강의하기 시작하면서 JSON문법을 쓰게되면

쉬울겁니다!


질문은 댓글/쪽지/디코(yusin_12)

1개의 댓글

wilk
2024.05.21

헉 클릭 이벤트 tellraw가 안되는 이유가 역 슬래시를 안해서 였군요ㅜㅜ 넣으니까 바로 해결됐습니다! 감사합니다

뉴스 및 창작물
/files/thumbnails/600/818/003/262x150.crop.jpg?20240622093723

레드스톤

[마크 피아노커버] 에반게리온 잔혹한 천사의 테제

노트블럭전문가

2024-06-22

0

/files/thumbnails/647/816/003/262x150.crop.jpg?20240619112336

건축

숭례문(프리퀄) 2

KHC

2024-06-19

0

/files/thumbnails/308/815/003/262x150.crop.jpg?20240617084353

레드스톤

[피아노커버] 디스코드 - QWER 2

노트블럭전문가

2024-06-17

1

/files/thumbnails/932/812/003/262x150.crop.jpg?20240622110502

업데이트

마인크래프트 1.21 정식 업데이트

학교가기싫다

2024-06-14

1

/files/thumbnails/308/805/003/262x150.crop.jpg?20240605201646

레드스톤

[노트블럭 커버] 팬서비스/mona 【 HoneyWorks 】

노트블럭전문가

2024-06-05

0

/files/thumbnails/288/791/003/262x150.crop.jpg?20240602150002

아티클

《까다로운 시련》 업데이트 날짜 공개 및 정보

학교가기싫다

2024-06-02

0