칼럼? 게이머분들을 위해 쓰는 MMO 핵심 기술은 무엇인가? 다니엘 04-27 조회 3,747 공감 3 33

읽기전에...

1. 추측에 기인한 것들입니다. 적확하고 검증된 데이터가 없습니다. 하지만 납득은 가실 내용도 포함되어 있습니다.

 

2. 개발자 분들이 아니라 그냥 일반 게이머 분들이 보세요. 아 그럴 수도 있구나 하는 겁니다.

 

3. 별거 아닌 글입니다. 그런데도 무진장 기네요. 걍 지울까요^^:;;

 

요즘 말도 많고 탈도 많은 ( 관련 기사 리플을 보니 87개 넘는 리플이 달려 있네요. ) L3 개발자 사태(?) 에 관한 글입니다.

 

이 글은 개발자 분들이 보시기에는 좀 뭣하겠고 MMO 제작에 대해 모르시는 분들이 보시기에는 조금 도움이 될 듯 합니다.

 

먼저 핵심 기술이란 부분에 대해 좀 알아볼까요?

 

1. 클라이언트 엔진 및 소스 레벨에서의 기술


2. 캐릭터 모델링 및 애니메이션 그래픽 기술


3. 배경 그래픽 및 레벨 디자인 기술


4. 서버 엔진 및 소스 레벨에서의 기술.


5. 네트워크 관리 및 서버 관리 기술


6. 컨텐츠 제작 및 유지 보수 기술 ( 소스 레벨이 아닌 기획 레벨에서의 밸런싱 및
업데이트 관리까지 포함한.. )

 

자 대략 6개 정도의 카테고리 분류가 가능할 듯 합니다.

( 이건 순전히 개발에 관련된 구분입니다. 더 많은 구분 낼 수도 있을 겁니다. )


그리고 생각하시는 대부분은 1,4번에 집중 되어 있는 것 같네요. 자주 언급되는 것도 소스 코드, 그리고 답을 주신 몇몇 분 들 역시 프로그래머 분들이시니까요. 모르시는 분들이 보면 박터질 이야기 많이 하셨습니다. ( ^^;;; 힘드셨겠어요. )

 

자 이제 본론으로 들어가기 전에 몇가지 짚어 봐야 겠습니다. 먼저 생각해야 할 부분은 다음과 같습니다.

 

A. 면직된 박팀장 이하 다른 개발자들은 위의 어디에 속해 있는가?

면면들을 알아보면 대부분 팀장급일 겁니다.


그렇다면 서버/클라이언트/캐릭터그래픽/배경그래픽및레벨디자인/기획 모두 포함되겠네요.


일단 핵심이라면 핵심일테니까요. 그리고 어느정도 L2 개발에 연관을 가지고 있던 사람들이 대부분일거라 봅니다.

 

MMO 개발 해보시면 아시겠지만 실제 개발 이후 상용화단계에 접어들면 대규모 패치전까지 유지 보수 개념이 많이 들어갑니다.

 

이 과정에서 수많은 기획 문서들 ( 주로 편의성 향상, 벨런스 패치, 이벤트.. 등등 )
이 양산됩니다.

 

이건 뭐 게임의 특성에 따라 내용이 바뀌긴 합니다만 패치의 내용이 바뀌는 것이지 실질적인 패치의 형태는 대동 소이합니다. 유지 보수 과정에서 새로운 스킬이 들어가거나 새로운 캐릭터가 나오는 게 아닙니다. 물론 편의 패치로 스킬의 내용이 수정될 수는 있죠.

 

대규모 패치는 완전한 업데이트 개념입니다. 즉, 캐릭터 추가, 맵추가, 몬스터 추가, 아이템 추가, 퀘스트 추가, 그리고 각종 인첸트 시스템의 변경, 신규 시스템 추가 등입니다.

 

자, 위의 패치에 대한 내용을 한번 보시고 다시 생각해보세요.  여러분은 핵심이란 단어와 게임이라는 단어 두개 중에 방황하고 계시죠? 그럼 핵심은 어떤 걸까요? 소스 코드 일까요?

 

