New Ethereum talks, every Monday. The week's conference uploads by event, in your inbox.

Loading player…

The Current State of Fully On-Chain Games with William Robinson

Ethereum DenverMon, Oct 9, 2023, 12:00 AM

Speaker

William Robinson

There are games that try to put their state (and the logic that executes changes to that state) on chain. The most famous example is Dark Forest (2021), which remains quite esoteric, since the UX was meant for only the bravest of users. The hope is that in making games fully permissionless, trustless, open-source and composable, we will see the emergence of new design patterns. In the same way that Uniswap was able to put swaps fully on chain and integrate with other protocols in novel ways (such as with Flash Loans), fully on-chain gaming threatens to produce a sea-change. In this talk, I trace the progress that developers have made in bringing games from web2.5 to the web3. Not only have their been scaling and tooling problems, but there have also been design problems. In the same way that AMM had to reimagine swapping away from order books, on-chain games are similarly exploring niche genres of gaming that are appropriate for the asynchronicity of the blockchain. William Robinson NFTs + Metaverse, + Gaming Stage

Transcript

hi everybody thanks for coming to my talk I recognize some of you and appreciate it uh so I'm Will Robinson today I'm going to talk about the current state of fully on chain games uh and don't worry I'm gonna get to what the heck that means uh but first some background to legitimize what I'm about to talk about because it's going to sound pretty crazy uh in 2018 I completed a dissertation in uh video game video game design I've been making games uh all my life and now I'm a doctor of games but for the past five years I basically ignored them I built D5 protocols and audited D5 protocols and became really involved in crypto from a incentive mechanism design perspective basically took my love for how we make rules for players and thought how do we make rules for finance years and then uh about last year I got very excited playing Dark Forest uh it's a fully Unchained game and what that means is the entire state of the game is Unchained normally we think about crypto games like axi and if you think about it most of that game actually isn't on chain the characters they fight on a centralized server uh at Sky Mavis and when the fight is over the results are pushed to the chain which means that none of the nfts are permissionlessly or trustlessly created you could mint as many as you wanted um also the code I mean I love this guy Mavis people don't get me wrong but the code's fully closed Source there's no defy web3 ethos to that you can't just work with it if you wanted to and so the good cognate if you know about D5 would be uh coinbase is like axi and uniswap is like what I'm about to talk to you today and the big problem with uniswap at the time and what we thought we couldn't do trading on chain was because there'd be no bandwidth and so we had to get really clever with how to stretch what the chain can do to make functionality available to it so what we're talking about today is the All-State altering logic is a executed Unchained you can't make a chess move on a centralized server and push it later now you sign straight to the chain and all the game states are recorded on chain the history of play is there and once you can get those two things there are lots of things you don't need to have on chain the graphics can be off chain the animations can be off chain all the sort of thinking processes and decorative parts of game design off chain just the core piece um and in this way these kinds of games are client agnostic you can make a game about space shooting Pirates uh and that a different Dev could reskin it to be about you know bunnies or bees pollinating flowers because the core underlying logic is what is stable everything else is up to the front end um this is the game I was talking to you about so far fully Unchained games are not very approachable uh this is Dark Forest uh in this game uh players are taking over planets those planets send their energy to other planets uh once they take them over they start producing more energy so you can take over more planets it's similar to a web 2 game called galcon which is not particularly popular but has a long history and tradition and it's kind of fun so if ever you have a chance to play g-a-l-c-o-n I work I recommend it uh and so this game was composable permissionlessly people built plugins people built Bots people petitioned to change the rules and the smart contracts got upgraded and altered it was about a whole new way of organizing people and the prizes that came out of this game became very valuable because they became very scarce to win a game of Dark Forest usually took about a team of 20 engineers and many many sleepless nights uh basically never stopping to play and I built a dow called Dark Forest Dao because I was grumpy that I missed nft summer and I didn't make any money on it and I wanted to win a bunch of nfts in this game and so I recruited coinbase engineers and young people who didn't have to go to work so they could pilot ships all day long and we ended up doing really well our Dow grew and we got really excited about the idea of building on chain games and today it's sort of spread around and now there's dozens if not maybe dozens of dozens of developers trying to make this happen but the problem is uh these fully Unchained games have major blockers at every single turn and I wanted to um go over some of them with you and get you excited about this and why you would want to do that so the first problem is we don't know why to do it so currently it's a nerd snipe it's the number one reason is it's hard and that's why we ought to make games on chain but I do think there are some serious interesting features one composability once your game logic is Unchained people can build games on top of your game a logic can be reused it can be forked it can people talk about nfts being interoperable but that's kind of silly generally right and nft is your record in some Ledger that you own some object but that object doesn't mean anything it does its existence isn't on chain it's on an ipfs server what happens if you could take an actual sword with its actual mathematical operations and move it from one game context and put it into another game context what would happen if you could build a world that you could explore in and layer more rules on top differences with D5 so when you're thinking about making a game the goal is to have players reach some objective given some set of obstacles a game designer's job is to add friction and so adding rules on top of something isn't a bad thing adding more friction can make things more fun uh there's this French philosopher named Michelle Foucault who talks about how when you're in jail the only way to regain control of your life is actually to add more rules onto your life not try and be more free because in constraining yourself further you can have a experience that you yourself tailored for yourself so that composability is exciting um to give you an example um we made a smart contract that worked on top of Dark Forest anybody who contributed points to that smart contract um was able to then win in a larger conglomerate Empire as opposed to playing individually and because it's so hard to win Dark Forest all the noobs who were really solid Engineers but didn't have a team of 20 could contribute their labor in a decentralized way and share the spoils and the game never imagined that kind of context it was just open source composable permissionless and anybody could do what they wanted the other piece is financialized you're born into defy so as soon as your chain uh Game Works uh everything is verifiable nothing is corruptable that means that your assets are not infinitely mintable there's provable scarcity but also out of the box you get lending you get um swaps you get perps and we don't know why that would be good but we hope that would be good for making games especially for things kind of like Eve online uh which is a project where you you know play with spaceships and try to make an economy and so here if your economy is entirely wrapped inside a blockchain and there's no Oracle problem for guaranteeing the state of the game is reliably transferred from the central server of the game person then there's no trust and the system can grow organically in the way that defy has managed to succeed so that's what that's those are the motivations we're hoping for and if that's enough for you then we'll continue and if it's not well the rest is just problems to reaching these motivations that may not be motivating enough um so the first thing is we don't know what kind of games to put on chain things like chess would probably work turn-based strategy things like Civilization x-com Fire Emblem where you're not expecting to make a lot of transactions things that won't work anything synchronous which is the vast majority of video games you don't get DOTA you don't get Counter-Strike because if you have twitch reflexes the blockchain doesn't care if you're in the transaction queue waiting for that twitch reflex to be processed um so if that's the case uh then uh and the kind of games we have right now aren't fully appropriate maybe there are some new kinds of games we've never seen before because there was a time when DOTA didn't exist and Tower Defense didn't exist and so what are the kinds of genres that will be forced to invent because we're desperate to leverage those other features of composability and financialization um and so usually when we're thinking about scaling ethereum and improving the tech stack and crypto we're thinking about you know real hard cryptographic Primitives that we're going to like push the hardware to the maximum but here it's like actual design sacrifice we just need to want to do different things uh you know not push against the current but to embrace where it takes us and so design is a giant open problem and there's just not enough game designers in the world out there who understand how blockchains work and so it's really hard to see progress there um at the same time we really do need to increase throughput um the a successful video game today has a hundred thousand concurrent players that's a hundred thousand players making multiple moves a minute um that means that our like standard 40 TPS blockchain that's even like a fast blockchain by ethereum standards uh has no chance so solutions would be ephemeral chains chains that exist lots of activity happens and they disappear and that's okay because the data wasn't that precious and maybe we bridged It Off the reason why an ephemeral chain is important is because the reason um ethereum has so few transactions per second is because of State bloat you don't want to force miners to hold every single thing that's ever happened if the number of things that have happened is in the hundreds of thousands it's that transaction that you made on some Idol Thursday in 2014 is going to be recorded for the rest of time and we'll take up hard drive space on every node's computer and so that move you made in that video game that one Day in 2020 well that's a giant waste of everyone's hard drive space and so what would happen if we just purged chains and what does it mean to start doing that that's the research Avenue people are trying to tackle here another one is app specific pre-compiles what if we just built a chain that had game Loops already at its heart a new like for instance that shuffling a deck of cards was going to be really important we wouldn't have to go through all the op codes to shuffle a deck of cards because let me tell you to um Shuffle the deck of cards in real life takes a couple seconds and it's super easy in native to cards to do it on chain where you don't know what the order of the cards uh it takes multiple rounds of an algorithm called mental poker and it's just a enormous burden and so if you want to do that you're going to have to like design your chain from the ground up to even consider what a playing card is oh excuse my French I'm recorded um and then battle rollups this is similar to like the lightning network if you've heard of it um or a ZK roll up this sense is that you and me we enter a game via a smart contract but then we do all of our moves against each other off chain uh where I sign I made this move you sign you made this move in response I signed and made this move in response and if one of us says oh this is the game State and brings it to the smart contract the other place like nobody I beat you here's the real game State the smart contract can be the Arbiter of Truth there that's a bit of a compromise on a fully Unchained game because the state isn't fully recorded only like Snippets of that state but it's still trustless and permissionless and so that can be a very um valuable compromise we may have to make um the other thing we need to do is improve user experience it's just awful when you have to sign for every single move you make in a board game like imagine you have to take out your treasure wallet for every like chess piece you decide to displace so for that to work you're gonna need to have some kind of what like Argent or some kind of account abstraction uh primitive on ethereum like EIP for 488 or I can't remember the number but there's some good ones to do it um what that would mean is like saying hey game for the next like 30 moves and like 28th or let's say 20 gas um you can just not need my signature like let's delegate that to the browser and like have a secure sort of session key or uh let's have burner wallets that spin up and like have really low security so that we don't have to even see transactions happening like in a signature way so the other one is synchronization um we aren't really used to building front-end apps that need to consistently update with what's happening on with our opponents um and so this is something video games have been doing really well for a long time is there's a server State on DOTA when you're playing this like Fast action-paced game and your client is syncing all the time and guessing what the next state will be and if it's wrong it checks the server and rolls back the state in like in milliseconds of time just so you can feel really connected uh and very responsive none of that Tech exists for blockchain and so players get a very stodgy sort of flickery experience right now and there's a lot of work needs to be done there the problem is like who's going to solve this until we get a fun gameplay Loop so it's like chicken and eggs everywhere um okay then we're also missing a bunch of common standards shared Frameworks for how to build these games and share tools for how to build these games and yeah ERC standards that are going to help people start sharing the same logic from across their games because it's going to be exciting we're going to get to new kinds of experiences we're going to have to play on the same playing field where what we're building kind of more than interoperates but composes um there's a really great project called mud.dev if you haven't uh heard of it it's one of the hottest things in Silicon Valley and continues to refuse everyone's investment dollars because they're funded by the ethereum foundation like we could just take charity dollars or whatever but yeah mod.dev incredible version of this shared framework of creating a sense of like a world an autonomous world where every Builder gets to build games in the sort of same space and everything makes sense together I have no stake in that company so like it's not like I'm showing it because I want to it's just the best um there are competitors though curio just announced a three million dollar raise to do that and Argus like a TENS of millions of dollar raise to do that so people are really um after this kind of experience and a lot of money is going into it because all Pie in the Sky stuff that we hope will unlock new world orders for games and autonomous worlds because here's where this goes once we start building fully permissionless but also trustless game worlds where players can spend their time in their existence then all of that stuff is native to web3 there's no more databases in other world stuff like the internet doesn't have to come into the chain the chain is the internet the chain is the world and it's not just Finance it's culture that's born on the chain and history that's born on the chain and that becomes really exciting we just don't know how to get there and because there are way too many problems but hopefully next year I'll give this same talk and some of them will be solved uh I if you have any questions I have exactly one minute and 16 seconds to answer them uh yeah so that's that thank you great see me after

Automatic transcript — names and jargon may be misspelled.