한눈에 보기
- 무엇: 스크립트 API 없이 JSON 파일과 함수 파일만으로 애드온(행동 팩·리소스 팩)을 만듭니다. 몹, 제작법(레시피), 아이템 성능, 몹 보상(루트 테이블), 주민 상인 거래, 팀킬 금지, 일정 시간마다 보상, 음악 재생, 시작 화면 로고까지
- 도구: 마우스로 만드는 Tynker(입문) → 애드온 편집기 bridge.(본 실습) → 살펴보기용 VS Code
- 누구: Tynker는 초등 고학년~중학생, bridge 실습은 중·고등학생 (제안)
- 몇 분: 주제 하나당 1
2차시. 영상은 28분 (제안) - 결과물: 내가 만든 .mcaddon 파일, 월드에서 바로 확인하는 새 몹·레시피·상인·타이머
- 스크립트(JavaScript)로 만드는 애드온은 ‘웹소켓·스크립트 API’ 페이지에서 다룹니다

애드온의 구조: 행동 팩과 리소스 팩
- 애드온은 행동 팩(BP, Behavior Pack) = 게임 규칙·행동, 리소스 팩(RP, Resource Pack) = 모양·소리 두 가지로 되어 있습니다
- 팩마다 manifest.json(이름·설명·버전·고유 번호)과 pack_icon.png가 있습니다
- bridge로 만든 ‘abc’ 프로젝트의 폴더(화면에서 옮김):
abc BP (행동 팩) abc RP (리소스 팩)
├─ blocks/ test.json ├─ sounds/
├─ components/ ├─ texts/ en_US.lang, languages.json
├─ entities/ ├─ textures/
├─ functions/ │ ├─ blocks/
├─ loot_tables/ │ ├─ flipbook_textures.json
├─ manifest.json │ ├─ item_texture.json
└─ pack_icon.png │ └─ terrain_texture.json
├─ biomes_client.json, blocks.json, sounds.json
├─ manifest.json
└─ pack_icon.png
- 실습에 따라 items/(아이템), trading/(거래), spawn_rules/ 폴더가 더 생깁니다
- 파일 이름과 경로가 곧 연결입니다. 예: 좀비 보상은 꼭
loot_tables/entities/zombie.json

manifest.json 읽어 보기
- bridge가 만들어 준 행동 팩 manifest(2024년 영상 ‘철검, 공격력 +255’ 화면에서 옮김, 고유 번호는 줄임):
{
"format_version": 2,
"metadata": {
"authors": ["bridge."],
"generated_with": { "bridge": ["2.7.42"], "dash": ["0.11.7"] }
},
"header": {
"name": "pack.name",
"description": "pack.description",
"min_engine_version": [1, 21, 0],
"uuid": "b574128d-…",
"version": [1, 0, 0]
},
"modules": [
{ "type": "data", "uuid": "c00bf718-…", "version": [1, 0, 0] }
],
"dependencies": [
{ "uuid": "93758d16-…", "version": [1, 0, 0] }
]
}
min_engine_version: 이 팩이 돌아가는 가장 낮은 게임 버전.uuid: 팩마다 다른 고유 번호(직접 지어내지 않고 bridge가 만듦)modules의"type": "data"가 행동 팩이라는 뜻(리소스 팩은"resources"),dependencies는 함께 쓰는 짝 팩(리소스 팩)을 가리킵니다(2026-10 공식 문서 「Introduction to Behavior Packs」 기준)

리소스 팩 맛보기: 시작 화면 로고 바꾸기
- ① 텍스트크래프트(textcraft.net)에서 글자(영어)를 넣고 글꼴·크기·모양을 골라 로고 그림을 내려받기
- ② 공유된 로고 폴더(textures, manifest.json, pack_icon.png, sounds.json)에서 textures/ui 의 로고 그림(자막 ‘타이틀 png’ = 바닐라 리소스 팩의
textures/ui/title.png, Mojang bedrock-samples 기준)을 지우고 내 그림으로 바꿔 넣기 - ③ 폴더를 ZIP 파일로 압축 → 확장자
.zip을.mcpack으로 바꾸기(경고창은 ‘예’) - ④ 파일을 마인크래프트로 열기 → 설정 → 글로벌 리소스에서 ‘내 로고’ 활성화
- 되돌리기: 글로벌 리소스에서 비활성화. 다른 로고로 바꾸려면 설정 → 저장 공간 → 리소스 팩에서 옛 로고 팩을 지우고 다시
- 시연은 베드락 에디션 1.20.81. 교육용 에디션에도 설정 → 글로벌 리소스 메뉴가 있으나(아래 ‘교육용 에디션에서 실험 기능 켜기’ 영상), 교육용 시작 화면 로고에도 적용되는지는 수업 전에 교사 PC에서 먼저 시험해 보세요.



