Sente의 6인 플레이 전략 게임을 구현하기 위한 데이터 기반 보드 구축
요약
본 기사는 최대 6명의 플레이어가 동시에 움직이는 복잡한 전략 게임 *Sente*를 Unity로 구현하는 과정을 다룹니다. 개발팀은 초기 스케치와 프로토타입을 거쳐, 최종적으로 Unity의 C# 환경을 활용하여 3D 보드 에디터 및 게임 시스템을 구축했습니다.
핵심 포인트
- Unity는 복잡한 멀티플레이어 전략 게임 구현에 적합하다.
- 초기 Flash/HTML5에서 Unity로 전환하며 개발 과정이 발전했다.
- C# 언어를 사용하여 6인 동시 플레이 움직임을 해결하는 시스템을 구축했다.
Sente의 6인 플레이 전략 게임을 구현하기 위한 데이터 기반 보드 구축

Fergus Baird - Unity Technologies
Senior Content Marketing Manager

체스와 바둑 같은 전략적 깊이를 가지고 최대 6명의 플레이어가 동시에 움직인다면 어떤 일이 벌어질까요? 이것이 아르헨티나의 Oxobox Games에서 개발한, Unity를 사용한 육각형 보드 전략 게임 Sente의 전제입니다. 플레이어들은 토큰을 육각형 보드에 내려놓아 에너지 네트워크를 구축하고, 레이저를 발사하며, 상대방의 에너지 코어를 사냥합니다. 이 모든 과정은 테이블에 있는 다른 모든 사람이 동시에 같은 것을 계획하는 동안 벌어집니다.
우리는 게임 디렉터이자 리드 프로그래머(그리고 스튜디오 공동 창립자 중 한 명)인 Fernando Picate와 프로듀서 및 PR 리드인 Joaquín Frere를 만나, 6명의 플레이어 움직임을 한 번에 해결하고, 그들 자신의 게임 디자이너가 Unity를 열 필요조차 없도록 충분히 간단한 보드 에디터를 구축하며, 수십 년 된 취미 프로젝트를 출판된 게임으로 만드는 과정에 대해 이야기를 나누었습니다.

테이블 위 취미에서 10년 이상의 Unity 활용까지
Sente는 Oxobox의 첫 번째 게임입니다. 이 스튜디오는 또한 영화 및 TV 포스트 프로덕션 분야에서도 활동하며, 엔터테인먼트 산업에 자막 제작, 더빙, 품질 관리를 제공합니다. 하지만 Sente 자체는 사실 이 스튜디오가 존재하기 이전부터 기원한 것입니다. 원래 아이디어는 게임 디자이너 Javier Mrad의 아이디어를 바탕으로, 직장 밖에서 친구 사이인 팀이 1990년대에 가지고 놀기 시작한 스케치와 종이 프로토타입에서 성장했습니다. 첫 번째 플레이 가능한 시도는 두 명의 플레이어용 게임으로 Flash로 제작되었으며, 이후 HTML5 캔버스로 잠시 방향을 틀었다가 Unity를 사용하게 되었습니다.
“저는 왜였는지 모르겠지만 처음부터 Unity에 편안함을 느꼈습니다. 심지어 Flash에서 무엇이 비슷했는지 기억나지도 않아요.”라고 Fernando는 말합니다. “당시에는 Unity가 JavaScript도 지원해서, Unreal Engine 같은 것을 위해 바로 C++로 뛰어드는 것보다 훨씬 친근하게 느껴졌습니다. JavaScript와 Boo가 더 이상 사용되지 않게 되자, 저희는 완전히 C#로 옮겼고 – 오늘날까지도 Unity에서 작업하는 것이 즐겁습니다.”}{
페르난도가 회상하듯이 Unity로 넘어간 시점(4.0 LTS부터 시작)은 Sente가 2D 프로토타입에서 오늘날 플레이어들이 보는 완전한 3D 보드로 전환된 때이기도 합니다. 팀은 그 이후로 계속 업그레이드해 왔으며, 현재는 Unity 6으로 Sente를 개발하고 있습니다.

