메이플이야기TECH & BIZ

메이플스토리 IP 개발 생태계 in NDC

 

 

넥슨 개발자 콘퍼런스, NDC를 아시나요? 2007년 작은 규모로 넥슨 안에서부터 시작된 이 행사는 지금까지 이어지며 게임 업계 내 촘촘한 지식망 역할을 해 왔답니다. 게임 개발과 서비스 전반에 대한 주제부터 그 해의 트렌드에 맞춰 고민 중인 AI, 블록체인과 같은 기술 혁신 사례들을 나누는 ‘건설적인 장’으로써 든든히 자리매김하고 있는데요. 게임 산업의 발전을 위해 함께 성장할 수 있도록 지속적인 고민을 해 가는 넥슨인과, 게임 업계 실무자 분들의 발자취를 엿볼 수 있는 귀한 기회랍니다. 

 

메이플스토리도 넥슨을 대표하는 IP로써 NDC의 주제로 자주 언급되었는데요. 오늘은 가장 최근 다뤄진 NDC 내 메이플스토리 IP의 개발 생태계를 들어볼 수 있는 이야기들을 가지고 와 봤습니다. 당시 세션에 참여해 주신 분들의 전하지 못한 한 마디도 함께 담아보았으니, 한 번씩 NDC 다시보기를 통해 메이플스토리 개발 생태계를 살짝 들여다 봐 주시면 좋겠습니다.



 

 





<메이플스토리 월드> 자체 LLM 단풍 개발기

 

 

 

 

  • 메-디터's SUMMARY

메이플스토리 월드(MSW)는 크리에이터의 상상을 현실로 만들어주는 매력적인 무대지만, 그 이면에는 높은 진입 장벽이 존재합니다. 루아(Lua)를 변형한 독자적 스크립팅 언어인 ‘엠루아(mLua)’와 500여 개가 넘는 네이티브 API를 숙지해야 하기 때문입니다. 챗GPT나 클로드 같은 범용 AI에게 도움을 청해봐도 결과는 아쉬웠는데요. 일반적인 루아 코드를 내뱉거나, 존재하지도 않는 함수를 천연덕스럽게 지어내는 ‘할루시네이션(환각)’ 현상이 빈번하게 일어났습니다. 본 세션은, 이 막막한 환경 속에서 크리에이터의 전속 코딩 조력자인 MSW 특화 LLM ‘단풍’을 맨바닥부터 빚어낸 치열한 분투기를 담고 있습니다.

 

가장 큰 난관은 역설적이게도 AI 학습의 핵심인 ‘데이터의 부재’였습니다. MSW는 스택오버플로우나 깃허브처럼 참고할 만한 오픈소스 커뮤니티가 전무했습니다. 이에 개발진분들은 무에서 유를 창조하는 길을 택했습니다. 공식 문서와 영상 가이드를 LLM에 밀어넣어 유저가 던질 법한 질문들을 역으로 합성해 낸 것입니다. 답변 코드를 생성할 때도 하나의 AI에게 의존하지 않았습니다. API, mLua 문법, 실행 공간 등 각 분야의 가상 전문가 AI들이 릴레이로 코드를 다듬어가는 ‘Expert Orchestration’ 패턴을 구축해 고품질의 학습 데이터를 스스로 만들어냈습니다.

 

이렇게 짜인 데이터 위에서 ‘단풍’은 3단계의 진화를 거쳤습니다. 코드의 빈칸을 채우는 방식(FIM, Fill In the Middle)으로 mLua의 문법을 깨우치고(CPT), 유저의 의도를 파악해 다정하게 답변하는 페르소나를 입었습니다(SFT, Supervised Fine-Tuning). 하지만 진화의 과정이 순탄치만은 않았습니다. 학습 중인 ‘단풍’이 잘 알지 못하는 분야에 대해 잘못된 정보를 보이는 등 심각한 오류를 보인 것입니다. 개발진분들은 이를 제어하기 위해 프롬프트별 보상을 주는 GRPO 강화학습을 도입했습니다. AI가 답변 전 내부적으로 생각(Reasoning)하는 과정을 거치게 강제하고, 문법과 API 정확도에 계층에 따른 보상을 주어 오류를 통제했습니다.

 