가장 쉬운 시작: Tynker로 몹 애드온 만들기
- tynker.com/minecraft → 로그인(설명란: 학생 계정으로) → Create Project → MINECRAFT → 몹(MOB) → Minecraft Win 10 / Pocket Edition 탭에서 판다 고르고 START PROJECT
- ① 외형(리소스 팩): 붓·물통·지우개로 모델을 돌려 가며 칠하기
- ② 행동(행동 팩): 이벤트(EVENTS, 상황) 블록에 매크로(MACROS, 일어날 일) 블록을 붙입니다
after being damaged→make it 200 % bigger than normal(맞으면 두 배로 커짐)when it's night-time→transform into Bat(밤이 되면 박쥐로)- ③ 저장 → Install in Minecraft: PC는 DOWNLOAD NOW, 다른 기기는 tynker.com/get/ 에 코드 입력 → 받은 파일 더블클릭 → 월드 설정에서 리소스 팩·행동 팩 둘 다 활성화
- 자바 에디션 탭으로는 행동 팩을 못 만드는 것 같다고 함. 교육용 에디션에서도 가져와 쓸 수 있다고 말함(화면엔 없음). 2026-10 Tynker 페이지 기준: Windows 10(베드락)·포켓 에디션용 모드·애드온 도구가 있고, 일부는 무료·추가 콘텐츠는 유료 구독입니다. 교육용 에디션 지원은 페이지에 적혀 있지 않습니다.




Tynker 응용: 머리 셋 켈베로스 늑대
- 평소엔 늑대, 맞는 순간 머리 셋 켈베로스로 변해 불덩이를 쏩니다. 길들이면 주인 대신 몬스터를 공격
- Tynker 몹 편집기에서 늑대(wolf)를 고르고, VARIANT 에서 Wolf / Wolf - Angry 두 모습 중 하나를 편집. 모습은 스킨 편집 화면, 행동은 코드 화면
- 화면 속 블록(Wolf - Angry):
on start → act as Wolf
after becoming angry → shoot Large Fireball
when a friend is angry → shoot Large Fireball
after being damaged → move 110 % faster
make it 120 % bigger than normal
after being tamed → attack Monster
shoot Large Fireball
- 수업: 학생이 몹 하나를 골라 ‘이벤트 → 동작’ 표를 먼저 설계하고 블록으로 옮기기 (제안)


bridge. 설치와 첫 설정
- 검색창에 ‘bridge minecraft’ → bridge-core.app (‘The IDE for Minecraft Add-Ons’). 웹에서 바로 열 수도 있지만 오른쪽 위 버튼으로 설치 추천(크롬·엣지)
- 처음 설정 4단계: Install bridge. → bridge. Folder(프로젝트 저장 폴더) → com.mojang Folder(끌어다 놓기, SKIP 가능하지만 연결 추천) → Choose Editor Type
- 편집 방식: Tree Editor(JSON을 몰라도 클릭으로, 초보 추천) / Raw Text(JSON 직접, 자동 완성·검사). 설정에서 언제든 바꿈
- com.mojang 경로(설명란 원문):

bridge. 새 프로젝트 만들기
- New Project → Behavior Pack·Resource Pack 이 기본 선택(Skin Pack, World Template 추가 가능)
- Experimental Gameplay: 게임의 실험 기능과 같은 것. 실습들은 켜지 않습니다
- Project Name(예: abc), Description, Project Prefix(블록·엔티티 이름 앞에 붙는 말, 기본
bridge), Project Author - Project Target Version: 애드온이 돌아가는 최소 버전. 교육용에서도 쓰려면 교육용 에디션 버전보다 낮게(2022년 영상은 1.17.0, 2024년 영상의 manifest는 1.21.0)
- ‘Add pack name/description directly to the manifest’ 를 켜고 CREATE
- com.mojang을 연결했다면 development_behavior_packs / development_resource_packs 에 ‘abc BP’, ‘abc RP’ 가 자동으로 들어가 게임에서 바로 보입니다

