Robotopia

마지막 수정 시각: 2021-08-02 22:49:29

NEXT 3학기 수업의 백미는 바로 개발 경험 프로젝트이다. 개발 경험 프로젝트에서는 1,2학기 때까지 배운 내용을 바탕으로 자신의 전공에 맞는 프로젝트를 진행하며 경험을 쌓는다. 게임 전공의 경우 3~4인 정도가 한 팀이 되어 약 3개월 동안 게임을 만들게 되는데, 이 과정에서 정말 많은 경험과 지식을 쌓을 수 있다.

나는 프로젝트 수업에서 게임을 제대로 잘 만들어보고 싶었기 때문에 3학기가 시작하기 거의 1~2개월 전부터 프로젝트 수업을 준비했다. 일단 프로젝트 수업에서 cocos2d-x를 써서 게임을 개발한다는 이야기를 듣고 먼저 cocos2d-x로 간단한 게임을 만들고 사용 방법을 익혔고, 수업을 들으면서 봤던 사람들 중 누구랑 같이 게임을 만드는 게 가장 좋을지 많이 고민했다.

팀원들

우선 어떻게 각각의 팀원이 정해졌는지부터 보자.

짱샘

제일 처음 같이 게임을 만들기로 이야기됐던 분은 짱샘 형(사생활 보호를 위해 적당한 별명으로 ㅋㅋ. 이하 다른 팀원들도 별명으로 적을 예정)이었다. 처음에 같이 게임 만듭시다!라고 했던 건 내 생일 때였는데, 그때 생일 선물 명목의 햄버거를 얻어먹으면서 프로젝트 수업에 대해 이야기를 나누다가 같이 게임을 만들기로 했었다.

이 분과 처음 알게 됐던 건 NEXT 1학기 때 자료 구조 알고리즘 수업이었는데, 나는 그때 이 분이 문제 해결 능력이나 설명하는 능력, 적극적으로 문제를 해결하려는 끈기 같은 게 참 대단하다고 생각했었다. 그리고 이 건 다른 팀원 분들을 포함해서 모두 공통적인 부분이지만 게임에 대해 관심이 엄청 많았고, 게임을 만드는 것 자체에 대한 열의가 대단했다.

아무튼 그래서 처음에 짱샘 형과 같이 게임 만들자!라고 이야기를 했었고, 그대로 수업 듣느라 바빠서 한 달 정도의 시간이 더 흘렀다. 나머지 두 분의 팀원은 그다음에 정해지게 됐다.

스미스

두 번째로 정해진 팀원은 스미스 형이었다. 이 분이 바로 이전 편에서 말했던 Swimming smith를 만드신 분으로, 그 게임을 봤을 때 당시에는 이 분과는 듣는 수업 중 딱히 겹치는 게 없었기 때문에 어떤 분인지 잘 몰랐었다. 다만 이전 편에서도 이야기했듯이 개발을 배운 지 얼마 되지도 않은 상황에서 자신만의 게임을 만들고 완성했다는 것 하나만으로도 정말 대단하다고 생각했다.

게다가 게임의 경우 그래픽도 굉장히 중요한 요소이기 때문에 그래픽을 할 줄 아는 팀원이 있는 편이 당연히 좋다(같은 게임이라도 그래픽에 따라 퀄리티가 엄청 달라 보인다). 스미스 형의 경우 Swimming Smith의 대부분의 리소스를 다 직접 작업하셨기 때문에 그래픽적인 면에서도 많은 힘이 될 거라고 생각했었다.

숲도

마지막으로 정해진 팀원은 숲도 형이었다. 이때 꽤 고민이 많았는데, 당시에 1,2학기 지나며 꽤 친하게 지내고 있던 동갑내기(NEXT의 연령대는 굉장히 다양하게 분포되어 있어서, 동갑내기를 보기가 쉽지 않다) 리니라는 친구랑 같이 프로젝트를 하고 싶기도 했기 때문이다. 다만 그때 그 친구는 다른 친구와 같이 프로젝트를 해야 할 거다, 라며 같이 하는 것을 좀 주저했기도 했고 성격적인 면에서 과연 팀으로 잘 융화가 될 수 있을까에서 걱정이 되기도 했었다.

