d라이브러리









[400호 기념] 마인크래프트 어과동 마을제작기2

 

 

지난 화에서 어과동 마을의 무대와 케이크, 인사말 등 기초 건축물을 완성했어요. 이번에는 캐릭터 만들기 등 어과동 친구들이 마을에서 어떤 활동을 해야 하는지 설명해주는 도우미 NPC를 만든 과정을 소개할게요. 또, 커맨드블록을 만들었던 과정도 소개해요!

 

NPC를 만들어라!

NPC(non-player character)는 게임 용어로, 플레이어가 조작할 수 없는 캐릭터를 말해요. 게임 속에서 NPC는 게임 진행을 위해 플레이어에게 여러 가지 도움을 주는 역할을 하죠. 마인크래프트의 베드락 에디션에서 NPC는 이름을 갖고 대사를 전달할 수 있어요. 또한 NPC에게 명령을 입력시켜 플레이어와 다양한 상호작용을 하도록 구현할 수 있답니다. 

 

 

 

첫 번째  ‘캐릭터 만들기 도우미’ NPC 만들기

가장 먼저 어과동의 만화 캐릭터를 만들라고 안내하는 NPC를 만들었어요.
➊ 바닥면의 가장자리 좌표(40, 4, 40)로 이동한 뒤 다음 명령어를 입력했어요. ‘summon’ 명령은 마인크래프트의 블록 외에 모든 것을 가리키는 ‘엔티티’을 소환하는 명령이에요. NPC는 명령을 입력한 플레이어의 위치로 소환돼요.

 

 

 

➋ 소환된 NPC를 바라보고 마우스 오른쪽 버튼을 눌러 설정창을 연 뒤, 이름을 ‘캐릭터 만들기 도우미’로 입력하고 스킨은 다른 NPC와 구분이 될 수 있는 것으로 바꿨어요. 크리에이티브 모드여야 NPC 설정창이 열린답니다.

 

 

➌ [대화 편집]을 눌러 대사를 입력했어요. 캐릭터 만들기를 설명하는 NPC이므로 관련 활동을 안내했답니다.

 

 

 

두 번째 나머지 NPC 만들기

자유 건축 등 다양한 주제의 건축을 하라고 안내하는 NPC를 4개 더 만들었어요.
➊ 소환한 NPC를 바라보고 마우스 가운데 버튼을 눌러 NPC 스폰 알을 얻었어요. 스폰 알을 얻으면 따로 명령을 입력할 필요 없이 스폰 알로 NPC를 소환할 수 있어요. 스폰 알을 얻는 명령을 아래처럼 입력해도 된답니다.

 

 

➋ 스폰 알로 좌표(40, 4, 40)에 소환한 NPC 옆에 NPC를 하나 더 소환한 뒤, 설정창을 열어 NPC의 이름을 ‘로봇 안내자’로 바꾸고 스킨은 로봇 모양으로 바꿨어요. 이어서 [대화 편집]을 누르고 대사를 입력했지요.

 

 

 

➌ 좌표(-20, 4, 40), 좌표(-20, 4, -20), 좌표(40, 4, -20)으로 이동하여 같은 방법으로 NPC를 소환하고 설정했어요.

 

 

세 번째 서바이벌 모드로 바꾸기

 

설정한 NPC와 플레이어가 자연스럽게 대화하려면 게임 모드를 서바이벌 모드로 바꾸어야 해요. 서바이벌 모드로 바꾼 뒤 NPC를 보고 마우스 오른쪽을 클릭하면, NPC의 대사를 확인할 수 있어요. 게임 모드는 게임 설정 또는 다음 명령으로 바꿀 수 있답니다.

 

 

 

execute 명령으로 게임 모드를 자동으로 바꿔라!

 

어과동 친구들이 자유롭게 건축하려면 맵이 크리에이티브 모드로 설정돼야 해요. 그런데 NPC와 대화를 하려면 서바이벌 모드여야 하지요. 매번 필요에 따라 게임 모드를 바꾸는 것은 번거로우므로, 커맨드블록을 이용해 자동으로 모드가 바뀌도록 했어요. 플레이어가 NPC에게 가까이 가면 서바이벌 모드로, 무대 위로 올라가면 크리에이티브 모드로 저절로 바뀌도록 하는 커맨드블록을 만들었지요.

 

