코드로 건축하기: 크고 반복되는 건축을 빠르게
- (영상: OneDrive
통합자료_영상/04-01_코드로건축.mp4, 공유 링크 입력 필요) - 단순 반복 작업의 부담을 줄임 / 큰 건축물, 같은 건축물 여러 개를 쉽게 / 필수: 좌표에 대한 이해
- 코드로 짓는 세 가지 방법: ① 나(플레이어)를 기준으로 상대 좌표(블록 채우기·모양) ② 에이전트를 움직여 놓기(앞으로 이동 + 아래에 놓기를 반복해 벽·지붕 두르기) ③ 보이지 않는 빌더 시키기
- 한 번에 다 만들기보다 채팅 명령어로 부분을 나누어 만들고, 문·창 같은 세부는 손으로 다듬기
- 활동 가이드: 이상한 곳에 지어져요: 상대 좌표라 실행 중에 움직이면 건축물도 따라 움직임 → 끝날 때까지 기다리기 / 위치를 고정하려면 월드 좌표를 쓰거나, 시작할 때 플레이어 위치를 변수에 저장
- 이어지는 예제: 블록 채우기 → 모양(원·공) → 빌더 → 글자·다리·꽃밭 → 블록 복사
블록 채우기: 다섯 가지 옵션
- 같은 자리(
~0 ~0 ~0→~5 ~5 ~5, 유리)에 옵션만 바꿔 실행해 비교. 다섯 옵션은/fill명령어 옵션과 같음
| 코드 작성기 | /fill | 하는 일 |
| 교체하기 | replace | 원래 블록과 상관없이 모두 채움 |
| 파괴하기 | destroy | 원래 블록이 아이템이 되어 튀어나오며 채움 |
| 유지하기 | keep | 빈 칸(공기)만 채우고 원래 블록은 그대로 |
| 외곽선 | outline | 겉면만 채우고 안쪽 블록은 그대로 → 집 벽 |
| 파내기 | hollow | 겉면만 채우고 안쪽은 공기로 비움 |



블록 채우기 + 반복: 계단식 피라미드
- 변수(item)를 0부터 9까지 1씩 늘리며 10번 반복 → 반복할 때마다 한 칸 좁아지고 한 칸 올라감. 반복 횟수 = 피라미드 높이
채팅 명령 "피라미드"
반복(for): item 값을 0 부터 ~ 9 까지 1씩 증가시키며
블록 채우기 (사암 계열)
시작 ~(1 + item) ~item ~(1 + item)
끝 ~(20 - item) ~item ~(20 - item)
- item 0 →
~1`20, 1 →2`~19, 2 →~3`18` … (한 층씩 직접 계산해 보기) - 크게: 반복 끝 9 → 19, 크기 20 → 40. 둘이 맞지 않으면(예: 30) 꼭대기가 이상해짐


모양 블록: 선·원·공
- '모양' 카테고리: 선(시작·끝), 원(중심·반지름·방향·모드), 공(중심·반지름·모드). 원과 공은 손으로 짓기 어려운 모양
- 원의 방향 = 원이 바라보는 축: x(동·서를 봄, 세워진 원) / y(위·아래를 봄, 바닥에 눕는 원) / z(남·북을 봄). 대각선은 안 됨
- 모드: 교체하기(안까지 채움) / 파내기(있던 블록을 파내고 테두리) / 외곽선(테두리만). 파내기와 외곽선은 공중에선 같아 보여 바닥에 그려 비교
- 공: 중심을 내 위치로 하면 갇힘 → 앞(예:
~20 ~0 ~0)에 만들기. 외곽선이 더 빠르고, 내 위치에 외곽선 공을 만들면 둥근 방 - 네모 블록이라 작은 원은 어색하고, 반지름이 클수록 원에 가까움




[활동 안내] 원 모양과 토성 만들기
- 원 모양 만들기 3번: 방향만 x·y·z로 바꿈 / 방향: 원의 면이 어느 쪽을 바라보는지 / 원은 손으로 짓기 어려운 모양
- 고리: 원 모양 + 외곽선 / 몸: 공 모양(방향 옵션 없음) / 공 모양은 오래 걸림 → 외곽선으로 빠르게
- 주의: 플레이어 위치 기준이라 완성될 때까지 움직이지 않기