물론 그 친구가 성격이 나쁘다는 말은 아니다. 하지만 나는 같이 게임을 만들려면 성격이 좋냐 나쁘냐를 떠나 서로 성격이 맞고, 서로가 생각하는 게임의 형태가 비슷한 게 좋다고 생각했다. 숲도 형은 그런 면에서 성격적으로 팀과 가장 잘 맞을 거라고 생각했다.

어쨌건 그렇게 모든 팀원이 정해지게 되었다. 나를 제외한 세 분은 모두 나이가 같았고 나만 상대적으로 나이가 좀 어렸는데, 아마 알게 모르게 내가 다른 분들께 실수를 꽤 많이 했을 것이다. 좀 어리기도 했고 성격도 좀 다혈질이었으니. 다행히도 다른 분들이 내 성격을 잘 받아주셨고 그래서 프로젝트가 즐겁게 잘 돌아갔던 것 같다.

그리고, 아무튼 팀원이 모두 정해졌으니 이제 가장 중요한 질문이 남았다.

무슨 게임을 만들지?

만들 게임을 정하고 팀원을 모은 게 아니었기 때문에, 팀원을 정한 이후 거의 2~3주 동안 계속 어떤 게임을 만들 것인가에 대한 회의를 가졌다. 여러 번의 회의를 거치면서 각자가 재밌게 했던 게임들도 쭉 훑어보고, 게임의 재미란 게 무엇이냐부터 게임에 어떤 요소들을 넣을지 등 게임 콘셉트부터 시스템까지 다방면에서 엄청 많은 토론을 했었다.

그러다가 모든 팀원이 어느 정도 공감하는, 우리가 만들 게임이 주고 싶은 핵심 경험이 일차적으로 정해졌다.

바로 워크래프트 시리즈의 유명한 대사인 왕위를 계승 중입니다, 아버지(Succeeding you, father)를 플레이어가 수행하게 만드는 것. 다르게 말하자면 패륜 게임이라고도 할 수 있겠다. 뭔가 게임의 최종 보스가 나의 아버지, 어머니, 혹은 나 자신 같은 반전이 있는 게임. 혹은 그 패륜적인 요소를 재밌게 표현한 게임. 처음에는 이런 콘셉트로 만들려고 했었기 때문에 팀 이름도 아서스가 됐었다(워크래프트 스토리를 모르시는 분들은 아마 이게 뭔 소린가 싶긴 할 것 같지만.. 궁금하신 분들은 아서스로 검색해보시면 대충 정보를 얻을 수 있을 것이다).

또다시 여기서도 엄청 많은 회의를 했는데, 우리는 모든 팀원이 재밌다고 동의하는 게임을 만들고 싶었고 그래서 각자의 의견을 합치려고 하다 보니 기획 회의가 자꾸만 반복되었던 것이다. 하지만 사실 모두의 취향을 완벽하게 만족하는 최고의 게임 같은 건 존재하지 않는다. 각자 자신이 좋아하는 게임의 요소가 조금씩은 다르기 때문이다. 결국 게임을 만들려면 누군가는 자신의 의견을 좀 양보해야만 하는데, 우리 팀에서는 명확히 결정권을 가진 사람이 따로 없었기 때문에 자꾸 회의만 길어졌던 것이다(이 부분이 게임을 만드는 과정에서도 많은 문제를 일으켰다. 이 이야기도 나중에 다시).

그렇게 게임 기획도 명확히 정해지지 않은 채 시간만 흘러가니 당연히 답답함을 느끼기 시작했고, 이대로는 안 되겠다. 뭔가 하나를 이제 정하긴 정해야 한다라는 것에 의견이 모였다. 그래서, 팀원 각자가 그때까지 이야기했던 내용들을 바탕으로 자신의 기획을 하나씩 만들어오고(즉, 자기가 가장 재밌다고 생각하는 요소가 중심이 되는 게임 기획서), 그 기획을 다른 NEXT 학교 분들(정확히는, 한 기수 위의 게임 전공 분들)에게 보여주고 그분들의 평가를 바탕으로 뭘 만들지를 정하기로 합의했다. 다만, 처음에 팀 이름을 아서스로 정하면서 생각했던 핵심 요소인, 나 자신이 최종 보스라는 요소는 어떤 형태로든 들어가는게 조건이었다. 각각 팀원들이 그 요소를 기반으로 만든 기획들이 개인적으로는 다 꽤 재밌었기 때문에 여기서 간략하게라도 그 기획들을 정리해두려고 한다. 이미 몇 년전 일이라 좀 기억이 가물가물하긴 하지만.

