|

애니팡에 무슨 기술력이 있냐고?

지난달 서울 삼성동 코엑스에서 열린 ‘구글 클라우드 서밋 2019’의 발표 명단에서 꽤 반가운 기업의 이름을 만났었다. 선데이토즈. 스마트폰 보급 후 ‘모바일 게임’의 대중화를 이끈 회사 중 하나다. 똑같은 동물 캐릭터 세개가  가로세로대각선으로 일렬 연결되면 ‘팡’하고 터져버리는 일명 쓰리매치 퍼즐 게임 ‘애니팡’으로 청소년은 물론 부모님 세대에까지 인기를 얻었다.

시간이 꽤 흘렀다. 모바일 게임의 트렌드는 바뀌어서, 이제는 대규모 MMORPG를 스마트폰으로 하는 시대가 왔다. 대작 대 대작의 경쟁에서 쓰리매치 퍼즐과 같은 가벼운 게임은 주요한 이슈로 떠오르지 않는다. 그래서 구글의 최신 기술을 잘 적용한 사례 발표로 선데이토즈가 나선 것이 의외로 느껴졌다. 구글의 머신러닝 서비스를 이용한 이후 매출의 20%가 올랐다는 흥미로운 이야기에 어라? 하고 있을 때, 현장에서 만난 선데이토즈 관계자가 자기네 회사 CTO와 만나면 더 많은 기술 이야기를 들을 수 있을 거라고 솔깃한 얘기를 했다. 그래서 만났다. 이창명 선데이토즈 최고기술책임자(CTO)를.

이창명 CTO는 선데이토즈의 초기 멤버 중 한 명으로, 2012년 나온 안드로이드 버전 ‘애니팡’의 개발부터 함께했다. 이후 ‘서버리스(Serverless)’ 시스템 구축이나 머신러닝 적용 등, 선데이토즈의 기술 변화를 이끌어 왔다. 지난 24일, 분당 서현에 위치한 선데이토즈 본사에서 만난 이 CTO는 선데이토즈가 적용 중인 클라우드 기술과, 오픈소스 문화를 공유하고 싶어 했다. 선데이토즈의 기술력을 알리는 것이 더 많은 개발자를 회사에 합류시킬 수 있을 거란 판단에서다.

이창명 선데이토즈 CTO.

2012년 애니팡을 만들던 때와 지금을 비교하면 기술 수준은 얼마나 개선됐나?

그때는 아무것도 없었다. ‘아쿠아스토리’라고, 애니팡 전에 싸이월드 게임으로 시작했다. 당시에 모바일 게임으로 갈 기술 스택이 하나도 없었다. 사람도 없었고, 어떻게 해야 할지 모르는 단계라 지금과 비교하면 차이가 크다. 지금은 모듈화와 공정화가 됐다. 나름의 파이프라인이 있다.

계속해 3매치 퍼즐을 만들고 있는데

주 게임이 퍼즐이긴 하지만 다양한 장르 게임을 개발하지 않는 것은 아니다. 내부에서는 오픈소스로 만들고 싶은 게임에 대한 기술연구를 나름 많이 하고 있다. 내년에 나올 게임은 ‘소셜네트워크게임(SNG)’이다. 함께 하는 가치를 추구하기 때문에 그쪽으로 기술 스택을 가져갔다. 내부적으로는 진보적이고 혁신적인 행보를 하고 있다고 생각한다.

어떤 부분에서 진보적, 혁신적이라고 할 수 있나?

2014년에 클라우드를 도입했다. 통상 클라우드라고 하면 ‘서버’ 같은 인프라를 생각한다. 물론, 인프라가 베이스는 맞다. 그러나 그 외의 서비스도 80개 정도가 있다. 모바일이나 IoT, AI도 클라우드 기반으로 되어 있다. 그걸 적극적으로 도입했다. 조금 더 설명하자면, ‘위베어베어스 더퍼즐’ 게임에서는 서버를 아예 없앤 ‘서버리스’ 모델을 적용했다.

서버를 없앴다는 것이 무슨 뜻인가?

클라우드 상에서 서비스만 이용하는 것이다. 물리서버나 가상화서버(VM)같은 형태가 아니어서, 기존의 관행적인 파이프라인을 쓰지 않는다. 그냥 서비스만 써서 데이터를 전달하는 형식이다. 지난해부터 적용을 하고 범위를 늘려가고 있다. 글로벌 서비스를 하면서 아무리 클라우드라도 리전이 다르면 이슈가 있다는 걸 알았다. 개발자가 많지 않은 상황이라 리소스를 최대한 줄이기 위해 선택했다.

어떤 클라우드 서비스를 이용하고 있나?

올해 AWS와 구글의 클라우드 서밋에서 모두 발표를 했다. AWS를 주로 쓰면서, 구글의 여러 기술을 이용하고 있다. 구글의 머신러닝 기술 중 하나인 오토ML도 그중 하나다. 우리가 하는 것은 딥러닝인데, 이를 위해 3년 전부터 인풋 데이터의 가공을 하고 있었다.

