Spaceflower 이미지 제공

언리얼 엔진 5로 제작된 편안한 분위기의 전략 게임 Let Them Trade

80 Level

스페이스플라워(Spaceflower)는 2019년 게임 디자이너 토마스 오토(Thomas Otto)가 독일 뉘른베르크에 설립한 인디 게임 개발 스튜디오입니다. 창립한 지 3년 만에 개발자 6인으로 이루어진 팀으로 성장했습니다. 스페이스플라워는 예술적이고 혁신적인 게임을 만들겠다는 열정으로 뭉쳤습니다. 지금까지 프리 투 플레이 프로젝트이자 Twitch 스트리머 전용으로 제작된 소규모 레이싱 게임 뷰어게임즈 아케이드(Viewergames Arcade)를 개발했으며, 네오버드(NeoBird)의 2D 퍼즐 플랫포머 월드 스플리터(World Splitter)를 퍼블리싱하기도 했습니다.

지금은 내년 출시 예정작인 렛 뎀 트레이드(Let Them Trade)를 개발 중입니다. 이 게임은 현실의 보드게임에 영감을 받은 평화롭고 편안한 느낌의 경제 시뮬레이션 전략 게임입니다. 육각형 타일맵과 AI가 조종하는 상인, 몰입형 게임 월드가 특징이며 거친 강부터 욕심 많은 도적에 이르기까지 다양한 장애물을 헤쳐나가며 마을이 번영하고 융성할 수 있도록 체계를 구축해야 합니다. 스페이스플라워에 있어 렛 뎀 트레이드는 더욱 방대한 프로젝트에 도전할 기회였으므로 팀에서는 미학적 요구와 코딩 측면의 요구를 모두 만족하고 개발 과정을 간소화하는 데 도움이 될 강력한 솔루션을 원했습니다. 그래서 언리얼 엔진 5를 선택했습니다.

이 출시 예정 전략 게임의 개발 과정을 더 자세히 알아보기 위해 스페이스플라워의 개발자들과 이야기를 나누며 렛 뎀 트레이드의 게임플레이와 특징, 주요 메커니즘, 그리고 언리얼 엔진으로 어떻게 개발 워크플로를 단순화하고 가속했는지 알아보았습니다.
 

렛 뎀 트레이드는 어떻게 시작하게 되었나요?

아트/게임 디자인 리드 겸 CEO 토마스 오토:
그 시작점은 2015년 제가 제작한 보드게임이었습니다. 2019년에 스페이스플라워를 설립하고서 첫 데뷔작을 만들 시기가 되자, 보드게임에서 영감을 받은 비디오 게임이라는 아이디어가 떠올랐습니다. 그 아이디어가 바로 렛 뎀 트레이드의 토대가 됐습니다. 처음에 계획한 것은 간단하고 캐주얼한 버전이었는데 빠르게 진화하면서 더 많은 기능과 메커니즘이 추가되었습니다. 결국 간단한 콘셉트에서 다양한 일을 처리하고 돌보는 복합 경제 시뮬레이션으로 진화했습니다.

게임의 주요 메커니즘에 대해 말씀해 주시겠어요?

토마스 오토:
플레이어의 주 임무는 도시들을 건설하고 각 도시가 다른 도시의 소비재나 원자재가 될 특정 상품과 자원을 생산하도록 생산 사슬을 갖추는 것입니다. 그러면 게임 월드의 AI 상인들이 알아서 좋은 기회를 찾아 거래를 진행합니다. 플레이어는 세금이나 보조금을 정하는 방식으로 거래를 간접적으로만 통제하며 구체적인 교역로를 정할 수는 없습니다. 어디서 거래할지 결정하는 것은 오로지 상인들의 몫입니다.
Spaceflower 이미지 제공

상인 외에도 독립적으로 활동하는 다른 캐릭터들이 있습니다. 상인을 약탈하려는 도적도 있고, 상인과 도시를 보호하는 기사들도 있죠. 이러한 메커니즘은 플레이어의 간접적 영향력이라는 아이디어와 일맥상통합니다. 가령 플레이어가 도적을 없애려면 도적에게 현상금을 걸어야 합니다. 그러면 근방에 있는 기사가 현상금을 타기 위해 도적을 잡으러 갑니다. 즉, 게임 속 모두가 열심히 자기 일을 하는 활기찬 세상을 보여주는 것이 저희의 생각입니다.