리니지를 플레이하면서 소스 차원에서의 무엇을 고민하는 게이머 분들은 없으실 겁니다. 위의 내용들이 바로 게이머들, 즉 해당 게임을 하는 사람들의 핵심 기술이겠죠?

 

어떤 의미에서 위의 7명은 모두 L2에서 넘어온 사람들일겁니다. 그러기에 L3 같은 연계성있는 대규모 프로젝트의 팀장급으로 선출되었을 거라 봅니다. 실질적으로 NC를 먹여 살린 개발자들이라고 할 수 있겠군요.

 

B. 어떤 의미에서의 핵심 기술인가.

먼저 클라이언트 엔진 및 소스 레벨에서의 기술입니다. 대부분 이쪽 일단 자체 제작임과 동시에 상용화가 가능한 수준의 엔진인가? 아니면 상용엔진을 라이센싱 받아 구매한 것인가?

 

NC급의 회사가 자체 엔진을 작성했다고는 보지 않습니다. 이미 다양하게 엔진을 라이센싱하여 클라이언트를 제작했던 경험 있는 회사입니다.


그리고 그 라이센싱 경험을 바탕으로 어느 정도의 노하우를 쌓은 개발자가 존재하는 회사이기도 합니다. 예를 들어 Unreal 2.X 대 엔진을 썼던 L2 개발팀의 메인 프로그래머가 L3 개발에서 Unreal 2.X 혹은 3.X 대 엔진을 써서 L3를 개발할 경우에는 L3 개발에 상당한 진척을 보였을 겁니다. ( 물론 3.X 대 엔진 사용하고 MMO 만드는 경우, 분석 기간 - 대략 1년? - 동안 흘릴 프로그래머의 눈물은 어마 어마 하겠네요. )

 

그럼 이 기술은 누구의 기술일까요. 기술의 법적 소유권은 회사입니다만 기술을 가진 사람은 해당 개발자입니다. 실제 기술 이전, 전수니 뭐니 해도 결국에는 개인에게 귀속되는 겁니다. ( 소유권 개념이 아니라 경험 개념입니다. 경험이란 건 그런거니까요. 그래서 업계에서는 경력자를 뽑는 겁니다. )

 

클라이언트는 비주얼한 환경, 즉, 유저의 눈에 직접 보이는 부분을 담당합니다.


즉, 비주얼한 최신 기술을 쓰는 부분이 많겠죠. 그러면 서버쪽은 어떨까요? 서버 역시 다양한 최신 기술을 씁니다. 분산 서버 기술이니 뭐니 하는 그런 테크닉적인 면부터 시작해서 사건 발생 시 처리 기술까지 ( 뭐, 이건 거의 운영 및 유지 보수 레벨인가요^_^), 그리고 보안쪽 관련 기술까지, 프로토콜 관리 ( 뭐 이건 기획에 상당 부분 의존해서 만들어져야 할 부분이네요. ), 인증 서버, DB 설계 및 관리,  기타 등등 기술들이 쓰입니다. 눈에 보이지 않는 안정성과 서버 크리티컬한 부분이라 느끼지 못하지만 또 금방 느껴 지는 부분이기도 합니다.

 

어찌보면 핵심은 클라이언트 레벨이 아니라 서버 레벨이 되겠네요. 이른바 프로그래밍
레벨에서의 핵심 기술입니다. 그리고 서버쪽에서는 L2 의 상당 부분의 소스들이 이미
재반복 내지는 재창조, 튜닝 되어 사용되었을 가능성이 큽니다. ( 서버 소스 코드 유출로 인한 불법 서버? 결국 장비 문제가 걸립니다. -_-;; 불법 서버가 문제가 되는 것은 그들이 자신만의 서버를 우후 죽순 격으로 만들어버린다는 것이지 하나의 단체, 회사, 혹은 특정 그룹이 NC급의 서버실을 만드는게 아니란겁니다. 그걸 분석한 사람이 NC급의 서버실을 만들 수 있는 회사로 가서 L2를 만든다? - 위메이드 Vs 샨다 파동 처럼? ㅋ 결국 짝퉁 나옵니다. 그 사람들 대리고 짝퉁 만들 투자자는 없겠죠? )

 

