※ 본 내용은 Legacy Online 게임을 여러 각도에서 분석해봄으로서, 게임개발에서 고려해야할 사항들에 대해서 주지시켜주고 있는 글이다.
'Legacy Online' 이야기는 생각지 못한 장소인 쿠바에서 6년 전 즈음에 시작되었다. 그 곳에서 산타 클라라 대학(the University of Santa Clara; 캘리포니아의 Santa Clara University와 혼동치 않기를)의 쿠바인 학생 몇몇이 미친 꿈에 착수했던 것이다. LAN을 통해 게임을 즐기던 그들이 서로 플레이를 하다가 그들은 자신들의 기술적 능력을 이용하여 살아서 진화하는 비디오게임을 개발해보기로 했다.
초창기에 그들의 목표는 당시 전 세계에서 극소수의 회사들만이 다룰 수 있었던 MMOG(Massively Multiplayer Online Game)를 만드는 것이었다. 쿠바 전역의 인터넷 연결이 56k 모뎀을 이용했었기 때문에 당신은 이 프로젝트가 얼마나 야심에 찬 것이었는지 인정할 수밖에 없을 것이다.
학내 LAN을 통한 가상 인터넷에서의 초기 개발작업이 진행되는 동안 이 개발팀은 그 대 학의 교수와 함께 자신들의 아이디어를 캐나다의 어느 회사에 알렸고 마침내 오시어너스 커뮤니케이션 사(社)가 탄생했다. 그들은 쿠바와 캐나다를 오가기 시작했으며 견실한 개발팀이 오타와(Ottawa)에 만들어지고 현실에서의 개발작업이 시작되기까지 진짜 인터넷에서 자신들의 결과물을 시험해보았다. 숙련된 IT 노동자를 위한 항공 비자 계획은 이러한 과정을 순조롭게 해주었다.
원래는 ‘Star Peace'라고 불린 이 게임은 야심만만한 사업이었다. 그들의 아이디어는 비디오 게임 산업의 두가지 가장 성공적인 장르인 도시건설(city building)과 전략게임(strategy games)을 파생시켰다. 그 목표는 독특한 전장에서 상호간에 맞서는 수백 명의 플레이어들에 적합한 모든 것을 아우르는 경험을 만들어내는 것이었다.
새로운 행성에서 한 사회의 개발과 번영을 유지하기 위한 공장과 소매점, 창고 등의 건물들을 세워서 자신의 사업을 키워나가는 전 우주적인 실업계의 거물로 플레이어가 참여하게 될 현실적인 가상 경제를 만드는 것이 시작 지점이다. 이러한 행성들은 무(無)에서 시작하며 지구로부터 이주하게끔 가상화 된 시민들에 의해 점차로 그 인구가 증가한다.
플레이어가 상호작용과 현실적인 환경, 정치적 요소들을 키워나가기 위해 이러한 것들이 뒤엉키기 시작한다. 플레이어들은 도시의 시장 혹은 행성의 대통령으로 선출될 수도 있다. 이 게임은 플레이어에게 또 다른 목표를 제공하기도 한다. 어마어마한 부자가 되는 것말고도 행성을 개발하고 나서는 증명된 훌륭한 리더쉽과 정부, 도시계획 등의 유산을 남겨두고 떠날 수도 있다.
잠재적인 게임 수용자들은 엄청나게 많다. 도시건설 게임의 많은 팬들이 이러한 컨셉을 좋아하고 현실의 다른 플레이어들에 맞서 자신들의 능력을 테스트해 볼 기회를 터득할 것이라고 우리는 생각한다. 혁신의 또 다른 열쇠는 역할수행 게임(role-playing game; 당시에는 유일한 MMOG 장르였던)이 아닌 MMOG 아이디어이다. 흥미롭게도 오늘날조차 MMOG 게임의 90%가 RPG게임이다.
‘Legacy Online'은 올해 6월 16에 출시되었다. 하지만 온라인 게임과 마찬가지로 이 게임은 꾸준히 판매고를 기록하고 있다. 우리는 꾸준히 게임에 살을 붙여가고 있고 미세한 시스템 변경을 유지하고 있다. 우리는 이미 벌크(bulk)게임을 완성해 놓았고 앞으로 우리가 직면할 과제들을 헤쳐나갈 것이다.
심층 분석
What Went Right
1. 고유코드로 끼워넣은 웹 인터페이스 이용과 크지 않은 클라이언트.
(Choosing to use a web interface embedded in the native code and lightweight client)
게임 유저 인터페이스와 클라이언트를 디자인함에 있어 우리는 두 가지 구체적인 목표를 세웠다. 게임 속에서 이용자가 보게되는 포맷들과 같은 크기의 게임 데이터 이용을 용이하게 하고 다운로드를 편하게 하기 위해 클라이언트를 만들었다. 그리고 HTML과 ASP로 만들어지는 웹 기반의 컴퍼넌트들에 끼워넣은 고유코드의 골격을 이용하였다.
‘Legacy Online'과 같은 대용량의 게임에서 정보에 쉽게 접근할 수 있는 것은 플레이어에게 중요하다. 사업적 전망으로부터 ’Legacy Online'은 온라인 유통에 있어 저용량의 클라이언트로 인해 이점을 얻을 수 있다. 누구도 게임을 하기 위해 몇 시간을 기다리려고 하지는 않을 것이다.
2. 지휘 서버 (The Directory server)
‘Legacy Online'을 개발이 진행 중이었을 때 우리는 전통적인 데이터베이스 장치가 별로 좋지 않다는 것을 발견했다. 레지스트리는 정보를 저장하기에 매우 유동적인 지휘 방법이다. 윈도우 체제에서는 저장 용량에 한계가 있기 때문에 성장에도 제한이 있었다. 하지만 SQL 서버 데이터베이스의 레지스트리와 같은 레이어 장치를 가지고 우리는 실질적으로 무한용량의 정보를 저장할 수 있게 되었다. 지휘 서버는 또한 게임 서버 무리에서 주요한 역할을 수행한다. 지휘 서버가 모든 서버들의 배열 데이터를 다루기 때문에 이 것은 전 서버들의 중심이다. 지휘 서버는 또한 게임의 다른 서버들과 정보를 공유하기 때문에 많은 정보를 저장할 수도 있다. ’Legacy Online'의 서버들은 상호 의존하며 지휘 서버가 그러한 상호 작용을 조정한다. 지휘 서버 덕분에 우리는 웹사이트(www.legacyonline.net)를 유지하고 발전시켜나가는 데 많은 시간을 절약할 수 있다.
3. 저대역폭 요구와 고(高) 레이턴시 이용자의 더 나은 반응
(Low bandwidth requirements and good response with high latency users)
수 천명의 플레이어들이 게임에 접속했는데 그들이 지탱할 수 있는 것보다 더 큰 대역폭을 사용한다면 게임 서버는 무너질 것이다. 열악한 연결 여건으로 매우 높은 레이턴시를 가진 이용자들이 무엇을 하든지 이용 가능하게 해야 한다. ‘Legacy Online'은 고전적인 클라이언트/서버 접근법을 따라서 높은 레이터시의 이용자가 다른 플레이어에게 영향을 미치지 않게 했다. 어찌 되었던 간에 이 게임은 ’Massively Multiplayer Strategy Game'이기 때문에 슈팅이나 액션과 같이 즉시적인 반응을 요구하지는 않는다. 그래서 레이턴시는 그다지 큰 문제가 아니다.
4. 다언어 지원 (Multilanguage support)
‘Legacy Online'이 “Montecristo Games"에 의해 ’Star Peace'라는 이름으로 처음 출시 되었을 때 세가지 언어, 즉 영어, 불어, 독어로 지원 가능하게 했다.
5. 새로운 유형과 가상 게임들을 첨부하기 위한 게임 조절의 용이
(Easy modification of the game to add new features and sub-games)
상당한 양의 상세 표현과 깊이들이 나타나는 ‘Legacy Online'과 같은 게임에서 경제 매개변수를 변경하거나 약간의 첨부를 하면 시스템을 다시 셋업 해야 하는 것은 당연하다. 그러나 우리는 최근에 극적으로 ’Legacy Online'의 공간을 확장시킬 개발을 이뤄냈다. 자자한 업데이트들은 이용자들에게 자동적으로 다운로드될 수 있는 것이다.
What Went Wrong
1. 첫 발매업체의 압력으로 인한 성급한 출시
(Premature release of the game under of the pressure of the first publisher (Montecristo Games))
2000년에 "Montecristo Games"와 ’Legacy Online'을 출시하기로 계약했을 때 즉각적으로 베타에서 골드로 게임을 바꾸는 과정에 착수했었다. 그러나 출시일은 우리를 압박했고 우리는 결국 발매업체에 더 많은 테스트가 필요하다고 주의를 경고했다. 예정대로 출시일에 게임은 나왔고 그것은 재앙이었다. 몇 달 후 “Montecristo Games”와의 계약은 파기되었고 우리는 서버를 오타와로 가져왔다. 결과적으로 서비스 개량은 즉시 이루어졌고 이용자들은 그 시기를 암흑기라 불렀다.
2. 데이터베이스가 아닌 파일에 의존한 캐쉬 시스템
(The use of a cache system based on files instead of a database)
전략게임이니 만큼 ‘Legacy Online'서버의 주된 업무는 게임의 가상 세계를 만들어 내는 것이다. 그러나 모든 개인 이용자들이 가상 세계에 어떤 반응들을 요구하게 되면 가상 세계를 재현해내는 서버는 너무나 느려질 것이다. 문제는 우리가 캐쉬 시스템을 윈도우 파일 시스템으로 했다는 것이다. 파일 시스템은 빠르고 어느 정도는 안정적이지만 우리가 운영하는 캐쉬 유형은 데이터베이스가 더 적격이이다. 그러나 당시에 데이터베이스가 너무 느려서 우리는 어떤 혁신을 취해야만 했다. 꾸준한 최대치 활용을 통해 우리는 최근 게임이 요구하는 것보다 더 여유있는 캐쉬 시스템을 만들어냈다.
3. 클라이언트/서버 프로그램으로 델피 5를 선택
(Choosing Delphi 5 for client/server programming)
언어는 ‘Legacy Online'의 가장 이상한 부분 가운데 하나이다. 몇 번의 시험을 거쳐 Java가 최선이 아니라는 결론을 내렸었고 오리지널 개발팀은 C++이나 Java를 포함한 다른 프로그램 언어보다 나은 Object Pascal(델피 3.0)을 가지고 작업을 했었다. 이 것의 장점은 개발 주기를 더욱 쉽고 빠르게 해준다는 것이었다. 그러나 델피는 코드 생성과 활용의 극대화 측면에서 시장의 경쟁자들에 비해 사례들이 부족했다. 어떤 혁신적인 작업을 할 때마다 다른 언어들을 찾았었고 모든 것을 다시 시작할 수 있다면 아마도 우리는 다른 언어를 사용할 것이다.
4. 기대 이상으로 어려운 난이도 (Learning curve for players was higher than expected)
‘Legacy Onlin'은 다중적인 의미들을 내포하고 있었고 숙련자가 되기까지 생각지 못했던 시간들이 소비되었다. 결국 게임의 복잡성을 겁낸 많은 플레이어들을 잃었다. 우리는 새로운 플레이어들이 게임을 이해하도록 돕기 위한 다른 도구장치들을 만들어야만 했다. 새로운 게임 안내서 또한 만들었다.
5. 불충분한 자금, 비자 발행, 다른 작업장에서의 문제들
(Insufficient funding, Visas issues, other workplace problems)
새로운 MMOG를 향해
‘Legacy Online'을 개발한 것은 대단한 모험이었다. 이것은 우리들 모두에게 첫 번째 게임이었기 때문에 우리는 가능한 많은 것들을 배울 것이라고 기대했다. 다행히도 결국에 우리는 제품 개발에 있어 따르는 모든 문제들을 처리해냈다. 우리는 전문적으로 혹은 개인적으로 많은 것을 배웠고 이제는 새로운 게임 특히 ’MMOG'를 개발해낼 수 있는 우리 회사의 능력에 많은 신뢰를 갖고 있다. ‘MMOG'는 더욱 인기를 끌게 될 것이지만 우리 회사와 같은 노하우를 가진 회사는 정말 드물다.
* 출 처 : http://www.gamasutra.com, 2003년 9월 15일
* 작 성 : 이 성 우/게임산업저널 미국통신원