게임에는 도시에 카니발이 열리거나 전염병이 도는 등 월드 이벤트와 퀘스트도 있습니다. 일부 퀘스트에는 게임의 배경 스토리를 담고 있습니다. 또한, 게임을 진행하면서 잠금 해제할 콘텐츠도 많고, 더 영구적인 잠금 해제 특전이나 특수 건물 또는 플레이어의 테이블 주변 공간을 꾸미는 장식 아이템도 등장합니다. 이러한 게임 요소를 잠금 해제하려면 일정 진행률에 도달하거나, 특정 조건을 만족하거나, 플레이어의 예산과 월드의 자원을 투자하여 적극적으로 연구하는 연구 트리를 이용하면 됩니다. 또한, 광범위한 모드(mod)를 지원할 예정이니 커뮤니티에서는 이후에도 새로 발견하거나 구축할 물체, 신규 챌린지, 게임 모드(mode) 등을 계속해서 추가할 수 있습니다.
Spaceflower 이미지 제공
언제 어떤 이유로 프로젝트에 언리얼 엔진을 사용하기로 결정했나요?

리드 프로그래머 미하엘 헹스트만(Michael Hengstmann):
프로토타입을 만들기 전의 첫 번째 '게임플레이 증명'은 Unity로 제작했었습니다. 그 이유는 팀원들의 Unity 사용 경험이 많았기 때문입니다. 하지만 언리얼 엔진에 대한 좋은 평가가 계속 들려왔고 저도 이미 C++과 언리얼 엔진에 능통한 상태라 한번 사용해 보기로 했습니다.

UE가 전략 게임으로 유명하진 않았기 때문에 처음에는 좀 걱정이 됐습니다. 그래서 기간을 정해 어떤 엔진이 좋을지 테스트해 보기로 했습니다. 그러자 비교적 초반부터 언리얼 엔진이 렛 뎀 트레이드에 적합할 뿐만 아니라 다른 엔진보다 훨씬 나은 점이 많다는 사실을 알게 되었습니다. UE 엔진 개발자 자신들이 게임 개발에 UE를 사용하는 것만 봐도 알 수 있습니다. 제일 큰 장점 중 하나는 언리얼 엔진은 이미 수많은 통합 툴을 제공하기 때문에 다른 서드파티 에셋에 많이 기댈 필요가 없다는 점입니다. 덕분에 각종 툴을 신경 쓰지 않고 실제 게임 개발에 더 집중할 수 있었습니다. 마지막으로, 전체 엔진 소스 코드에 접근할 수 있다는 점도 큰 장점이었습니다. 덕분에 고유한 게임 메커니즘을 다양하게 구현할 수 있었죠.

엔진을 바꾸면서 적응하느라 소모한 시간보다 엔진의 툴과 기능 덕분에 절약한 시간이 더 많습니다.

언리얼 엔진 5의 최신 업데이트에 대해서는 어떻게 생각하시나요?

미하엘 헹스트만:
저희 아티스트들은 UE5를 사용하자마자 루멘나나이트에 푹 빠졌습니다. 새로운 기능을 사용해 보니 환상적인 비주얼을 구현할 수 있을 뿐 아니라 앞서 언급했듯 실제 아트 작업에 더 집중할 수 있었습니다. 코딩 측면에서는 버전 관리를 더 용이하게 만드는 액터당 한 개의 파일(One File per Actor, OFPA) 같은 기능이나 맵 생성을 위한 웨이브 함수 접기(Wavefunction Collapse) 알고리즘 같은 기능이 매우 유용했습니다. 최신 업데이트의 경우 업데이트할 때마다 기능이 향상되고 새로운 기능까지 적용되니 '업데이트' 알림이 뜰 때마다 업데이트해서 즐겁게 사용할 수 있었습니다. 다른 엔진에서 가끔 발생하는 시스템 중단 문제도 걱정할 필요 없었죠. 간간이 최신 버전을 시험해 보기도 했습니다. 최신 버전의 엔진 소스를 확인하여 빌드해서 시험해 보고 어떤 결과물이 나오는지 관찰했습니다.
왜 전략 게임을 선택하셨나요?