거대한 프로젝트에서 가장 안정적으로 돌아가야 마땅할 서버를 완전 새로 설계한다 해도 기존의 서버에서 쓰였던 검증된 기술을 포기할 서버 프로그래머는 없을 테니까요.

 

신규 프로젝트에 서버 프로그래머가 온다면 최신 기술을 자신의 기본적인 틀 안에서 도입하려 할 겁니다. 예를 들어 DB 선택이라거나 아니면 장비들의 선택등에서 기존에 이미 검증된 것들을 위주로 업그레이드 된 것들을 찾아보려 하겠죠.

 

그럼 기획쪽을 살펴보죠.


자, 시리즈물의 기획에서는 일정 법칙(?) 비슷한 것이 존재합니다. 뭐 영화를 봐도 전편의 장점을 극대화, 미미한 점 보충.. 어쩌고 하는 광고 문구 보셨을 겁니다만. 게임도 유사한 면이 있습니다.

즉 기존 시리즈 물의 장점을 극대화하고 전편에서 모자랐던 부분을 강화하는 단계입니다. 그 다음 새로 나올 새로운 컨텐츠들이 들어가겠군요. 예를 들어 아이온은 하늘을 날아 다닌다 라는 개념이겠죠. ( 물론 하늘을 날아다닌 다는 것이 핵심은 아닙니다. ) 결국에는 이런 컨텐츠들의 새로운 개념들이 어느 정도나 되는가?에서 그 답을 찾아야 할 겁니다.


상용화 되지 않은 것이라면 가능성의 영역이라고 할 수 있습니다. 물론 L3 라는 이름을 달고 나왔을 때는 이미 성공 가능성은 90% 정도로 높아졌다고 말할 수 있을 겁니다. 하지만 90%의 가능성일 뿐입니다.

 

한번 볼까요? L2의 기획 내용 ( 데이터의 구조에 대해서는 잘 모르시더라도 각종 벨런스 문서보다 더 많은 경험적 정보를 게이머 분들은 가지고 계실 겁니다. 그분들에게 관리 기술이 중요한 것은 아닙니다. ) 은 이미 공개된 정보입니다. ( 물론 문서로 존재한다면 좀 다르겠네요. )

 

그래픽 부분은 저도 잘 확인할 수 없습니다. 실제 그래픽 레벨에서 중요한 것은 아이템 디자인이 아닙니다. 어떤 쉐이더를 썼는가도 아니죠. 그래픽 만큼 프로그램, 특히 클라이언트에 영향을 많이 받는 부분은 별로 없을 겁니다. 이 부분은 엔진과 밀접한 관계를 가지고 있습니다. 버텍많이 쓴다고 그래픽 좋아지는 건 아닙니다. 화면발이란 것은 최적화와 최신 쉐이더, 그리고 빛, 매핑 소스, 기타 여러가지 효과를 통해 얻어지는 것입니다.

 

가장 중요한 것은 최적화겠군요. 이건 결국 사양과 네트웍 트래픽, 그리고 엔진이 얼마정도까지 받쳐줄 것인가에 따라 달라집니다.

 

하지만 그것보다 더 중요한 것은 레벨 디자인 개념입니다.
레벨 디자인, 이것은 동선을 맞추고 퀘스트를 배치하고 몹을 배치하고 드롭 아이템을 결정하며 게임 안에서 유저가 할 거리들을 제공하는 기반이 됩니다. ( L2의 경우 대부분의 것들이 다 공개되어 있습니다. 뭐하면 서점 가보세요. 잡지 공략 기사에 안나와 있는 잡지 있나 찾아보세요. )

 

이걸 내부에서 기획자가 처리할 것인가? 아니면 그래픽 디자이너 레벨에서 처리할 것인가는 개발 방식에 따라 결정되겠지만요.

 

위 5,6번 항목은 다른 의미에서 바라보아야 할 부분이라 넘어갑니다.

 

C. 위의 것을 가지고 무엇을 할 수 있나?
만약 새로 위의 팀장급 인원들이 회사를 차리고 동일한 엔진, 동일한 기획, 동일한 그래픽 기술을 가지고 게임을 만든다면 L3를 만들 수 있겠군요. 광고 카피가 떠오르는데요.

 

NC 핵심 개발자가 만든 새로운 차원의 3세대 MMORPG XXXXX

 

