brunch

You can make anything
by writing

C.S.Lewis

by 텐투플레이 Sep 14. 2020

게임 로그의 기본은 ‘육하원칙’

초심자를 위한 게임 로그 데이터 수집 1

* 본 내용은 텐투플레이 웨비나의 ‘게임 로그데이터 수집하기’를 요약 및 정리한 글입니다. 풀영상은 이곳에서 보실 수 있습니다.





저희가 만나본 많은 게임사들이 플레이어의 행동을 로그 데이터로 남기는 것에 대한 중요성과 필요성을 느끼고 있었습니다. 하지만 실제로 로깅을 하고 분석까지 하고 있는 곳은 많지 않았습니다.


그래서 “왜 데이터 로깅을 못 하고 계신가요?” 라고 물으면 보통 다음 두 가지 이유를 많이 말씀하셨습니다.


첫째, 어떤 데이터를 어떻게 쌓아야 하는지 잘 모르겠다.

둘째, 개발인력 부족으로 우선순위에서 밀렸다.


그래서 이번 브런치에서는 텐투플레이의 로그데이터 수집 방법과 노하우, 그리고 이를 더 효율적으로 할 수 있는 방법을 알려드리려고 합니다.




분석툴 사용하기

유저행동분석을 전문적으로 다루는 툴 뿐만 아니라 게임백엔드서비스를 전문적으로 하는 툴에서도 로그 수집 기능을 지원하고 있습니다. 특히 파이어베이스는 CRM툴의 역할도 하지만 파이어베이스 애널리틱스와 연동하면 빅쿼리같은 툴을 이용해 데이터분석하기가 상당히 용이합니다. 로깅 방법에 대해서도 튜토리얼이나 레퍼런스도 자세하고 풍부하게 제공되고 있어 따라하기가 어렵지는 않은 편입니다. 직접 오픈소스 기반으로 백엔드를 구현해서 직접 로그를 처리하는 회사도 꽤 많이 있습니다.




기존 분석툴의 한계

이런 툴들을 사용하게 되면 대시보드 화면에 지표가 자동으로 집계되어 출력됩니다. 하지만 단점도 있습니다. 많은 툴이 유료이거나, 무료더라도 사용에 제약이 많고 적용하기가 까다로워 쉽게 접근하기 어렵다고 느끼는 경우가 많습니다. 또 이런 툴들에서 제공하는 DAU, ARPPU 등이 정량적인 분석에 가까워 정성적으로 게임을 분석하는 데에는 어려움이 있습니다. 동시접속자수가 계속 떨어지는데, 이게 왜, 무엇 때문에 떨어지는지는 대시보드만 보고 알기가 어려운 것이죠. 이런 원인들을 막연한 감이 아니라 데이터로 정확하게 알기 위해서는 개발사에서 별도의 로그를 자체적으로 쌓는 방법 밖에 없습니다.




로그의 기본

로그는 정보전달을 위한 글쓰기와 마찬가지로 육하원칙을 따르고 있습니다. 게임에서 실시간으로 진행되고 있는 여러 게임내 상황들을 나중에 필요할 때 다시 꺼내서 앞뒤 관계를 보고 복기할 수 있어야 합니다. 그래서 객관적으로 최대한 자세하게 표현해야 하기 위해 육하원칙으로 로그를 만드는 게 보편적입니다.


이중에서 ‘왜’에 대한 것은 로깅하는 시점에서는 알기 어렵고 또 이걸 알아내려고 로깅을 하는 것이기도 합니다. ‘왜’ 대신에 행동의 대상이 되는 ‘무엇에게’를 넣어서 로그를 만듭니다.


누가

언제

어디서

무엇을

어떻게

 → 무엇에게


예를 들어 플레이어가 몬스터와전투를 하는 로그를 남기는 경우를 생각해봅시다.


몬스터를 한 대 때리는 행동을 육하원칙에 따라 서술하면,


누가 플레이어 [XXX]의 레벨 [3] 궁수 캐릭터 [AAA]가

언제 [2020년 5월 20일 14시 30분 11초]에

어디서 스테이지 [1-3] [센마이 초원]에서

무엇을  [물리 대미지] [100]을

어떻게 [평타]를 때려서 [크리티컬]로 입혔다

무엇에게 NPC레벨 [1]인 몬스터 캐릭터 [슬라임]에게


이를 로그로 남길 때도 이것을 다 풀어서 넣으면 됩니다.

실제로 데이터베이스에 쌓이는 로그는 다 이런 형태를 띠고 있습니다. 이 데이터 전체가 하나의 행동 단위(내가 몬스터를 한 대 때린 행동에 대한 행동 단위)가 되는 것입니다.


이거 하나만 떼어놓고 보면 로그를 구축하는 게 어렵지 않고 간단해보이지만 실제로 로깅을 구현을 하다보면은 마냥 간단하지만은 않습니다. 게임을 하다보면 다음과 같이 스테이지 승리와 같은 하나의 행동에서 여러 상황이 파생됩니다. 이 복잡한 내용을 어떻게 로그로 남길 수 있을까요?


[예제]

플레이어 XXX가 캐릭터 AAA, BBB, CCC를 데리고
스테이지 1-10 센마이 평원 유적에 입장하면서 스태미나를 20 지불했고,
몬스터 고블린 전사 2마리, 고블린 대장 1마리와
자동전투 기능을 이용해서 3분 동안 싸운 끝에 승리,
스테이지 클리어 보상으로 1000 골드와 경험치 500을 획득했다.
이 때 얻은 경험치로 캐릭터 AAA의 레벨이 5에서 6으로 상승했다.
캐릭터의 레벨이 상승하면서 플레이어의 종합 레벨도 4에서 5로 상승했다.
[플레이어 종합 레벨 5 달성] 퀘스트 보상으로 20 다이아몬드를 획득했다.
그리고...
또...


이걸 육하원칙에 따라 쪼개서 하나로 기록하기에는 양이 너무 방대합니다. 그렇게 남긴다고 하더라도 나중에 해석하는데 문제가 생길 수 있습니다. 나중에 효율적 분석이 가능하도록 로그 단위나 로그의 용도 등에 대해 깊이 고려해서 로그를 설계할 필요가 있습니다.


게임마다 보유하고 있는 콘텐츠의 종류나 양도 다 다르고, 분석하는 입장에서 무엇을 중점적으로 보는지 다 다르기 때문에 설계에 정답은 없습니다. 하지만 일반적으로 적용해볼 만한 로그 시스템 설계 4단계를 설명해보겠습니다.





다음 편 읽기

초심자를 위한 게임 로그 데이터 수집 2  게임 로그 시스템 설계 4단계

초심자를 위한 게임 로그 데이터 수집 3  게임 로그 시스템 최적화하기

초심자를 위한 게임 로그 데이터 수집 4  좋은 게임 로그 시스템을 만들기 위해 알아야 할 3가지



투플레이의 다른 글 읽으러 가기




복잡하고 어려운 로그데이터 수집

텐투플레이 AI에게 맡겨 보세요.


텐투플레이 무료 체험 하기


#SDK만 설치하면 데이터 로깅 끝  

#세상에서 가장 쉬운 게임 유저 분석



작가의 이전글 게임 데이터 분석, 몰라도 할 수 있는 이유

작품 선택

키워드 선택 0 / 3 0

댓글여부

afliean
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari