예전에 작성해둔 마인크래프트의 레드스톤 시스템에 대한 역기획서.
이진 개념과 논리 회로에 익숙하지 않은 사람도 이해할 수 있게 노력했다
재미삼아 보존용으로 다시 포스팅해둠.
MINECRAFT란?
플레이어가 텍스처가 입혀진 큐브들을 사용하여 3D 월드 내에서 건물을 지을 수 있는 샌드박스형 하우징 비디오 게임.
샌드박스적 요소 뿐 아니라 몬스터 죽이기, 농사짓기 등 많은 컨텐츠를 제공해 자칫 게임에 쉽게 질릴 수 있는 플레이어에게 높은 자유도를 부여하고 즐겁게 창조적 경험을 할 수 있게 한다.
-> 그러나 결국 약간 다양한 블럭쌓기 게임?
*샌드박스적 요소에 좀 더 머리를 쓰며(?) 심도있게 즐길 수 있는, 마치 전자키트를 가지고 노는 듯한 컨
텐츠를 추가하자!
*단순히 블럭을 설치하는데 그치지 않고, 블럭을 설치한 상태(1)와 설치하지 않은 상태(0)를 이진법적
스위치로 활용하여, 무궁무진한 만들기의 기쁨을 주자!
게임 속에 전자 키트를 넣자!
1단계 : 전자 키트의 건전지, 전선에 대응하는 아이템을 넣자
1.레드스톤
MINECRAFT 인 만큼, 핵심 아이템은 Mining으로 얻는 광물로.
채취하면 레드스톤 가루가 나온다.
2. 레드스톤 가루
바닥에 설치하면 레드스톤 와이어가 되며, 신호를 이어주는 전선 역할을 한다
3. 레드스톤 횃불
레드스톤과 나무막대를 조합해서 만들 수 있도록 하고, 동력을 제공하는 근원이 되도록 한다.
레드스톤 와이어 옆에 레드스톤 횃불을 놓으면 파워를 제공해준다.
2단계 : 상태를 변화시킬 수 있는 아이템을 추가하기
- 모든 상태를 0과 1로 제어할 수 있도록
켜져있는 횃불에 파워를 가하면 꺼지고, 꺼져있는 횃불에 파워를 가하면 켜진다
1. 버튼
누르면 파워를 제공하거나, 설치된 블럭에 달려있는 횃불의 상태를 변화시키도록 한다.
블럭 측면에만 부착할 수 있도록 하고, 누르면 '딸깍' 소리와 함께 버튼이 부착된 블럭 주위로 일정 시간 파워를 제공한 후 다시 튀어나온다.
2. 레버
동작시키면 버튼과 같이 파워를 제공하거나, 설치된 블럭에 달려있는 횃불의 상태를 변화시키도록 한다.
블럭의 모든 면에 설치할 수 있도록 한다.
3. 압력 발판
밟으면 버튼과 같은 역할을 하도록 한다.
발판이므로 블럭 상단에만 설치할 수 있고. 발판 위에서 내려오면 파워가 제공되지 않는다.
3단계 : 어떻게 기본적인 회로를 구성할 수 있을까
- on을 1, off를 0이라 하고 입력과 출력으로 설명한다.
1. 부정 회로
신호를 입력받으면 상태가 바뀌는 레드 스톤의 특성을 이용한 회로이다.
부정 회로는 입력이 0일 경우 출력이 1이 되고, 입력이 1일 경우 출력이 0이 된다.
다른 회로에 이 회로를 넣으면 그 회로는 부정 출력을 가진다.
2. 논리합 회로 (OR)
2개 이상의 입력 중 1개 이상이 1이면 출력이 1이 되고, 모든 입력이 0이면 0을 출력하는 회로이다.
한마디로 하나의 입력만 1이면 출력이 1이 되는 것.
플레이어들은 안과 밖에서 여는 문과 같은 구조물을 만들 수 있을 것이다.
3. 논리곱 회로 (AND)
2개 이상의 입력 중 모든 입력이 1이 될 때 출력이 1이 되고, 모든 입력 중 하나라도 0이 되면 출력은 0이 되는 회로이다.
모든 입력이 1이어야만 출력이 1이 되므로 플레이어들은 주로 협동 구조물에 이용할 수 있을 것이다.
4단계 : 회로를 다양한 방법으로 제어할 수 없을까?
1. 레드스톤 블럭
레드 스톤을 모아 블럭으로 만들면, 주변의 입력에 관계없이 항상 파워를 제공하는 블럭으로 설정한다.
이러한 특성을 이용해 플레이어들은 좀 더 다양한 구조물을 만들 수 있을 것이다.
2. 레드스톤 리피터 (repeater)
레드 스톤 파워의 흐름에 딜레이를 줄 수 있도록 하고, 주기적인 파워의 공급을 돕는다.
레드 스톤 파워는 거리에 반비례해서 점점 약해지는데, 리피터를 이용해 먼 곳 까지 파워를 공급할 수 있다.
3. 레드스톤 비교기
레드 스톤 파워 신호의 강도를 측정할 수 있다.
뒤에서 오는 파워 (신호 A) 와 양쪽 측면으로 오는 파워(신호 B) 와 파워 출력 부분(신호 C)를 만든다.
A가 B보다 강할 경우 출력하며, 반대로 B가 A보다 강할 경우 출력하지 않는다.
또한 오른쪽 클릭으로 감산 기능을 켤 수 있게 하며, 켜졌을 때는 A와 B의 신호 강도 차를 구하여 출력할 수 있게 한다.
특별히 클락 기능 (0과 1로 깜빡이는 기능)도 부여해 플레이어는 이를테면 디스펜서에 화살을 넣고 비교기와 파워를 달아주어 무한 화살 발사기도 만들 수 있을 것이다.
4. 햇빛 감지기
해의 빛을 모아 강도를 측정하도록 한다. 단순히 햇빛으로 파워를 제공하는 것이 아니라, 시간대의 햇빛 강도에 따라 출력이 비례할 것이다. 당연히 밤에는 신호를 보내지 않는다. 여기에 부정 회로를 추가하면 낮에는 꺼지고 밤에는 켜지도록 할수도 있을 것이다.
타 콘텐츠는 어떤 영향을 받을까?
1. 지하 광물의 분포
플레이어들이 레드스톤을 얼마나 이용할지 분석하고, 그에 맞추어 지하에 레드스톤을 적당한 비율로 분포시켜야 한다.
2. 조합 시스템에 관련 아이템 추가
마인크래프트 조합의 최강점인 '아이템을 직관적으로 배치하면 아이템이 만들어지는' 특성을 적극적으로 살린다.
플레이어들은 새로운 조합법이 추가됨으로써 보다 다채롭게 게임을 즐길 수 있을 것이다.
왜 레드스톤인가?
마인크래프트를 출시한 이후, 플레이어들은 마인크래프트에 적응해버렸다! (시작하자마자 나무를 캐고, 그 나무를 이용해 나무막대를 만들고, 나무 곡괭이를 만들고, 적당한 집을 만들고, 땅 밑으로 파고들어 여러가지 광물을 구하고.. 이는 마치 마인크래프트 서바이벌 모드 시작의 정석처럼 굳어져 버렸다. 크리에이티브 모드에서는 그저 벽돌을 쌓아 멋진 건물을 만드는 것이 대부분을 차지하고 있다. 점점 더 익숙해질 유저들은 결국 지루해할 것 같다.)
매슬로우의 욕구 이론에 따르면, 게임 속에서 저수준의 욕구를 충분히 만족한 유저들은 자아실현을 위해 창작욕을 불태우고 싶어질 것이다!
이 멋진 레드스톤의 시스템을 통해, 플레이어들은 200% 그 욕구를 충족시킬 수 있을 것이다.
그저 정육면체 블럭을 다룬다 해서 단조로운 게임이라 생각한다면, 깜짝 놀라게 될 것이다.
무엇을 할 수 있을까
자칫 단순해 보일 수 있는 이 레드스톤으로 플레이어들은 무엇을 할 수 있을까?
물론 몇몇 유저들에게는 갑자기 추가될 이러한 시스템이 혼란스럽게 느껴질 수도 있을 것이다.
그러나 0과 1이라는 단순한 원리를 이용해 구축된 이 레드스톤의 회로 시스템에 금방 매력을 느끼고 익숙해질 것이다. 정적이던 블럭들은 동력을 받아 플레이어가 만든 논리 회로에 맞게 작동하고, 그저 정해진 블럭의 연속에서 벗어나 상상하는 모든 것을 만들 수 있다.
단순하게는 플레이어의 캐릭터가 문 앞에서 발판을 밟으면 저절로 문이 열리는 자동문부터, 비밀번호를 맞춰야 열리는 문, 집에 침입하려고 하는 몬스터를 잡기 위한 함정, 심지어는 실제 컴퓨터의 CPU까지도 만들 수 있을 것이다.
'game dev' 카테고리의 다른 글
언리얼에서 지원하는 modern C++ 기능 (0) | 2021.07.26 |
---|
댓글