
Dojo를 해부하다: 스타크넷의 온체인 게임 엔진이 갖춘 뛰어난 점은 무엇인가?
글: PAUL VERADITTAKIT
편집: TechFlow

Dojo는 검증 가능한 Starknet 기반 체인 상 게임 엔진으로, 개발자들이 고품질의 게임을 제작할 수 있도록 도와주는 툴킷을 제공합니다. 이 엔진을 통해 모든 게임 내 자산, 사용자 동작 및 거래가 Starknet 블록체인 위에서 이루어집니다. Dojo의 기능을 논의하기 전에 먼저 Dojo가 카이로(Cairo) 언어를 어떻게 활용하는지 살펴본 후, 이 새로운 체인 상 게임 프레임워크를 기반으로 구축된 일부 애플리케이션을 분석하고, 마지막으로 Dojo가 체인 상 게임 발전에 미치는 의미를 논의하겠습니다.
Dojo의 기능
게임 엔진으로서 Dojo는 로컬 카이로 ECS(엔티티-컴포넌트-시스템), Torii 자동 인덱서, Katana 게임 정렬기, Sozu 개발 및 배포 툴체인 등 다양한 하위 구성 요소들을 포함하고 있습니다. 각각 간략히 살펴보겠습니다.
엔티티-컴포넌트-시스템(ECS)

ECS는 일반적으로 게임 설계에 사용되는 디자인 패턴으로, 게임 내 상호작용을 '엔티티', '컴포넌트', '시스템'이라는 세 가지 요소로 나누어 설명합니다.
기본적으로 엔티티는 피카츄와 같은 게임 내 존재를 의미합니다. 이 존재는 위치, 이동, 공격과 같은 여러 컴포넌트를 가집니다. 이 컴포넌트들은 본질적으로 기능의 모듈화된 그룹이며, 데이터만을 포함하고 실제 로직은 포함하지 않습니다. 로직은 시스템 내에서 정의되며 사용자가 이 시스템과 상호작용하게 됩니다. 예를 들어, 사용자는 '유저 시스템'과 상호작용하여 '공격' 컴포넌트로부터 데이터를 읽고, 이를 바탕으로 '이동 시스템'의 업데이트를 트리거하며, 최종적으로 이동 및 위치 컴포넌트를 갱신하게 됩니다. 또한 서로 다른 엔티티 또는 엔티티 유형은 이러한 컴포넌트들의 조합을 다르게 가질 수 있습니다. 예를 들어 NPC(비플레이어 캐릭터)는 공격 컴포넌트 없이 이동과 위치 컴포넌트만 가질 수 있습니다.
따라서 ECS는 놀라울 만큼 유연하고 직관적이며 강력한 프레임워크로서, 게임 개발자들이 다양한 존재들이 게임 환경 내에서 어떻게 상호작용할지를 명확히 정의할 수 있게 해줍니다. Dojo의 핵심 장점 중 하나는 이러한 친숙하면서도 유연한 프레임워크를 카이로 언어로 구현했다는 점으로, 개발자들이 익숙한 방식으로 신속하게 게임을 개발할 수 있도록 합니다.
Torii: 자동 인덱서
카이로 네이티브 ECS 프레임워크를 갖춘 것은 좋지만, 우리의 목표는 일반적인 게임이 아닌, 모든 자산, 상태, 로직이 Starknet과 같은 공개 블록체인에 저장되는 블록체인 게임을 개발하는 것입니다. 이를 위해 공개 블록체인과 상호작용하고 체인 상 정보를 모니터링할 수 있는 방법, 즉 블록체인 인덱서가 필요합니다.

