카테고리 보관물: Development

Articles for game development
게임 개발 관련 글

안녕하십니까? 오랜만입니다.

안녕하십니까? 오랜만입니다.

 

우선 1년 간 소식이 없었던 점을 사과 드립니다. 그리고 올해 안에 출시하지 못한다는 우울한 소식을 전하게 되어 슬픕니다.

저희는 한국에서 크라우드 펀딩을 한 팀 중, 게임이 나오지 않은 가장 오래된 팀입니다. 이 게임 개발 만으로 거의 5~6년이 지났습니다. 세 명의 대통령을 보았고, 올림픽은 두 번이나 지나갔지요. 그리고, 서른 초반이였던 저희는 이제 서른 후반이 되었습니다. 그렇게 긴 시간 동안 저희 둘은 사무실 안에 있었습니다.

믿기 어려우시겠지만 1주일 정도의 휴가 들만 있었을 뿐, 장기간 쉰 적은 없습니다. 물론 집에서도 작업을 했습니다. 모든 시간을 일에 몰두했다 말 할 순 없으나, 적어도 일을 하려고 책상에 앉아 머리를 쥐어 뜯고는 있었습니다.

그러니 저희를 불쌍히 봐 달라는 이야기는 아닙니다. 적어도 쉬거나 중단 없이 진지하게 하고 있다는 이야기를 전하고 싶을 뿐 입니다. 그 정도로 시간을 쏟았음에도 아직 게임이 나오지 않았다는 건, 저희 능력으론 너무 벅찬 프로젝트였다는 반증 일 수도 있겠지요.

어차피 많이 늦어졌고, 또 더 시간이 필요한 상황에서. 어떠한 변명이나 말을 하기보단 침묵하기로 결정 했었습니다. 소식을 알리거나 외부 활동을 같은 걸 중단하고 일에 집중하자. 어서 이 지긋지긋한 일이 끝나야 그 이후의 모든 일이 시작된다. 그렇게 생각했습니다. 그래도 오랜기간 작업 진행을 공유하지 않아 오해를 불러 일으킨 점은 정말 죄송합니다.

“저희에게 인디 게임 개발은 자존심이며, 마지막까지 자존심 굽히지 않고 완성하겠다.” 라고  이야기 드린적이 있습니다. 여전히 끝까지 그렇게 할 생각입니다. 그리고 이제 슬슬 그 끝이 보입니다.

그 동안 기다려주셨던 분들께 감사 드립니다. 죄송하지만 조금 더 기다려 주십시요. 반드시 좋은 게임으로 보답하겠습니다. 항상 죄송하고 감사합니다.

 

아미 앤 스트레테지: 십자군 플레이 영상(2017년 개발 버전)

표현의 자유, 터부 그리고 딜레마

역사 배경의 게임을 제작 한다고 결정 한 이후 부터, 제작팀이 계속 신경을 쓰는 일이 하나 있는데, 그것은 이른바 터부(Taboo)와 표현의 자유 문제이다. 십자군 시대를 다루는 만큼 게임 상에 등장하는 각 국가와 종교에 대한 터부는 처음부터 주의를 기울이고 있었지만, 솔직히 이야기하자면 ‘터부의 범위’에 대해서는 아직까지 객관적인 기준을 잡지는 못하고 있다.

터부에 대한 범위를 마련하기 힘든 가장 큰 이유 중 하나는 문화 별로 터부의 종류와 정의, 그리고 그에 대한 반응이 각기 다르기 때문이다. 때문에 “나는 괜찮다고 생각하지만, 상대는 그렇게 받아들이지 못한다” 상황이 발생한다. 그리고 이런 논란은 칼로 그을 수 없는 미묘한 지점들이 만들어내곤 한다. 게임을 가지고 몇 가지 예를 들어본다면 이런 것들이다.

분쟁 중인 영토에 대한 게임 내 영역 분류

십자군 전쟁 이후로 현대의 이스라엘과 팔레스타인 영토 분쟁에 이르기까지 중동의 영토 분쟁은 아직까지도 현재 진행형인 상황이고, 현재에도 한 번에 수십 수백명의 사상자가 발생하는 군사 충돌로 이어지고 있다. 비단 이 문제는 팔레스타인 지역 뿐만이 아니라, 유럽(우크라이나 분리 독립 분쟁), 지중해(키프로스 섬의 영토 분쟁), 이베리아 반도(스페인의 분리 독립 움직임) 등 사실 상 게임이 포괄하는 대부분의 영역에 존재한다.

World Map
유럽, 북아프리카, 중동, 그리고 세계 2대 종교를 아우르는 게임의 배경 상 영토 문제는 터부시 되는 부분일 수 있다