또, 위베어베어스 더퍼즐에 적용한 ‘공유하기’의 화면 캡처 기능이 다 서버리스로 제공된다. 그렇지 않으면 게임 클라이언트에서 사진을 전송하고 가공한 다음에 페이스북에 다시 올리는 방식을 써야 하는데, 서비리스의 경우 클라우드에서 바로 로직을 처리하기 때문에 서버를 하나도 타지 않는다. 가격도 저렴하고 운영 이슈가 없다.

서버리스 모델이 강점이 많다면, 왜 다른 게임사들은 많이 안 쓸까?

장르가 달라서 그렇다. 국내에서는 RPG가 강하므로, 서버리스보다는 인하우스 개발이 많다. 서버리스의 강점을 말하자면, 위베어베어스 더퍼즐의 경우 유럽과 미국, 아시아에 다 나가 있다. 그런데 서버리스가 아니라면, 유럽에 진출할 때 현지에 서버를 또 설치해야 한다. 그렇지 않을 경우 사진 전송이 느려진다. 서버리스의 경우 각 리전의 서비스를 쓰는 것이라 속도 체감에 차이가 없다.

다른 나라의 사례는 어떠한가?

잼시티나 로비오 같은 회사들도 클라우드 서비스를 쓴다. 캐주얼 게임을 만드는 곳이 많다. 저희 같은 DNA를 가진 곳은 사람을 많이 뽑아 늘리기보다는 기술적으로 게임을 만들 수 있는 환경을 만드는 것이 생존전략이다.

구글 서밋 때 머신러닝을 활용해 광고 수익을 늘렸다는 얘기를 했다. 머신러닝을 도입해서 어떤 이점을 얻었나?

데이터를 갖고 이탈유저를 예측하거나 비정상 탐지를 하는 데 특화했다. 세 가지인데, 먼저 가입한 지 48시간이 안 되는 이용자의 활동내역을 보고 이탈률을 예측하는 거다. 이탈할 확률이 높아 보이면 광고를 보여주는 식의 방식을 썼고, 효과를 봤다.

그런데 48시간 내 가입자 외에도 유저가 많다. 애니팡 1도 아직 돌아가고 있고, 애니팡2 애니팡3도 있다. 이런 가입자들은 한 번 이탈하면 다시 돌아오기 어렵다. 한두 달 내 이용 변화량을 보고 이탈을 사전에 감지해서 방지하는 것에도 머신러닝이 활용된다.

또 하나는 비정상 탐지다. ‘리세마라’라고 들어봤나?

못 들어봤다. 그게 뭔가?

리셋과 마라톤을 합친 신조어다. 이용자가 게임을 지우고 재설치하는 걸 말한다. 주로 RPG에서 확률 아이템이 안 좋을 때 많이 한다. 이게 ‘디즈니팝’에 많았다. 디즈니팝이 일본에서 인기가 있는데, 일본 이용자들은 이걸 하나의 정상 패턴으로 인정해주는 문화다. 그런데 이 리세마라의 경우 재설치를 할 때마다 새로운 가입자로 잡힌다. 한 명이 500번을 깔아도 신규 가입자가 늘어 DAU(Daily Active User)가 좋은 것으로 나온다. 이런 오류, 정상적이지 않은 패턴을 잡아내는데 딥러닝 기술이 쓰인다.

이런 경우도 있다. 실물 기계를 2000대 깔아놓고, 동시에 같은 프로그램을 돌려서 레벨을 올리는 경우다. 다른 단말기에 다른 계정을 쓰기 때문에 기계로 보면 정상적인 활동으로 잡힌다. 그런데 이 많은 기기가 동시에 똑같은 로그를 가진다는 것은 확실히 부자연스럽다. 정상은 아닌 것이다. 이런 것을 탐지하는 역할도 한다.

이 외에도 지금은 플레이와 관련해서 딥러닝 기술을 적용할 계획을 갖고 있어서 ‘애니팡4’로 테스트를 진행 중이다.

어떤 기술을 테스트 중인 건가?

‘오토 플레이’에 관한 것이다. 킹도 ‘캔디크러시사가 4’에서 오토 플레이를 적용한 논문을 낸 적이 있다. 퍼즐 게임에서는 맵을 만드는 것이 중요하다. 각 스테이지를 업데이트할 때마다 사람이 창의적으로 만든다. 이용자가 각 스테이지에서 점수를 얻으며 재미를 느낄 수 있도록 크리에이터의 작업이 들어가는데 이게 다 노하우다. 맵을 만들 때 실제로 퍼즐이 어떻게 풀리는지 수만 번의 테스트를 한다. 시간이 많이 드는데 어려운 맵의 경우에는 사나흘도 걸린다. 여기에 오토 플레이 머신을 적용해보려 한다. 내년 1월 말에 사내 세미나를 할 생각이다. 인간 대 머신러닝의 대결이다. 사내에서도 아주 게임에 능숙한 사람과 머신이 누가 먼저 10판을 깨는지 대결하는 거다. 머신이 지면 내가 밥을 사고, 머신이 이기면 밥을 얻어먹을 예정이다. 머신이 아직 애기라 완성도가 높진 않다. 그렇지만 배우는 속도가 빠르다. 일주일에 세 살씩 먹는다.