Wake Up!

스미스 형의 기획. 중심 아이디어는 이다. 처음에 시작하면 플레이어는 침대에서 일어난다(잠에서 깼다고 생각한다). 하지만 이건 꿈 속. 그러니까, 잠잤다가 일어나는 꿈, 아침에 비몽사몽할 때 분명히 잠에서 깨서 씻으러 갔다, 라고 생각했는데 막상 그게 꿈이었다. 같은 상황을 생각하면 될 것이다. 그래서 게임은 꿈 속에서 진행이 되는데, 꿈이기 때문에 꿈 속 세상은 끊임없이 변화하는 오픈 월드가 되고, 그 속에서 그 플레이어의 트라우마가 적으로 형상화되어 나타난다.

임의 목표는 더 나은 나 자신이 되는 것. 꿈 속에서 형상화된 트라우마들과 맞서 싸워 이김으로써 그 트라우마들을 극복하고 더 나은 자신이 되는 것이다. 그러다 꿈에서 그런 트라우마에게 공격당해 죽으면 잠에서 깨어나 실제 현실로 돌아오는(악몽을 꿔서 화들짝 놀라며 일어나는) 느낌. 그래서 트라우마들을 모두 처치하여 끝에 도달하면 거기에는 나 자신이 있는 것이다. 이 부분에서 사실 좀 기억이 오락가락하기는 하는데, 내 기억 상으로는 그 나 자신이 말하자면 내 안에 숨겨진 깊숙한 자아인 것이다. 나의 악한 부분, 나의 연약한 부분 등등 내가 싫어하는 나 자신의 모습이 형상화된. 그것을 극복하는, 혹은 그 자체까지 모두 보듬어 안아 더 괜찮은 나 자신이 되면 게임이 끝나는 것이다.

For My Father

짱샘 형의 기획. 짱샘 형은 Football Manager라는, 축구 팀의 감독이 되는 유명한 시뮬레이션 게임을 굉장히 좋아하는데 그 특성이 고스란히 반영된 기획을 만드셨다. 짱샘 형의 기본 게임 컨셉은 역병 물리치기였다. 어떤 평화로운 나라에 갑자기 역병이 들이닥치고 그 역병에 걸린 사람들은 좀비처럼 사람들을 습격하기 시작하고, 주인공은 자신의 군대를 이끌고 이 역병을 물리쳐서 왕국의 평화를 되찾으려 한다. 이 기본 설정 아래에서 플레이어는 자신이 갖고 있는 영웅들과 군대를 FM처럼 잘 운용해서 싸우는 것이 특징이다. 핵심적인 재미는 이 전투 방식에 있었고, 나 자신이 최종 보스라는 요소는 역병과 혼합해서 들어간다. 열심히 플레이하다가 게임 오버가 되면, 그 다음 플레이어는 이전 플레이어의 아들이라는 설정이고, 역병 군단과 싸워 죽은 아버지 및 그 아버지 휘하의 영웅들 역시 역병에 걸려 적으로 출현하게 되는 것. 물론 게임을 다 클리어해도 마찬가지 형태로 다시 역병이 돌기 시작했다! 라고 하며 이전에 게임을 다 클리어한 나 자신이 최종 보스로 들어갈 수 있게 될 것이다.

FM + D&D를 표방하며 전투 시스템을 상당히 상세하게 기획해오셨고, 역병 컨셉도 심플하지만 매력적이었던 기획안이었다. 특히나 나 자신이 최종 보스라는 소재는 내가 이전에 플레이했던 데이터를 다시 적으로 어떻게 집어넣을 것인가가 꽤 까다로운데 이런 시뮬레이션 류의 게임은 유닛 특성 및 스탯 계승만으로 꽤 그럴싸하게 흉내낼 수 있기 때문에 좋다는 느낌도 들었었다.

Sword Story

이건 숲도 형의 기획. 특유의 독특한 발상이 잘 살아있는 기획이었다. 이 게임의 제일 독특한 점은 개인적으로 배경 설정이라고 생각했다. 이 게임에서 플레이어는 사람이 아니라 이다. 게임의 최종 목표는 엑스칼리버가 되는 것. 플레이어는 어느날 마법이 깃들어 자아를 갖게 된 검이다. 혹은 뭐 신의 계시를 받았다든가. 그래서 플레이어는 언젠가 용사의 손에서 마왕을 무찌를 엑스칼리버가 되기 위해 여행을 떠난다. 그 과정에서 몬스터들을 잡고 다른 검들과 싸워 이겨서 자기 자신을 더 단련하고, 최종적으로 용사에게 선택받을 엑스칼리버가 되어 바위에 꽂히게 되는 것이다.

물론 여기서 최종 보스는 이전 엑스칼리버의 자리를 갖고 있던 검이고, 끝까지 클리어했다면 이전 엑스칼리버 자리가 내가 플레이했던 검이었을 테니 최종 보스가 나 자신이 되는 것이다. 나는 플레이어가 사람이 아니라 칼이라는 배경 컨셉이 상당히 재밌고 또 참신해서 좋았다.

Robotopia

마지막은 내가 생각한 기획. 나는 내가 좋아하는 배경인 포스트 아포칼립스 + 당시에 내가 즐겨하던 게임인 로그 레거시(Rogue Legacy)라는 로그 라이크 게임이 결합된 형태의 게임으로 기획했다. 당시에 생각했던 게임 배경 스토리는 아래와 같다.

전 세계의 문명이 모종의 사건으로 인해 멸망하고, 그와 함께 자연 환경은 인간들이 도저히 살 수 없는 환경이 된다. 그 때문에 결국 인간들은 육체를 포기한다. 고도로 발달한 과학 기술을 이용하여 인간들은 자신의 뇌 속 기억과 인격 데이터를 복제하여 로봇 속으로 이전시키고, 기술의 발전을 기약하며 그 육체는 모두 냉동 인간화시켜 격리 보관하게 된다.

인격을 가진 로봇이 된 인류는 최후의 대피소에 그들의 육체를 보관시켜놓고, 대피소 최하부에 존재하는 에너지 생성장치에 의해 만들어진 에너지를 이용하여 로봇의 몸으로 생활하게 된다.

그렇게 몇 십 년의 세월이 흐른 후, 어느 날 갑자기 대피소 상단에 존재하는 주거 구역과 그 하부간의 연결이 끊어지고, 에너지 생성장치로부터 공급되는 에너지의 양이 급격히 감소하게 된다. 플레이어는 그 이유가 무엇인지를 알아보기 위해 대피소 아래 층으로 파견된다.

플레이어는 탐사 과정에서 스토리를 차근차근 알아나가게 된다. 이 스토리를 모두 습득한 후에 최종 보스를 잡아야 진짜 엔딩에 도달할 수 있다.

연구 구역

갑작스럽게 연구 구역과 주거 구역이 차단된 것은 변이 생물체의 폭주 때문이었다. 연구 구역의 과학자들은 현 상황에서 자연 환경을 인체가 생존하기 적합한 환경으로 되돌리는 것은 불가능하다는 결론을 내렸고, 그들이 결정한 연구 방향은 역으로 인체를 현재 자연 환경에서도 생존 가능하도록 변조하자는 것이었다. 과학자들은 후세의 생태계 보존을 위해 인체와 마찬가지로 냉동시켜 보관한 일부 포유류들을 대상으로 변조 실험을 감행했고, 그 실험은 성공이었으나 문제는 그렇게 해서 만들어진 변이체들을 관리할 능력이 없었다는 것이다. 실험에 의해 만들어진 변이체들은 폭주하여 연구 구역 전체를 파괴시켜나갔고, 그 여파가 주거구역까지 미치지 않게 하기 위해 과학자들은 연구 구역 전체를 폐쇄하는 결정을 내린다. (이 내용을 연구 구역을 돌아다니며 연구 일지를 모아서 확인할 수 있다.)

격리 구역