토마스 오토:
처음부터 이 정도 규모와 전략적 깊이가 있는 게임을 제작할 생각은 아니었습니다. 렛 뎀 트레이드는 미니멀한 소규모 무역 게임이 될 예정이었습니다. 하지만 게임에 구현하고 싶은 아이디어가 많았기 때문에 시간이 지나면서 게임의 규모가 점점 커졌습니다. 모든 엘리먼트와 메커니즘을 통합하는 것은 위험할 수도 있고 어려울 수도 있습니다. 항상 명확성, 복잡성, 접근성, 플레이 깊이감 사이의 균형을 잘 유지해야 합니다. 그리고 결국엔 경제 시스템의 수치가 원활하게 작동해야 합니다. 마지막으로, 그 결과물은 노가다 게임이 아닌 재미있게 즐길 수 있는 게임이어야 합니다. 이러한 목표에 두려움을 갖기 보단 진지한 마음으로 작업에 임하고 있습니다.

렛 뎀 트레이드의 메인 게임보드는 어떻게 작동하나요?

미하엘 헹스트만:
각 육각형 타일은 메인 게임보드에서 별도로 작동하는 액터로, 게임 타일의 함수 기능을 처리하는 몇 가지 컴포넌트를 가집니다. 타일에 무언가 건설하면, 어떤 메시를 추가하고 표시하거나 숨길지 판단하는 특정 컴포넌트가 있으므로, 게임 타일마다 주변 상황에 반응할 수 있습니다.
Spaceflower 이미지 제공
또한, 각 타일 액터는 타일에 무언가를 건설하는 건축 모드나, 기존 도시를 선택할 때 사용자 입력에 따라 작동하도록 UI에 세부 정보를 표시하거나 타일을 적절하게 조정하는 도시 UI 등 다른 모든 메커니즘에 대해서도 '호버 시' 또는 '클릭 시'가 발생했을 때 글로벌 이벤트를 트리거합니다.

건물 유형에 따라 타일 액터에 특수 컴포넌트를 추가하여 해당 건물의 함수 기능을 타일에 추가합니다. 그러므로 전체 게임보드는 컴포넌트 기반으로 운영된다고 할 수 있습니다. 몇몇 컴포넌트가 타일의 일반적인 행동을 제어하고, 특수 컴포넌트가 다른 행동이나 함수 기능을 추가합니다. 게임 타일 액터는 '어느 타일이 어디로 간다'라는 단순한 정의에 따라 플레이필드에 스폰됩니다. 대체로는 3D 육각형 좌표 시스템을 사용하여 타일을 처리하고 찾습니다. 때로는 3D 좌표가 2D 좌표로 변환되기도 합니다.
Spaceflower 이미지 제공
보드를 만들 때 프로덕션을 간소화하기 위해 프로시저럴 시스템을 사용했나요?

미하엘 헹스트만:
저희에게는 개발을 촉진하는 몇 가지 시스템이 있습니다. 그중 하나가 단순한 JSON 파일로 정의되는 육각형 맵입니다. 육각형 맵을 사용하면 맵을 아주 빠르게 빌드하거나 프로시저럴 방식으로 생성할 수 있습니다. 이미 어느 커뮤니티 유저분이 만든 웹 기반 맵 에디터도 갖추고 있습니다. 또한, 모든 서브시스템과 핵심 메커니즘을 완전히 다이내믹한 모듈형으로 만들어 많은 시간과 예산을 절약하고 있습니다.

예를 들어, 게임 타일은 모두 런타임에서 등록됩니다. 즉, 새로운 게임 타일 하나를 추가하려면 구조체를 정의로 채우고 해당 베이스 타일을 나타낼 액터와 ‘게임 타일 등록’을 위한 호출 하나만 준비하면 바로 새 타일을 사용할 수 있습니다. 그러면 새로운 것을 추가할 때 최대한 유연하게 대처하면서도 많은 시간을 절약할 수 있으며, 모드(mod)와 커뮤니티 에셋 제작을 위한 게임 접근성을 유지하는 데에도 도움이 됩니다.