bridge. 파일 만들기와 문서 보기
- New File(Create Preset) → Block / Entity / Item / Simple Files(Loot Table, Function, Recipe 등)에서 골라 이름만 넣으면 기본 내용이 채워진 파일이 생깁니다
- 블록 ‘test’ 를 만들고
minecraft:destroy_time(캐는 데 걸리는 시간)을 넣은 모습(텍스트 방식):
{
"format_version": "1.16.0",
"minecraft:block": {
"description": {
"identifier": "bridge:test",
"is_experimental": false
},
"components": {
"minecraft:destroy_time": 5
}
}
}
- 컴포넌트에서 오른쪽 클릭 → View Documentation 으로 그 항목 설명 문서를 엽니다(트리 방식에서 처음엔 0.9를 넣었다가 5로 고침)
- 값의 뜻을 모르면 JSON을 복사해 GPT에 붙여 넣고 물어보기(‘철검, 공격력 +255’ 영상)

바닐라 팩과 VS Code로 살펴보기
- 마인크래프트 크리에이터 문서(설명란 링크) 아래 ‘Tools and Vanilla Packs’ 에 Visual Studio Code, Vanilla Behavior Pack, Vanilla Resource Pack 링크가 있습니다
- 바닐라 팩 = 원래 마인크래프트의 설계 예시. 폴더 구조가 bridge와 같아 그대로 따라 하면 됩니다
- 바꾸고 싶은 부분만 적으면 그것만 적용됩니다(예: 치킨 파일을 전부 다시 적을 필요 없음)
- VS Code: 확장에서 ‘minecraft’ 검색(Mojang Studios의 Minecraft Bedrock Edition Debugger 등) → 파일 > 폴더 열기로 바닐라 팩 폴더를 통째로 불러오기
- 만들 때는 bridge, 살펴볼 때는 VS Code가 편합니다. 영상에서 연 것은 리소스 팩의
entity/chicken.entity.json(외형 정의)


새 제작법(레시피) 만들기
- 새 프로젝트(testRecipe) → New File → Simple Files → Recipe, 파일 이름 ‘다이아’(dia.json). 실험 기능 필요 없음
- 모양이 필요 없는 레시피(철괴 + 금괴 → 에메랄드 10개):
{
"format_version": "1.12",
"minecraft:recipe_shapeless": {
"description": { "identifier": "example:iron_gold_to_emeralds" },
"tags": ["crafting_table"],
"ingredients": [
{ "item": "minecraft:iron_ingot" },
{ "item": "minecraft:gold_ingot" }
],
"result": { "item": "minecraft:emerald", "count": 10 }
}
}
tags의 crafting_table = 제작대에서 만듦. 재료를 더 넣거나count를 바꿔 봅니다

모양이 중요한 레시피
- 3칸 × 3줄
pattern에 기호를 놓고,key에서 기호마다 아이템을 정합니다(빈칸은 띄어쓰기)
{
"format_version": "1.12",
"minecraft:recipe_shaped": {
"description": { "identifier": "example:test_totem" },
"tags": ["crafting_table"],
"pattern": [
" D ",
"DED",
" S "
],
"key": {
"D": { "item": "minecraft:diamond" },
"E": { "item": "minecraft:emerald" },
"S": { "item": "minecraft:stick" }
},
"result": { "item": "minecraft:totem_of_undying", "count": 1 }
}
}
- 월드에서 행동 팩을 켜고 제작대에 패턴대로 놓으면 불사의 토템이 나옵니다
- 토론: ‘밸런스가 안 맞는 조합’을 찾아 고쳐 보기 (제안)


아이템 성능 바꾸기: 힘의 칼·강한 곡괭이
- 시연: 철검처럼 생긴 ‘힘의 칼’(공격력 255)은 일반 몹 한 방, 와덴 두 방, 엔더 드래곤 네 방 정도
- 만들기: New File → Item → Pickaxe(Armor, Axe, Food, Sword 등도 있음) → Image(비우면 기본 그림)·Identifier·Display Name
- items/powerpickaxe.json 에서
minecraft:digger** 의 돌·금속 블록speed를 5 → 255**:
"minecraft:damage": 3,
"minecraft:digger": {
"use_efficiency": true,
"destroy_speeds": [
{
"block": { "tags": "query.any_tag('stone', 'metal', 'iron_pick_diggable')" },
"speed": 255
},
{ "block": "minecraft:ice", "speed": 5 },
{ "block": "minecraft:sandstone", "speed": 5 }
]
}
- 힘의 칼은 같은 방법으로
minecraft:damage를 255로 둔 것(powersword.json). 원문은 영상 01:20 화면이나 설명란의 예시 애드온(customSpecItem)에서 확인 - 마인크래프트를 껐다 다시 켜고 행동 팩이 적용됐는지 확인 → 서바이벌 모드에서 채굴 속도 시험


