[W.STORY] 갈바닉 브라이드 #4 (비대면 작업 시대)

2023-07-31


저번에 이어서 이번 회차에 여러분과 함께할 IA게임즈의 컨텐츠 기획자 알레아입니다!
지난 회차에선 IA게임즈가 어떻게 탄생했고, 프로토타입을 어떻게 준비했으며 또 그 첫단추를 어떻게 끼웠는지를 보여드렸습니다. 
이번 회차에서는 저희가 어떻게 작업 체계를 다졌는지에 대한 이야기와 프로토타입에서 구현한 또 다른 핵심 시스템인 ‘전기 전이’에 대해 설명드리도록 하겠습니다!



말 전달하기 게임


멋진 사무실에 출근해 다같이 한자리에 모여 개발을 할 수 있으면 좋겠지만, IA게임즈에겐 아직 사무실을 빌릴 정도의 여유는 있지 않았습니다. 또 코로나가 심하게 유행하던 때기도 하고, 각 멤버가 서울 곳곳에 흩어져 있어 그 중간지점에 해당하는 사무실을 찾기도 어려웠습니다. 따라서 IA게임즈 역시 비대면 작업을 통해 개발을 진행하기로 했습니다.


우선 주 1회 디스코드를 통해 각자의 작업물을 공유한 뒤, 다시 작업을 분배하는 주간 정기 회의를 갖기로 했습니다. 이렇게 그 날 얘기를 하고 나면, 이제 각자 남은 주동안 받은 일을 열심히 진행하는 것이죠.


작업을 개시하고 첫 한달 정도는 큰 문제가 드러나지 않았습니다. 문제는 개발이 본격화되면서부터였습니다. 첫번째 문제는 협업이었습니다. 개발 초기에는 서로의 작업이 독립적이었기에 괜찮았으나, 프로토타입을 만들어 나가며 점점 서로의 협력이 필요한 경우가 생겼습니다. 작업 중간 다른 파트의 의견이나 협력을 구해야 할 경우, 상대방이 지금 작업이나 대화가 가능한지 아닌지 알 수 없으니 무작정 연락을 기다려야 하는 문제가 발생했죠. 이러다 보니 서로 작업이 지연되어 효율이 떨어졌습니다.


또다른 문제는 소통 관련이었습니다. 업무의 분배나 전달, 기획의도에 대한 질문과 응답 등이 비대면으로 이루어지니, 1대1로 만나 실시간으로 전달하는 것에 비해서 상대적으로 설명이 부실할 수밖에 없었습니다. 그렇다 보니 착오가 발생해 의도되지 않은 작업을 하거나, 기획의도에 맞지 않게 작업이 진행되거나 하는 일이 생겼습니다.


예를 들어, 개발 편의성을 위해, 구글 스프레드시트 데이터를 유니티에 연동하여 이용하는 방안을 기획팀에서 제시한 적이 있었습니다. 그러나 이 아이디어를 전달하는 하는 과정에서, 스프레드시트 데이터를 ”실시간으로” 연동하자는 것으로 오해가 일어난 것입니다.


프로그래머들은 요청받은 대로 -실제론 오해였지만- 빌드된 게임의 데이터를 실시간으로 수정할 수 있게끔 하는 작업을 수행했습니다. 그리고 프로그래밍 팀이 결과물을 보고했을 땐 양쪽 다 놀랄 수밖에 없었죠.

 

동공지진의 순간



실시간으로 구글시트를 로딩하게끔 시스템이 구축되어 오프라인 환경에서 게임을 플레이할 수 없게 되버렸으니까요. 당연히 이 시스템은 폐기하고, 원래 의도했던 것도 다시 구현해야 했습니다. 일을 두배, 아니 세배로 하게 된 것이죠.


위와 같은 상황에서, 프로그래머팀은 기획팀의 의도를 100% 전달받지 못한 셈입니다. 그리고 이렇게 사소한 오해조차 저런 노동력의 낭비를 일으키니 얼마나 아쉽습니까!


간단히 ‘기획의도를 더 상세히 설명하자!’ 라던가, 아니면 ‘프로그래머가 더 잘 이해하자!’ 하고 넘겼을수도 있겠지만, 저희는 이 ‘말 전달하기 게임’이 생산성을 크게 저하한다고 생각했습니다. 특히 앞선 예시는 저희가 공모전 마감에 쫓기던 중간에 터진 일이었거든요. 정말 아찔했습니다. IA게임즈는 똑같은 일이 다시는 일어나지 않게끔 머리를 맞대어 해결방안을 생각해 보기로 했습니다…



생산적인 목요일


스파이키랑 저는 일단 가장 직관적인 해결책부터 생각해 봤습니다. 그냥 대면 업무를 하는 것이죠. 사무실을 두고 다들 출근을 한다면 집중도라던가 소통 문제 등등 많은게 해결될 것 같았습니다. 지원 사업도 살펴봤고, 사무실도 알아봤습니다. 일단 사무실은 비용적으로 너무 부담이 컸습니다. 또 장비 문제도 있었습니다. 데스크톱을 옮기거나 할 순 없었으니까요.


