brunch

You can make anything
by writing

C.S.Lewis

by Ryeol Sep 30. 2022

Agile 한 게임 개발이 어려운 3가지 이유 -1/2

사실 제목을 통해 사람들의 클릭을 유도했다는 점을 먼저 이실직고하고 넘어가고자 한다. 위 내용은 필자가 특수한 환경에서 경험한 내용을 공유하기 위해 작성한 글이며, 이 글과는 다른 경우가 있거나 다른 생각을 가지고 있다면 함께 나누며 더 완성도 있는 지식을 만들어 나가면 좋을 것 같다



세줄인 척하는 요약


게임 서비스에서는 (특히 PvP) 공정성이 매우 중요하다. 이런 특성으로 인해 A/B 테스트, 혹은 서비스의 변경이나 폐기에 큰 제약을 가지고 있다. 특정 플레이어에게만 피쳐를 공개하거나, 특정 플레이어에게만 더 좋은 보상을 지급해서 비교하기 어렵다.

게임 서비스에서는 안정성이 매우 중요하다. 이런 특성으로 인해 Agile에 필수적인 빠른 개선이 어렵다. 출시한 피쳐를 폐기, 혹은 자주 변경하는 것에 제약이 있으며 업데이트 자체가 플레이의 허들이 되기도 하기 때문이다.

게임은 즐거움을 제공해야 하며, 이것이 게임을 MVP 스펙만 출시되기 어렵게 한다. 기능적인 내용뿐만 아니라 게임을 통해 느끼는 감정적인 성취를 함께 고려해야 하기 때문에 연출이나 보상 등이 고려된, 완성도 있는 수준에서 출시되어야 한다.




이 글에서는 Agile 한 개발 문화를 가지고 있는 서비스 업계와의 비교를 주로 진행한다. 예를 들면, 우아한형제들의 배달의 민족 서비스가 비교 대상이 될 수 있을 것이다.


게임과 게임이 아닌 서비스라는, 이분법적 사고로 세상을 바라보기 위해 가장 먼저 "무엇이 게임인가" 라는 질문에 스스로 답해보고자 한다. 흙바닥의 오징어 게임(!) , 나무 판 위에서 하는 체스, 잔디 위에서 하는 축구, 닌텐도 콘솔에서 돌아가는 슈퍼마리오, 그리고 네트워크를 통해 99명과 경쟁할 수 있는 PUBG까지, 모두 게임이라고 할 수 있다. 게임은 놀이이기도 하고, 스포츠이기도 하고, 미디어 이기도 하다 미디어로써의 게임은 사람들에게 특정 경험을 제공하는 수단으로 사용되며 (무한하게 택배 배달을 하는 데스 스트랜딩), 스포츠로써의 게임은 규칙 하에 공정하고 안정적인 틀을 가지고 경쟁을 가능케 하고, 놀이로써의 게임은 위 모든 과정을 통해, 혹은 초월하여 사람들에게 즐거움을 제공한다


Agile 한 개발이란 빠른 시도와 관찰을 통한 개선을 뜻하는 소프트웨어 개발 과정을 뜻한다. 소프트웨어 개발 업은 제조업과 비교했을 때 사용자의 반응을 관찰하기 쉽고, 제품 출시 이후에도 제품을 변경하는 것이 쉽기 때문에 이러한 업의 특성을 살려 사용자들에게 더욱 유용한 제품을 만들기 위해 적용된 개발 방법론이다. 그렇다면 온라인 라이브 서비스 게임 산업 역시 사용자의 반응을 관찰하기 쉽고, 출시 이후 지속적 업데이트가 가능하기 때문에  Agile 한 개발 방법을 적용하기에도 좋을까? 다른 곳은 잘 모르겠지만, 아쉽게도 PUBG에서는 쉽지 않았다.



1) 게임은 공정해야 한다


본인이 담당한 기획은 리텐션 서비스였다. 사람들이 게임에 자꾸 다시 들어오도록 만드는 업무였다. 사람들이 자꾸 게임에 들어오게 하려면 두 가지 방법이 있는데 하나는 값진 물건을 주는 것이고 다른 하나는 값진 경험을 쌓게 하고 기념하는 것이었다. 그런데 Agile 한 개발 방법은 보상 지급과 관련해 두 방향 모두에서 문제가 있었다. 두 개의 다른 보상을 각기 다른 그룹의 플레이어에게 제공하여 운영상 더 나은 보상을 선택할 수 있으면 좋겠지만, 아쉽게도 8월과 9월의 100 레벨 달성 보상을 더 좋거나 더 나쁜 것으로 바꾼다면 공정성에 큰 문제가 될 수 있을 것이다. 또, 어떤 사람들에게는 해당 게임에서 달성한 제압 수를 기념하는 메달을 제공하고, 누구에게는 하지 않는다면 게임의 안정성에 의심을 받거나, (버그에요!) 역시나 공정성에 문제가 될 수 있다. (특히 초기의 PUBG와 같이 패키지 구매를 통해 게임을 플레이하는 형식이라면, 같은 돈을 내고 다른 컨텐츠를 제공받는 것에 대한 공정성 문제가 불거진다)



