도조와 스타크넷: '증명 가능한' 게임이 체인 위에서 살고 죽는 곳
스타크넷에서는 루트 실험에서 자라난 커뮤니티가 모든 수를 수학적으로 증명하는 게임 엔진을 만들었다. 도조, 영원히 죽는 던전 게임, 그리고 '증명 가능한 게임'이라는 주장을 소개한다.
대부분의 로그라이크에서 영웅이 죽으면 그 판이 끝난다. 루트 서바이버(Loot Survivor)에서 영웅이 죽으면 그 죽음이 공개 블록체인에 영원히 기록된다. 이 작고 음울한 디테일이 스타크넷(Starknet)의 개발자 무리가 만들어 온 것을 잘 보여 준다. 모든 공격, 모든 전리품, 모든 죽음이 누구나 검증할 수 있는 거래인 게임이다.
그중 다수의 바탕에 있는 도구가 풀 온체인 게임용 오픈소스 엔진 도조(Dojo)다. 대부분의 플레이어가 들어 본 적 없지만, 블록체인 게임에서 가장 흥미로운 구석 중 하나다.
먼저, 스타크넷이란
스타크넷은 스타크웨어가 만든 이더리움 레이어 2다. 이뮤터블 X를 움직인 롤업 기술을 만든 바로 그 회사다. 영지식 증명(정확히는 STARK)으로 엄청난 양의 거래를 묶어, 모두 올바르게 계산됐음을 증명한 뒤 그 증명을 이더리움에 올린다. 스타크넷의 프로그램은 이런 증명을 효율적으로 만들도록 설계된 언어 카이로(Cairo)로 짠다.
게임에서 이게 중요한 이유는, 계산을 증명하는 것이 스타크넷의 본업이기 때문이다. 게임 로직을 더 많이 돌리고 증명할수록 게임의 더 많은 부분이 체인 위에 있을 수 있다.
도조가 하는 일
도조는 스스로를 증명 가능한 게임 엔진이라 부른다. 실제로는 카이로 개발자가 원래라면 처음부터 짜야 할 기반을 제공한다.
- 게임 오브젝트와 로직을 정리하는 엔티티-컴포넌트-시스템 구조. 많은 현대 게임 엔진이 쓰는 방식이다.
- 게임 클라이언트가 체인 위 상태를 빠르게 보여 줄 수 있도록 하는 인덱싱 도구.
- 배포 전에 세계를 시험해 보는 로컬 도구.
이더리움의 MUD와 비슷하게 들린다면, 맞다. 두 프레임워크 모두 게임 규칙을 블록체인에 두어 누구나 읽고 확장할 수 있게 하는 '풀 온체인 게임', '자율 세계' 흐름에서 나왔다. (그쪽 이야기는 MUD 해설에서 다룬다.)
루트와의 인연
도조 커뮤니티는 2021년 글자뿐인 판타지 아이템 '가방' 8,000개를 나눠 준 루트(Loot)에 깊이 뿌리를 두고 있다. (루트 기사 참고.) 루트와 렐름즈 커뮤니티의 개발자들이 스타크넷으로 옮겨 실제 게임을 만들기 시작했다.
- 루트 서바이버: 참가비를 내고 모험가를 어둠 속에 들여보내 최대한 오래 살아남는 아케이드풍 던전 게임. 괴수, 장비, 결과가 체인 위에서 정해지고 죽음은 영구적이다.
- 이터넘(Eternum): 렐름즈 세계를 무대로 자원, 군대, 영토를 체인 위에서 관리하는 전략 게임.
다른 스타크넷 팀들도 소행성대를 배경으로 한 우주 전략 게임 인플루언스(Influence) 같은 게임을 만들었다.
고통 없는 로그인
온체인 게임은 거래를 많이 요구하고, 예전에는 그만큼 지갑 팝업도 많았다. 스타크넷 계정은 설계상 스마트 계정이어서, 생태계는 세션 키를 적극적으로 활용해 왔다. 제한을 걸고 게임을 한 번 승인하면 플레이하는 동안 게임이 대신 처리하는 방식이다. 도조와 밀접한 회사 카트리지(Cartridge)는 이 아이디어를 바탕으로 시드 문구 대신 패스키를 쓰는 게임 지갑 컨트롤러를 만들었다. (개념은 계정 추상화 해설 참고.)
감수해야 할 점
증명 가능한 게임도 다른 풀 온체인 설계와 같은 문제를 안고 있다. 일반 게임보다 느리게 느껴질 수 있고, 누군가는 거래 비용을 내야 한다. 상태가 공개돼 있어 숨겨진 정보를 구현하기 어렵다. 이용자층이 작아 스튜디오가 버티기도 쉽지 않다.
일부 게임에는 유료 참가와 토큰 상금도 있어, 실제 돈이 걸린 모든 게임과 같은 질문이 따른다. 플레이어는 무엇에, 왜 돈을 내는지 정확히 알아야 한다.
왜 중요한가
도조와 스타크넷은 '아이템만이 아니라 게임 자체를 체인 위에'라는 아이디어를 가장 강하게 밀어붙이는 곳이다. 프로젝트 대부분은 작고 실험적이며, 이용자 수도 주류 게임에 비하면 아주 적다. 하지만 블록체인이 기념품 가게가 아니라 게임 엔진일 때 무엇을 하는지 보고 싶다면, 바로 여기를 봐야 한다.