비주얼 측면에서는 언리얼 엔진이 루멘을 통해 모든 라이팅을 멋지게 처리하고 나나이트를 통해 LOD를 처리하므로 저희는 단지 모델과 텍스처와 애니메이션에만 집중하면 됩니다. 테이블탑 나무 모형 스타일 덕분에 단순하고 단단한 표면의 메시 애니메이션을 복잡한 릭 없이 만들었고 주로 언리얼에서 직접 작업했습니다.
Spaceflower 이미지 제공
렛 뎀 트레이드의 경제에는 어떤 식으로 접근했나요? 어려워서 포기하지 않을 정도의 수준을 얻기 위해 어떻게 균형을 맞추었나요?

토마스 오토:
저희는 플레이어가 자신의 페이스대로 즐길 게임을 만들고 싶었습니다. 그렇기에 무언가가 반복적인 작업으로 변하면 즉시 프로세스를 자동화할 수 있게 하면서 동시에 플레이어가 원하면 언제든 적시에 프로세스를 제어하거나 간접적인 영향을 줄 수 있도록 만들고자 했습니다.

플레이어는 집과 생산 시설을 만들어 도시를 건설합니다. 그러면 시스템이 독자적으로 운영됩니다. 도시들은 물건을 사고 팔고 상인들은 알아서 물건을 유통합니다. 플레이어가 할 일이란 게임 월드의 모든 캐릭터가 자신의 필요를 충족할 수 있도록 관찰하고 수정하고 균형을 잡고 최적화하는 것입니다.

저희는 플레이어가 즉시 패배하는 상황에 도달하는 일이 없도록 만들고 싶었습니다. 그러므로 문제가 발생하면 게임은 플레이어를 약간 뒤로 역행시켜 더 최적화된 방식으로 다시 건설할 기회를 제공합니다. 추가로, 완성 시간이 중요한 목표는 드문드문 구현되며 게임의 느긋한 분위기를 와해하지 않도록 신중하게 구현되었습니다. 하지만, 게임의 단순한 목표인 성을 완성하는 일은 쉽지 않습니다. 성을 완성하려면 원활히 작동하는 경제 시스템이 필요합니다. 최종 밸런스 작업이 얼마나 복잡한지 알기 때문에 이와 관련된 모든 메커니즘과 값을 매우 유연하고 쉽게 접근할 수 있게 만들었습니다. 저희는 공개적으로 그리고 내부적으로 수많은 플레이 테스트를 진행할 예정입니다. 그 과정에서 아마 많이 변경하고 조정하겠지만 유연한 시스템 디자인 덕분에 그 과정이 훨씬 수월할 것입니다.
Spaceflower 이미지 제공
현재 로드맵은 어떻게 되나요? 게임 개발 과정에 대한 소식은 어디서 접할 수 있나요?

토마스 오토:
현재 비교적 개발 초기 단계에 있습니다. 게임스컴(Gamescom)의 첫 발표 이후로 정말 많이 배웠고 현재 이를 토대로 도시와 상인들을 개편하고 있습니다. 아직은 멀티플레이어나 이벤트 시스템 같은 중요 기능도 없고 UI와 UX 쪽에도 할 일이 많습니다. 즉, 앞으로 보여드릴 흥미진진한 기능이 많이 남아 있습니다.

저희 Discord 채널을 방문하거나 Twitter를 팔로우하면 게임 개발 소식을 확인하고 테스트도 가능할 수 있습니다. TikTok(독일어)에서도 아주 활발히 활동하고 있습니다.

그리고 바바리아주 영화계와 게임계의 믿을 만한 펀딩 파트너인 FFF-바이에른(FFF-Bayern)에도 큰 감사의 인사를 전합니다.

    지금 언리얼 엔진을 다운로드하세요!

    세계에서 가장 개방적이고 진보된 창작 툴을 받아보세요.
    모든 기능과 무료 소스 코드 액세스를 제공하는 언리얼 엔진은 제작에 바로 사용할 수 있습니다.