자, 손을 잡고 사업을 벌이려던 분도 꽤 자산가로 알고 있습니다. 그리고 핵심 개발자도 있습니다. 그럼 그 기획 그대로 가져다 썼을때 무엇이 나올지도 알 수 있습니다. L3 나오겠죠?

개발자들은 바보가 아닙니다. -_-

기획서? 회사 프로젝트 관리 서버 안에 모든 정보 남아 있습니다.

클라이언트 혹은 서버 프로그램 소스 레벨에서의 알 수는 없겠지만 기획 자체는 바뀌어야 합니다. 안그러면 바로 걸고 넘어갈 수 있을 테니까요.


그래픽? 원화 싸그리 바꿔 버려야 겠죠. ( 뭐 어딜가나 비슷비슷한 원화, 비슷비슷한 그래픽이라고 하지만 실제로는 상당 부분이 차이가 있습니다. ) 그래픽 역시 마찬가집니다. 즉 재사용은 불가능합니다.

 

서버, 클라이언트 부분은 모르겠네요. 같은 엔진 라이센싱 한다면 상당 부분 도움이 될 겁니다. 서버 쪽? ^^ 난감하죠? NC 서버룸 같은 것을 그대로 판박이 해버릴 각오라면 꽤 많은 부분을 써먹을 수 있겠군요.

 

하지만? 기획이 바뀝니다.-_-;;;


기획은 서버 및 클라이언트에게 상당한 영향을 줍니다. 이미 상용화 된 단계거나 프로토 타잎 완성되고 상용화가 코앞인 단계라면 모르겠지만 ( 그 수준에서 엔진크리티컬한 기획 내놓는 바보는 없습니다. ) 그게 아닌 이상, 그리고 많은 부분이 바뀌어야 하는 기획 특성상 결국 같은 것들을 그대로 내 놓을 수는 없습니다. 안정화된 코드를 기반으로 나오긴 하겠지만 결국 ? 마크가 붙을 수 밖에 없는 부분입니다.

 

D. L3 과연 어디까지 개발되었나?
글쎼요~~ 입니다.


개발 1년 프리프로덕션하고 엎어지는 프로젝트 많습니다. 같은 프로젝트도 계속 변경될 여지는 있습니다. 이건 팀이 가진 팀파워나 게임 개발 내용에 따라 좌지 우지 될 가능성이 큽니다.


2005년 말경에 L3 개발한다고 발표했던가요? 그럼 팀 구성하고 엔진 결정하고 프리프로덕션 만들고 각종 행정 작업과 여러가지 프리프로덕션 단계를 지나서 ( 엔진 구매이후 분석까지 포함한다면 좀더 골치아프겠죠. 혹시 L3 어떤 엔진 쓰는지 아시는 분 계신가요? ) 이제 모습 갖추고 시스템들 골격잡아서 내부에서 돌아갈 정도 되겠군요. 그렇게 2006년 한해 보내고 아마 프리 프로덕션 졸업하고 원화들과 각종 상세 내역들 작업에 들어갔을 겁니다.

 

물론 발표보다 좀 더 빨리 팀을 구성하고 프리프로덕션 들어가겠지만 그래봤자 6개월 정도네요. 즉 이 단계에서는 개발사의 오더가 집중되는 시기라는 겁니다. 이부분 살려라 이부분은 빼라.. 이부분은 바꿔라.. 등등등..

 

결국 초기 프리프로덕션에서 가진 몇몇 부분을 제외한 나머지 부분에는 기본 시스템부터 손질되었을 가능성이 큽니다.

 

E. 그들의 컴퓨터에 남겨져 있는 것은 무엇인가?
약간 방어적으로 이야기 하는 걸 용서하세요. ^^:; 먼저 생각할 수 있는건 L3 개발 관련 자료들입니다. 게임 개발자들 대부분이 워커 홀릭입니다. 회사에 남아 잔업하고 집에서 쉰다고 생각하는 개발자분들 거의 없을 겁니다. 그들은 집에서도 작업입니다.


기획자, 프로그래머, 디자이너 모두 집에 l3 관련 문서, 분석 코드, 매핑 소스 다 가지고 있을 겁니다. 그뿐일까요?


