(a) interaction 박스가 stone_button hitbox 와 겹쳐 있어서 한 번 클릭에
interaction 도 발화하고 stone_button 도 vanilla 클릭으로 인식되어
powered=true 애니메이션이 같이 일어나던 문제. interaction 박스를 버튼
면 바깥쪽으로 한 두께(0.125) 만큼 빼서 ray 가 stone_button 에 닿기
전에 interaction 에서 멈추도록.
south z: 0.0625 → -0.0625, north z: 0.9375 → 1.0625
east x: 0.0625 → -0.0625, west x: 0.9375 → 1.0625
(b) MC 1.20.5+ 부터 text_display.text 는 String 이 아닌 직접 TextComponent
compound. 이전에 String 안에 JSON 을 넣어서 그 JSON 자체가 텍스트로
렌더링되던 문제 (`{"text":"게임시작",...}` 가 그대로 보임). compound
형태 `text:{text:"...",color:"...",font:"..."}` 로 변경.
temp/ 부분 적용 패키지의 btn.mcfunction 과 README 도 동기화.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
v1.0.20 → v1.0.21 부분 적용 가이드
전체 datapack 을 교체하지 않고, 이 폴더의 파일만 덮어쓰면 v1.0.21 과 동일한 상태가 됩니다.
무엇이 바뀌었나
1. repeat/buttons/btn.mcfunction — 버튼이 같이 눌러지던 문제 + 라벨이 JSON 코드로 나오던 문제
(a) 클릭 시 stone_button 도 같이 눌러짐
interaction 박스가 stone_button 의 hitbox 와 정확히 겹쳐 있어서, 한 번
클릭에 interaction 도 발화하고 stone_button 도 vanilla 클릭으로 인식해
powered=true 애니메이션이 같이 일어났습니다. interaction 박스를 버튼
면 바깥쪽으로 한 두께(0.125) 만큼 빼서, 플레이어 ray 가 stone_button 에
닿기 전에 interaction 에서 멈추도록 했습니다.
- south : 깊이 z 중심 0.0625 → -0.0625
- north : 깊이 z 중심 0.9375 → 1.0625
- east : 깊이 x 중심 0.0625 → -0.0625
- west : 깊이 x 중심 0.9375 → 1.0625
(b) 라벨이 {"text":"게임시작",...} JSON 텍스트 그대로 보임
MC 1.20.5+ 부터 text_display 의 text 필드는 String 이 아니라 직접
TextComponent compound 로 저장됩니다. 이전에는 String 안에 JSON 을 넣어서
(text:'{...}') 그 JSON 자체가 텍스트로 렌더링되었습니다. compound 형태
(text:{text:"...",color:"...",font:"..."}) 로 변경.
2. repeat/buttons/btn_prep.mcfunction
v1.0.20 에서 이미 수정됨 (defaults + merge 방식). 변경 없음 — 다만 v1.0.19 이하에서 점프하는 경우 같이 덮어써야 합니다.
적용 방법
서버의 datapack 폴더 (예: world/datapacks/music_quiz/) 기준으로 두 파일을
반드시 덮어쓰세요.
temp/data/mq/function/repeat/buttons/btn.mcfunction
-> <datapack>/data/mq/function/repeat/buttons/btn.mcfunction (덮어쓰기)
temp/data/mq/function/repeat/buttons/btn_prep.mcfunction
-> <datapack>/data/mq/function/repeat/buttons/btn_prep.mcfunction (덮어쓰기)
복사 후 게임 안에서:
/reload
확인
- 버튼을 클릭해도 stone_button 의
powered=true눌림 애니메이션이 발생하지 않아야 합니다 (interaction 만 발화). - 버튼 아래 라벨이
게임시작/정지/소리 테스트등으로 정상 표시 (JSON 텍스트 노출 없음). - 콘솔에 파싱 에러 없음.