다크 포레스트: 이더리움 안에 우주를 숨긴 우주 전략 게임
2020년 작은 팀이 모든 수가 공개 블록체인에 기록되는데도 아무도 내 위치를 볼 수 없는 실시간 전략 게임을 만들었다. 어떻게 가능했는지, 왜 중요했는지, 그리고 이 게임이 낳은 '풀 온체인' 게임 장르를 짚었다.

서버가 유리 상자인 전략 게임을 떠올려 보자. 누구나 모든 코드와 지금까지 둔 모든 수를 볼 수 있다. 그런데 그 안에 내 행성이 어디 있는지 아무도 모르게 하는 '전장의 안개'를 만들어야 한다. 불가능해 보인다. 2020년, 작은 팀이 그걸 해냈고 결과물에 다크 포레스트(Dark Forest)라는 이름을 붙였다.
다크 포레스트는 2020년 8월 2일 이더리움 위에서 돌아가는 탈중앙·지속형 실시간 전략 게임으로 공개됐다. 첫 베타인 0.3 버전은 8월 7일 이더리움 테스트 네트워크에서 열렸다. 기간은 일주일, 초대받은 사람만 참여할 수 있었고, 상금은 달러에 연동된 토큰 1,024 DAI였다. 대중적인 히트작은 되지 못했다. 대신 더 큰 영향을 남겼다. 아이템만이 아니라 게임 전체가 블록체인 위에서 살 수 있다는 걸 개발자들에게 납득시킨 게임이 된 것이다.
서버 없는 우주
'블록체인 게임'이라 불리는 대부분은 게임 자체는 일반 서버에 두고, 체인은 아이템용 보관증처럼만 쓴다. 다크 포레스트는 이를 뒤집었다. 규칙, 지도, 행성, 이동, 승자 판정이 모두 체인 위 스마트 계약에서 처리됐다. 무슨 일이 일어날지 정하는 회사 서버가 없었다. 개발팀이 컴퓨터를 꺼도 우주는 그대로 존재한다.
플레이어는 절차적으로 생성된 우주를 탐험하며 행성을 찾고, 행성 사이로 에너지를 보내 더 많은 행성을 점령한다. 행성은 성장하고 자원을 만들며 업그레이드할 수 있다. 다른 플레이어도 같은 일을 하고 있고, 언젠가는 제국끼리 부딪힌다. 고전 우주 4X 게임의 느리고 브라우저 기반인 사촌쯤 되는데, 내리는 명령 하나하나가 서명된 블록체인 거래라는 점이 다르다.
이 설계에는 유명한 문제가 있다. 공개 블록체인은 말 그대로 공개돼 있다. 행성 좌표를 이더리움에 저장하면 경쟁자 누구나 읽을 수 있다.

유리 상자 안에서 숨는 법
다크 포레스트의 해법은 영지식 증명, 그중에서도 zkSNARK라는 방식이었다. 영지식 증명은 어떤 주장이 참이라는 사실을, 그 이유는 밝히지 않고 증명하는 기술이다.
원리를 쉽게 풀면 이렇다.
- 행성으로 이동할 때 좌표를 공개하지 않는다. 대신 좌표의 해시, 즉 되돌릴 수 없게 뒤섞은 지문을 올린다.
- 여기에 그 이동이 규칙에 맞다는 증명을 함께 낸다. 숨긴 행성이 주장한 위치에 실제로 있고, 출발한 곳에서 사정거리 안에 있다는 증명이다.
- 스마트 계약은 증명을 확인하고 이동을 승인하지만, 내가 실제로 어디 있는지는 전혀 알지 못한다.
다른 플레이어를 찾으려면 직접 탐색해야 한다. 내 컴퓨터가 구역별로 좌표를 해싱하며 어디에 행성이 있는지 확인하는 방식이다. 탐색에 컴퓨팅 파워를 많이 쓸수록 우주를 더 넓게 본다. 다크 포레스트의 전장의 안개는 그래픽 효과가 아니라 수학적 사실이다.
체스는 숨겨진 정보가 없는 게임의 대표 예다. 양쪽이 모든 것을 본다. 다크 포레스트의 공개 글도 같은 비교를 들었다. 완전히 공개된 시스템에 숨겨진 정보를 넣었다는 것, 그것이 돌파구였다.
클릭 대신 코드를 짠 플레이어들
모든 것이 체인 위에 공개돼 있었기 때문에, 다크 포레스트 플레이어들은 대부분의 전략 게임이 금지하는 일을 할 수 있었다. 자기만의 도구를 만드는 것이다. 게임은 커뮤니티 플러그인을 지원했고, 열성 플레이어들은 탐색을 자동화하고 수십 개 행성을 관리하며 공격을 계획하는 스크립트를 만들었다. 최상위 플레이어 상당수는 사실상 봇을 돌리는 프로그래머였다.
의견은 갈렸다. 다른 이름의 치트라는 시각도, 바로 그게 핵심이라는 시각도 있었다. 규칙이 공개 코드인 세계에서는 플레이어가 그 위에 만들 수 있는 모든 것이 게임의 일부가 된다. 팬들은 이런 설계를 자율 세계(autonomous world)라고 부르기 시작했다. 스스로의 규칙에 따라 계속 돌아가고, 누구나 확장할 수 있는 게임 우주라는 뜻이다.