루트 테이블: 몹 보상 바꾸기
- New File → Simple Files → Loot Table, 폴더
loot_tables/entities/, 이름 zombie → 좀비가 썩은 고기 대신 내가 정한 것을 떨어뜨림 - 경로가 틀리면 연결되지 않습니다. 쓰는 법은 바닐라 행동 팩의
loot_tables/entities/zombie.json을 참고 pools안 묶음마다rolls(몇 번 뽑기) +entries(무엇을):
{
"pools": [
{
"rolls": 1,
"entries": [ { "type": "item", "name": "apple" } ]
},
{
"rolls": { "max": 3, "min": 1 },
"entries": [ { "type": "item", "name": "bread" } ]
}
]
}
- 결과: 사과 1개 + 빵 1~3개. 개수 범위는
rolls의min·max로 정했습니다


루트 테이블: 확률(weight)로 하나 뽑기
- 한 묶음(
rolls: 1) 안에 항목마다weight를 주면 비율대로 하나만 떨어집니다
{
"pools": [
{
"rolls": 1,
"entries": [
{ "type": "item", "name": "apple", "weight": 50 },
{ "type": "item", "name": "bread", "weight": 30 },
{ "type": "item", "name": "golden_apple", "weight": 20 }
]
}
]
}
- 사과 50%, 빵 30%, 황금 사과 20%
- 수학 연계: 여러 번 잡아 나온 횟수를 세어 weight 비율과 비교하기 (제안)
- 더 많은 방법은 설명란의 참고 문서(루트 테이블 소개(공식 문서))와 스티브코딩 블로그 글

새 주민 상인 만들기
- 새 프로젝트(customTrade) → New File → Entity → 주민(Villager) 템플릿(자막 ‘빌리저 MC’, 정확한 이름은 영상 00:37 화면에서 확인) → 표시 이름 ‘트레이더1’
- 생기는 파일:
entities/trader1.json,trading/economy_trades/trader1_good.json · _better.json · _best.json - trader1.json 에는 상인 종류 good·better·best 가 있고, 각각 거래 파일을 가리킵니다:
"good": {
"minecraft:economy_trade_table": {
"display_name": "Good trader1",
"table": "trading/economy_trades/trader1_good.json",
"new_screen": true
}
}
display_name을 한글로 바꿀 수 있습니다(완성 화면: ‘친절한 스티브상인’)- 스폰될 때 종류는
minecraft:entity_spawned의randomize에서weight로 정합니다(기본 5·5·5). good만 나오게 하려면 나머지를 0으로

거래 표(trading) 고치기
- 이 템플릿은 tier가 하나라 경험치와 상관없이 처음부터 모두 판매
{
"tiers": [
{
"groups": [
{
"num_to_select": 5,
"trades": [
{
"max_uses": 16,
"wants": [ { "item": "minecraft:emerald", "quantity": 2 } ],
"gives": [ { "item": "minecraft:sea_pickle" } ]
}
]
}
]
}
]
}
num_to_select: 아래 거래 중 몇 개를 랜덤으로 고를지 /max_uses: 재고 /wants: 내는 것(항목 복사로 추가) /gives: 받는 것gives안"choice": [ … ]는 여러 아이템 중 하나를 랜덤으로 줌(예: yellow_flower, red_flower)- 랜덤을 없애려면
num_to_select수만큼만 거래를 남깁니다