그러나 ‘예상 밖의 현실’을 마주하는 일도 쉽지 않았다고 합니다. 오류를 막으려 안전 기준을 너무 높인 나머지, 정상적인 질문에도 답변을 거절하는 해프닝이 벌어졌습니다. 게다가 이용자들은 개발진분들의 예상과 달리 매우 포괄적인 질문을 쏟아냈습니다. 개발진분들은 재빠르게 이용자 패턴을 분석해 보상 밸런스를 조절하고 데이터를 최적화하며 모델을 안정화시켰습니다.

 

이번 발표는 데이터가 부족한 특수 도메인 환경에서도, 엔지니어링적 고민을 통해 어떻게 유의미한 자체 AI를 구축할 수 있는지 보여준 훌륭한 사례였습니다. 현재 ‘단풍’은 에디터 내에서 텍스트로 코드를 짜주는 역할을 넘어, 이용자의 ‘워크스페이스’ 맥락 전체를 꿰뚫어 보는 진정한 코파일럿을 향해 나아가고 있습니다. 크리에이터들의 상상력을 가로막던 기술적 장벽을, ‘단풍’이라는 든든한 조력자를 통해 어떻게 극복해 갈 수 있을지, 앞으로의 행보가 더욱 기대되는 세션이었습니다.

 

 

  • 세션 진행자의 한 마디

▶ 준비하면서 가장 크게 남은 건, 메이플스토리 월드라는 이름 위에서 무언가를 만들 수 있다는 게 생각보다 뿌듯한 일이라는 점이었습니다. 혼자 붙들고 있던 작업이라 잘 몰랐는데, 발표 자료로 정리하고 나서야 실감이 났습니다. 처음엔 ‘좋은 모델 하나 가져다 학습시키면 되겠지’ 싶었는데, 데이터가 없어서 데이터부터 만들어야 했고, 학습을 시켰더니 오히려 성능이 나빠지는 구간도 만났습니다. 돌아보면 그렇게 헤맨 시간들이 결국 발표에서 드릴 이야기가 되었더라고요. 그 과정을 많은 분들 앞에서 말씀드릴 수 있어서 개인적으로 영광이었습니다. 좋은 자리 마련해 주셔서 감사드립니다.

 

 


 

 

 [메이플스토리M] DevSecOps 전환기

 

 

 

 

  • 메-디터's SUMMARY

매일 수십만 명이 접속하는 10년 차 라이브 게임의 서버를, 단 1초의 중단도 없이 현대화된 시스템으로 통째로 교체할 수 있을까요? 이번 세션에서 다룬 '메이플스토리M DevSecOps 전환기'는 난이도 높은 미션의 연속이었다고 합니다.

 

과거 메이플스토리M의 인프라에서는 수동으로 조작하는 부분이 많아 불편을 겪고 있던 상황이었습니다. 개발진분들은 수동 조작의 시대를 끝내고, 모든 인프라를 코드(IaC)로 완벽히 통제하는 DevSecOps로의 대전환을 결심했습니다.

 

가장 큰 난관은 거대한 서버들을 코드 체계로 안전하게 옮기는 작업이었습니다. 자칫하면 멀쩡한 라이브 서버가 삭제될 수도 있기 때문입니다. 사람이 수작업으로 일일이 검증하며 매핑하면 꼬박 1년이 걸릴 업무를, 개발진분들은 '스마트 매칭 알고리즘'을 통해 빠르게 해결했습니다. 여기에 복잡한 테라폼(Terraform) 문법을 몰라도 엔지니어가 문서 한 장에 의도만 적어내면 시스템이 알아서 서버를 만들어내는 아키텍처 설계도 큰 빛을 발했습니다.

 

인프라를 코드로 옮긴 뒤에는 AI가 결합된 안전장치를 둘렀습니다. 엔지니어가 코드를 올리면 가장 먼저 'AI 코드 리뷰어'가 리스크와 취약점을 짚어냅니다. 겉보기엔 단순 업데이트 같아도 내부적으로 서버 재부팅을 유발하는 위험한 명령어가 숨어있다면 시스템이 스스로 배포를 차단해 주는 것입니다. 이렇게 시스템과 AI가 먼저 개입해 장애를 원천 차단하는 '철통 파이프라인'이 완성 되었습니다.

 

이번 세션에서는 "‘DevSecOps’는 툴이 아니라 사람의 합의에서 시작한다"고 강조했습니다. 해당 메세지에 주목하며 세션을 즐겨주시면 좋을 것 같습니다.

 

 

  • 세션 진행자의 한 마디

 

