미로미나 (2022)
캐나다의 개인 제작자 Katiusza가 PICO-8용으로 제작한 간단한 액션 어드벤처 게임. 현재는 게임 제작에서 손을 뗀 채 티스토리에서 어떤 블로그를 하고 있다는 것 같다. 응, 나다. 약 2년전에 코딩을 다시 배우면서 습작삼아 이런저런 간단한 게임들을 만들었는데, 적당히 되돌아보며 셀프리뷰 느낌으로 함께 기록해 두고 싶어졌다.
그 전에 PICO-8이라는 플래폼?이 생소한 사람이 더 많을 테니 간단히 소개해 본다. PICO-8은 일종의 가상머신 플래폼으로 간단한 코드, 스프라이트, 맵타일, SFX 에디터를 내장하고 있으며 이렇게 만들어진 애셋을 불러오는 API가 포함되어 있긴 하나 그 외의 모든 게임 기능은 직접 코드를 작성해서 만들어야 한다. 즉, 게임 제작을 위한 플래폼이지만 엔진은 포함되어 있지 않다.
여기에 게임 용량에 크게 제한이 들어간다. 스프라이트는 최대 8x8 픽셀 단위로 256개까지만을 포함할 수 있으며, 맵 에디터도 최대 용량은 마찬가지다. 제작한 스프라이트를 맵에 배치하는 방식이지만 두 종류의 그래픽 메모리 에리어가 겹쳐져 있어 스프라이트를 최대한으로 만들고자 하면 맵 메모리를 절반만 쓸 수 있고, 반대로 맵 메모리를 최대한으로 활용한다면 스프라이트를 절반으로 줄여야 한다. 스프라이트 블럭들이 위에 보이는 것처럼 0부터 3까지의 탭에 보관되어 있는데 미로미나는 맵타일을 넓게 썼기 때문에 2, 3번 탭에 스프라이트를 넣을 수 없고 거기 맵 메모리가 들어있는 게 보인다.
사용하는 언어는 Lua. 텍스트로 편집할 수 있는 코드 메모리도 제한이 들어가 있다. "1 + 2"을 계산하기 위해 필요한 1, +, 2를 하나의 토큰으로 간주한다면 이런 토큰을 최대 8192개까지 사용할 수 있으며 코드에 포함될 수 있는 문자수 한계는 65535자. 컬러는 16색만을 제공하며 (이 중 하나를 코드 내에서 투명으로 만든다면 한 번에 15색만 사용해 스프라이트를 그릴 수 있다) 지원하는 유일한 해상도는 128x128. 그래도 가상머신상의 CPU는 로우엔드 16비트 PC급이다.
이렇게 말하면 써먹지 못할 도구처럼 보일 지도 모르겠지만 반드시 그렇지만은 않은 게, 간단히 내부 편집기에서 도트를 찍은 뒤 내부의 텍스트 에디터로 바로 코드를 작성하거나 아니면 다른 텍스트 에디터에서 편집한 코드를 붙여넣는 것으로 빠르게 테스팅할 수 있다. 떠오른 아이디어를 바로 구현해 시험해 보는 정도라면 짧으면 며칠에서 1, 2주 내에 개발이 완료되기도 하니 유니티나 게임메이커가 본격적인 작품을 만들기 위한 캔버스라면 PICO-8은 포켓 사이즈 스케치북이란 느낌이고, 그 와중에 엔진은 스스로 코딩해야 하는 만큼 코딩 연습용으로도 좋다.
여기에 포럼을 통해 공개된 게임은 PICO-8을 구입하지 않아도 브라우저상에서 직접 플레이할 수 있지만 PICO-8을 구입한 유저라면 로컬로 다운받은 걸 자기 편집기로 열어서 코드나 스프라이트 등을 전부 열어볼 수 있게 되어 있다. 이 도구로 제작된 모든 게임이 오픈소스인 셈. 때로 이 안에 가능한 한 많은 데이터를 우겨넣기 위해 외부 툴로 데이터 압축을 동원해 열어보기 어려운 게임도 있지만 기본적으로는 오픈소스로 아마추어들이 서로의 게임을 참고할 수 있는 환경인 것.
본론으로 돌아오자면 첫 게임인 미로미나는 사실 유투브에 올려진 튜토리얼 영상들을 보며 따라하고 이것들을 이리저리 짜맞추며 기본 골격을 만들었을 뿐인 게임이며, 그 과정에서 나름 아타리의 1980년 어드벤처를 모방한 게임이다. 내용은 기본적으로 심한 길치라는 것 외에 별다른 자세한 설정이 없는 주인공 미나가 귀향길에 길을 잃었다가 어딘가의 미궁 같은 곳에 들어가 버렸다는 정도의 이야기. 아이템은 어드벤처 공식에 따라 한 번에 하나만을 가질 수 있으며 원작보다 가지수를 좀 늘려보려 노력했다. 브라우저 및 모바일에서의 플레이 링크는 이곳. 키보드일 경우 PICO-8의 2개의 버튼이 Z, X에 배당되어 있다.
개중에는 열쇠처럼 쉽게 용도를 짐작할 수 있는 것도 있지만 대부분은 게임 내 현판 여러곳에 포함된 힌트를 통해 용도를 짐작할 수 있다. 위 GIF의 장면은 그 중 하나인 립스틱으로, 립스틱을 가진 상태에서는 화면 오른쪽의 어두운 지역에서 지형이 보이게 되고 스위치를 켜 불이 들어오게 할 수 있지만, 스위치를 작동시키지 않은 상태에서 립스틱 없이 들어가면 화면이 완전히 암전되어 길을 찾을 수 없는 식이다. 다만 이런 종류의 아이템은 어드벤처 공식과는 잘 맞지 않는다는 걸 스스로도 깨달았는데, 만약 아이템 A를 입수하기 위해 아이템 B를 사용해 특정 구간을 통과한 뒤 아이템 A를 갖고 다시 나오려면 A와 B를 동시에 소유한 상태가 되어야 가능하잖아.
위는 2개의 아이템을 맵 여러곳에 설치된 작업대로 가져와 새로운 아이템을 만드는 원시적인 크래프팅 요소. 설탕과 우유로 도넛, 캔과 후추로 벌레 스프레이, 나뭇가지와 허브로 향초를 만들 수 있고 각 아이템이 게임에 등장하는 3종류의 적에게 사용된다.
개구리, 유령, 나방의 3종류 적이 각각 펀치카드를 하나씩 지키고 있으며 게임의 목적은 이 펀치카드들을 회수해 지정된 터미널로 가져가 입력한 뒤 탈출하는 것. 3개의 펀치카드가 전부 입력된 상태에서 출구가 있는 화면의 여신상을 발견하면 그 앞에 꽃이 놓여 있는데 이걸 가져다 연신상에 바치면 문이 열리며 엔딩. 도중에 보물상자에서 입수한 돈의 양에 따라 엔딩의 텍스트가 달라진다. 펀치카드를 수집해 터미널로 가져가야 한다는 개념은 아마 당시 내가 엑소더스를 생각하고 있었던 게 아닐까.
시작시 2종의 게임 모드를 고를 수 있으며, 모드 A에서는 언제나 고정된 위치에 같은 아이템이 출현하지만 모드 B에서는 일부 제작 아이템들이나 비필수 아이템들의 위치가 랜덤하게 바뀐다. 열쇠나 립스틱처럼 특정 구간 돌파를 위해 반드시 필요한 아이템들은 여전히 고정. 잠긴 문을 여는 열쇠가 그 문 뒤에 스폰하면 안 되니까. 어드벤처의 박쥐에 해당하는 적을 만들어 보려고도 생각했지만 마찬가지 이유로 기각. 대신 파란 유령이라는 적이 맵을 랜덤하게 가로질러 다니며 닿으면 라이프가 줄어든다.
아이템을 내려놓은 위치를 메모할 수 있도록 방의 좌표를 화면 오른쪽에 표시하게 했지만 사실 전체 맵은 하나의 평면으로 되어 있고 계단처럼 보이는 것도 사실은 계단이 아니라 워프일 뿐이기 때문에 지금 생각하면 크게 도움이 되진 않을지도. 여기에 나름 여러 장소에 제작 테이블을 배치했지만 실제로 테스팅을 위해 반복해 플레이해 보니 주요 동선이 겹치는 한두 곳만 사용되고 위치에 따라서는 거의 쓰이지 않아 데드 에리어처럼 된 것도 되돌아보면 아쉬운 부분.
제목인 미로미나는 딱히 깊은 생각 없이 지었다. PICO-8에는 한글 폰트따위 없기 때문에 (사실 있어도 저 해상도를 생각하면...) 도트를 찍어서 만들만한 직선 획만 들어간 이름을 생각하니 이렇게 되었을 뿐. 마지막에 이 미궁을 빠져나갈 때 접촉하는 여신상에 다가가면 미나가 "나와 똑같이 생겼긴 석상, 묘한 기분"이라고 하는데, 역시 별 생각 없이 넣고 나중에 다른 게임에서 회수하면 하고 아니면 마는 정도로 생각했지만... 지금도 그냥 맥거핀으로 남아있다. 나도 모른다.
어드벤처
어드벤처 (1980, Atari 2600) 제목을 쓰다 만 게 아니라 정말 게임 제목이 한 단어로 '어드벤처'다. 이 때는 축구 게임 제목을 '축구'라 짓고 핀볼 게임 제목을 그대로 '핀볼'로 지어 발매할 수 있는 시
ludonomie.tistory.com
Katiusza #10 봄바 쿰 라우데
봄바 쿰 라우데 (2022) 전작인 #01 미로미나와 #02 카카카붐!에서 직접적으로 이어지는 스토리. 단지 집에 가려는 것 뿐이지만 극단적인 길치라는 것 외에 사실 별다른 설정이 없는 미나와 카카카
ludonomie.tistory.com
'Toponymie' 카테고리의 다른 글
Katiusza #03 나베이더 (0) | 2024.03.29 |
---|---|
Katiusza #02 카카카붐! (0) | 2024.03.29 |
마도물어 A·R·S (0) | 2024.03.28 |
아무거나 박물관 (0) | 2024.03.27 |
라이프 이즈 스트레인지: 비포 더 스톰 (0) | 2024.03.26 |