2) 게임은 불안정성을 감수하기 어려운 서비스다


게임은 불안정성을 감수하기 어려운 서비스이다. Agile 한 개발은 다음의 전제를 수반한다. “우리의 서비스는 완벽하지 않으며, 개선할 점이 있다”. 배달의민족과 같은 IT 서비스에서는 사용자들의 행동과 매출 분석을 통해 장바구니에서 음식을 더 담으러 갈 수 있는 버튼을 추가하기도 하고, 리뷰에 구체적인 내역을 추가해 내가 시키려는 메뉴의 평가가 어떤지 쉽게 알 수 있도록 하기도 한다. 다만, 게임은 경쟁의 요소가 있기 때문에 더 나은 기능을 중간에 제공하기 어렵다. 많은 상대를 제압한 플레이어를 기념하기 위해 100 제압 시 지급하는 황금메달 피쳐를 출시했는데, 막상 해당 조건을 달성하는 플레이어 수가 너무 적어 다음 달 패치에서 30 제압으로 난이도를 조절해야 한다면 겨우겨우 100 제압을 얻은 사람은 화가 날 것이다. 피쳐의 밸런싱이 불완전한 경우, 라이브 서비스 게임에서는 이를 개선해 나가는 과정이 IT서비스에 비해 더욱 고통스러운 것이다. 이로 인해 초기에 많은 리스크를 예측하고 대비책이 마련된 채로 스펙이 출시되어야 하는 경우가 많고, 이는 기민하고 빠른 개발 과정에 방해 요소로 작동한다.



3) 게임은 즐거워야 한다!


쓰고 보니 1),2),3) 이 모두 어느 정도 서로 연관된 이야기인 것 같다. 게임은 즐거움을 주는 놀이이다. 배달의민족, 카카오택시 등 많은 서비스들이 궁극적으로는 사람들의 니즈를 충족시키는 것을 목표로 하고 있다면, 게임은 재미를 충족시키는 것을 큰 목표로 삼고 있다. 플레이어가 게임을 하며 파괴한 적 건물의 수를 기록하고, 이를 알려주는 서비스가 있다면 플레이어는 자신의 암묵적 성취를 명시적으로 인지하고 게임에 더욱 몰입할 수 있는 계기를 부여받을 수 있다. 그런데 이것이 그냥 건조한 숫자로만 표시된다면 원하는 효과를 반도 얻기 힘들 것이다. 즐거움을 통해 게임을 더 하게 만들려면 적절한  연출과 적절한 보상이 함께 지급되어 해당 순간의 감정을 크게 변화시키는 것이 매우 중요하다. 이런 특성 때문에, 게임 서비스들은 MVP스펙 (파괴한 구조물 숫자 표시) 만을 출시하여 플레이어 반응을 보고, 이에 따라 피쳐를 발전해 나가는 것이 아니라 초기부터 감정을 위한 추가적 기능들이 고려되어야 하는 것이다.



아니 근데 그러면..


그렇다면 게임을 개발하면서는 Agile 한 개발의 빠른 시도와 관찰, 그리고 개선의 이점을 전혀 누릴 수 없는 것일까? 아래의 시도들이 이루어졌고, 꽤 긍정적인 효과를 얻었다.


짧은 주기로 운영될 수 있는 컨텐츠 시스템 기획

사전 데이터 관찰을 통한 밸런싱


다음 편에서는 위 두 가지에 대해 이야기하고자 한다.




이 글은 PvP, 라이브 서비스 게임에 대해 다루고 있다.

- PvP (player vs player. 사용자끼리 경쟁하는 게임이며, 네트워크의 발전과 함께 널리 퍼졌다. 이와 구별되는 개념으로 사용자가 사전에 코딩된 괴물과 싸우는 PvE player vs Environment, 다른 사용자와 협동 및 경쟁하여 대상과 싸우는 PvPvE 형식 등이 있다)

- 라이브 서비스 : 한 번에 완성된 게임을 출시하여 변경되지 않는 형식이 아니라, 앱 서비스처럼 업데이트를 거치며 새로운 기능 등이 추가되는 형식. 역시 네트워크의 발전과 함께 널리 퍼졌다. CD로 구매해서 플레이하는 스타크래프트 1 같은 게임이 이와 반대되는 개념이며, 스타크래프트는 업데이트를 위해 Brood War라는 확장팩을 별도 CD로 판매한 것을 생각하면 라이브 서비스와의 다른 점을 인식할 수 있다.


애자일 소프트웨어 개발이란?



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