이전에도 언급했던 것 같지만, 오빠와 나는 개발자 커플이다.
그래서 1주년 기념 선물로 줄만할 게 뭐가 있을까 싶다가… 오빠를 위한 텍스트형 선택지 게임(이하 텍스트 어드벤처 게임)을 만들어 보기로 했다.
사실 방향키로 움직이는 다른 단순한 게임을 만들어도 되었겠지만,
왜 굳이 텍스트형 게임이냐 하면 그만큼 오빠한테 하고 싶었던 말이 많았기 때문(...)
편지로 하기에는 뭔가 이전에 많이 전달했던 미디어 방식이기도 했고, 뭔가 내가 할 수 있되 오빠가 한 번도 못 받았을 만 한 선물을 해주고 싶었다.
아무튼 위에 적힌 이 외의 이유들을 포함하여 몇 가지 이유가 더 있긴 했지만, 1주년 기념 선물 중 하나로 웹 사이트로 텍스트 어드벤처 게임을 만들기로 했다.
사실 기술 스택이랄 것까지도 없다.
엔딩을 보면 저장되는 것이 아니므로, 데이터베이스가 필요하질 않으니 백엔드가 아예 필요없었기 때문이다.
그래서 프론트엔드단과 배포를 위한 클라우드만 있으면 되었다.
따라서 실제로 사용한 기술 스택은 아래와 같다.
이 게임, 프로젝트는 정말 한 사람을 위한 텍스트 어드벤처형 게임이니까.
그 사람만 사용할 수 있으면 되었기 때문이다.
개발 인원은 당연히 나 혼자. (내 남자친구를 위한 게임 웹 사이트인데 다른 사람이 끼는 것도 이상하잖아…?)
개발 기간은 넉넉잡아 딱 1달….이라고 생각했으나
난 분명히 넉넉하다고 생각했는데, 생각보다 1주년에 가깝게 맞춰서 개발이 끝났다.
기술 스택이 간단하다고 해서 로직이 그만큼 간단한 것이 아니었기 때문이다.
진엔딩 1개에, 노말엔딩 1개, 배드엔딩 2개의 총 4개의 엔딩을 가르는 로직 구현.
그리고 상황마다 다르게 보여줘야 하는 선택지들 때문에 은근히 꼬이는 부분이 많았다.
테스트할 때마다 원하는 루트대로 안 가고 계속 버그가 발생해서 애먹었던 경우가 많았기 때문이다.
무엇보다, 텍스트형 어드벤처 게임이다 보니 생각했던 것보다 텍스트의 양이 미친 듯이 불어나서
이에 대해 계속 수정해야 되었던 것도 시간이 늘어난 이유 중 하나가 아니었을까 싶다.
아무쪼록 여기서 느낀 건, 텍스트형 어드벤처 게임을 만들고 싶다면, 그 좋은 게임 엔진들 냅두고 굳이 리액트로 굳이 할 필요가 있을까였다.
굉장히 신선했다.
학부생 시절부터 1인 규모부터 10명 이상의 팀까지, 혹은 리액트, 안드로이드부터 백엔드, 풀스택까지.
다양한 팀의 규모와 기술스택으로 많은 사이드 프로젝트를 참여해 봐 왔지만, 그 중에서도 이번 사이드 개발 프로젝트가 가장 신선했다.
여태까지 수행했던 프로젝트들은 불특정한 다수의 사용자나 회사 사람들을 대상으로 한 개발 및 유지보수 프로젝트였다면
이 사이드 프로젝트는 정말, 오로지 단 한 사람을 위한 서비스를 개발하는 것이었기 때문이다.
내가 만든 웹 서비스가, 애플리케이션이 누군가에게 단순히 도움이 되는 것이 아니라 하나의 선물이 될 수 있구나. 하는 것을 이번 경험을 통해 확실히 느낄 수 있었다.
사실 위에서도 언급한 내용이긴 했지만, 괜히 게임 개발 엔진이 있는 것이 아니라는 것을 다시 한 번 깨달았다.
다시 한 번인 이유는 사실 학부생 시절 때 안드로이드도 텍스트형 어드벤처 게임을 한 번 만들어 본 적이 있기 때문.(… 인간은 똑같은 실수를 반복…)
학부생 저학년 때는 게임 개발자를 하고 싶기도 했었어서 여러 게임 개발 프로젝트를 수행해보기도 했었는데,
막상 대학 고학번이 되어서부터는 게임 개발을 거의 하지 않았다.
그래서인지 이번 게임 개발 프로젝트는 요근래 했던 개발 프로젝트에서 가장 재밌게 하지 않았나 싶다.
그럼 이번 사이드 프로젝트 회고도 여기서 끝!
낭-만 있네요