[예제] 원통 보금자리: 원 쌓기·채우기·선·무작위
- 원통 벽: 반복(index 0부터 15까지) 안에 원 모양(반지름 6, 방향 y, 외곽선), 원 중심의 y 칸에 index → 원이 한 층씩 쌓임
- 바닥·둘레: 원(중심 발아래 한 칸, 반지름 크게, 교체) → 반지름 +1, 외곽선, 바다 랜턴으로 둘레 장식
- 집: 블록 채우기 외곽선(자작나무 계열, z 9칸·x -9·높이 15 정도), 아래 한 층은 아카시아 계열, 문·창은 손으로
- 랜턴 기둥: 선 모양(바다 랜턴) / 흩어진 랜턴: 반복 100번 → 블록 놓기(바다 랜턴, 무작위 위치 선택)
- 마무리: 시간 설정을 밤으로 → 바다 랜턴이 빛나는 보금자리



빌더: 보이지 않는 도우미
- 빌더는 눈에 보이지 않음 → 블록을 놓게 해서 위치를 확인. 따로 명령하지 않으면 이전 자리에 그대로 있고, 코드를 고치면 위치가 초기화됨
- 기본 순서: 빌더 텔레포트(
~0 ~3 ~0= 머리 위 3칸) → 바라볼 방향 정하기(동·서·남·북, 위아래 없음) → 이동(앞·뒤·왼쪽·오른쪽·위·아래 칸 수) → 블록 놓기 - 방향을 정하지 않으면 어느 쪽으로 갈지 모름. 마인크래프트 방위: 동 = +x, 서 = -x, 남 = +z, 북 = -z
- 반복 4번 [블록 놓기 → 앞으로 2칸] → 2칸 간격으로 블록. 빌더 블록은 '고급' 아래 '빌더' 카테고리
- 예전 버전(영문 블록 builder teleport to·builder face·place): 방위를 모를 때 print 블록으로 주변에 E·W·N·S 글자를 세워 확인(좌표 블록 페이지)


빌더 위치 마크: 놓기·채우기·라인·벽
- 순서: 빌더 텔레포트 → 빌더 위치마크 생성(시작점) → 빌더 이동(예: 앞으로 10, 위로 10, 왼쪽으로 10) → 아래 블록 중 하나. 이동만으로는 아무것도 놓이지 않음
| 블록 | 결과 |
| 빌더 위치마크부터 이동한 경로에 블록 놓기 | 빌더가 지나간 길을 따라 |
| 빌더 위치마크부터 채우기 | 시작점~끝점 직육면체 전체 |
| 빌더 위치마크부터 라인 만들기 | 시작점과 끝점을 잇는 직선 |
| 빌더 위치마크부터 벽 세우기 (높이) | 지나간 길을 따라 높이만큼 벽(위로 이동은 0) |




빌더로 다리·등대·랜덤 파쿠르


1 다리 (길이·너비)
다리 15 2: 텔레포트 → 서쪽(-x) 바라보기 → 위치마크 → 앞으로 num1, 왼쪽 num2 → 마크부터 채우기. 시작 칸도 채워져 너비 2 → 3칸. 방향은 텔레포트 뒤에 정하기


2 등대 (벽 세우기)
등대: 텔레포트 ~0 ~0 ~0 → 위치마크 → 마크부터 벽 세우기(레드스톤 램프, 높이 20 → 50). 램프는 레드스톤 신호가 있어야 켜짐. 마크 뒤 앞으로 3칸 이동하면 넓은 벽


