http://lcu-alpha.leagueoflegends.co.kr/ko_KR/client-update/article/7d8d2d3b-74d5-4cc6-aacf-30ebfdb17288


리그 오브 레전드 게임 클라이언트가 새로워집니다. 2016 시즌에는 빠르고 세련되고 혁신적인 클라이언트를 선보이겠습니다. 알파 테스트에 참여하셔서 개발 과정을 도와주세요.

디자인만 새로워지는 것이 아닙니다. 완전히 새로운 기술적 구조를 도입해서 발전하는 기술 수준을 따라잡고 개발자가 더욱 효과적으로 일할 수 있도록 하여, 앞으로 여러분에게 더 다양하고 향상된 기능을 선사할 수 있을 겁니다. 오랫동안 골칫거리였던 여러 버그가 사라지고 프로그램은 가벼워지며 저희 개발자들은 더 강력한 버그 수정 기능을 활용할 수 있게 될 것입니다. 많은 기대 부탁드립니다.


오래된 문제를 해결하다

지금까지 수많은 기능이 추가된 기존 클라이언트는 이젠 낡아서 삐걱대기 시작했습니다. 오랫 동안 플레이어 여러분을 괴롭힌 문제가 여럿 있었죠. 클라이언트가 작은 모니터에서 제대로 표시되지 않고, 아무 이유 없이 메모리를 잡아먹기도 하고, 소환사 정보창에 콘텐츠를 추가할 공간이 없는 등, 여러 골칫거리가 있었습니다.

지금까지의 업데이트로 기존 클라이언트는 거의 한계에 달했고, 저희 개발팀의 성장을 생각해볼 때 확장성도 모자랐습니다. 수십 팀의 개발자들이 하나의 프로그램을 동시에 수정, 변경하려는 과정에서 수많은 문제가 있었습니다. 쉽게 말하면 배에 사공이 너무 많았던 거죠. 그렇다고 개발팀을 줄일 수는 없고... 이제 클라이언트가 업그레이드 되면 많은 개발자들이 서로 충돌하지 않고 다양한 기능을 동시에 개발할 수 있게 됩니다.

새로워진 클라이언트는 버그를 수정하다가 다른 사람의 코드를 건드리는 일이 없도록 유연성을 크게 높여 기초부터 철저하게 새로 설계하고 있습니다. 이렇게 기초부터 뜯어고치면서, 오랫동안 문제를 일으켰던 지저분한 코드를 삭제할 수 있게 됐고 룬 및 특성 페이지도 (드디어) 드래그 앤 드롭 방식으로 구현할 수 있게 됐습니다 (물론, 더욱 많은 새 기능이 준비되어 있습니다). 그러나 알파 초기에는 오히려 저희가 버그를 만드는 일도 생길 수 있죠. 그래서 플레이어 여러분이 알파 테스트에 참여해서 도움 주시길 부탁드립니다.



크롬 프레임워크 탑재로 매끄럽게

저희도 인정하지만, 기존 클라이언트는 컴퓨터 자원 활용이 매우 비효율적이었습니다. 램 먹는 하마처럼 매일 수백 메가바이트를 쓸데없이 잡아먹고 있죠. 상점에서 페이지를 옮겨 갈 때마다 돌아가는 로딩 이미지를 멍하니 바라보며 플레이어 여러분이 허비한 시간도 합치면 백만 년은 될 것입니다.

그래서 업데이트된 클라이언트에는 보통 프로그래머들이 “CEF”라고 부르는 Chromium 임베디드 프레임워크를 적용했습니다. 저희 기존 기반 코드와는 완전히 다른 프레임워크로, 게임 중에도 메모리를 훨씬 덜 잡아먹고, 컴퓨터 자원을 꽤 효율적으로 활용하리라 기대합니다. 잔나가 정당한 영광에 승천의 부적까지 쓰고 민병대 효과까지 받는 수준이죠.

이렇게 메모리를 아끼면 클라이언트를 최소화해서 백그라운드로 켜놓아도 CPU를 잡아먹지 않는다는 게 가장 큰 장점입니다. 친구 목록을 따로 띄워 놓을 수 있는 옵션도 있어서 게임을 할 수 없을 때도 친구와 채팅할 수 있게 됩니다.



더 신속한 버그 수정

기존 클라이언트와 관련해 플레이어 여러분의 가장 큰 불만은 바로 단순한 버그 하나를 고치는 데 너무 오래 걸린다는 점이었습니다. 기존 클라이언트에 내장된 디버깅 툴 중엔 쓸만한 게 별로 없어서 아주 단순한 버그 하나를 고치는 것도 엄청나게 어려웠습니다.

한 1년 전 즈음에 몇몇 플레이어가 클라이언트를 실행할 때 엄청난 메모리 누수를 겪었던 적이 있는데, 저희는 친구 수가 200명이 넘어가는 플레이어 중에서도 친구를 그룹으로 분류하지 않은 경우에만 이런 일이 생긴다는 걸 알아냈습니다. 이런 경우에는 주기적으로 시스템 충돌이 일어났죠.

이 버그를 시뮬레이션하거나 재현할 방법이 없어서 라이엇 본사 구석구석을 돌아다니면 발은 엄청나게 넓지만 정리정돈은 못 하는 그런 사람을 찾아 헤매야 했습니다. 결국 이 조건에 맞는 직원을 한 사람 찾았고 계정을 빌려 버그를 재현하고 분석했죠. 그러고는 한 프로그래머가 일주일 내내 고생해서 직접 툴을 만들었고 버그를 해결하기까지 비효율적인 절차를 밟고 또 밟아야 했습니다.

앞으로 클라이언트가 업데이트되면 그런 일은 모두 안녕입니다. CEF에는 훌륭한 디버깅 소프트웨어가 다양하게 포함되어 있으며 저희 내부에서도 훨씬 빠르게 버그를 감지하게 도와줘 개발 효율을 높이는 툴을 다양하게 개발하고 있습니다. 이런 툴이 있으면 이젠 앞서 이야기한 것 같은 버그는 앉은 자리에서 한 시간 만에 고칠 수 있을 겁니다. 그리고 업데이트된 클라이언트의 구조 덕에 라이엇의 각 개발팀이 클라이언트를 사용 중인 플레이어나 다른 개발팀을 방해하는 일 없이 직접 버그를 고칠 수 있게 됩니다. 이 문제에 대한 더 자세한 내용을 다음에 저희 클라이언트 업데이트 담당 리드 엔지니어 중 한 명이 설명해 드릴 예정이며 다른 글에서 새로운 기술적 구조도 더욱 자세하게 소개해 드리겠습니다.

이번 클라이언트 업데이트는 크나큰 변화의 시작입니다. 처음부터 버그 없는 클라이언트를 선보일 수 있게 될 뿐만 아니라 예기치 못한 문제가 발생했을 때 훨씬 빠르게 해결할 수 있을 겁니다.

새로운 세계로 나아가는 끝없는 여정

여러모로 이번 클라이언트 업데이트는 새 출발을 의미하지만 사실 리그 오브 레전드라는 게임이 그러하듯, 클라이언트도 발전을 멈추는 일은 없을 겁니다. 클라이언트를 테스트해서 문제점을 샅샅이 찾아내고 계속해서 개선할 방안을 찾아가겠습니다.

아직 알파 테스터 지원을 하지 않으셨다면 여기에서 지원 방법을 확인해 보세요.