자율 세계: 게임 전체를 이더리움에 올리려는 엔진 이야기
만든 사람이 떠나도 게임 세계가 계속 돌아간다면? '자율 세계'라는 아이디어이고, MUD라는 프레임워크가 그 대표 도구다. MUD가 하는 일, 이것으로 만든 게임들, 그리고 생각보다 어려운 이유를 정리했다.
지금까지 해 본 모든 온라인 게임에는 전원 스위치가 있다. 어딘가에서 회사가 서버를 돌리고, 그 비용을 더 내지 않는 순간 세계는 끝난다. 작지만 끈질긴 개발자 무리는 몇 년째 이렇게 묻는다. 그렇지 않다면? 게임 세계의 규칙이 공개 블록체인에 있어서, 만든 스튜디오에 무슨 일이 생기든 세계가 계속 돌아간다면?
이들은 이런 게임을 자율 세계(autonomous world)라고 부른다. 그리고 이더리움에서 이를 만드는 데 가장 널리 쓰이는 도구가 스튜디오 래티스(Lattice)의 프레임워크 MUD다.
아이디어의 출발점
이 흐름은 2020년의 우주 전략 게임 다크 포레스트로 거슬러 올라간다. 이더리움 위에서 완전히 돌아가며 영지식 증명으로 플레이어 위치를 숨긴 게임이다. (다크 포레스트 기사 참고.) 다크 포레스트는 게임 전체가 체인 위에 있을 수 있다는 걸 증명했지만, 그걸 만드는 일이 얼마나 고된지도 보여 줬다. 개발자마다 똑같은 기반 코드를 처음부터 짜야 했다.
비슷한 시기에 이 커뮤니티의 글쓴이들은 '자율 세계'를 이렇게 설명하기 시작했다. 블록체인이 규칙을 강제하고, 누구나 읽고 확장하고 그 위에 무언가를 만들 수 있으며, 어떤 회사도 끌 수 없는 세계. 중요한 의미에서 그것은 상품보다는 실제 장소에 가깝다.
MUD가 실제로 하는 일
이더리움에서 게임을 만드는 게 번거로운 이유는 스마트 계약이 게임 상태를 다루도록 설계되지 않았기 때문이다. 수천 개의 유닛, 타일, 인벤토리를 저장하고 게임 클라이언트를 그 상태와 맞추려면 맞춤 코드가 엄청나게 필요하다.
MUD는 게임 개발자라면 익숙할 몇 가지 아이디어로 이를 해결한다.
- 체인 위의 공용 데이터베이스. 게임 데이터를 스프레드시트 같은 테이블에 저장해, 저장 구조를 처음부터 설계할 필요가 없다.
- 자동 동기화. 게임 클라이언트가 체인 위 상태를 그대로 비춰, 세계가 바뀌면 화면도 바뀐다.
- 모듈형 시스템. 게임 로직을 데이터에 작용하는 '시스템'으로 나눈다. 현대 게임 엔진에서 흔히 쓰는 엔티티-컴포넌트-시스템(ECS) 구조와 비슷하다.
- 열린 확장. 세계의 데이터와 규칙이 공개돼 있어, 다른 개발자가 세계가 정한 권한 규칙 안에서 새 시스템을 얹을 수 있다.
쉽게 말해 MUD는 온체인 게임에게 게임 엔진 같은 존재다. 지루한 기초 공사를 맡아, 제작자가 재미에 집중하게 해 준다.
무엇이 만들어졌나
래티스는 자기 도구로 직접 게임을 만들었다. 초기 실험작 OPCraft는 이더리움 레이어 2 위의 복셀 세계로, 익숙한 블록 쌓기 감각을 줬다. 래티스의 대표작 스카이 스트라이프(Sky Strife)는 떠 있는 섬들 위에서 짧은 판을 벌이는 실시간 전략 게임으로, 모든 수가 블록체인 거래다. 래티스는 이런 거래를 게임할 만큼 싸게 만들기 위해 온체인 게임 전용 레이어 2 네트워크 레드스톤(Redstone)도 내놨다.
다른 팀들도 MUD로 전략 게임, 소셜 실험, 디지털 펫을 만들었다. 대부분 소규모이고, 완성작보다는 플레이 가능한 프로토타입에 가까운 경우가 많다.
여전히 어려운 이유
솔직한 문제 목록은 이렇다.
- 속도. 모든 행동이 블록을 기다린다. 빠른 네트워크라 해도 일반 멀티플레이 게임의 즉각적인 손맛과는 거리가 멀다.
- 비용. 플레이어든 스튜디오든 누군가는 모든 거래 비용을 내야 한다.
- 비밀. 기본적으로 모든 것이 공개돼 있어, 전장의 안개 같은 숨겨진 정보는 다크 포레스트 같은 암호학 없이는 구현하기 매우 어렵다.
- 플레이어. 대부분의 사람은 게임 상태가 어디에 저장되는지 관심이 없다. 재미있는지가 중요하다.
왜 중요한가
자율 세계는 블록체인 게임에서 가장 이상주의적인 영역이면서, 토큰에 가장 덜 집착하는 영역이다. 목표는 '게임하며 돈 벌기'가 아니라 '만든 사람보다 오래 사는 세계 만들기'다. 실험 대부분은 작지만, 열린 규칙, 플레이어가 만드는 확장, 끌 수 없는 게임이라는 아이디어는 좋아하던 게임이 문을 닫을 때 모든 게이머가 느꼈던 답답함을 정면으로 다룬다.
다른 네트워크에서의 비슷한 시도는 도조와 스타크넷의 온체인 게임 해설에서 볼 수 있다.