동접자 41만.
작년 한 해 게임계를 들썩였던 메이플스토리 빅뱅 업데이트의 기록이다. 대부분 사람들은 "어떻게 기획하면 저런 기록을 만들 수 있는가"에 대한 의문이 많지만, 다른 한쪽에서는 "41만 동접자를 어떻게 버텼는가?" 라는, 조금은 전문적인 의문을 가진 사람들이 있다. 그러한 현역개발자들을 대상으로 열린 넥슨 황의권 팀장의 '더 잘되는 게임을 위한 라이브 코어 개발' 강연에 참석해 이야기를 들어보았다.
일반적인 형태의 게임 개발의 경우, 프로젝트라는 이름으로 개발에 착수, 최종 릴리즈 되기까지의 과정은 비교적 순탄하다. 게임이 릴리즈되기 전까지는 유저들에게 공개가 되지 않는다는 점을 포함해, 만약 작업 진행 중 치명적인 실수가 발견되더라도 그러한 조치로 인해 고객의 피해가 발생하지는 않기 때문이다.
허나, 이미 라이브(Live)된 게임에서 추가적으로 개발을 진행하는 경우, 프로젝트 형태의 개발과는 또다른 난점이 있게 된다. 이러한 라이브 게임의 컨텐츠와 플랫폼을 아우르는 라이브 코어(Live Core)를 개발함에 있어 어떤 부분을 조심해야 하는지, 그리고 최근 진행했던 대규모 업데이트를 통해 얻은 경험에는 무엇이 있는지, 그 배움들을 공유하는 시간으로 강연이 채워졌다.
"라이브 개발에서 가장 중요한 목표는 방어"라는 화두와 함께 강연이 시작되었다. 라이브 개발의 목표는 지표의 하락추세를 '방어'하고, 돌발적으로 발생하는 이슈로부터 게임을 '방어'하며 '유지보수'하는 것 - 가장 근본적인 속성이 무에서 유를 창조하는 프로젝트 개발과는 성격을 달리 한다. 허나 최근 라이브개발의 트렌드가 공격적 업데이트를 통해 재탄생 및 기존 지표를 경신하는 쪽으로 흐르고 있기에, 메이플 빅뱅 업데이트를 거치면서 겪은 일들을 이야기하기 시작했다.
최근 메이플스토리의 빅뱅 업데이트를 진행하면서 가장 크게 화두가 되었던 것 중 하나는, 최초로 시행된 해상도 조정 및 창모드 시스템 지원이었다. 유저들의 계속적인 요구가 있어왔던 사항이라 빅뱅 업데이트 동안 이 오랜 숙원도 해결하자는 취지로 진행이 되었던 것인데, 무에 그리 어려울 것 있겠는가 하는 마음에 덥석 OK를 하고보니 이게 그렇게 만만한 일이 아니었다고.
흔히 개발자들 사이에서 Legacy Code - '유산 코드'로 직역되는 단어가 라이브 코어의 개발에서 늘 고민이 되는 부분. 이전에 작성되어 현재 라이브가 되어 있는 코드인데 해당 코드의 작성자가 더이상 해당 프로젝트 내에 존재하지 않는, 말 그대로 '선조의 유산'과도 같은 코드들과 늘 싸워야 하는 라이브 개발에서는, 해상도 변경과 같은 단순한 변경 조차도 엄청나게 힘든 일로 변한다.
최초 DirectX 8.0을 기반으로 개발된 메이플스토리를 창모드 및 해상도 조정의 변경을 위해 코드를 라인단위로 뜯어보느니, 차라리 DirectX 9.0에 맞추는 것으로 해결방안을 찾았다고 말하면서, 강연자는 이 부분에서 "메이플스토리가 DirectX 8.0에서 창모드시 화면 주파수 동기화만 지원해 줬더라도 이 고생은 하지 않았을 것"이라고 말해 좌중의 공감과 웃음을 얻어내기도 했다.
이어서, 경이적인 동접자 수를 기록한 빅뱅업데이트를 통해 몰려드는 사용자들의 접속으로부터 서버를 '방어'했던 경험을 바탕으로 관련 이야기를 이어갔다.
"새로운 지표를 달성한다는 것, 그 자체가 아무도 가보지 못했던 곳을 처음으로 밟아보는 것과 같다"며, 이전까지 경험해 본 적이 없기에 어떤 일이 발생할지 모르고, 때문에 만전의 준비를 기해야한다고 말한 황의권 팀장은, 라이브 개발이야말로 실패가 용납되지 않는 영역이기 때문에, 이후에 발생할 수 있는 문제상황의 예측이 무엇보다도 중요하다고 말했다.
물론 예상되는 모든 사태에 대한 대비를 할 수 있으면 좋지만, 인적/물적 자원에 한계가 있기 때문에 전체를 아우르는 대비를 하는 것은 현실적으로 무리이다. 그렇기 때문에 예상되는 문제상황을 좁혀, 정확하게 "저격"할 필요가 있다고 역설하면서, 이러한 예측에 있어 경험과 통찰력은 상당한 도움이 된다고 밝혔다.
이렇게, 성공적으로 서버 부하 최고치를 제어한 경험이, 지금에 와서 돌이켜보면 프로젝트에 대한 폭넓은 이해와 배짱을 가져다 주었으며, 또한 개발자로서 자신의 능력에 대한 자부심으로 남았노라고 강연자는 말했다.
강연의 마지막은 같은 업무에 종사 중인 동료들에게 경험에서 우러나는 조언으로 채워졌다. 현역 개발자들이 흔히 범하기 쉬운 실수가 '자신의 최선을 추구하다 팀의 최선에서 벗어나는 경우'인데, 이러한 충돌하는 상황을 두고서 자신의 만족과 팀의 최선을 동시에 만족할 수 있는 교집합을 추구할 것을 부탁했다.
특히, 같은 팀 전체가 괜찮다고 하는데도 자신의 만족을 위해 빌드를 다시 짠다거나, 노력한 결과물이 완성되어 패치가 되려는 시점에서 '치명적이지 않은 마이너한 기능 개선'을 위해 팀의 일정을 미루는 등, 팀의 목표를 위해 절대로 해서는 안되는 금기 두가지를 염려하는 것으로 강연을 마무리 지었다.
인벤 주요 뉴스
▶ [포토] 어떤 추억은 돈으로 살 수 있다, 20회 맞은 레트로 장.. [4] | 이두현 (Biit@inven.co.kr) | 05-26 |
▶ [뉴스] 기업형으로 진화한 '게임핵'...게임위, 5년간 26,925건.. [4] | 이두현 (Biit@inven.co.kr) | 05-26 |
▶ [포토] e스포츠부터 야시장까지, PlayX4 채운 '이터널 리턴' [0] | 이두현 (Biit@inven.co.kr) | 05-25 |
▶ [칼럼] 지금의 '게임 장르 구분', 최선인가? [11] | 정재훈 (Laffa@inven.co.kr) | 05-25 |
▶ [포토] 1.5주년 맞은 '니케' "지휘관을 만나서 다행이에요" [2] | 윤서호 (Ruudi@inven.co.kr) | 05-25 |
▶ [뉴스] 라이엇, 페이커 헌정 '불멸의 전설 아리' 스킨 공개 [93] | 이두현 (Biit@inven.co.kr) | 05-25 |
▶ [인터뷰] 이제는 콘솔에 도전하는 '마녀의 샘R' [23] | 양영석 (Lavii@inven.co.kr) | 05-24 |
▶ [뉴스] 태풍으로 진화한 중국 게임업계의 '젊은피' [24] | 윤서호 (Ruudi@inven.co.kr) | 05-24 |
▶ [인터뷰] 핵심과 새로움, '플라티나 랩'이 그리는 리듬 게임 [4] | 강승진 (Looa@inven.co.kr) | 05-24 |
▶ [뉴스] 창세기전 모바일, 외전 시리즈 '템페스트' 예고 [22] | 이두현 (Biit@inven.co.kr) | 05-24 |
▶ [인터뷰] 케이프 "확률 대신 정교한 전술에 초점 맞췄다" [0] | 윤홍만 (Nowl@inven.co.kr) | 05-24 |
▶ [리뷰] 감나빗 없는 턴제 전술 게임 '케이프' [0] | 윤홍만 (Nowl@inven.co.kr) | 05-24 |
▶ [뉴스] 에픽게임즈, '파밍 시뮬레이터 22' 무료 제공 [0] | 이두현 (Biit@inven.co.kr) | 05-24 |
▶ [뉴스] 넥슨, 마비노기 20주년 오케스트라 '전국 투어' 개최 [0] | 이두현 (Biit@inven.co.kr) | 05-24 |
▶ [인터뷰] 왜 초밥끼리 싸우나요? 앞으로가 더 많은 '스시 배틀' [0] | 강승진 (Looa@inven.co.kr) | 05-24 |