Sente | Oxobox Games | Curveball Games
아무도 차례를 기다릴 필요가 없는 보드게임 설계하기
Sente의 보드는 에너지 코어(energy cores)를 중심으로 구축되어 있습니다. 내부적으로는 여전히 이들을 “킹(kings)”이라고 부르는 중심 조각들이며, 주변 셀에 에너지를 방사합니다. 자신의 차례가 되면 플레이어들은 코어를 이동시키거나 활성화된 셀 위에 토큰을 떨어뜨릴 수 있습니다. 토큰은 두 가지 면을 가지고 있습니다. 레이저로부터 보호하는 금속 면과 이웃 토큰에게 에너지를 전달하는 기능이 있는 전용 면입니다. 그리고 한 번 충전되면 레이저를 발사하는 취약한 면도 있습니다. 충분히 많은 토큰들을 연결하면 보너편에 있는 상대방의 코어를 원거리에서 사격할 수 있으며, 자신의 네트워크를 놓치면 자신에게도 똑같은 일이 발생합니다. 적절한 토큰을 파괴하면 심지어 연결된 두 조각을 완전히 새로운 에너지 코어로 병합할 수도 있습니다. 갑자기 체스판에 퀸이 두 개 있는 것처럼, 하나의 '킹' 대신 두 개의 '킹'으로 플레이하는 것과 같습니다.
문제는 이었습니다. 최대 6명의 플레이어가 참여할 경우, 움직임을 하나씩 해결하면 경기가 참을 수 없을 정도로 느려졌기 때문입니다. 그래서 Oxobox는 Sente를 동시턴(simultaneous turns)을 중심으로 재구축했습니다.

Sente | Oxobox Games | Curveball Games
“턴이 시작되면 타이머가 있고, 모든 플레이어가 자신의 움직임을 선택합니다.”라고 페르난도가 설명합니다. “모두가 결정하거나 타이머가 만료되면, 턴은 한 번에 모두 해결됩니다.” 이는 플레이어가 상대방의 코어에 확실해 보이는 사격 대형을 세웠다가도, 바로 그 순간 상대방이 방패를 배치함으로써 놓치는 것을 지켜볼 수 있다는 의미입니다.
⚠️ [IMG:N] 형식 토큰은 이미지 placeholder 입니다. 번역하지 말고 원래 위치에 그대로 유지하세요.
6인 플레이 매치가 지루하게 멈추는 것을 막기 위해 수년간의 조정이 필요했습니다. Joaquín은 “테스트 중 상당 부분을 보드가 갇히지 않도록 하는 데 할애했어요”라고 말합니다. “모두가 방어 태세를 갖추면 아무 일도 일어나지 않는 것처럼 느껴질 수 있지만, 움직임을 만들 동기는 항상 있어요. 결국 누군가가 다른 사람들이 모든 것을 추적할 수 없을 만큼 충분한 가능성을 만들어내고, 그때 매치가 활짝 열리죠. 실력이 뛰어난 플레이어들 사이에서는 그런 매치가 한 시간을 넘길 수도 있어요. 그렇지 않으면 10분이나 15분에 그칠 겁니다.”