격리 구역부터 주거 구역과 통신이 끊긴다. 주인공은 이 구역 이후부터 얻은 정보는 백업할 수 없으며, 주거 구역까지 전달이 되지도 않는다. 특수한 통신 장비 아이템을 획득한 이후 격리 구역의 정보를 주거 구역까지 전달 가능하다. 격리 구역에서 마주칠 수 있는 것은 깨지고 터져 엉망이 된 인체 보관소와, 변이 생물들뿐이다. 또한 격리 구역에서 확인할 수 있는 것은 가끔 나타나는 거대한 ”로봇 팔”이다. 로봇 팔은 주변의 생물을 감지해 그 것을 낚아채서 어디론가 가져간다. 플레이어 역시 이 팔에 의해 끌려가 파괴될 수 있으므로 이 팔을 피해 다니는 플레이가 필요하다.

관리 구역

관리 구역에서는 로봇 팔의 출현이 훨씬 잦으며 에너지 생성 장치에 가까워지면서 에너지 생성 장치가 생성 과정에서 내뿜는 열기에 변이 생물들이 이끌려 들어와 몬스터의 수가 굉장히 많아지고 또 강력해진다. 관리 구역의 출입 금지인 방에는 소각로가 존재한다. 로봇 팔들은 격리 구역과 관리 구역으로부터 생명체들을 붙잡아 와 소각로에 집어넣는다.

에너지 생성 장치

에너지 생성 장치에 도달하면 최종 보스인 관리자와 맞닥뜨리게 된다. 여기서 관리자와 싸워 이긴 후 플레이어는 그곳에 기록되어 있는 관리 일지에서 모든 사실을 알게 되지만, 이 전 부분의 모든 스토리를 모으지 않으면 이 내용을 보여주지 않고 다시 처음으로 돌아가 게임을 플레이하게 된다.

숨겨진 이야기

위의 격리 구역에서 인체 보관 장소가 대부분 파괴되어 있는 부분에서 짐작할 수 있지만, 변이 생물들의 폭주 이후 인류 문명은 이미 끝장이 난 상황이 되었다. 에너지는 동물의 사체로부터만 생성 가능한데, 변이 생물이 나타나기 전에도 비축되어 있던 자원의 고갈로 인해 스팀 에너지의 생성이 더 이상 불가능해질 위기에 직면하고 있었고, 연구를 위해서라도 에너지는 필요했기에 과학자들과 엔지니어들은 냉동 저장되어 있는 인류와 기타 동물들의 신체 일부를 자원 삼아 에너지로 만들기로 마음 먹게 된다.그 후 과학자들은 긴 연구 끝에 환경에 적응해낸 변이 생물을 만들어내게 되고, 이제 그 생물을 이용해 에너지를 생산할 수 있을 것이란 희망적인 관측이 있었으나 곧 변이 생물의 폭주로 인해 모든 과학자들이 파괴 당하고 연구 구역이 폐쇄되면서 인류 문명의 희망은 사라지게 된다. 여기에 더불어 변이 생물들이 격리 구역까지 침범해 들어와 인체 역시 제대로 보관할 수 없게 되었고, 관리자는 로봇 팔을 가동시켜 변이 생물을 이용해 에너지를 할 수 있는 한 생산하여 대피소의 시스템이 돌아가도록 유지하는 수 밖에 없었다.이 상황에서, 플레이어는 자신의 육체 역시 이미 파손되어 없어진 것을 확인하게 되고, 어떠한 희망도 없어진 상황에서 그는 결국 어쩔 수 없이 현재의 상황이라도 유지시키기 위해 관리자의 역할을 맡게 된다. -> 이 내용까지 전체 구성과 내용을 알게 되는 것이 진 엔딩(비극적 결말). 이 후에도 게임 플레이를 계속 이어나가는 것은 가능하다.제목인 ‘Robotopia’는 인류 문명은 완전히 멸망했으며 남은 것은 로봇들과 그들이 사는 공간뿐임을 나타내는 것. (Robot + Topia)

뭐 이런 스토리의 게임이었고 게임 플레이 자체는 횡스크롤 어드벤쳐 느낌의 게임이었다. 로봇이 되어 적들을 무찌르고 가장 마지막 층까지 내려가는. 스토리상 결국 최종 관리자가 나 자신이고 클리어해도 다시 내가 최종 관리자가 된다는 점에서 나 자신이 최종 보스라는 요소가 들어가는 것.