반대로 비용적 문제가 비교적 자유로운 지원사업은 접근성이 떨어졌었습니다. 한시간 반씩 걸려 출근하는 것 자체가 어려운 건 아니었지만, 팀원들에게 ‘이곳 어떠냐’라고 말했을때 반응이 썩 좋진 않았죠.


결국 다시 저희가 쓸 수 있는 방법 내에서 해결책을 생각해야 했습니다. 그러다 아이디어가 나왔습니다. 카톡 등 시간차가 있는 환경에서 의견을 주고받는 데에서 정보의 손실이나 오해가 발생한다면, 온라인으로 실시간 협업을 하면 되지 않겠느냐라는 거죠. 이미 디스코드 등을 사용해 실시간으로 화면을 공유하거나 대화를 할 수 있었으니까요.


다만 이 경우 스케쥴이 문제였습니다. 각자 게임 개발 외에도 할 일이 있죠. 예를 들어 팀원 중 절반은 휴학중이지만 나머진 학교를 다니고 있으니 서로의 시간표라도 외우지 않는 이상 매번 약속을 잡고 모이는 것은 꽤 피곤할 것 같았습니다.


매번 이렇게 약속을 잡는건 INFJ에겐 너무 힘든 것이에요



그래서 아예 일주일 중 하루, 실시간 협업을 하는 날로 하기로 했습니다. 이름하여 '생산적인 목요일!'


단순한 아이디어였지만, 다행히 이 아이디어는 꽤 많은 문제를 해결했습니다. 특히 화요일에 회의를 통해 업무를 전달받고 이틀 정도는 일단 혼자 직접 맡은 일을 점검할 시간을 받으니까요. 그렇게 정리를 한 후 어떤 부분이 협업이 필요한지를 생각한 뒤 목요일에 모이면, 디스코드 보이스챗을 통해 모두가 서로의 작업을 공유하며 협업을 하게 됐습니다. 대면 작업만큼의 확실한 의견전달이나 실시간 협업은 불가능하지만, 프로그래머의 질문에 기획팀이 기획의도를 바로바로 상세히 설명해주거나, 세부적인 디자인, UI 위치 등 즉각적인 피드백이 필요한 경우에도 이제 대처할 수 있게 되었었습니다. 이로서 협업 문제도 소통 문제도 많이 고쳐졌고, 지금까지도 저희는 이 체계를 사용하고 있답니다!



[갈바닉 브라이드]의 핵심, 상호작용


온라인 협업 문제도 해결했으니, 이제 다시 저희 게임에 대한 얘기를 해보겠습니다.


갈바닉 브라이드에는 두가지 핵심적인 게임 요소가 있습니다. 첫 번째 핵심 요소에 대해선 지난 회차에 설명드렸습니다. 바로 스텔스죠. 프로그래머 썬은 뷰콘과 상태 시스템을 구현해 기초적인 스텔스 게임을 완성시켰습니다. 이제 플레이어들에겐 피해다녀야 할 적이 생겼죠.

 

두 번째 핵심 요소는 ‘상호작용’입니다. <갈바닉 브라이드>가 영향을 받은 여러 게임들에는 플레이어와 게임 세계가 상호작용하는 컨텐츠들이 있습니다. 단순히 ‘데미지를 가한다’나 ‘체력을 회복한다’를 넘어서서, 플레이어의 행동이 게임플레이 내에서 다양한 결과로 이어지는 것이죠. 예를 들어 볼까요?


전혀 수상하지 않은 정장 입은 대머리 남성이 모터쇼를 즐기는 모습



유비소프트의 유명 암살 게임 <히트맨>에서, 각 레벨에 존재하는 모든 요소들은 장식이 아니라 상호작용의 대상들입니다. 넓은 레벨 내에서 플레이어는 다양한 수단으로 타겟을 암살해야 합니다. 그리고 그 과정에는 수많은 상호작용이 포함되죠.


예를 들어, 플레이어는 타겟이 먹으려는 음식에 미리 독을 탈 수 있습니다. 꼭 치명적인 독이 아니라, 단순히 배탈이 나는 정도의 독일 수 있고요. 이러면 대상은 중독된 음식을 먹고 화장실에 갑니다! 그 상황을 플레이어는 자유롭게 이용할 수 있죠.


다른 예시로는 <젤다의 전설: 야생의 숨결>이 있습니다. 게임에서 비가 오면, 벽은 미끄러워져 오르기 어려워지고, 불화살에 붙은 불은 꺼집니다. 또 벼락도 치고요. 리얼하지 않나요?


비가 오면 암벽이 미끄러워집니다



정해진 대로 행동과 반응이 있는 게임들에 비해, 이렇게 상호작용이 풍부한 게임들은 유저들의 창발적 행동을 유도합니다. 요컨데, ‘이게 되네?’의 순간입니다.