▶ 10년 차 라이브 서비스의 인프라를 바꾼다는 것은 기술적인 도전을 넘어, 팀 전체가 '안전한 변화'라는 하나의 가치를 공유하는 과정이었습니다. 메이플스토리M이 유저분들의 매일의 일상이 되어 즐거움을 더해가는 그 화면 뒤에는 개발·보안·운영이 하나의 팀처럼 치열하게 소통하고 고민한 노력이 있었습니다. 이번 DevSecOps 전환은 결국 시스템을 바꾸는 프로젝트였지만, 사람과 사람의 신뢰로 완성된 문화였습니다. 앞으로도 유저분들에게는 끊김 없는 즐거움을, 동료들에게는 더 안전한 환경을 선물할 수 있도록 보이지 않는 곳에서 계속 고민하겠습니다.

 

▶ 어린 시절부터 함께해 온, 지금도 살아있는 서비스를 멈추지 않고 코드화 한다는 것은 생각보다 훨씬 큰 심적·기술적 도전이었습니다. 하지만 그 과정에서 얻은 경험은 단순한 기술적 전환을 넘어, 일하는 방식과 기술을 바라보는 관점까지 변화시킨 의미 있는 경험이었습니다. 이번 경험이 과거의 운영 방식을 바꾸는 데 그치지 않고, 앞으로의 넥스트 인프라 운영을 넘어 AI 기반 인프라 운영으로 나아가기 위한 중요한 기반이 되었다고 생각합니다.

 

 


 

 

 내가 신입 기획자였을 때 알았다면 좋았을 것들

 

 

 

 

  • 메-디터's SUMMARY

"게임을 많이 해보라는 선배의 말은 진짜 공부가 될까?"

 

해당 세션에서는 신입 시절 가졌던 이 불안한 질문에서 출발해, 유저에서 어엿한 기획자로 성장하기까지 실무에서 깨달은 3가지 핵심 무기가 공유되었습니다.

 

첫 번째 무기는 '의도를 가진 게임 분석'입니다. 단순히 게임을 즐기는 것을 넘어 "왜 인기가 있을까?" 끊임없이 자문하고, 분석한 내용을 타인에게 한 문장으로 설명해 보는 연습이 기획자의 기본기가 된다고 전합니다. 이는 훌륭한 레퍼런스를 담당 게임에 맞춰 가공하는 '재해석(창조적 모방)'의 힘으로 이어진다고 설명했습니다.

 

두 번째는 문서의 세부 내용보다도 중요한 '기획 의도'입니다. 명확한 기획 의도가 있어야 개발진분들을 납득시키고 게임 유저를 설득하는 최고의 나침반이 된다고 설명했는데요. 이것이 ‘왜’ 필요한 것인지 어떤 목적으로 사용될 것인지 본질적인 부분에 대한 고민이 있어야 방향성이 흔들리지 않고 탄탄한 결과물이 도출될 수 있다고 합니다.

 

세 번째는 '협업과 소통'입니다. 기획서 전달은 끝이 아니라 소통의 시작입니다. 타 직군의 의견을 경청하되, 기획 의도를 해치는 제안은 존중을 담아 부드럽게 거절할 줄도 알아야 합니다. 동료들로부터 "다음에 또 같이 일해요"라는 말을 듣는 것이야말로 기획자에게 최고의 찬사라고 덧붙였습니다.

 

'버려지는 경험은 없다'고 강조하며 이번 세션이 마무리되는데요. 문학·영화 취미는 캐릭터 서사의 뼈대가 되었고, 코딩 지식은 개발팀과의 대화 창구가 되었다고 합니다. 방황이나 실패조차도 결국 기획자라는 무기고를 채울 다채로운 자양분이 된다는 위로를 건네며 세션은 마무리되었습니다.

 

 

  • 세션 진행자의 한 마디

▶ 게임 기획자를 꿈꾸던 시절과 처음 기획을 하던 시절의 열정이 익숙함이라는 이름으로 조금씩 덮여가던 상황에 다시 한번 게임 기획에 대한 열정과 게임에 대한 애정을 다잡을 수 있던 좋은 기회였던 것 같습니다. 신입 기획자분들이나 게임 기획자를 꿈꾸시는 분들을 모두 응원하며, 하고 계시는 모든 일들이 언젠가 다 도움이 될 것이라고 생각하고 함께 배우고 즐겁게 게임을 만들어가면 좋겠습니다. 

 

 


 

 

 새로운 언어 개발부터 VS Code 확장까지

 

 

 

 

  • 메-디터's SUMMARY