Sente | Oxobox Games | Curveball Games
하나의 데이터 모델로 수십 개의 도구 구현하기
Sente의 모든 보드는 크기나 위에 놓인 조각이 무엇이든 상관없이, 화면에 렌더링되는 방식과는 완전히 분리된 동일한 기본 논리적 모델로 저장됩니다.
Fernando는 “모든 보드는 실제로 보이는 것과 별개로 논리적 모델로 저장돼요”라고 말합니다. “그 같은 데이터가 모든 것을 구동해요: 에디터 내 보드 도구, 게임 내 보드 무작위화, 그리고 저희가 게임에 포함시키는 템플릿들까지도요. 장면 객체(scene object)를 직접 건드릴 필요 없이 초당 몇 번이고 보드를 재구성할 수 있습니다.”
이 단일 진실 공급원(single source of truth) 덕분에 Oxobox는 크기 4부터 크기 10에 이르는 육각형 보드(
이 동일한 데이터 모델은 훨씬 더 구체적인 문제, 즉 비(非)프로그래머가 싱글 플레이어 캠페인을 위한 퍼즐을 어떻게 디자인할 수 있게 할 것인가에 대한 문제를 해결했습니다.
Sente의 퍼즐 디자이너인 Javier Mrad는 프로젝트 전체를 시작한 원래 아이디어를 낸 사람과 같은 인물입니다. 페르난도는 웃으며 말합니다. “그는 Unity를 설치해 본 적이 없습니다. 제가 아무리 많이 부탁했어도 한 번도요. 사실 이것이 저로 하여금 제대로 된 게임 내 보드 에디터를 구축하도록 강제했습니다. 모든 보드는 암호화된 문자열로 내보낼 수 있기 때문에, Javier가 자신의 스프레드시트에서 전체 보드나 퍼즐 레이아웃을 디자인하고, 그 문자열을 저에게 보내면 제가 그것을 게임에 바로 가져올(import) 수 있습니다.”
Oxobox는 이 동일한 공유 메커니즘을 플레이어들에게도 공개할 계획이므로, 결국 플레이어들 스스로도 보드를 만들고, 내보내고, 거래할 수 있게 될 것입니다.

“우리 게임 디자이너인 Javier Mrad와 같은 창의적인 사람과 작업하는 가장 좋은 방법은 그의 규칙을 따르는 것이었습니다. 우리에게 필요한 것은 문자열 하나였습니다.” – Joaquin Frere, Oxobox Games 프로듀서 겸 PR 리드
Timeline을 사용한 싱글 플레이어 캠페인 스크립팅
Sente의 싱글 플레이어 캠페인은 플레이어가 로봇으로 변장하여 바에 잠입하고 단골들을 도전하는 내용이며, 거의 전적으로 Unity의 Timeline 패키지를 기반으로 구축되었습니다. 각 레벨 또는 “분기(branch)”는 대화, 카메라 움직임, 보드 변화를 엮어내는 Timeline 시퀀스입니다.
이것을 작동시키기 위해 Oxobox는 여러 사용자 정의 Timeline 트랙을 만들었습니다. 하나는 대화 캐릭터를 이동시키고 표정을 설정하는 용도이며, 다른 하나는 영화 같은 시퀀스를 위해 커스텀 스플라인(spline)을 따라 카메라를 움직이는 용도이고, 또 하나는 타임라인 중간에 보드를 한 상태에서 다른 상태로 변환하며 변화를 애니메이션화하는 트랙입니다. 분기는 Timeline 신호(signals)와 마커(markers)를 사용하여 처리되며, 이는 플레이어가 실수를 했을 때 캠페인이 앞으로 건너뛰거나 재시도 지점으로 되돌아가게 합니다.

“Sente 보드 외에도 이야기할 것이 있었고, 우리는 그것을 멋지게 보이게 하고 영화처럼 느껴지도록 만들고 싶었습니다.” – Joaquin Frere, Oxobox Games 프로듀서 겸 PR 리드
페르난도(Fernando)는 “저희는 Timeline을 끊임없이 사용하는데, 실제로 문제가 생긴 적은 없어요.”라며 “튜토리얼이 아마 가장 복잡한 시퀀스일 거예요. 대화, 보드 변화, 카메라 움직임이 모두 겹쳐져 있거든요. 하지만 저희가 커스텀 스플라인 트랙(spline tracks)을 사용해 카메라와 캐릭터를 구현한 토너먼트 피날레조차도 같은 시스템으로 돌아갑니다.”라고 말합니다.
바로 이 대화 트랙들이 Oxobox의 현지화 파이프라인(localization pipeline) 역할까지 겸합니다. 페르난도는 “저희는 자막 제작과 더빙 분야에서 경험을 많이 했기 때문에 현지화에 대한 노하우가 이미 많았어요.”라며 “대화 클립 내부에 자체적인 현지화 관리자(localization manager)를 구축해서, 저희가 한 줄을 작성하는 순간 바로 번역을 수정할 수 있게 됐습니다. 현재는 TextMesh Pro를 통해 일본어, 중국어, 한국어를 포함해 몇 가지 언어로 현지화를 진행하고 있습니다.”라고 말합니다.

“제대로 되고 체계적인 현지화!” – 호아킨 프레레(Joaquin Frere), Oxobox Games 프로듀서 겸 PR 리드
Oxobox Games의 다음 계획
Oxobox는 퍼블리셔인 Curveball Games와 파트너십을 맺었으며, Sente는 현재 Steam을 통해 PC에서 플레이할 수 있습니다. 팀은 Steam Deck 인증을 목표로 하고 있으며, 향후 콘솔 플랫폼도 탐색하고 있습니다.
1990년대부터 제작된 프로젝트인 Sente는 작고 자원 활용도가 높은 팀이 유니티(Unity) 에디터 툴링(Editor tooling)에 의존하여 자체 인력 규모보다 훨씬 큰 무언가를 만들 수 있다는 것을 상기시켜줍니다. 보드가 초당 수십 번이나 형태를 바꾸는 것부터, 심지어 유니티 에디터를 한 번도 열어보지 않은 퍼즐 디자이너의 작품까지 말입니다.
Sente는 Steam에서 플레이할 수 있으며, Unity 블로그와 리소스 허브(Resource Hub)에서 다른 Unity 개발자들의 더 많은 이야기를 확인해 보세요.
AI 자동 생성 콘텐츠
본 콘텐츠는 Unity Blog의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기