L2 관련 문서들은 어떨까요? 그들이 L2 개발에 개입했다는 전제하에서프로그래밍 소스, 기획 문서? 다 있을 겁니다. ( 아마 집에서 작업 안하고 회사서 그냥 주구장창 산다 하시는 분들도 있겠지만 -_- 5%나 되려나요? 그리고 성공한 개발자들입니다. )

 

검증되지 않은 L3 보다는 L2 쪽 자료들이 제게는 "바로 걸렸어~~! 닥치고 버로우" 버전으로 보입니다! ( 그리고 국내 게임 개발자분들 집에 가택 수색 영장 내밀고 들어가서 압수하면? -_- 모두 닥치고 버로우!! 입니다. )


물론 그걸 가지고 무얼 할 수 있나요? 라고 물으신다면 자본과 시간과 그리고 돈 버릴 ( 이미 나온 게임 판박이로 만들어서 L3 개발자가 만든 리뉴얼 짝퉁 L2 만들어보겠다는 말도 안되는 발상을 가진 투자자가 있다면 말입니다. ) 수는 있을 겁니다.


( 이부분을 가지고 모럴 헤저드라 부르신다면 할 말이 없습니다. 집에서조차 일하던 것들이 모럴 헤저드로 몰릴 가능성이 있다는 건 알고 있습니다만 다른 업계 분들은 어떨까요? 빠듯한 일정, 모자라는 시간, 잠까지 줄여도 회사 내에서 처리가 부족한 일들 야근 수십날 하고도 완성 못하니 집에까지 가서 일한다고 능력 없다는 분들 계시면 모르겠지만요.. 심지어 주말에도 일요일에도 공휴일에도 나와서 일하는 분들입니다. ^^;; )

 

다만 프로젝트 끝났는데도 안지웠네. 유출 시킨거 아냐? 라고 하신다면 바로 걸린 거겠죠.

다시 말해 닥치고 버로우~~! 할말 없어~~! 입니다.

 

F. 그럼 다시 돌아와서,무엇이 핵심기술인가?
클라이언트 소스? 엔진 레벨입니다. L3 엔진을 내부에서 만들었다 하면 이건 정말이지 언리얼 2.X 엔진보다 더 나은 수준의 엔진을 만들어야 한다는 겁니다.

 

즉, 비용대비 효과면에서 엔진 사서 쓰는게 옳습니다. 적어도 NC같은 자본력 있는 회사에선 말이죠. 또한 기존 엔진이라면 소스 분석은 개인에게 도움은 될 지언정 회사 레벨에서의 핵심 기술은 아닙니다.

 

( 물론 L2 언리얼 엔진 활용도를 아시는 분들은 대략 웃으실 겁니다. ) 다만, 클라이언트를 구성하는데 도움은 될 듯 합니다. 즉 동일한 엔진을 사서 무언가를 만든다면 개발 기간 단축에는 도움이 됩니다만, 설마 언리얼 2는 아니겠죠?

 

그럼 언리얼 3나 크라이시스 ( 아이온의 파크라이 엔진이 아닙니다. 가능성? 글쎼요. ) 가 아닌 다른 엔진 ( 예를 들어 Big world 같은 풀 MMO 엔진 - 실제 언리얼은 MMO용이 아닙니다. 서버 레벨 완전히 새로 짜야 합니다. 최근 국내에서 언리얼 엔진 쓴 게임의 장르를 보시면 아실 겁니다. 이건 FPS용 엔진입니다. ) 선택하면? 말짱꽝.-_-

 

또, 기획 바뀌면 엔진 선정부터 다시~~! 일 가능성도 큽니다.

 

서버 소스? 음.. 이건 정말 핵심에 가까울 수 있습니다. 다만 이 부분에서 조율이 상당 부분 필요합니다. 게임의 방향에 따라 완전히 바뀌게 된다는 겁니다. 기획과 게임의 방향이


"야, 우리는 이번에 SF 격투 게임으로 가자~!"


라고 되었다면 서버 쪽 말짱 꽝입니다. 기획 바뀌고 방향성 바뀌고 그러면 결국 테크놀로지는 그 방향성에 맞추어 지게 됩니다.

 