3 랜덤 파쿠르
텔레포트 ~0 ~3 ~0 → 반복 100번 [블록 놓기(금) → 빌더 이동: 앞으로·위로·왼쪽으로 각각 '0부터 2까지의 정수 랜덤값']
- 벽 세우기 코드: 위치마크 생성 → 앞으로 10·위로 0·왼쪽으로 10 → '빌더 위치마크부터 [금] 벽 세우기 높이 5'(영상에서 20 정도로 높임)
푸시·팝 스테이트로 갈래 만들기
- 푸시 스테이트: 빌더의 지금 위치를 저장 / 팝 스테이트: 저장한 위치로 되돌아감 → 한 점에서 두 갈래 선
- 위로 5칸 이동 후 라인 → 블록 6개(시작 칸 포함), 빌더는 맨 위 칸에 남음
- 반대 방향은
right를 찾지 않고left -5처럼 음수로
on chat command "do"
builder teleport to ~0 ~2 ~0
builder place mark
builder move up by 5
builder line from mark with (다이아몬드 블록) ← 줄기
builder place mark
builder push state ← 갈라지는 점 저장
builder move forward 0 up 5 left 5
builder line from mark with (다이아몬드 블록) ← 첫 가지
builder pop state ← 저장한 점으로
builder move forward 0 up 5 left -5 ← 반대쪽 가지(라인 블록 이어서)
- 예전 버전 화면(영문 블록, 채팅창에
/code로 Code Connection 실행). 지금은/code가 동작하지 않고 C키로 코드작성기를 엽니다(2026-10 공식 문서 기준, Code Builder 안내). 블록은 한국어로 나오므로 빌더 범주에서 같은 모양의 블록(텔레포트·표시·이동·라인·상태 저장/복원)을 찾아 쓰세요.


[활동 안내] 빌더·피라미드·원뿔


1 빌더로 나선 길 빌더 = 블록을 놓는 보이지 않는 도우미. 자리를 차지하지 않아 자기 위치에도 블록을 놓고 빠름


2 모래 피라미드 모래는 아래로 떨어지는 블록 → 하늘에서 채우면 가운데 아래로 쌓여 피라미드


3 원뿔 index를 중심의 높이와 반지름에서 빼는 값으로 → 점점 작은 원을 쌓음
모래 피라미드 코드 자세히
- 1칸 층부터 점점 큰 정사각형 층을 떨어뜨리면, 먼저 떨어진 작은 층 위를 큰 층이 덮어 피라미드
- index 0 → 1칸, 1 → 3×3, 2 → 5×5, 3 → 7×7. 변수 앞의 마이너스는
index × -1 - y는 어차피 떨어지므로 볼 수 있게
~-5. 너무 빠르면 층이 겹쳐 부서짐 → 1초 일시중지. x·z에 +10을 더해 10칸 떨어진 곳에
채팅 명령 "1" (숫자 → 높이)
반복(for): index 값을 0 부터 ~ 높이 까지 1씩 증가시키며
블록 채우기 (붉은 모래)
시작 ~(10 + index) ~-5 ~(10 + index)
끝 ~(10 + index × -1) ~-5 ~(10 + index × -1)
일시중지 1000 (ms)
- 끝값이 '높이'면 0부터 세므로 입력한 수보다 한 층 더 쌓임. 채팅 예:
1 5,1 15


[활동 안내] 레일·과녁·글자 만들기


레일 바라보는 방향 앞·위·아래로 레일. 완성까지 마우스·키보드 움직이지 않기


과녁 원 모양을 겹쳐 과녁, 가운데 과녁 블록 → 화살이 맞으면 레드스톤 램프가 켜짐


글자 글자쓰기 블록: 영어·특수문자 가능, 대소문자 구분, 방향 선택
- 더 해 보기: 걸을 때마다 발밑 블록 바꾸기(플레이어가 걷고 있으면 실행 + 블록 채우기), 무지개 만들기
- 길이·높이를 넣어 레일 만들기: 높이 0이면 평평, 음수(-20)면 내려가는 레일(숏츠)
글자 쓰기 블록 자세히
- '블록' 카테고리 아래쪽 글자 쓰기: 글자·사용 블록·위치·방향. 예:
Yes!,HELLO - 방향 = 글자가 써지는 방향(바라보는 방향 아님). 동·서·남·북 4가지뿐이라 세로쓰기 안 됨
- 한글은 안 되고 영어 대문자·소문자, 글자 크기는 바꿀 수 없음
- 새해 예제: HAPPY(흰색)
~-30 ~15 ~-5, NEW(파랑)~-30 ~9 ~-5, YEAR(빨강)~-30 ~3 ~-5, 방향 남쪽(+z) → 줄 간격 6칸. 각각 '블록이 깨지면 실행' 이벤트에 넣음