게임의 시스템 디자인 한계에 따라서 게임 안의 세계는 결국 게임 시스템에 맞게 편집이 될 수 밖에 없고, 이는 실존하는 영토 역시 마찬가지이다. 실제보다 단순화 된 게임 내 영토는 이에 엮여있는 사람들에게 불쾌감을 줄 수 있는 여지가 있다 – 밸런스 문제로 과장되게 설정 된 ‘팔레스타인 지역’, 실제보다 축소 된 ‘러시아 지역’, 과장되어 있는 ‘잉글랜드 지역’, 지역 시스템의 한계로 인하여 전혀 다른 지역으로 편입되어 있는 ‘유럽 지역의 다수의 중소 도시들’ 등이 잠재적 문제 요소이다.

역사 고증과 희화

KoHposter보통 역사를 다룬 영화 등에서는 매끄러운 시나리오의 진행과 흥미 유발을 위해 역사적 사실의 수정은 다큐멘터리가 아닌 이상 어느 정도 존재하곤 했다. 예를 들어 리들리 스콧 감독의 “킹덤 오브 헤븐”의 주인공인 “이벨린의 발리앙” 같은 인물은 유럽에서 건너온 총각도, 여주인공인 “시빌라”와 썸(?) 타는 관계도 아닌, 비잔틴 제국 황녀와 결혼하여 가정을 꾸리고 있던 충직한 중년 귀족이었다.

우리 게임의 경우 희극(Comedy)의 형태를 차용 함과 동시에 역사적인 인물들이 여럿 등장한다. 십자군 시대 당시 이슬람의 영웅인 살라딘과 바이바르스, 잉글랜드의 용맹한 사자심왕인 리처드, 신성로마제국의 신화적인 황제인 프리드리히 1세 바르바로사 등. 이들의 이야기는 극의 진행을 위하여 어느정도 과장되어 있다. 큰 틀에 있어서 역사적 사실은 맞춰나가고자 하고는 있지만, 세부적인 성격, 등장 인물들 간의 관계 등은 실제와 관계가 없는 경우가 대부분이다.

이러한 경우 일부 문화권에서는 영웅으로 받들여지는 위인의 희화화가 터부 시 되는 경향이 존재하는데, 이를 어떻게 처리해야 할지에 대한 고민이 있다.

기준 잡기?

기본적으로 게임의 내용을 정리 할 때 주요 목표는 “재미” 뿐만 아니라, 그와 동시에 내용이 특정 인물 /집단 /단체 / 국가를 “비하” 하지 않도록 노력한다. 하지만 앞서 이야기 한 “괜찮다고 생각했지만 상대방의 기준에서는 터부인 상황”에 대해서는 어떻게 해야 할까?

국내에서도 특정 단체의 활동, 유명 연예인의 발언, 작품의 내용 등에 의한 표현의 터부 논란이 예전부터 지금까지 쭉 있어왔다. 어떤 것들은 논란의 여지 없이 비하와 증오 표출을 목적으로 한 표현이지만, 개인적으로 극히 일부는 그것과 관계 없이 표현 대한 개인적인 불쾌감을 비하로 치부하는 경우도 보인다. 때문에 이런 사건들을 바라보고 있으면 터부의 정의에 대해 혼란 만 가중된다는 느낌이다.

모두를 만족 시킬 수는 없는 노릇이니 적당한 선을 긋고 만들고 싶은 것을 만들면 되는 것인가? 타인에 대한 존중은 기본적인 도리이지만, 의도와는 전혀 다른 상황에 대해서는 어떻게 대처해야 할 것인가? 역사를 다루는 창작물에 있어서 지켜야 할 선이란 것이 존재해야 하는가? 존재한다면 그것이 재미와 합치 할 수 있는 지점은 어디인가? 등에 대해서 계속 생각을 해 보지만, 딱히 쉽게 결론 나는 일이 아닌 듯 하다. 정답은 진짜 없는 것일까?

Docker 사용기

현재 파이드 파이퍼스의 웹 서버는 사무실 내에 비치 된 서버에서 운영 되고 있다. 아직까지는 – 그리고 아마도 앞으로도 대규모의 사용자를 대상으로 서비스를 하진 않을 것이기 때문에 지금의 웹서버 만으로도 충분하다고 개인적으로 생각한다.

하지만 문제라면 역시

같은 일. 서버의 위치 상 주말에 생기는 갑작스러운 정전 사태에는 어쩔 수 없이 대응하기 힘든데, 사실 이것에 대한 가장 명쾌한 해결책은 호스팅 업체를 찾아가거나 서버를 AWS 같은 서비스에 옮기는 것 뿐이다.