인챈트된 아이템 거래
- 에메랄드 5개 → 날카로움 5 다이아몬드 검. 화면에 보인 부분:
{
"num_to_select": 1,
"trades": [
{
"max_uses": 4,
"wants": [ { "item": "minecraft:emerald", "quantity": 5 } ],
"gives": [
{
"item": "minecraft:diamond_sword",
"functions": [
{
"function": "specific_enchants",
"enchants": [ { "id": "sharpness", "level": 5 } ]
}
]
}
]
}
]
}
- 인챈트를 더 넣으려면 쉼표를 찍고
{ "id": …, "level": … }를 추가. 그 아이템에 맞는 인챈트만 넣습니다(인챈트 이름은 게임에서/enchant @s를 치면 나오는 자동 완성 목록으로 확인) - 월드 설정에서 행동 팩(customTrade)·리소스 팩 활성화, 실험 기능 필요 없음 → 스폰알로 소환

팀킬 금지: player.json 데미지 센서
- 팀은 태그로 나눕니다. 두 플레이어에게 같은 태그
team1을 주면 서로 때릴 수 없음(예:/tag 플레이어이름 add team1) - 태그 이름은 행동 팩에 적어 둔 이름이어야 합니다. 영상 행동 팩에는 팀 다섯 개, GitHub 최신 player.json(2026-10)에는 team1~team20 이 들어 있음
- 파일: 행동 팩
entities/player.json→ components 의minecraft:damage_sensor. 화면에 보인 부분:
"minecraft:damage_sensor": {
"triggers": [
{
"on_damage": {
"filters": {
"any_of": [
{
"all_of": [
{ "test": "has_tag", "value": "team1" },
{ "test": "has_tag", "subject": "other", "value": "team1" }
]
}
// team2 … 같은 꼴로 이어짐
]
}
},
"deals_damage": false
}
]
}
- 모둠 대항 PvP·협동 게임에서 같은 모둠끼리 공격 못 하게 할 때 (제안)


함수(function)와 tick.json
- 행동 팩
functions/의 .mcfunction 파일 = 커맨드 블록에 넣던 명령을 여러 줄로, 위에서부터 차례로 실행.#줄은 주석, Ctrl+Space 로 명령 추천 functions/tick.json에 넣은 함수는 1틱마다 실행됩니다(20틱 = 1초):
{
"values": [
"goldtimer"
]
}
- 파일 이름이 곧 명령 이름:
goldtimer.mcfunction→/function goldtimer. 채팅창에/function을 치면 들어 있는 함수(goldtimer, pay)가 보입니다 - 더 큰 행동 팩은 폴더별로 함수를 나눠 tick에서 통제하며 게임 시나리오를 짭니다

골드 타이머: 1분마다 금괴 주기
goldtimer.mcfunction(화면에서 옮김):
#시간 초기값 정하기
scoreboard objectives add goldtimer dummy
scoreboard objectives add goldtimer_s dummy
#타이머 스코어보드값 더하기
scoreboard players add @a goldtimer 1
#타이머 분 표시
scoreboard players add @a[scores={goldtimer=20}] goldtimer_s 1
#일어날 이벤트 정하기
execute @a[scores={goldtimer_s=60}] ~~~ function pay
#타이머 초기화
scoreboard players set @a[scores={goldtimer=20..}] goldtimer 0
scoreboard players set @a[scores={goldtimer_s=60..}] goldtimer_s 0
#타이머 보여주기
titleraw @a actionbar {"rawtext":[{"text":"시간: "},{"score":{"name":"*","objective":"goldtimer_s"}}]}
- 원리: goldtimer 는 1틱마다 +1 → 20이 되면 goldtimer_s(초) +1 하고 0으로 → 초가 60이면 pay 실행 후 0으로

pay 함수와 /reload
pay.mcfunction:
give @s gold_ingot
execute @s ~~~ say 골드를 받았다!
- 이어서 title 명령으로 화면 가운데에 ‘골드획득’ 을 띄움(예:
title @s title 골드획득, 영상의 원문은 06:14 화면에서 확인) - **고친 함수는 ****
/reload** 로 바로 반영: “기존 함수 파일들을 다시 불러왔습니다. 새 함수들을 다시 불러오려면 Minecraft를 다시 시작하세요.” - 새로 만든 함수 파일은 /reload 로 안 되고, 월드를 나갔다가 다시 들어가야 합니다
- 바꿔 보기: 보상 아이템·주기(30초 등) 바꾸기, /reload 와 재시작이 필요한 경우 비교하기 (제안)
- 2022년 영상의
execute @a … ~~~ 명령은 예전 문법입니다. 지금은execute as @s at @s run say 골드를 받았다!처럼as … at … run형식을 씁니다(2026-10 공식 문서 기준, ‘명령어 기초’ 페이지 참고)