한 기획이 압도적으로 높은 점수를 얻거나 하진 않았지만 의견들을 종합한 결과 감사하게도 내가 만든 기획이 가장 좋은 평가를 얻었고, 그래서 Robotopia를 개발하기로 결정이 된다.

개발 시작

프로토타이핑 과정에서 절차적인 맵 생성이라든가 2d 횡스크롤 게임의 조작이라든가 UI를 어떻게 붙여야 할까라든가 하는 것들을 어떻게 해야 할지 알 수 있었고, 그 덕에 실제 개발 단계에 들어갔을 때는 개발이 상대적으로 수월하게 이뤄질 수 있었다. 프로토타이핑의 중요성을 좀 느낄 수 있었던 듯.

1주 차 ~ 3주 차

이때 당시에 우리의 개발 마일스톤은 아래와 같았다.

지금 생각하면 참 말도 안 되는 마일스톤이지만 당시에는 정말로 할 수 있을 거라고 믿었다. 실제로는 4주 차까지의 마일스톤도 제대로 마무리 못하고 끝났지만.

아무튼 그래서 당시 마일스톤에 따라 1주 차에는 내용은 텅 빈 껍데기 매니저 클래스를 만들고, 캐릭터의 기본적인 이동을 구현했었다.

이게 1주 차 결과물. 저기 네발 달린 스프라이트(인터넷에서 퍼온 것)가 캐릭터고 이걸 좌우 이동, 점프하는 것만 가능했다.

2주 차에 들어서서 새로운 것들을 집어넣으려고 하다 보니, 코드에 일일이 스프라이트 이름을 박아 넣고 애니메이션을 만들고 하는 게 굉장히 비효율적이라는 걸 느꼈다. 즉 Data-Driven 방식의 필요성을 몸으로 느낀 것이다. 그래서 이때 스프라이트 편집 툴과 애니메이션 툴 및 맵 생성에 사용할 모둘 편집 툴을 만들었고, 당연히 개발 마일스톤은 1주씩 뒤로 밀리게 되었다.

그리고 이게 2주 차 결과물. 맵 생성을 간단하게나마 완성했고, 전체 맵을 확인하기 위한 미니맵 UI도 추가되었다. 화면 가운데에 정신 사납게 튀어나와있는 게 미니맵인데 아무튼 맵이 랜덤 하게 생성이 잘 된다는 것은 확인할 수 있었다(그게 플레이하기 충분히 매력적인 맵인진 둘째 치고서라도).

그리고 이게 3주 차. 맵을 좀 더 그럴듯하게 구성했고, 오른쪽 하단에 보면 몬스터도 하나 추가됐다(이때 당시에는 버그가 있어서 제대로 동작하지는 않았었다). 그 외에도 캐릭터 근접 공격 기능, 기본 UI 등 꽤 많은 걸 추가했었다. 이때 아래로 점프하는 기능을 구현하면서 이게 생각보다 만만치 않다는 걸 깨달았었다. 꽤나 시간도 많이 잡아먹고 버그도 많아서 짜증을 유발했던 걸로 기억.

4주 차 이후

3주 차까지 꽤 매끄럽게 진행되었는데, 기억이 정확하게 나지는 않지만 4~5주 차쯤에서 문제가 생겼다. 당시에 우리가 설계했던 코드 구조가 너무 쓸데없이 복잡하게 만들어져 있어서 새로운 기능을 집어넣자니 어떻게 해도 삐걱거리고 버그만 생기는 상황이 되어버린 것이다. 처음에는 분명히 높은 목표를 가지고 최대한 유연하고 좋은 구조를 만들려고 했던 것인데 그게 오히려 독이 되었다. 괜히 복잡하게 구조를 만들기보다 적당히 필요한 기능에 맞춰서 짰다면 아마 오히려 문제가 생기지 않았을 것이다.