다리를 놓는 네 가지 방법
| 방법 | 코드 | 장점·주의 |
| 1 에이전트 | 이동한 곳에 블록 놓기 참 → 앞으로 10 → 왼쪽 1 → 뒤로 11 | 슬롯에 블록을 넣어야 함. 이동 뒤에 놓으므로 돌아올 땐 한 칸 더 |
| 2 블록 채우기 | `~0 ~0 ~0` → `~-20 ~0 ~0` | 순식간. x가 줄어드는 방향 확인 |
| 3 선 모양 | 시작점·끝점만 지정 | 대각선 다리도 쉬움 |
| 4 걸을 때 채우기 | 플레이어가 걷고 있으면 → 블록 채우기 `~-1 ~-1 ~-1` → `~1 ~-1 ~1` | 걷는 곳이 다리. '달리고 있으면'으로 바꾸면 달릴 때만 |




꽃길과 꽃밭: 상대 좌표 연습
- 꽃길: '플레이어가 걷고 있다면' + 블록 놓기(양귀비, x 5) + 블록 놓기(민들레, 반대쪽 -5로 추정) → 걸으면 양옆에 꽃. 같은 자리에 두 개를 놓으면 하나가 사라짐
- 꽃밭: 채팅 명령 '꽃밭' → 블록 채우기(파란색 난초)
~1 ~0 ~1→~10 ~0 ~10= 10×10. 공중에서 실행하면 꽃이 떨어져 사라짐 - 쓰지 않을 '걷고 있다면' 코드는 계속 실행되므로 휴지통으로 지우기
- 예전 버전 화면(무따기 5장, 서바이벌 월드)

블록 복사: 좌표·옵션·안 될 때
- 원본 시작·끝은 월드 좌표, x·z가 커지는 방향으로(작은 쪽 모서리 = 시작) 넉넉히. 목적지(예:
~0 ~0 ~0내 위치)가 원본의 시작점 자리가 됨 - 마스크 설정: 교체하기 = 공기까지 복사(목적지 배경이 지워질 수 있음) / 마스크 = 공기를 빼고 복사
- 복사 설정: 기본 = 원본과 겹치면 실행 안 함(원본 보호) / 이동 = 원본을 지우고 옮김(실수 위험 → 복사 후 지우기 권장) / 덮어쓰기 = 겹쳐도 덮어 씀
- 추천은 교체하기 + 기본. 마스크 + 기본은 원본 위치에서 겹쳐 만들어짐(영상 시연)
- 복사가 안 되는 두 가지 이유: ① 너무 멀리 가서 청크 범위를 벗어남 ② (기본 옵션) 붙일 곳이 원본과 겹침
- 꽃밭 복사(무따기 5장): '복사할 블록'을 고르는 블록은 그 블록만 복사 → 가운데 양귀비는 빠짐


수업 팁
- 실행 중에는 움직이지 않기(플레이어 기준 상대 좌표). 위치를 고정하려면 시작할 때 '플레이어 절대좌표'를 변수에 저장
- 내 자리에서 바로 짓지 말고 몇 칸 떨어진 곳에(블록에 밀려나면 뒤의 모양이 어긋남)
- 좌표 값은 표로 먼저 계산하게 하고, 일부러 틀린 값(피라미드 30)을 넣어 결과를 비교
- 빌더: 텔레포트 → 방향 → 위치마크 순서를 지키기. "지금 빌더는 어디 있을까?" 예측 질문
- 모둠별로 같은 문제(다리)를 서로 다른 방법으로 풀고 장단점 비교
더 보기
- 랜드마크 건축 코딩: 숭례문·만리장성·게르·백두산·방사광 가속기처럼 실제 건축물을 변수·반복으로 짓기
- 건축 템플릿: 값만 바꾸고 채팅 명령어로 건물·다리·방탈출 방을 자동으로, 건축물 움직이기