음악 파일 넣고 NPC로 틀기
- 음악은 WAV 파일만(MP3 안 됨). bridge로 끌어다 놓고 Save to Project 에서 경로를 리소스 팩 sounds 폴더로(경로에 띄어쓰기 없이)
- 리소스 팩
sounds/sound_definitions.json(화면, 두 번째 곡은 복사 뒤 이름·경로만 treeandbirds 로 바꿈):
{
"format_version": "1.14.0",
"sound_definitions": {
"exercise": {
"sounds": [ { "name": "sounds/exercise", "volume": 1 } ],
"category": "music"
}
}
}
music카테고리라 배경 음악처럼 거리와 상관없이 들립니다- NPC(이름 ‘쥬크박스’) 고급 설정 → 버튼 모드 ‘재생1’ / ‘재생2’:
/stopsound @a
/execute @initiator ~~~ playsound exercise @a
- 끝의
@a를 붙이면 모두가 듣고, 빼면 누른 사람만 듣습니다. 재생2는playsound treeandbirds



내보내기와 적용하기
- bridge 프로젝트 메뉴(⋮) → Export As:
.brproject(bridge 프로젝트) /.mcaddon(행동+리소스 팩) /.mcworld/.mctemplate - 받은 .mcaddon 을 더블클릭(또는 마인크래프트로 열기) → 가져오기
- 월드 설정 → 애드온의 리소스 팩·행동 팩 에서 각각 활성화. com.mojang 을 연결했다면 내보내지 않아도 목록에 이미 있음
- 실험 기능: 레시피·상인 실습은 필요 없음. 일부 애드온만 필요(아래 교육용 에디션 해결법)
- 바뀐 것이 안 보이면: 함수는 /reload, 그 밖에는 마인크래프트를 껐다 켜고 팩이 켜져 있는지 확인

교육용 에디션에서 실험 기능 켜기
- 문제: 베드락 에디션 월드 설정에는 실험 항목이 있는데, 교육용 에디션 화면에는 보이지 않아 실험 기능이 필요한 애드온이 안 됨(2023년 영상, 교육용 v1.18.45)
- 해결: 설명란의 UI Upgrade 애드온(팩 이름 ‘Upgraded UI (Bedrock)’)을 교육용 에디션으로 열기 → 설정 → 글로벌 리소스 에서 활성화 → 메뉴 모양이 바뀜
- 월드 설정에 생긴 실험 항목: 야생 업데이트, 관람자 모드, 바닐라 실험, 홀리데이 크리에이터 기능, 커스텀 바이옴, 예정된 크리에이터 기능, 게임테스트 프레임워크, Molang 기능 → 필요한 것을 켭니다
- 월드를 바꾼 뒤 글로벌 리소스에서 비활성화해 UI를 되돌려도 월드 설정은 그대로 남습니다
- 2026-07 실측: 지금 교육용 에디션 월드 설정에도 실험 기능 메뉴가 없고, 스크립트 API 베타 버전은 불러오지 않았습니다. UI Upgrade 애드온으로 지금 버전에서 실험 메뉴가 다시 나오는지는 시험하지 않았습니다(확인 필요). 그때까지는 실험 기능이 필요 없는 애드온(레시피·상인·루트 테이블·함수)으로 수업하세요.


수업 팁
- 차례: 로고(리소스 팩 맛보기) → Tynker 몹(이벤트·매크로) → bridge 설치 → 레시피·아이템 → 루트 테이블 → 상인 → 함수·타이머 → 음악 (제안)
- 설계 먼저: 레시피는 3×3 격자 그림, 루트 테이블은 ‘아이템·확률’ 표, 상인은 ‘가격·재고’ 표를 종이에 먼저 (제안)
- 교과 연계: 확률(weight) → 수학, 상인 가격·재고 → 경제, 내가 녹음한 WAV → 음악 (제안)
- 막힐 때: 파일 경로·이름 확인 → 쉼표·괄호 확인(Raw Text 의 JSON 검사) → 팩이 월드에 켜졌는지 → 다시 시작
- AI 활용: JSON 값의 뜻을 GPT에 물어보기. AI에게 애드온을 통째로 맡기는 방법은 ‘AI 에이전트와 MCP’ 페이지