결국 그 구조 문제 때문에 거의 1주일을 코드 뒤집어엎는 것에 시간을 할애해야 했고 팀원들의 사기도 바닥을 치게 됐다. 코드 구조를 근본부터 뜯어고치지 않으면 도무지 진행을 할 수가 없는 상황이었기 때문이다. 이때 프로젝트 초반 단계에서 설계를 제대로 하는 것의 중요성을 정말 크게 깨닫게 되었다.

이건 4주 차 때 당시의 스크린샷. 캐릭터에 기어라는 개념이 있어서, 기어를 바꾸면 좀 다른 동작을 할 수 있다. 저 초록색 모드에서는 하늘을 날 수 있는 방식. 그리고 밑에 메이플스토리에서 퍼온 리본 돼지가 몬스터로 추가되었다. 역시 저 몬스터도 이 시점에서는 실제로 상호작용은 하지 않고 돌아다니기만 함. 이때 코드 뒤엎는 작업을 하느라 새로 추가된 것들이 거의 없다.

그리고 5주 차의 스크린샷. 기획상 로봇의 여러 파츠를 조립해서 게임에 들어가기 때문에 파츠를 정하고 업그레이드하는 UI가 필요했다. 이 시점에서 기능은 다 구현이 되진 않았지만 내용 없는 UI 화면만 먼저 추가됨. 그리고 캐릭터도 기존에 쓰던 퍼온 캐릭터가 아니라 직접 그린 캐릭터로 변경(스미스 형이 참으로 고생이 많았다).

그리고 6주 차. 배경 기본 타일이 변경되고, 내부적으로는 상당히 많은 부분이 바뀌었다. 스크린샷에서 캐릭터 양쪽으로 보이는 레이저 같은 각종 함정 타일들도 추가됐고, 맵 생성 알고리즘도 많이 개선됐으며, 캐릭터가 공격하거나, 공격당하면 죽고, 재시작해야 하고 하는 등 빠져있던 게임 상호작용을 6주 차에 모두 구현 완료했었다.

그리고 7주 차. 여기서 실제로 로봇 파츠 조립하는 기능 및 각 파츠의 능력 반영 등의 요소가 들어갔다. 그 외에도 스킬란에 보이는 저 스킬들도 모두 구현됐고, 새로운 몬스터도 추가. 6주 차까지 시점에서 기본 기능들을 거의 완성해뒀기 때문에 이때부터는 거의 콘텐츠 추가에 집중했고, 그래서 새로운 기능들이 1주일 만에 꽤 많이 추가가 됐었다.

8주 차에서 거의 최종 마무리 작업으로, 그래픽도 다듬고 타이틀도 추가하고 사운드도 추가했다. 각종 이펙트도 추가됐고(날아다닐 때 연기나, 공격당하고 공격하고 할 때 이펙트 등등..), 그 외에도 자잘한 버그 수정이나 밸런스 개선, 체력 회복 키트 추가, 새로운 로봇 파츠 언락 기능 등 필요하다고 생각했던 기능들을 구현했다. 그리고 맨 마지막 스크린샷은 보스 룸. 나 자신이 최종 보스가 된다를 핵심 재미로 생각했는데 결국 이리저리 치이고 하다 보니 그걸 구현하지 못했고, 그게 너무 아쉬워서 대신에 짱샘 형이 중간 보스를 하나 만들어서 넣으셨다.

그리고 그다음 주는 마지막으로 미세한 편의성 관련 기능 추가 및 자잘한 버그들을 수정하고, 프로젝트 포스트모템 발표를 준비했다. 프로젝트 최종 보고서의 상세한 내용은 여기서 확인 가능. 소스 코드 및 주차별 게임 파일도 모두 올라가 있다. 그 외에 아래와 같은 프로젝트 발표 용 데모 동영상도 만들었다(스미스 형이 고생하셨다).

개발 기간 2개월에, 다른 학교 수업도 전부 들으면서 만든 것 치고는 나쁘지 않은 결과물이었던 것 같다. 결국 핵심 재미를 구현하지 못한 것이나, 학기가 끝나고 방학 때 이어서 개발하기로 했다가 흐지부지됐던 것 등등은 아쉽긴 하지만. 처음으로 해본 협업이었고 어느 정도 소규모 게임을 끝맺은 것도 처음이었기 때문에 나 개인적으로는 많은 의미가 있던 프로젝트였다.