여기서 Torii가 등장합니다. Torii는 Dojo 전용 자동 인덱서로서, Dojo 세계를 자동으로 인덱싱하고 게임 클라이언트에 낮은 지연 시간과 고성능의 GraphQL 및 GRPC 인터페이스를 제공하여 실시간으로 게임 상태 변화를 렌더링할 수 있게 합니다. Torii를 사용하면 Dojo 기반으로 체인 상에 배포된 게임 세계에서 발생하는 모든 이벤트를 신속하게 인덱싱할 수 있으므로, 개발자가 각자의 게임을 위해 별도의 인덱서를 작성해야 하는 번거로움과 불필요한 오버헤드, 오류 가능성을 줄일 수 있습니다.
Katana: 게임 특화 정렬기
Dojo 툴킷의 다음 기능은 게임을 위한 Katana 정렬기입니다. Katana는 체인 상 게임 개발 및 배포의 독특한 요구 사항을 염두에 두고 설계되었습니다. 저지연 시간과 고처리량을 최적화하여 중앙 집중형 정렬기로 작동하도록 설계되었으며, 로컬 개발과 프로덕션 배포 모두를 지원합니다. 프로덕션 배포에서는 실행 샤딩(execution sharding)과 지역 배포를 지원하며, 이들 배포는 표준 부모 체인에 통합되어 대규모 사용자 기반에 대해 게임을 수평 확장할 수 있도록 합니다.
Sozo: 개발 및 배포 툴체인
마지막으로, Sozo는 개발자들이 쉽게 스크립트를 구축하고 개발, 테스트 및 배포할 수 있도록 해주는 일련의 스캐폴딩 코드입니다. Sozo는 init, build, test, migrate 등의 다양한 명령어를 제공하여 개발자가 반복적인 보일러플레이트 코드를 작성하는 데 소요되는 시간을 절약할 수 있게 합니다. 특히 sozo migrate 명령어 하나로 사용자는 자신의 게임 세계를 빠르게 체인 상에 배포할 수 있으며, Sozo 라이브러리는 체인 상 기존 데이터와 새로 배포된 코드 사이의 상태 차이를 조정해줍니다.
Dojo 생태계 애플리케이션
앞서 언급한 내용에서 알 수 있듯이, Dojo는 ECS 모델과 같은 전통적인 게임 개발 관행과 블록체인 개발(Torii, Katana, Sozo)을 통합한 종합적인 개발 인프라를 제공합니다. 이제 Starknet에서 운영되며 현재 Dojo를 사용하거나 향후 버전에서 사용할 계획인 Dojo 생태계 내의 몇 가지 애플리케이션에 대해 논의하겠습니다.
Loot Realm
BibliothecaDAO가 개발한 Loot Realms는 단순한 게임을 넘어, 연속적으로 관련 게임들과 자체 전설, 역사 등을 창조하는 느슨하게 연결된 체인 상 IP 집합입니다. 2021년 텍스트 기반의 Loot NFT 컬렉션에서 비롯된 이 프로젝트는 현재 많은 게임의 기반이 되고 있습니다. 체인 상에서 완전히 운영되는 주요 IP 출처로서, Loot 기반의 게임과 문화는 Dojo 생태계뿐 아니라 더 넓은 체인 상 게임계에서도 중요한 힘으로 자리매김할 가능성이 큽니다.
Loot Realms IP를 기반으로 개발된 주요 게임 중 하나는 플레이어 NFT 기반의 MMO 전략 게임인 Realms: Eternum입니다. 기본적으로 Realm NFT는 도시, 지역, 항구, 강 등 지형적 특징과 구리, 돌, 석탄, 루비 등의 자원을 포함하는 지리적 영역의 지도입니다. 이 NFT의 특성은 플레이어가 영지에서 개발할 수 있는 자원의 양을 결정하며, 모든 자원은 유동적인 시장에서 거래할 수 있습니다. 플레이어는 지속적으로 전략적 결정을 내리고 자원을 균형 있게 관리해야 하므로, 이는 플레이어에게 통제감을 주며 게임에 전략적 깊이를 더합니다.
또 다른 Loot IP 기반 게임은 Loot의 텍스트적 기원에서 영감을 받은 텍스트 기반 생존 게임인 Loot Survivor입니다. 기본적으로 플레이어는 RPG 스타일의 전략을 개발하고, 다른 플레이어들과 전리품을 두고 경쟁하며 실시간 전략 방식으로 진전을 이룹니다.
Roll Your Own
Roll Your Own(RYO)는 Dojo의 주요 개발자 중 하나인 Cartridge Gaming Company가 개발한 멀티플레이어 전략 게임입니다. 원래 2021년에 Cairo Zero로 제작되었으나, Starknet이 Cairo로 업그레이드되면서 스마트 계약을 재작성해야 했고, Cartridge는 이를 위해 Dojo를 사용했습니다. 실제로 Dojo는 RYO를 재구축하기 위해 개발되었으며, 이 과정은 Cartridge 팀이 주도했습니다.
최근 Katana 정렬기에 배포된 플레이어 테스트에서 RYO는 7만 건 이상의 트랜잭션을 기록했으며, 2500라운드 이상이 진행되었습니다. 이는 Dojo 툴킷이 게임 애플리케이션의 전형적인 거대한 컴퓨팅 부하를 처리하고 구현할 수 있음을 충분히 입증합니다.
Briq
Briq는 Starknet 상의 또 다른 흥미로운 게임 프로젝트로, Dojo 소프트웨어 유지보수 개발팀 중 하나입니다. 기본적으로 Briq는 '체인 상 레고' 개념을 구현하여, 플레이어가 'briq' 컬렉션을 민팅하고 자신만의 창작물을 만들며 이를 NFT로 내보낼 수 있게 합니다. 기존의 'briq' 구조물은 구성 블록으로 다시 분해되어 다른 구조물 제작에 재사용될 수도 있습니다.
Dojo의 체인 상 게임에 대한 의미
Dojo의 아키텍처와 애플리케이션을 보면, 플레이어 간 자원 거래가 중심에 있음을 알 수 있습니다. 사실 이것은 블록체인이 새로운 형태의 게임을 약속한다는 점에서 핵심 요소일 수 있습니다—Starknet과 같은 공개 블록체인에 등록되고 공유되는 자원을 기반으로 한 게임은 특정 게임의 다중 사용자 상호작용성을 크게 향상시킵니다.
블록체인 기반의 이러한 강화된 멀티플레이어 경험은 '자율 세계(Autonomous Worlds)'의 핵심 약속이라고 할 수 있습니다. 여기서 '세계'란 자체 규칙과 독특한 문화를 가진 독립된 공간을 의미합니다. 블록체인에 기록되지만 사용자에 의해 정의되는 '자율 세계'는 새로운 창조적 표현의 플랫폼을 제공하며, 이는 블록체인 게임의 진화에서 중요한 장기적 가치 제안이 될 수 있습니다.
이러한 거시적 비전 속에서 Dojo와 Starknet 생태계는 이러한 발전을 실현할 수 있는 산업 선도적 기술 스택으로서 준비되어 있습니다. 카이로 언어가 솔리디티에 비해 가지는 언어적 장점, 혹은 Starknet의 고급 및 고성능 STARK 증명 시스템, 그리고 Dojo의 포괄적인 테스트 스위트와 아키텍처까지—이 생태계는 체인 상 게임과 '자율 세계'의 잠재력을 완전히 해방시키고, 궁극적으로 카이로를 광범위하게 채택되는 쉬운 범용 프로그래밍 언어로 만드는 데 필요한 기술적 역량을 갖추고 있는 것으로 보입니다.
TechFlow 공식 커뮤니티에 오신 것을 환영합니다
Telegram 구독 그룹:https://t.me/TechFlowDaily
트위터 공식 계정:https://x.com/TechFlowPost
트위터 영어 계정:https://x.com/BlockFlow_News