<갈바닉 브라이드> 역시 이러한 자율성과 창발성을, 개발 가능한 수준에서 구현하고자 하였습니다. 최초 구상은 물, 불, 금속, 전기간의 복합적 상호작용이었습니다. 다만 개발 비용과 시간 등의 문제로, 속성 한 가지를 중심으로 전개되는 형태로 수정되었습니다. 이것이 바로 ‘전기 전이 시스템’ 이었죠.


전기는 현대인에게 친숙한 요소입니다. 전기를 사용한 초능력자 또한 다양한 미디어에서 접할 수 있죠. <갈바닉 브라이드>는 이와 차별화된, ‘갈바니즘’ 기반의 전기 상호작용을 다룹니다. 문학 프랑켄슈타인의 주 소재이기도 한 갈바니즘은, ‘동물의 몸에는 생체 전기가 흐르기 때문에, 전기 자극을 통해 시체를 되살릴 수 있다’라고 주장하였죠. 이를 기반으로 번개를 쏘아대거나 하는 극적인 요소가 아닌, ‘손에 닿은 물체에 전기를 부여할 수 있다’라는 하나의 스킬을 중심으로 시스템을 확장해 나갔습니다.


이렇게 대상에 부여된 전기는, 세 가지 특성을 지닙니다.


하나, 전기는 전도체를 타고 흐른다.


둘, 전기는 전기 장치에 동력을 공급해 작동시킬 수 있다.


셋, 전기가 부여된 대상이 생체인 경우, 마비된다.


프로토타입 단계에선 먼저 이 ‘전도체를 타고 흐르는 전기’를 구현하고자 했습니다.


게임의 상호작용 파트를 담당하는 프로그래머 옥타는 기획에 따라 먼저 브라이드에게 전기를 부여하는 능력을 구현했습니다. ‘마나’에 해당하는 전력을 구현한 뒤, Q버튼을 통해 전력을 부여하는 기능이었죠.


전기를 부여할 수 있게 되었으니, 부여할 대상이 필요하겠죠! 전도체로는 임시 리소스로 만든 쇠파이프와 파란 네모, 아니 물웅덩이를 구현하였습니다. 그럼 어떻게 이 전도체들이  전기를 전달받는지 한번 살펴보죠.


먼저 전도체로 설정된 오브젝트들은, 모양에 따라 그 내부에 좌표 포인트를 갖습니다. 마치 바둑판처럼요. 전기 전이는 이 포인트에서 포인트로 이루어지게 됩니다.


전도체에 전기가 부여되면, 전기가 부여된 양에 따라, 전기가 실제로 각 포인트를 이동하며 전이됩니다. 여기에 전기가 현재 부여된 물체에 따라, 알맞은 소리와 이펙트를 재생하게 됩니다.

전기 전이 시스템 표현도



이러한 원리에 따라, 옥타는 주어진 에셋들을 적용시켜 전기 전이를 구현해냈습니다. 처음 구현이 끝났을 때에는 임시 에셋들로 이루어진 터라 엉성한 느낌도 들었지만, 전기가 실제로 전도체를 타고 흘러 상호작용을 일으키는 것을 본 순간에는 전율을 느꼈습니다.


실제로 전기 전이가 실행되는 모습



이처럼, 프로토타입 단계에서는 기획된 게임이 실제로 구현 가능한지, 그리고 그렇게 구현된 프로토타입이 의도대로 작동하는지 파악하는 것이 중요합니다. 물론, 이 전기 전이 하나만으로 앞서 설명한 ‘자율적인 플레이가 가능하다!’를 확인할 순 없습니다. 그런 의도는 다른 기능도 마저 구현해야 점검 가능하겠죠. 하지만 이 프로토타입만으로도, 스파이키가 기획한 시스템- 전기 전이 시스템이 의도대로 구현될 수 있었다는 것을 확인할 수 있었습니다. 큰 문제 없이 의도대로 작동하는, 재미가 있는 기능이 구현되었기 때문에, 이제 저희는 전기에 ‘감전시킨다’, ‘동력을 부여한다’ 등의 다양한 기능들을 구현할 기반을 마련하는데 성공하였습니다. 저희 게임의 큰 틀이 짜여진 셈이죠! 이제 이를 발판 삼아 나머지 시스템들을 구현할 일만 남았습니다.


오늘은 여기까지입니다! 다음 회차에는 IA 게임즈가 공모전에 게임을 출품하기 위해 거친 과정들과, 그 이후의 보완점들에 대해 다룰 예정입니다! 다들 그때까지 몸 조심하시고요. IA 게임즈의 알레아였습니다!






스파이키 / 게임 기획자

 

번뜩이는 아이디어에 숨쉬는 생명을!

IA 게임즈(It's Alive Games)는 게임개발 연합동아리 'GameMakers'에서 결성된 5인 구성의 대학생 인디게임 개발팀입니다. 2023년 출시를 목표로 잠입 액션 게임 프로젝트 '모던 프로메테우스'를 개발 중에 있습니다

26 0