어쨌든 당장은 아니지만, 장기적으로는 지금의 사무실을 이전해야 할 가능성이 높은데다, 위와 같은 정전 등의 사태를 피하고 안정적인 서비스를 유지하기 위해 웹서버를 안정적인 곳으로 옮길 생각은 하루에도… 아니 한 달에도 몇 번은 하고 있었다(비즈스파크로 받은 애저 이용권은 대체 어디에 먼지가 쌓인채로 처박혀 있는지는 묻지 말아 주시길 – 실은 최후의 날을 대비해 묵혀두고 있다고…).

이런 와중, 화창한 어느날, “님, Docker 한 번 키워보시죠” 라는 아노아씨의 영업에 내가 덥썩 낚인 것은, 그날 그가 자랑하던 라즈베리 파이2(Raspberry Pi 2)의 아름다움에 눈이 멀어서 때문만은 아니었을 것이다.

Raspberry Pi 2
나, 나도 갖고싶다!

Docker? 뭔가요 그건?

기술자가 아닌 내가 도커(Docker)에 대해 이해하고 있는 것은 “무언가 VM이랑 비슷한 기술인데, 리눅스에서 돌아가고 엄청 가벼워” 라는 것이다. “리눅스의 컨테이너 가상화 기술에 기반한 경량 컨테이너” 라고 하는데 기술적인 설명은 여기를 참조하자.

Docker Logo Image

왜 하필 도커 같은 힙 한 기술에 주목을 하고 있었느냐고 한다면,

  • 어쨌든 웹서버는 언제가 되었든 옮길 필요가 있었다.
  • 새 환경에서 OS, 웹서버 프로그램, DB 세팅 같은걸 일일히 다시 하고 싶지 않았다.
  • 호스팅 업체는 여러 이유로 커스터마이징을 잘 허용하지 않는다.
  • VM(Virtual Machine)은 일단 용량부터 너무 무거웠다 – 가상 하드 디스크가 아무리 못해도 Gb 단위.

이러한 문제에 대해서 도커는 꽤 많은 장점들이 있었는데,

  • AWS 를 비롯한 다양한 서비스들이 도커를 지원하기 시작했다.
  • 서버 이전 때 마다 무거운 VM을 몽땅 옮길 필요가 없다. 이미지 크기가 그저 수백 Mb 정도.
  • 현재 웹 서비스를 운영하는데 필요한 어플리케이션이 이미지 형태로 다양하게 제공되고 있다.
  • 어플리케이션의 설치 / 설정 / 삭제가 무척 용이하다.
  • 때문에 웹 서버의 이전도 손쉽게 할 수 있다.

정도가 되겠다.

Docker 입주 이야기

도커의 설치 과정 자체는 손쉬웠다. 깔끔하게 새로 설치한 우분투 머신에 설치 가이드에 따라서 설치를 하고, 워드프레스와 MySQL(이후 MariaDB로 갈아탐) 도커 이미지를 다운로드 받고 컨테이너를 띄우고 워드프레스가 정상 동작하는지 확인하는데 걸린시간은 (OS 설치 시간 제외하고) 딱 10분(그나마 영어 페이지 해석하고 메뉴얼 읽고 하는 시간이 대부분이었다).

이렇게 손쉽게 웹서버 + 워드프레스의 세팅이 끝날 줄은 정말 기대하지 않았었다. 물론, 기대하지 않은 일은 이 이후에 또 벌어졌지만.

기대하지 않은 두 번째 일은 바로 기존 웹서비스를 그대로 이전하는데 대한 난관에 봉착한 것. 몇 가지 이유로는…

  • 공식 어플리케이션 이미지들은 서비스 이전이나 복구가 아닌 처음 사용에 대해서만 안내하고 있다.
  • 공식 이미지의 구조를 일일히 뜯어서 확인해야 커스터마이징이 가능했다.
  • 서비스를 제대로 이전하기 위해서는 워드프레스의 구조를 파악해야만 했다.
  • 처음 컨테이너를 만들 때 설정한 옵션의 변경 방법을 결국 끝끝내 찾지 못했다 – 이것 때문에 컨테이너를 만들었다 지웠다가 몇 번이었는지… 누군가 친절히 알려주신다면 감사!
  • 가장 큰 문제는 일단 내가 전문적인 웹서버 관리자, 웹서비스 개발자가 아니다. (…..)

어쨌든 컨텐츠를 이전, 기존의 공유되었던 글들의 고유주소 문제를 해결, 플러그인 복구, 워드프레스 재세팅 등등의 일들을 각종 삽질 끝에 성공적으로 마무리하고 새로운 서버를 시작한 것이 지금의 상태. 현재 이 페이지는 도커 위에서 워드프레스와 MariaDB를 이용하여 동작 중에 있다.

지금의 웹 서버 이전 작업은 언젠가를 위한 작업이다. 과연 그 언젠가가 언제 올 것인가! 같은 사소한 의문은 뒤로하고 일단은 만들던 게임 제작을 위해 도커 사용기는 여기까지. (사실 더 할 이야기가 없… 읍!읍!)