게임 하나에서 하나의 흐름으로
다크 포레스트가 남긴 가장 큰 유산은 사람이다. 프로젝트 주변의 개발자들은 응용 영지식 암호학과 온체인 게임을 연구하는 그룹 0xPARC를 꾸리는 데 힘을 보탰다. 그 흐름에서 아이디어를 더 밀고 나간 도구와 팀이 나왔다. 이더리움의 MUD, 스타크넷의 도조(Dojo) 같은 온체인 세계 제작 프레임워크, 그리고 게임 상태 전체를 블록체인에 두는 '풀 온체인 게임(FOCG)' 실험들이다.
이 방식에는 분명한 단점이 있다. 모든 행동이 블록을 기다려야 하므로 게임 기준으로는 느리다. 네트워크가 붐비면 비용이 오른다. 코드가 공개돼 있어 버그도 공격자를 포함한 모두에게 보인다. 게다가 플레이어는 지갑과 거래를 다뤄야 하는데, 그냥 '플레이' 버튼을 누르는 것과 비교하면 쉽지 않은 요구다.
하지만 매력도 그만큼 분명하다. 풀 온체인 게임은 끌 서버가 없으니 퍼블리셔가 서비스를 종료할 수 없다. 누구든 허락 없이 새 인터페이스, 새 지도, 애드온을 만들 수 있다. 그리고 결과를 검증할 수 있다. 누구도 몰래 규칙을 바꿀 수 없다.
2026년에도 중요한 이유
다크 포레스트에는 큰 마케팅 예산도, 토큰도, 화려한 트레일러도 없었다. 라운드 규모도 작았고, 플레이어 대부분은 개발자, 연구자, 크립토 애호가였다. 그런데도 6년이 넘게 지난 지금까지 누군가 온체인 게임을 제안할 때마다 기준점이 된다. 웹3 게임 업계가 아직도 논쟁하는 세 가지를 증명했기 때문이다.
1. 블록체인은 아이템 이상을 담을 수 있다. 게임 전체가 체인 위에서 돌 수 있다. 2. 공개 장부에서도 비밀은 가능하다. 영지식 증명으로 숨길 것을 숨길 수 있다. 3. 열린 규칙은 플레이어를 제작자로 만든다. 플레이어와 모더의 경계가 흐려진다.
한계도 보여 줬다. 대부분의 플레이어는 봇을 돌리거나 거래 비용을 내고 싶어 하지 않고, 대부분의 스튜디오는 모든 행동을 블록체인 거래로 만들 여유가 없다.

숫자로 보는 다크 포레스트
- 2020년 8월 2일: 다크 포레스트 공개
- 2020년 8월 7일: 첫 베타(v0.3) 일주일간 운영
- 1,024 DAI: 첫 라운드 상금
- 0: 이동할 때 체인에 공개되는 좌표 수 (영지식 증명 덕분)
WGC의 시각, 그리고 다음에 해 볼 것
다크 포레스트는 블록체인 게임계의 독립 예술 영화다. 직접 해 본 사람은 적지만 자주 인용되고, 이후 더 큰 예산으로 나온 대부분의 게임보다 훨씬 흥미롭다. '온체인 게임'이 원래 무엇을 뜻하려 했는지 알고 싶다면 토큰 차트가 아니라 여기서 시작하자.
다음으로 볼 것은 이 아이디어에서 자라난 프레임워크다. MUD와 자율 세계, 도조와 스타크넷의 온체인 게임 해설이 이야기를 이어 가고, 루트(Loot) 기사는 플레이어가 게임을 직접 만들게 하려던 2021년의 또 다른 실험을 보여 준다.