엑스엘게임즈가 개발 중인 모바일 MMORPG 달빛조각사가 NDC에서 모습을 드러냈다. 

2019년 카카오게임즈에서 서비스할 달빛조각사는 인기 판타지소설 원작의 모바일게임으로, 송재경 대표가 직접 개발에 참여하며 화제가 됐다.

NDC 2019에서 달빛조각사는 게임의 주요시스템은 아니지만 신생 언어기반의 서버로 게임을 개발하고 있음을 밝혔다. 아키에이지에 이어 다시 한 번 새로운 시도를 한다. 아직 달빛조각사의 출시일이 공개된 것은 아니지만 컨퍼런스에 참여해 이름을 언급한 것으로 미루어보아 개발이 순조롭게 이뤄지고 있음을 짐작할 수 있다.

엑스엘게임즈의 달빛조각사는 국내에서 많이 사용되지 않고 있는 ‘엘릭서’ 서버로 개발 중이다.

엑스엘게임즈의 김민욱 서버개발 담당자는 “엘릭서(Elixir)는 2011년에 등장한 신생 언어로, 저도 달빛조각사 팀에 합류하고 나서 처음 접한 언어다. 여러분들에게 함수형 언어의 심리적 장벽을 낮추고 새로운 언어 패러다임에 대한 소개를 하고 싶었다. 게임 개발 언어로 어떤 장점이 있는지, 새로운 것에 대한 영감과 사고 전환을 할 수 있는 계기가 됐으면 좋겠다.”고 말했다.
  
엘릭서의 가장 큰 특징은 현대적이고 생산적인 언어라는 점이다. 최근 언어들은 빌드나 배포, 유닛 테스트, 문서화를 통합적으로 관리하는 시스템이 존재하는데, 엘릭서 역시 마찬가지다. 엘릭서는 믹스(mix)라는 툴을 제공하며, 이를 통해 프로젝트 생성 및 배포 등의 통합적인 관리가 가능하다.
  
이 밖에도 다양한 하위 프로젝트들을 관리할 수 있는 기능을 지원하며, 파이프(pipe) 연산자 기능 역시 사용이 가능하다. 특히, 파이프 연산자 기능으로 코드를 줄여주며, 코드를 조금 더 쉽게 읽을 수 있게 도움을 준다. 
  
또한 자동 코딩 포맷팅 기능과 더불어 빠른 컴파일 속도, 경량화된 프로세스(ligh-weight process), 마이크로 서비스, 빠른 이터레이션, 메모리 문제로부터의 해방(단, 메모릭 릭은 해결하지 못함), 타이밍 문제로 인한 고생이 덜하다는 것 등이 강점이다.
  
달빛조각사는 개발 초기 언리얼엔진으로 개발했으나 효율성을 위해 유니티엔진 C# 언어와 엘릭서 언어로 변경했다.

그 결과 달빛조각사에 존재하는 약 11만 줄의 코드를 20초 만에 컴파일이 가능해졌으며, 언어 자체가 매크로로 만들어져 있는 엘릭서의 특성을 활용해 치트 정의를 단순화하는 등 보다 빠르고 효율적인 개발을 할 수 있는 환경이 조성됐다.
  
김 서버개발 담당자는 “물론, 엘릭서는 아직 마이너 언어다. 그렇지만 얼랭(Erlang)이나 엘릭서 컨퍼런스가 개최되고 있으며 반년 주기로 메이저 업데이트가 있는 만큼, 빠르게 새로운 기능이 추가된다.”라며 엘릭서의 강점을 설명했다.
  
끝으로 “높은 가용성을 가진 서버를 만들고 싶은 개발자와 유닛 테스트를 제대로 활용해보고 싶은 욕구가 있는 분, 빠른 이터레이션에 목마른 개발자에게 엘릭서를 추천한다. 또한 REST API를 사용하는 Stateless 게임서버, 스케일 아웃 가능한 벡엔드서버, MO 형태의 게임 서버에 엘릭서가 효과적이라고 생각한다. MMORPG 서버는 달빛조각사에서 먼저 해보겠다(웃음).”라며 강연을 마무리했다.

저작권자 © 게임인사이트 무단전재 및 재배포 금지