또 하나 더 있습니다. 상용 MMO ( 클라이언트, 서버, AI, 각종 툴등을 종합 팩키징한 ) 엔진은 이미 나와 있습니다. ( 국내가 아닌 해외에서요..-_-;; 왜 우리나라에서 이런거 못만들었냐? 하신다면 -_- 할 말 없습니다. 정말이지 할말 없네요. ) 그거 사서 쓰면 또 핵심 기술 유무 말짱 버로우..

 

L3 의 기획서인가요? 아까 말씀 드렸습니다. 미치지 않은 이상 L3 그대로 만들지 않습니다. 완성되지 않은 게임의 기획은 이미 핵심 기술 레벨이 아닙니다. 다만 아이디어 단계일 뿐입니다.

 

하지만 위의 인력들은 핵심이 맞습니다. 즉 7명 모두는 NC를 벌여 살린 핵심 인물일 겁니다. 즉, 그들은 L2부터 유지되어 온 개발 프로세스 및 NC의 개발 시스템의 핵심들이라는 겁니다.

 

결국 핵심은 다름 아닌 사람입니다. -_- 물론 소스 코드는 남아 있습니다. 주석도 달려 있죠. MMO 소스 코드 분석? 흠.. 주석 달려 있다 해도 무지 오래 걸립니다. 서버, 클라이언트 모두 말이죠. 기획서? 남아 있습니다. 다 읽어보려면 몇날 몇일 해도 모자랍니다. 어떤 분들은 직접 게임 분석하고 나머지는 다른 분들의 조언을 얻습니다.

 

회사에서 다른 신규 팀을 만들때 기존 팀의 인력 흡수하고도 일부 참여 개발자들중 경력자들을 팀에 남겨두는 건 그때문입니다.

 

결론 :

 

핵심 기술은 존재한다. 하지만  그들이 무엇을 만들려고 했는가 하는 방향에 따라 모든게 다 바뀔 수 있다. 즉 동일 장르를 만들고자 했을때의 테크닉적인 부분일 뿐이다. ( 중요도 폄하 하는 발언 아닙니다.. ㅠㅠ )

 

샨다 같은 전략 펼때는 정말 이 방법은 유효하다! 그리고 NC 먹은 다음 버러우 치게 만들고 몇년 동안 질질 끌면 된다.-_-;; ( 소스를 해외에 넘길때 이런 전략 쓸수도 있겠죠. ) 하지만 손잡았다는 분의 프로필을 보면-_- 이건 아니라는 생각 가지실 겁니다. 그정도 자산가이면서 개발 경험있고 사업 경험 있는 분이라면 짝퉁 L2만들려고 하진 않을 겁니다.

 

핵심 기술을 가진 사람의 이탈을 막기 위해 회사는 무언가를 한다. 연봉, 복리, 그리고 여러가지 조건들.. 하지만 그래도 뛰쳐나갈 정도의 개발자라면 새로운 것을 만들었을 가능성 크다. L2같은 성공 타이틀 만들었을 정도 ( 2002년부터 몇년이야.-_- 딴거 하고 싶지 않겠어? )의 개발자 들이라면 다른 무언가를 만들 기회 잡았을 때 갈등 때릴 것이다. 똑같은거 하려고 안에 있겠어?

 

라는 겁니다.

 

뭐 그래도 판단은 여러분들의 몫입니다.

 

뱀꼬리 :

어느 분이 쓰셨듯 좀더 진중하게, 조심스럽게 무언가를 했어야 합니다. 그분들은..

나가자 마자 바로 발표~~! 이러면 어느 회사인들 띠꺼운 시선으로 보지 않겠습니까..에혀..부디 잘 해결되길 바랍니다.

 

뱀꼬리 2:

얼마전에야 L3 관련 기사 읽었습니다. 리플로 쓰려던 글이 무진장 길어졌네요.

COOL: 3 BAD: 0
  • 페이스북 공유
  • 트위터 공유
댓글 0
에러
시간
[비밀글] 누구누구님께 삭제된 글입니다 블라인드된 게시물입니다 내용 보기 댓글을 로딩중이거나 로딩에 실패하였습니다.
등록된 댓글이 없습니다.
댓글 쓰기

전체 목록