- Dark Tunnels
- Posts
- The Importance of Being Permanent
The Importance of Being Permanent
What are fully onchain games? What makes them so radically different from other gaming formats? And why should you care?
Hello and welcome to Dark Tunnels, a newsletter dedicated to exploring the emerging ecosystem of fully onchain games.
You’re here at the very beginning — Issue #1! Thank you to the initial cohort of subscribers for joining me on this maiden voyage into the unknown. If you’d like to join us, you can subscribe here:
Hi friends,
As I wrote in the introduction to this project, it is my belief that fully onchain games represent the truest manifestation of the decentralized principles of web3 as applied to gaming, yet they are also the least understood by the industry at large. So much so, in fact, that hardly any developers with professional games industry experience are actively operating in this space today.
With this essay, I hope to change that.
Today, we’ll cover the fundamentals: what these games are all about, why they’re interesting, and what’s holding them back.
The Importance of Being Permanent
Let’s first start with some basics: what do we mean by “fully onchain?”
Fully onchain games have the entirety of their game state and logic run on the blockchain.
Let’s break that down further.
In these games, every change to the state of the smart contracts underlying the game must be recorded to the blockchain. Every score update, every character movement, every turn taken.
We’re not talking solely about digital asset ownership or fungible game tokens. Both of these may exist in or around a fully onchain game, but they are only sub-components of the larger design space.
In many cases, these sorts of commonplace implementations still rely on centralized servers to properly integrate with the actual game itself. Axie Infinity, for example, may incorporate NFTs and utilize an ERC-20 token, but the game itself still runs on centralized game servers and Sky Mavis (the game’s developer) can still ban players (and bots) from playing.
Put differently, fully onchain games utilize the blockchain itself as the design space. These games could not exist without a blockchain. The new types of gameplay enabled by their use of blockchains would be either impossible or impractical in a centralized environment.
Of course, there are plenty of good reasons for centralizing aspects of a game – some of which we will discuss below – but centralization inherently places limits on the new forms of gameplay and player interaction that might emerge as a result of decentralization.
These affordances may not be desirable to all stakeholders. In fact, they actually represent a venture-worthy “problem in need of a solution,” as well as a potential source of meaningful competitive differentiation for the developers that can establish expertise in this field.
Regardless, the fact remains that the vast majority of blockchain games operating today have meaningful parts of their game living off-chain in some form or fashion. If we’re being cynical, these games would be more aptly described as “web2.0+” or “web2.5” games rather than truly web3.
To be clear, I’m not intending to dunk on these projects whatsoever. There are important roles for these titles to play in onboarding players, pushing technologies forward, and helping to establish legal and regulatory clarity around blockchain gaming.
One way to think about this dynamic is through the lens of the strong vs. weak technologies framework proposed by Chris Dixon. Fully onchain games represent the “strong” form of blockchain gaming: they appear to outside observers as “some combination of strange, toy-like, unserious, expensive, and sometimes even dangerous.” The “weak” form (minimally onchain games), meanwhile, attract greater consumer attention in the short term due to their “more familiar, productive, serious, and safe” implementations.
I like to analogize these games to the horseless carriages that preceded the automobile, or the PDAs that predated the iPhone: their skeuomorphic designs helped to introduce the consumers of their day to new forms of technology and primitive ways in which to interact with it. Yet over the long term, these early attempts fail to take hold in a meaningful way and ultimately seem crude when compared with future incarnations.
As with the Ford Model T and the first iPhone, the unique forms of user behavior elicited by today’s fully onchain games will eventually prove to be more representative of the future state of human interaction with blockchain-based technologies (at least, as it relates to blockchain-based interactive entertainment).
Storing and executing an entire game on the blockchain is important for a number of reasons, largely related to the intrinsic decentralized properties of the blockchain itself. Of course, these properties also come with their own set of challenges and limitations – a topic we will return to in the latter part of this essay – but for now, let’s focus on why consumers, investors, and industry professionals should even care about this emerging class of games in the first place.
The argument in favor of fully onchain games boils down to a few key concepts:
Permissionless Composability
Transparency & Trustlessness
Permanence
One thing you’ll notice is that there is no mention of digital asset ownership on this list. I’m going to assume that you’ve heard that argument already, and I certainly won’t make any attempts to convince you of its merits. Collecting and exchanging digital assets are interesting and worthwhile use cases, but we don’t need our entire game onchain to achieve that.
There are several other reasons for utilizing blockchains in a gaming context that I have also omitted from this list (e.g. interoperability, decentralized governance, etc.). While these topics will be referenced throughout the Dark Tunnels series, my intent in this piece is not to answer the question of “what can blockchains be utilized for in gaming?” Rather, I will focus on what is uniquely enabled when games are fully decentralized and maximally onchain.
Permissionless Composability
Traditionally, game developers work with numerous third-party entities to realize their creative visions: to aid with content production, QA testing, localization, and so on. In some gaming ecosystems, such as Roblox or Fortnite, we can further extend this notion of third parties to include the player base via incorporation of user-generated content (UGC) tools and distribution of creator royalties.
Importantly, these are largely one-sided relationships. The owner of the game ultimately determines which platforms to support, which players to allow in their game, and which third parties to work with. These decision-makers also determine how much value (if any) to share with their community, as well as who is allowed to contribute to that community and in what manner.
By contrast, fully onchain games enable permissionless composability.
Permissionless composability allows any user to build games, applications, user interfaces (UIs), and more on top of existing blockchain protocols without requiring any sort of approval. This not only alleviates problems of centralization, but also saves time, money, and hassle by allowing builders to reuse existing components.
Here, we can draw an analogy to the world of modding. Just as modders seek to alter existing games by adding new features, crafting bespoke systems, introducing quality-of-life improvements, and so on, so too can participants in a fully onchain gaming ecosystem add their own contributions without fundamentally rebuilding the underlying game.
Yet modding has the unfortunate side effect of bifurcating a game’s player base. With each additional mod, a game’s audience becomes fragmented into ever-smaller cohorts based on which mods they have or have not installed. While this system works fine for single-player experiences, it is untenable for multiplayer games.
By contrast, onchain composability allows builders to create functionality that is available to all players concurrently. In a fully onchain game, “mods” happen live – they are immediately available to all, without need for centralized approvals, client updates, or group consensus. Players are free to opt in or out of these additions as they see fit.
A further downside of traditional modding is that it still suffers from the flaws of centralization. Several projects have already discovered this the hard way: by building on top of games that proved unwelcoming to crypto-native development.
Despite these shortcomings, the world of modding presents multiple noteworthy case studies for us to draw inspiration from.
I dove deep on one such example, the Grand Theft Auto V roleplaying mod NoPixel, in a Naavik research essay from 2021. Despite cultivating an incredible community and huge following on the strength of its mods, the NoPixel team will always have Rockstar Games’ end user license agreement (EULA) hanging over it like a Sword of Damocles.
By contrast, the permissionless nature of onchain composability frees builders to create whatever they deem useful without having to worry about repercussions or waiting for the developer to get around to building it. Additionally, because the game’s logic is exposed, the design space is opened to a wider range of ideas. Builders can even monetize their creations freely without worrying about running afoul of any sort of EULA.
This last point is critical and one that we’ll explore further in the next entry of this newsletter. By allowing builders to earn money from their creations while minimizing the potential for rent-seeking or gate-keeping behavior, fully onchain games can enable a truly creator-led economy where the best contributions win out and the strongest contributors are compensated for their efforts.
Another interesting example of the power of composability can be found in the freeware M.U.G.E.N. engine. M.U.G.E.N., or Mugen, is a 2D fighting game engine first released in 1999 for MS-DOS and later brought to Windows.1
Though the project was abandoned by its initial development team just a few years after its release, a series of community-driven upgrades and modernizations helped Mugen to garner a robust following of builders and content aggregators.
Importantly, Mugen proved to be highly customizable, enabling creators to introduce bespoke content such as new characters, stages, UIs, soundtracks, and more.
Yet calling Mugen “highly customizable” really doesn’t do it justice.
No two versions of the engine are the same. Some of the most dedicated builders in the community have spent years creating and refining their personal Mugen setups. Part UGC platform, part meme-ified offspring of fighting game subculture, the Mugen story is well worth exploring if you are interested in permissionless composability.
Now, consider the difficulties associated with scaling something like Mugen:
Because no two versions are alike, building collaboratively is extremely difficult.
Though online multiplayer capabilities were eventually introduced, differences in setup make public matchmaking nearly impossible…
…to say nothing of the challenges associated with fairly balancing an endless number of UGC characters.
These UGC creations are often in direct violation of IP and copyright laws, making a proper commercial release impractical.
Mugen creations also suffer from trust and distribution issues, as mods are scattered across myriad community-operated websites with minimal attention given to quality control, security, or content discovery.
The fact that Mugen has developed such a robust community despite these issues speaks to the promise of such an open development platform, as well as the passion of dedicated gaming communities. If such a strong groundswell of support exists among fighting games enthusiasts, surely there must be other genres that would benefit from a similar UGC ecosystem?
Now consider what something like Mugen or NoPixel might look like in a fully onchain gaming context, where both players and creators are freed of all vestiges of centralization, yet empowered by the improved incentive alignment of crypto economics.
These web3 communities will be supercharged to lead the next evolution of the games industry.
Notes:
1 “mugen” (無限) is a Japanese word meaning “infinite” or “unlimited”
Transparency & Trustlessness
One of the most practical and easily understandable advantages of fully onchain games is the transparency they provide. Because blockchains are public ledgers, everything that happens in a fully onchain game is visible to everyone else on the network: every move, every result, and every action taken.
Let's imagine that you and I are playing a fully onchain game of chess and, as expected, I am losing badly. To try and improve my situation, I ask a friend for help.
In order to better understand how I got myself in this predicament, my friend could leverage the transparency of the blockchain to look back at the ledger and review all of the moves that have occurred in our game to this point, reviewing the state of the board as it changed with each turn. My friend could also examine any number of countless games that took place onchain before our game even started – perhaps filtering for matches with similar board layouts, or those with equally lopsided skill disparities. If my friend was especially suspicious, they might even dissect the smart contracts that dictate the chess logic to ensure that all of the pieces are moving correctly and that we aren’t playing holochess instead.
This high level of transparency has advantages when applied to all sorts of gaming scenarios. Consider situations where random number generation is required. Whether opening a pack of trading cards, rolling a D20 to perform a Charisma check, or pulling a new character in a gacha game, players want to be sure that the outcome is determined according to the probability tables laid out by developers – particularly when there is money involved. Because random number generation is done onchain, players know that the outcome of each game is fair and cannot be manipulated.1 And if they’re still not convinced, they have access to all of the data to run their own analysis of actual outcomes against expected probabilities.
Furthermore, fully onchain games are unlike traditional online games in that players do not need to trust that a developer’s server is operating properly. With fully onchain games, all rules and game logic are encoded in smart contracts, removing trust from the equation entirely.
In other words, code = law; games can be fully trustless.2 Players don’t need to trust anyone – not other players, not developers, not third parties – thereby adding a whole new level of security and confidence in game outcomes.
This is a major issue for competitive games especially, where there are often questions of whether game outcomes are client- or server-authoritative. For example, which entity decides whether a bullet from my sniper rifle actually struck its intended target? Is it the game server? Is it my game client? Or is it another game client, perhaps that of the player I am firing at?
In traditional online gaming, developers go to great lengths to prevent hackers, front-runners, and other bad actors from manipulating game outcomes on both the client- and server-side. In a fully onchain scenario, developers can spend far less time worrying about cheaters and focus their efforts on what truly matters: making great game experiences.
Taking this one step further, the “code = law” ethos of fully onchain games actually encourages behavior that would normally be considered unwelcome in a traditional gaming context. For example, the use of bots is not only accepted in fully onchain games, but actively encouraged.
A prominent example of this is The Astral Colossus, a smart contract “player” in the fully onchain game Dark Forest that operates by aggregating donated resources from multiple human players. Another example can be seen in the game 0xMonaco, an onchain racing game “played” by smart contracts.3 Neither of these innovations would have been possible or permissible in a traditional gaming context.
A final point on trustlessness is that players can always be certain that any rewards distributed by a fully onchain game will be properly calculated and delivered to their rightful owners.
This may seem trivial when discussing standard gaming rewards, such as cosmetics, virtual currencies, or consumable items. However, in the hyper-financialized world of web3, it is inevitable that fully onchain games will be utilized for gambling or skill-based gaming.4 Ensuring that everything changes hands properly at the end of a match will go a long way towards providing a safe, secure gaming environment.
The topic of gambling is one that web3 gaming proponents often skirt around, but it’s worth discussing. Humans enjoy gambling, plenty of reputable businesses have been built in this world (where they also refer to themselves as the “gaming industry”), and if future-oriented builders and businesspeople don’t meet that market demand in a safe, secure manner, you can be certain that less well-intentioned parties will. That’s not to say that there aren’t risks associated with gambling, but it’s not an intractable problem. This topic is largely beyond the scope of this piece, but it is one that I hope to revisit in a future newsletter.
Perhaps ironically, the games that people most enjoy gambling on (cards, dice, etc.) are those with some of the longest recorded histories. This brings us to our final key concept: permanence.
Notes:
1 There is some nuance to this statement, as verifiable randomness can be challenging in web3. You can learn more about the difficulties here, if you’re curious.
2 Though there are semantic differences between the terms “trustless” and “trust-minimized”, I will be using “trustless” throughout these newsletters for the sake of brevity. You can read more on the topic here, if you’re interested.
3 0xMonaco is also an excellent example of permissionless composability (as discussed in the previous section). Here you can see an example of a new graphical representation built on top of the core game.
4 For a deeper exploration of why financialization of fully onchain games is inevitable, I suggest reading this piece from Bohdan Melnychuk, the founder of Mithraeum, a fully onchain grand strategy game.
Permanence
Games have been around in some form or another for thousands of years. Long before Mario ever saved the Princess or Pong first re-envisioned tennis for the digital realm, we had tabletop and board games – and not just Monopoly or Scrabble, but games like chess, go, or dominoes. These titles date back hundreds (or in the case of a game like backgammon, thousands) of years.
Though they have undergone changes over the years, these games live on in much the same manner in which they were initially conceived. Their play patterns reflect fundamental human instincts: competition, puzzle-solving, logic, and strategy.
With that in mind, consider which games will be played by humans over the next several hundred years. Will we still be playing chess? Mario? League of Legends?
With the use of blockchains, a fully onchain game can exist indefinitely, so long as the underlying settlement layer continues to run. This is why monikers like “eternal games” or “immortal games” are sometimes favored by builders in this space. When blockchains are sufficiently decentralized, players (and builders) of these games need not worry about the failure or bad behavior of any one node in the network.
Importantly, this permanence by way of decentralization allows games to continue autonomously without the support of their initial developers. Famously, Vitalik Buterin created Ethereum in response to Blizzard nerfing his character in World of Warcraft, an event that opened his eyes to the “horrors that centralized services bring.”
If World of Warcraft were a fully onchain game, Blizzard could disappear entirely and yet the game would still be accessible to anyone. As long as the blockchain continues to run and there are players interested in playing, a fully onchain game can persist.1 Players would never need to worry about a developer ending support for their favorite game, making changes that they disagree with, or going bankrupt and ceasing operations altogether. This is made all the more relevant by recent revelations that just 13% of classic video games are available to players today.
As a thought experiment, consider how you would react if you knew with certainty that your favorite game would never be taken offline for as long as you lived. How might your behavior change?
…Would you be more likely to invest your time and money in that game?
…To engage with the community?
…To share your love of that game with others?
“Expected obsolescence always constrains our spending”
We can already see the impacts of impermanence elsewhere: when Netflix users refuse to watch a new show for fear of it being canceled early, for example, or when players leave a game due to lack of updates or ongoing support.
Permanence requires an entirely new way of thinking about game development, player lifecycles, monetization, and live operations. The fundamental relationship between player and game changes entirely when the game is no longer a variable, but a constant.
Notes:
1 We’ll unpack the commercial implications of this concept of an “eternal game” in an upcoming essay.
Challenges, or Why “We’re Still Early”
Of course, fully onchain gaming is not without its obstacles. If making any game is difficult, and making blockchain games is even harder, then shipping a fully onchain game has to be the boss level.
While progress is being made in many of the areas I’ll discuss below, I would be remiss in not acknowledging them before continuing. We’ll cover potential solutions and practical implementations in greater depth in future entries, but for now it’s worth taking a quick look at the bumpy road ahead.
As alluded to in the introduction to Dark Tunnels, most fully onchain gaming projects have been focused on design and technical exploration – and for good reason. There are a host of limitations that make developing fully onchain games extremely challenging.
User Experience
The first and most commonly referenced obstacle is the challenging user experience (UX). As anyone active in web3 will tell you, simply getting started with a crypto wallet and NFTs is cumbersome enough to deter most mainstream consumers from exploring blockchain gaming at all. Layer in the clunky UIs, steep learning curves, and dearth of beginner-friendly information, and it’s no wonder why fully onchain games struggle to garner attention.
Fully onchain games will benefit from the upstream improvements being made to web3 UX in the broader crypto space, but game developers will still need to tighten user onboarding flows further in order to retain new users at rates comparable to today’s leading titles. The “web3 with a16z” podcast hit on this point in a recent episode, noting that blockchain-enabled horse racing game Zed Run had been able to get their onboarding flow down to just three clicks. This is the type of efficiency and simplicity required for onchain games to reach their full potential.
Blockchain Throughput
Because all players of a fully onchain game share the same game state, any time a player wants to change that state it must be done through a transaction.
Blockchains gauge throughput via transactions per second, or TPS. Depending on what type of game we’re talking about, the potential transaction count for any given player could be quite high: competitive real-time strategy games, for example, can see actions-per-minute (APM) soar into the hundreds. Similar numbers can be found in MOBAs like League of Legends or DOTA 2. Multiply those APMs by the number of concurrent players in even a modestly popular game, and the result quickly balloons beyond the TPS capabilities of Layer-1 blockchains.
As such, the current capabilities of Layer-1 blockchains render highly synchronous gaming (i.e. fast-twitch multiplayer games like shooters or MOBAs) impossible in a fully onchain context.
I am generalizing, of course, and there are many teams focused on tackling this very problem. Layer-2 solutions, sidechains, and other technical innovations are all being actively explored, but an in-depth discussion of these projects is beyond the scope of this essay.
Cost
Even assuming we are able to fit all player transactions onchain without causing massive congestion, there is still the matter of transaction costs, or “gas” fees.
Every transaction has a monetary cost associated with it, meaning prospective players will need to load up a wallet with cryptocurrency just to participate. Aside from being an absolute non-starter for most players (after all, there’s a reason free-to-play is the dominant business model), this is an incredibly punishing limitation when trying to learn a new game. New players should not be penalized financially for making incorrect moves out of inexperience. This is a recipe for immediate player churn and will undoubtedly add to web3’s already massive PR problem.
Even if players are willing to pay-per-transaction, costs can quickly become prohibitive in times of high volume. As each transaction competes for the same limited blockspace, gas fees climb higher and higher as users seek to have their transactions prioritized over others. This could devolve into what essentially amounts to a pay-to-win scenario, quickly turning away the vast majority of gamers.
While there are various entities working on reducing transaction fees, developers should not lose sight of the challenges this presents in both attracting and retaining players. Successful operators will need to find workarounds that make this a more palatable option for mainstream audiences, such as subsidizing players’ gas costs up front while recouping those costs via monetization elsewhere in the ecosystem.
Design Challenges
Many of the solutions and workarounds to fully onchain gaming’s constraints will ultimately derive from clever game design. However, game design presents its own set of constraints: for example, which types of games are best suited to run maximally onchain? Which genres (either current or yet-to-be-defined) will best cater to permissionless composability and permanence? I plan to tackle some of this in a forthcoming essay, but I certainly don’t have all the answers (nor would I call myself a game designer).
Though there has been a massive shift in games industry talent towards blockchain gaming companies over the last few years, there are still far too few designers that understand the technical constraints of blockchains well enough to design a game via digital physics and substrate, rather than rules and statistics.
As an aside, if you’re interested to learn more about the game design considerations stemming from fully onchain games, I highly recommend reading the “Unblocking On-Chain Games” essay series by Will Robinson (who holds a PhD in Game Design), in which he delves into a variety of mechanics and potential solutions to fully onchain gaming’s design challenges.
In Conclusion
There are not many unexplored spaces remaining in the world of interactive entertainment, but fully onchain gaming is definitely one of them.
If you are a fellow games industry professional excited by the challenge of redefining what it means to build and play games with decentralization front and center, then I would encourage you to build in the fully onchain gaming space. Your talents are needed!
Even beyond their status as a largely unexplored field of game development, it is my belief that the decentralized nature of fully onchain games sets blockchain gaming’s trajectory in parallel to several larger macro trends that extend beyond gaming entirely – a topic we’ll dive deep on in the next essay. Just as free-to-play gaming grew alongside the global proliferation of mobile phones, so too will fully onchain games flourish with decentralized computing and economic models.
Have I piqued your interest yet? If so, be sure to subscribe so that the next entry comes straight to your inbox when it’s published.
Thanks for reading.
Special thanks to David and Paul at Playmint, Bruce from EA, and many others for their feedback and contributions to this essay.