스티브코딩

독도 월드

수치지도로 실제 독도를 1:1로 옮긴 월드와 투어·이정표 명령어

게임 월드2026-10-22 갱신

한눈에 보기

  • 10월 25일 독도의 날을 맞아 만든, 실제 독도를 1:1 크기로 옮긴 마인크래프트 에듀케이션 월드입니다.
  • 국토지리정보원 1:5,000 수치지도(도엽 37116005)의 등고선·표고점·해안선으로 동도·서도와 89개 부속도서까지 만들었습니다.
  • 1블록 = 1m, 바다 높이가 Y=0이라 서 있는 곳의 Y좌표가 곧 해발고도입니다(대한봉 꼭대기 Y=168).
  • 주요 장소마다 공중에 지명 이정표가 떠 있고, 명령어 한 줄로 하늘에서 독도를 도는 카메라 투어를 볼 수 있습니다.
독도 월드 (영상 썸네일)
독도 월드 (영상 썸네일)

월드 준비

  1. 내려받은 .mcworld 파일을 마인크래프트 에듀케이션에서 엽니다(명령어 기능이 담긴 행동팩이 월드에 들어 있습니다).
  2. 월드 설정에서 **치트(명령어)**가 켜져 있는지 확인합니다.
  3. 월드에 들어가 채팅창에 “독도 지형 생성기 준비 완료”가 뜨면 명령어를 쓸 수 있습니다.
  4. 섬 전체를 보려면 설정 → 비디오 → 렌더 거리 24청크 이상으로 올립니다.

수업용 명령어

명령어 하는 일
`/scriptevent dokdo:tour` 하늘에서 독도를 둘러보는 카메라 투어 (약 1분 50초)
`/scriptevent dokdo:tour all` 접속한 모든 학생에게 동시에 투어 보여주기
`/scriptevent dokdo:tourstop` 투어 중단, 원래 자리로 돌아오기
`/scriptevent dokdo:tp` 동도 독도경비대 옆으로 이동
`/scriptevent dokdo:signs small` · `signs` 작은·큰 글씨 지명 이정표 세우기 (뒤에 `clear`를 붙이면 지우기)
`/gamerule showcoordinates true` 좌표 표시 (Y값 = 해발고도)
- 이정표는 지형 위 공중에 떠 있어 지형을 훼손하지 않습니다. 한 크기를 세우면 다른 크기는 자동으로 지워집니다. - 함께 쓰면 좋은 명령어: `/time set noon`(한낮), `/weather clear`(맑은 날씨)

수업 아이디어

  1. 좌표로 해발고도 읽기: 대한봉 (-168, 168, 116) · 탕건봉 (-160, 99, -79) · 우산봉 (223, 99, 227)에 직접 올라가 높이 확인하기
  2. 등고선과 실제 지형 비교: 지도의 등고선이 마인크래프트 지형에서는 어떻게 보이는지 관찰하기
  3. 독도의 날 계기 교육: 1900년 10월 25일 칙령 제41호(울도군 관할에 ‘석도’ 포함)와 독도의 역사 함께 배우기

투어에서 만나는 독도의 장소

  • 카메라 투어(/scriptevent dokdo:tour)는 장소마다 화면 아래에 이름과 설명 자막을 띄웁니다(영상 「독도는 우리 땅」 0:40~1:35).
  • 물골 — 서도 북서쪽, 독도에서 민물이 솟는 곳 · 탕건봉 — 해발 98.8m, 서도 북쪽 봉우리
  • 천장굴 — 동도 가운데, 바다와 이어진 깊은 구멍 · 동도·우산봉 — 해발 98.6m, 동도의 가장 높은 곳
  • 독도 — 천연기념물 제336호 독도천연보호구역 · 공중 이정표: 대한봉 해발 168.5m, 독도경비대
① 탕건봉과 대한봉 이정표 (00:52)
① 탕건봉과 대한봉 이정표 (00:52)
② 천장굴과 우산봉 (01:05)
② 천장굴과 우산봉 (01:05)
③ 동도·우산봉 (01:18)
③ 동도·우산봉 (01:18)