그때쯤이면 머신의 나이가 꽤 들었을 것 같다

맞다. 거기에 맞춰서 개발하고 있다.

‘킹’이 발표한 논문을 기반으로 연구했나?

킹과 선데이토즈의 게임이 달라서 연구 방향도 다르다. 우리 게임의 복잡도가 상당하다. 킹 같은 경우는 주황, 보라, 빨강 등 명확한 색감을 갖고 퍼즐을 맞추는 게임이다. 그런데 우리는 색 외에 맵이 연결되어 있거나, 혹은 캐릭터의 스킬이 반영된다. ‘디즈니팝’의 경우, 미키의 녹색과 특수블록의 녹색이 겹치면 AI가 오인할 수 있다. 그런데 킹은 색의 구분이 명확하니 이런 오인의 여지가 없다. 따라서 우리 게임이 조금 더 복잡한데, 내년 연구소 과제로 이 ‘오토플레이 머신’과 ‘액셀레이터 머신’을 잡았다.

오토플레이 머신과 액셀레이터 머신은 어떻게 적용이 되나?

오토플레이는 맵 제작에 쓰이고, 엑셀레이터 머신은 개발 가속화에 쓰인다. 머신의 레벨이 인간하고 같거나 더 높다면, 일분에 오백번 플레이를 할 수 있는 액셀레이터 머신의 성공과 실패 결과가 맵 기획자에게 도움을 줄 수 있을 것이다. 또 해당 판에서 어떤 아이템이 퍼즐을 푸는데 실제적인 도움을 줄 수 있는지를 안다면 매출과 연결지을 수도 있다.

오픈소스를 도입해서 사용하는데, 장단점이 있겠다

100% 오픈소스다. 장점이 훨씬 많다고 생각한다. 주니어를 어떻게 하면 잘 키울 수 있느냐가 항상 문제다. 4년전부터 이 고민을 했다. 개발자를 구하기 굉장히 힘드니까, 머신러닝 개발자를 안에서 키워보자고 생각했다. 이 개발자들의 교육에 중요한 것이 오픈소스다. 누가 가르치는 것보다 좋은 코드를 많이 볼 수 있게 하는게 중요하다. 내부에서 사용하는 언어도 7가지나 된다. 심지어 애니팡4의 리얼타임 서비스는 얼랭(Erlang)기반이다. 물론, 주력 언어는 있지만 다양한 언어를 써서 시도를 해보고 폐기하기도 한다. 강제하기보다는 자유롭게 경쟁하고 커나갈 수있는 시스템과 문화를 만들고 싶다.

오픈소스를 도입하면 문화가 어떻게 다른가?

선데이토즈 안에서 진행중인 프로젝트가 200개다. 그중 게임과 관련한 건 신작을 포함해 서른개 정도다. 그 외 여러가지로 프로젝트가 많다. 사내 행사에서 추첨할 때 쓸 알고리즘 개발을 하는 것도 포함해 그런 문화가 활성화되어 있다. 개발자들이 모여서 재미를 느끼고 서로 코드를 보고 리뷰할 기회가 주어진다. 이게 오픈소스가 아니었다면, 시니어가 꼰대질을 했거나 빨리 성장하지 못했을 거다.

만약 서로의 코드가 이상하다 느낄 때는 깃허브를 보면서 유쾌하게 설명한다. 나도 마찬가지다. 오픈소스로 주니어를 인큐베이팅할 수 있는 걸 갖췄다. 또 시니어가 들어온다고 해도 적응하기에 오픈소스가 좋다. 오픈소스는 목화씨와 같다. 널리 이롭게 쓰이면 괜찮은 거다. 우리는 게임의 설계도 모두 오픈하고 공유한다. 중요한 건 데이터지, 아키텍처나 구현 방식은 감출 것이 아니라고 생각한다.

독특한 사내 문화가 있나?

파워커미터 제도가 있다. 상반기 하반기 각 다섯명씩 파워커미터를 선정해 별을 달아준다. 별 세개가 되면 금배지를 달아주고 대표 식사권, 시니어의 아침밥 배달, 임원들과 식사권 등을 준다. 이스포츠 대회나 개발자 길드 모임도 있다. 한 달에 한 번씩 같이 밥을 먹으면서 소통하는 시간이다. 오프라인에서 모이는 게 중요하다고 생각한다. 만약 AWS에 장애가 났을 때 십분 안에 카페로 달려오면 원하는 걸 다 사주는 문화도 있다. 애니팡을 개발할 때 응급실에 네 번 실려갔던 경험이 있다. 생각해보면 일도 힘들었지만, 안 해도 될 걱정을 많이 했던 것이 원인이 됐다. 쓸데없는 고민을 하다가 응급실에 간 거다. 불면증도 걸렸었고. 개발자들한테 그런 걸 주기 싫다. 가능한 긍정적으로 보게 하려고 노력 중이다.

글. 바이라인네트워크
<남혜현 기자> smilla@byline.network

관련 글

첫 댓글

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다