게임 제작 플랫폼에서 개발 환경의 편의성은 크리에이터의 창작력과 직결됩니다. 다양한 크리에이터 분들이 사용하는 메이플스토리 월드(MSW)에서도 이런 불편함을 해결하기 위한 개발진분들의 노력이 지속되어 왔는데요. 이번 세션에서는 mLua가 없던 시절, 어떻게 새로운 언어를 개발하게 되었는지, 그리고 어떻게 VS Code로 확장할 수 있었는지를 다루고 있습니다. 

 

메이플스토리 월드는 mLua가 등장하기 전, 자체 스크립트 에디터를 사용하면서 불편한 코드 작업과 느린 속도, 그리고 외부 IDE를 사용하는 것이 어렵다는 한계를 가지고 있었습니다. 스크립트 엔트리(스크립트 에디터에서 작성한 내용을 저장하는 전용 포맷)와 호환이 되면서도 외부에서 편집이 가능한 새로운 언어의 개발이 필요했던 것이죠. 그래서 개발진분들은 협업에 용이하고, 형상 관리가 가능하면서도 외부에서 누구나 편집이 가능하도록 스크립트 엔트리를 플레인 텍스트로 표현하는 데에 목적을 두고 고민했으며, 그 결과 mLua가 탄생할 수 있었습니다. 

 

이 과정에서 개발진분들은 mLua 문법을 만들기 위해 코드를 의미 단위로 쪼개는 어휘 설계부터 구문 트리를 그리는 구문 설계까지 정교한 엔지니어링 과정을 거쳐 언어의 뼈대를 완성했습니다. 여기에 더해 IDE와의 호환성을 위해 언어 서버, 디버그 어댑터 작업을 하여 실제로 VS Code로의 개발 환경 확장을 실현해 냈습니다. 

 

해당 개발은 개발 편의성을 크게 개선하는 전환점이 되었고, 지금의 메이플스토리 월드의 편리한 개발 환경을 만들어낸 멋진 사례로 볼 수 있습니다.

 

 

  • 세션 진행자의 한 마디

▶ 메이플스토리 월드는 메이커라는 도구의 한계를 벗어나기 위해 여러 방향에서 노력하고 있습니다. 이번 세션에서는 그중 하나였던 새로운 언어 mLua의 개발 경험을 공유드렸습니다. 좋은 개발 환경이란 무엇일까를 자주 생각합니다. 저는 창작에 한계가 없는 환경이라고 생각합니다. 크리에이터분들이 상상한 것을 도구가 막아서지 않는 것, 만들고 싶은 규모와 방식을 도구가 먼저 제한하지 않는 것. 그 한계를 한 칸이라도 밀어내기 위해 워크스페이스를 로컬로 가져오고, mLua를 개발하는 등 여러 시도를 이어왔습니다. 그렇게 밀어낸 한 칸들이 모여 이전보다 더 많은 것을 할 수 있게 되었고, 지금의 AI 개발 환경을 구축할 수 있는 기반이 되기도 했습니다. 이런 이야기들까지 함께 담고 싶었는데 한정된 시간 안에 모두 전해드리지 못해 아쉬움이 남습니다. 앞으로도 한계를 벗어나기 위한 시도를 멈추지 않겠습니다. 크리에이터분들이 도구 때문에 창작을 멈추는 일이 없도록, 더 좋은 개발 환경을 만들어가겠습니다.

 

 


 

 

이외에도, NDC에서는 정말 수많은 게임 개발자, 업계 실무자 분들의 노하우와 비하인드 스토리를 들을 수 있습니다. 한 가지 흥미로운 지점은, 이 게시글에서 마지막으로 다뤄진 mLua 탄생기와 첫 번째로 다뤄진 LLM 개발기가 하나의 연결고리로 이어진다는 사실인데요. 하나의 프로젝트에서도 개발자 분들은 끊임없이 그 때의 최선을 위해 치열하게 고민하고 최고의 선택을 탄생시키기 위해 노력한다는 점입니다. 

 

게임 업계 시대의 흐름을 타고 멈추지 않는 지식과 지혜를 담아내는 NDC의 더 자세한 이야기가 궁금하다면 홈페이지에 방문해 깊은 내용과 마주해 보시길 바랍니다.

 

 

 

 

 

목록가기

연관 채용 포지션