이렇게 만들었어요: 공공데이터 → 마인크래프트 지형

  1. 데이터 받기: 국토정보플랫폼에서 독도 수치지형도(1:5,000)를 받고, 해수면 기준점을 Y=0으로 정합니다.
  2. 3D로 먼저 확인: 3D 뷰어 페이지로 동도·서도 지형을 미리 검증합니다.
  3. 스크립트로 생성: 행동팩의 자바스크립트 스크립트 이벤트(/scriptevent)로 132개 구역을 차례로 만듭니다.
  4. 오류 고치기: 청크 로드 시간 초과가 나면 플레이어를 그 구역으로 텔레포트시켜 청크를 불러온 뒤 생성합니다.
  • 생성형 AI에게 데이터 찾기·스크립트 작성을 맡겨 손으로 짓지 않고 만들었습니다(영상 도입부). 화면에는 Antigravity IDE 안의 Claude Code 대화 창이 보입니다(영상에서 말로 밝히지는 않음).

지형 생성 명령과 블록 구성

명령어 (만들 때 쓴 것) 하는 일
`/scriptevent dokdo:build` 128×128 블록 구역 132개를 차례로 생성 (진행 상황은 액션바·채팅에 표시)
`/scriptevent dokdo:stop` 생성을 중간에 멈추기
`/scriptevent dokdo:build 37` 구역 번호를 붙이면 그 구역부터 이어서 만들기
- **블록 구성**: 몸체는 응회암(tuff), 안산암·점적석 줄무늬로 절벽의 층리 표현. 완만한 곳은 풀과 거친 흙, 해안은 자갈과 바위. 천장굴은 바닷물이 들어찬 구멍 - **바다**: 약 1.4km × 1.5km 범위를 깊이 60m로 채우고, 가장자리를 경계 블록으로 둘러 물이 새지 않고 학생도 밖으로 나가지 못합니다. - **검증**: 정식(stable) API `@minecraft/server` 1.16.0만 사용. 미리 시뮬레이션해 육지 기둥 184,776개의 높이가 높이맵과 100% 일치, 모든 `fill`이 한 번 한도(32,768블록) 안 - 내려받는 월드에는 지형이 이미 있어 수업에는 필요 없는 제작용 명령입니다(설명란 명령어 목록에 없음).
AI가 정리한 실행 방법: dokdo:build·stop·tp (02:00)
AI가 정리한 실행 방법: dokdo:build·stop·tp (02:00)

청크 로드 오류 고치기 (v2)

  • 증상: 처음 실행 때 ‘청크 로드 시간 초과’로 두 번째 구역에서 생성이 멈춤(메시지의 “구역 1”은 0부터 센 번호)
  • 바꾼 점: 구역마다 다른 이름(dokdo_build_2, dokdo_build_3 …)의 티킹 영역을 만들고, 그 구역을 다 만들면 지움
  • 대체 방식: 10초 안에 청크가 안 불러와지면 플레이어를 그 구역 상공(y 300)으로 순간이동시켜 시야로 불러옴
  • 다시 실패하면 오류 메시지에 불러온 청크 수(예: 12/64)와 티킹 영역 명령 결과가 함께 나옵니다.
/reload
/scriptevent dokdo:build 2
  • /reload 뒤 채팅에 “독도 지형 생성기 v2 준비 완료”가 뜨는지 확인(“v2”가 안 보이면 게임을 완전히 껐다 켬) → 2번 구역부터 이어서 실행
고친 스크립트(v2)와 다시 실행하기 (02:44)
고친 스크립트(v2)와 다시 실행하기 (02:44)
교사용 메모 · 관리자용: 지형이 손상되었을 때
  • /scriptevent dokdo:check → 문제 있는 구역 번호만 알려 줍니다.
  • /scriptevent dokdo:repair → 손상된 구역만 다시 만듭니다.
  • 지형을 다시 만들면 바닷물 계산 기록이 쌓여 월드 용량이 커질 수 있으니 꼭 필요할 때만 씁니다. 작업 후에는 ‘저장 후 종료’로 나가야 저장됩니다.

관련 영상

관련 공식 자료

함께 보기

출처

  • 스티브코딩 유튜브 「독도 월드 만들었습니다.」(2026-10-18) 영상·설명란·자동 요약
  • 유튜브 「독도는 못참지」(2023-12-19)
  • 유튜브 「독도는 우리 땅 #minecraft #독도의날」(2026-10-20)