execute 명령은 특정 조건을 만족하는 대상(지정 대상)을 명령 실행자로 지정하고 싶을 때 사용해요. 명령의 ‘@’ 뒷 부분(➊)이 지정하는 대상이에요. 대상의 조건에 만족하는 플레이어는 작성된 명령을 실행하게 돼요. 위 명령에서 지정한 대상은 ‘좌표(40, 4, 40)을 기준으로 8칸 이내에 있는 플레이어 중에서 크리에이티브 모드로 있는 플레이어’입니다. 


‘~ ~ ~’는 명령을 실행하는 위치를 설정하는 부분(➋)인데, 여기서는 플레이어가 있는 곳에서 바로 명령이 실행되도록 해야 하므로 지정 대상의 위치로 했어요. 또, ‘gamemode s’는 지정 대상이 실행할 명령을 설정하는 부분이에요(➌). 게임 모드를 서바이벌로 바꾼다는 뜻이랍니다. 요약하면, 플레이어가 NPC 주변 8칸 이내로 가면 서바이벌 모드로 바뀌는 거랍니다. 

 

첫 번째 서바이벌 모드로 바꾸는 커맨드블록 만들기 

 

위 명령어가 실행되도록 커맨드블록을 NPC마다 설치했어요. 각 NPC에게 플레이어가 다가가면 게임 모드를 서바이벌 모드로 바꿔주기 위해서지요.

 

➊ 다음 명령으로 반복 커맨드블록을 얻었어요. ‘커맨드블록’은 명령을 실행해주는 블록으로, 반복 커맨드블록은 작성된 명령을 반복해서 실행해요. 

 

 

 

➋ 커맨드블록이 보이지 않도록 바닥면 아래에 설치했어요. 이때 앞서 설치한 NPC와는 10칸 이상 거리를 띄어 주는 것이 좋아요. 이어서 커맨드블록을 바라보고 마우스 오른쪽 버튼을 눌러 설정창을 열고 레드스톤 옵션을 ‘항상 사용’으로 바꿨지요. ‘레드스톤’은 전기 스위치와 같은 역할로 항상 켜두면 커맨드블록의 명령이 항상 실행돼요. 

 

 

 

두 번째 각 NPC마다 커맨드블록 만들기 

 

➊ 소환했던 나머지 NPC로 이동하여 같은 방법으로 커맨드블록을 설치했어요. 좌표(-20, 4, 40)의 NPC의 10칸 정도 떨어진 곳에 커맨드블록을 설치하고 레드스톤 ‘항상 사용’ 옵션으로 바꾼 뒤 다음 명령을 입력했지요.

 


 

 

➋ 좌표(-20, 4, -20), 좌표(40, 4, -20)의 NPC에도 같은 방법으로 커맨드블록을 설치한 뒤 다음 명령을 각각 입력했어요.

 

 

세 번째 크리에이티브 모드로 바꾸는 커맨드블록 만들기

 

서바이벌 모드였던 플레이어를 다시 크리에이티브 모드로 바꿔주는 명령도 필요해요. 그래서 케이크 중앙 안쪽으로 블록을 부수고 들어가 커맨드블록을 설치했지요. 앞선 설정처럼 커맨드블록의 레드스톤 옵션을 ‘항상 사용’으로 바꿔 주고 아래 명령을 입력했어요. 

 

 

위 명령은 ‘좌표(-15, 6, -15)을 기준으로 x축 방향으로 49칸, y축 방향으로 5칸, z축 방향으로 49칸 이내에 있는 플레이어 중에서 서바이벌 모드로 있는 플레이어를 크리에이티브 모드로 바꾼다’라는 뜻이에요. 이제 플레이어가 무대 위로 다시 올라오면 서바이벌 모드에서 크리에이티브 모드로 바뀌게 된답니다. 

 

 

2021년 12호 어린이과학동아 정보

  • 이상민 교사
  • ‘스티브 코딩’ 유튜브 크리에이터
  • 에디터

    이다솔 기자 기자

🎓️ 진로 추천

  • 컴퓨터공학
  • 게임공학
  • 소프트웨어공학
이 기사를 읽은 분이 본
다른 인기기사는?