Lessons from Fully On-Chain Gaming: Dark Forest and More
EDCON 2021 · 27 Aug 2021 · 14:57
Gubsheep shares lessons from Dark Forest, a fully onchain strategy game that uses zero-knowledge proofs to hide information. He examines what persistent public game logic makes possible for players and developers, including independent interfaces and extensions, and discusses how open systems can develop in directions their original creators did not design.
Speakers
Topics
From EDCON 2021, hosted by EDCON.
Transcript
hey everyone uh this is gov sheep from dark forest um super glad to be here thanks to the edcon team for having me um today i'm going to be talking about lessons from fully on chain games and some of the things that we have learned from dark forest cool so first just a quick introduction what is dark forest for those of you who haven't played or heard of the game dark force is a procedurally generated fully decentralized mmorts built with zk snarks on ethereum you can see here this is a little screenshot from the game the cool thing about dark force is that all of the game logic and not just um
say like ownership or accounts or something like that runs on the evm and we used to run rounds of the game on robson now we run these beta rounds on the x die chain and i just grabbed a little screenshot here from doing analytics but you can see that um during dark forest rounds about 2 000 to 3 000 players when actively playing the game consume more gas than all of mainnet combined so you know another one of those kind of forcing functions on the importance of scalability for applications like ours and a little bit about myself i'm guv sheep i work on dark forest i also work on applied zero knowledge r d and a couple of educational eco dev projects
like eath university which i know scott is going to be talking about tomorrow as well and you can find me on twitter at gupshee cool so the first question that i want to try to answer today is why build games on the blockchain at all and i'm sure for a lot of folks who either are in crypto or are thinking about jumping into crypto i'm sure we've all had the experience of looking at adapt or something and being like oh wait like this is like you know insert app here but decentralized and what decentralized actually means in the context of you know a given app is that it's just worse you know you have something that's that's perfectly fine um and decentralization doesn't actually make
it better so first we're going to try to answer the question uh why is crypto gaming interesting and in my head i have three answers to why people build crypto games there's the broke answer there's a woke answer and then there's the bespoke answer and obviously we're most excited about the bespoke so the broke answer is that crypto is exciting for building games because it's really easy to build ponzi schemes and scams on crypto so for folks who still remember from 2017 2018 this is a screenshot from fomo 3d which was basically a tongue-in-cheek kind of like ponzi scam slash exit scheme scam um and it was really
fascinating i think from like a mechanical perspective but i think this was one of the apps that um made crypto gaming feel like oh it's just it's all about gambling it's all about scamming people um that's not what we are particularly interested in today and i'm glad that the space has moved from uh this sort of experiment so the woke answer to this which i think is the dominant thesis for a lot of crypto games today especially the ones that are receiving a lot of attention is that crypto allows you to build money to use money apis to build digital worlds with real consequences so real meaning economic here
so for example like oh you know imagine a game where if i like steal your planet or something that's like me taking hundreds of dollars of economic value uh from you and the key thing here is that like even though blockchains are harder to build on they provide these really easy to use native and permissionless apis into value itself so you know a lot of the earliest examples of this kind of stuff were like arguably the first crypto games were like these like nft collectible games which also raised a lot of interesting questions and have intersections with like what is art what is ownership um so we've got this like screenshot from crypto punks here um there were a lot of collectible games that people have been uh building since you know 2017 2018 we've got crypto
kitties here in axio infinity which has been um drawing a lot of attention and making waves lately and then we also have tcg games like gods unchained or sky weaver where you've got cards that are erc721 tokens and then battles happen off-chain and i think that these this woke reason for building crypto games is really exciting in my head for two reasons the first is that it allows games to become more immersive um because when you put something at stake the game feels more real and that's something that's really important to building a compelling gaming experience that's why you know in in kind of an orthogonal direction vr
and graphical advances are so exciting when we think about games here if you have a game with real economic consequences then that provides a different uh and perhaps even more powerful dimension of immersivity and the second thing that's really exciting about this is that it allows these games to incentive align communities and dev teams so now when the community feels staked in the success of or the adoption of a game then that means that the community is both incentivized to and empowered to build on top of the game as well but i think that the current dominant line
of thinking in crypto games still has a number of weaknesses so first off a lot of these games especially nft collectible games where the only thing that lives on chain is essentially an erc 721 token um a lot of these games are more speculative asset classes than games and um you know i saw this uh great tweet the other day um which said crypto games will never be sustainable as long as the market around the game is more fun than the game itself um i think that if we really want to fully unlock the power of games to have mainstream appeal to draw people in for intrinsic reasons rather than financial reasons we have to build games that are actually fun for reasons other than speculation the other thing that's uh kind of a
weakness or in fact a really major weakness and is kind of the subject the second half of this presentation is that a lot of these games aren't fully crypto games so for example ownership is on chain but game logic or identity or permissions is off chain um and i remember there's this tweet from absa back in earlier this summer where a really popular game had just uh you know banned a large bot farm and to me the two things that kind of stuck out about this were like one first of all i think that crypto native games or something that truly has you know decentralization ethos ought to enable things like bots and automations and programmability um third-party development and second of all the fact that there is
someone who has admin permissions who can prevent people or ban someone from playing games from playing a game is kind of another red flag that maybe we're not you know leaning into the full ethos or the full power of decentralization now why do we care about this though this isn't just like an ideological or you know like purest sort of view on why uh decentralization or crypto nativeness is important for games when you build a fully crypto native world you actually get a lot of really interesting emergent properties so now we get to the bespoke thesis which is basically that fully crypto needle native games are powerful because they enable permissionless interoperability and rather that this rather than describing what that means
i'm going to show some examples that we've seen from these very early on experiments forest um so one of the first things that has been really exciting about building this game is realizing that when you build a truly crypto native dap that is permissionless and where the game logic just lives in a smart contract api the game is client agnostic anyone can programmatically interact with the game in whatever way that they'd like so when we initially started out we provided an open source client to the dark force contracts and then we built out a plug-in system and we quickly saw a very vibrant community emerge around plug-in development we had these people
writing things like visualizations automations chaining automations to build up to artificial intelligences to play the game we had people build things like you know a remote snarker which is basically like allows you to prove zk snarks in a remote web server that you hook into your game separately um recently we saw georgios from paradigm with the aid of kobe and a few other folks build out a third party rust client with no input from us and this was also really interesting because so this basically allows you to play dark force in a terminal ui um and uh basically it just like implements all of the networking and everything from scratch and in order to get this
working apparently they had to you know deal with compatibility issues and and figure out compatibility issues between the rust artworks zk snark proving tool stack and item 3's uh sircom and snark js stack which is super interesting dark forest um and if you've heard some of our presentations before you might have heard how a lot of zk stuff is the crux of what goes on and of how dark force enforces like a fog of war um we saw in the last couple of rounds people started building remote miners such as project sofon with their you know rust miner but also recently these uh two different teams in the last round which built out an open source gpu
miners for exploring the dark forest universe another really exciting thing from the last couple of months is the first interoperable third-party contracts and marketplaces that have been built on top of dark forest so the broadcast market was built by blaine and jacob from project cellphone and basically what this allows you to do is allows you to put bounties on other players planets for other players to broadcast locations of those planets this is a mechanic you might be familiar with if you have heard of you know the dark forest thought experiment or i've read the three body trilogy um but what's essentially happened here is this is not just a client plug-in or a third-party automation this is something where a team independent of the core devs has
gone in and built a new feature for the game and this is really the power of permissionless interoperability someone else can come in and build like an escrow contract or a marketplace or a guild or a dow on top of the game a nested game within the game and that doesn't require any sort of support or like you know business development or whatever from from the core team that's building the core smart contracts last round we also saw three separate teams um build out artifact marketplaces so artifacts are you know they conform to the erc721 spec and they're these items that you can find in the game um it's been on our list of to do items actually to build out an artifact swapping or trading interface turns out we didn't have to because last game three independent
teams came out with artifact marketplaces um which was really really awesome to see and you could sort of imagine you know in the far future maybe even more of the game could be decentralized you could have game modes that live in auxiliary contracts that are sort of views into the core dark force contract you could have new resources or objectives or even you know something like satellites or something that that all lives in third-party contracts um that players can opt into if they choose to make that a part of their gameplay experience and the last shout out that i'll just make is that uh we're collaborating with another team that's building an even more complex uh game with zk mechanics um that are beyond dark forests uh and this is gonna be really exciting because
players should be able to script in solidity things like battle strategies um you know combat tactics and stuff like that so be on the lookout for uh this game from luden's so all of that gets us to our final question here which is you know what is crypto native in the context of gaming and why is it important um i argue that crypto native games are games that are maximally on chain the source of truth for the game data is the blockchain not a server the game logic and rules are implemented in smart contracts the game is developed in accordance with open ecosystem and open source principles and the game embraces real world digital value that sort of money native apis we talked about so in particular things that aren't crypto native games include things like
you know a mobile shooter with a crypto wallet integration or say like a tcg or collectible game with erc721 cards but off-chain battles um or you know and this is this is a really funny one to me defy app playful skin or lots of emojis um i think that these things are exciting and powerful in their own right and this isn't to say that only you know crypto native games fully crypto native games can be successful commercially or artistically but i think that crypto native games are the most interesting and important to look at to understand the full potential of blockchain for building digital worlds and where the space is going and yeah as far as the why you know we've seen through these examples permissionless interoperability means that players can build the game experience not just core devs it means
that other games can hook into your game to share assets identity systems mechanics and more without needing like a support team or a bd team or anything like that um and players can build anything from marketplaces to dows to nested games to new resources to automations alternate clients interoperable assets shared reputation systems i know there's a lot of excitement floating around with lately with uh the m word but you know there's still a long way to go as we've mentioned in previous talks if you've seen any of them we think that zktec is going to be required to build more compelling on-chain game mechanics scalability is a huge bottleneck devx is a huge bottleneck we obviously need more devs to come into the space and get acquainted with this zktec or or ethereum application development and
then application design patterns are definitely something that's still being iterated on um but we think that this is a really exciting direction and we hope that crypto native gaming can be one of the answers to the question vitalik posed at last cc uh what happens after d5 if you're interested in helping us build this future um we've got a hiring announcement actually out on twitter recently and you can check out our blog um to get a link to that um you can support darkforce on git coin darkforce is supported by you know grants and donations completely and you can check out the educational initiatives that we support like eath university and reboot dms open thanks for having me and enjoy the rest of edcon