Builders Proposal Form
Project name: Chaintrap: bringing a simple dungeon game to Optimism testnet
Author name and forum name (please provide a reliable point of contact for the project):
Robin Bryce and Ann Sofie Cloots (TG: ann_so_330)
L2 recipient address:
Which Voting Cycle are you applying for?: Cycle 11
I confirm that I have read the landing pages for the Builders 7 and Growth Experiments 10 Sub-Committees and that I have determined my proposal is best suited to be reviewed by the Builders Sub-Committee: Yes
What are you going to build?:
We will bring a simple dungeon game, Chaintrap, to Optimism Goerli. We are requesting a modest grant to achieve this. After the successful completion of this project, we anticipate to be well-positioned first (1) to deploy Chaintrap to mainnet and then (2) to bring a more ambitious project to Optimism: our ultimate goal is to build a multi-chain game development platform. With this project, we take a modest first step towards that ultimate goal.
Why propose a simple game project if our end-goal is to build an on-chain game development platform, you may wonder?
Chaintrap, our dungeon game, will serve as a laboratory to understand the needs of game developers building on-chain as well as the preferences of players. It will include what we think are a number of cool new features that on-chain gaming offers, which we hope will convince a greater number of game developers to integrate on-chain features into their games. Building this game on Optimism Goerli will help us make sure we are building what Optimism’s (gaming) community needs the most.
Chaintrap will use ERC-1155 (multi token) and ERC-2535 (diamond proxy) contracts in combination with decentralized storage approaches (such as IPFS or Arweave) as the basis for game and game content ownership.
It will showcase simple uses of both generative AI and VRF-seeded procedural generation. The VRF procedural generation is used to make dungeon maps which are entirely navigable on-chain and which the creator can demonstrate authorship for. The generative AI is used to enable easy personalisation of the created maps and in-game items. We intend to take that further in time (beyond the scope of this particular project) to include content beyond the pre-production demonstrator level envisaged in this project.
Chaintrap’s gameplay is based around a ‘commit /reveal’ model. The dungeon creator hosts a session and in classic “D&D” style tells players the consequences of each move or turn. At the end of play, the map and its configured traps and rewards are revealed. A transcript of all dungeon master statements and player choices is compared against the revealed map and rewards or penalties are handed out accordingly.
The map, each game session transcript, dungeon traps and rewards are all minted on an ERC-1155 contract. Winning the game grants ownership of the record of victory (“You got minted, mate!”). Hang the record of your victory on your wall forever.
We feel that this relatively simple offering gives us a way to focus clearly on the needs of players and gives us visceral experience of the pain points of developers, even those who may not care one way or another about blockchain. Illustrating these mechanics in a simple game is a stepping stone to producing a platform and SDK which generalises these facilities for on-chain games.
We operate our own SAAS to host content generation services for convenience. To provide trust in the generation we plan to open source the (deterministic) generation tool.
As part of our journey we looked hard at alternate consensus approaches that could better meet the needs of on-chain gaming. While advancing this is not our focus, we currently host a test net operating our implementation of “Robust Round Robin” consensus. The demo we have currently can run on this network and on Polygon (which, as our demo shows, makes the game look broken), and - we expect - any ethereum-compatible chain. See our recent video for a fun comparison: Polysensus Chaintrap game demo - YouTube.
Why is what you are going to build going to succeed?:
Commercially, we think what we’re building will succeed because there is a growing demand for gaming infrastructure that is scalable, convenient and allows for innovative gameplay. The boost in recent investment in on-chain gaming infrastructure confirms our hypothesis. Portability of in-game assets does not sit well with siloed infrastructure and Optimism’s multichain future makes our vision of ‘magic sword portability’ possible. We’ve done initial market research to understand the needs of game developers considering (even if reluctantly) on-chain functionality to create fun game play. One in which gamers are not passive recipients but actively interact and reap benefits from their gameplay. Our approach of building a simple game ourselves in order to engage with and understand the needs of game developers (those already building on Optimism or not) is the best way to ensure we build what the community needs.
Technically, we think what we’re building will succeed because we have spent months playing with smart contract functionality and are now looking for a suitable L2 home for our Chaintrap contracts. We have the in-house expertise to make this work (technical blockchain and gaming expertise). And again, we think our project has a much better chance of succeeding by working bottom-up, starting with a simple game and tweaking it based on feedback from developers and gamers, to create the infrastructure platform for game developers that we envisage building beyond this project.
Is your project likely to bring new builders to the Optimism ecosystem? If so, please describe how:
Yes, for two reasons.
First, we bring a simple cool game to Optimism Goerli. Our game (Chaintrap) will show builders that on-chain gaming on Optimism is feasible and fun. Regardless of our success with Chaintrap, it will inspire other builders to start building games on Optimism too.
Second, after we successfully complete this grant deliverable, we plan to (1) bring Chaintrap to mainnet and then (2) gradually build out an on-ramp for game developers who find it hard to make their own ramp for on-chain gaming. This platform will over time give builders the tools they need to make their games. Using the Superchain, builders will be able to make ‘magic sword portability’ come true. Initial tooling we anticipate is minting various game-related NFTs (from gaming maps to in-game assets, using ERC-1155 for fungible game assets and ERC-2535 to compose upgradable game and platform features) and the SDKs that developers need to start building their own dungeon game and, at a later stage, more sophisticated games.
Small and independent game developers in particular would benefit from the platform we ultimately plan to build, starting with Optimism Goerli and then mainnet: the more simple tooling we can offer them to make their dream games come alive, the more they can focus on what they love doing most: creating fun games.
Is your project likely to improve the quality of developers in the Optimism ecosystem? If so, please describe how:
We believe it will.
We have quality in-house technical expertise and we believe this will attract other quality developers. With this project, we will show a simple game with quality smart contracts that are for the most part publicly accessible in our Github repository. We believe this will attract developers seeking quality contracts that can be used to build other games.
We’ve seen many game developers (and players) reluctant to embrace blockchain, for a variety of reasons. Even those who do embrace on-chain gaming have mostly built on networks other than Optimism [Source: DappRadar, on-chain games ranking - https://dappradar.com/rankings/category/games]. With this project we hope we can convince more game developers to choose Optimism. With years of in-house blockchain experience and months of working on Chaintrap smart contract functionality, we hope to convince quality developers that they, too, can build quality game contracts on Optimism that bring back the fun to on-chain gaming.
Is your project likely to improve the commitment of developers in the Optimism ecosystem? If so, please describe how:
We think it will.
Improving commitment from developers requires giving them the tools to build effortlessly and conveniently on Optimism and using Superchain to build out the multi-chain future that awaits us. Our project is one modest contribution towards that goal. Chaintrap itself will offer developers an easy template to explore their own on-chain gameplay. After the successful completion of the grant deliverable, and after bringing the game to mainnet, we will gradually build out a full-suite game development platform, expanding from Optimism into that multi-chain future. This long-term goal will further increase the commitment of developers to build their games on Optimism: the easier we can make it for them, the greater their commitment to start their journey with us from the Optimism homebase.
We see our project as a modest contribution towards an Optimism ecosystem that developers can rely on to build anything they wish - including fun on-chain games and ‘magic sword portability’.
Provide us with links to any of the following for the project:
Github: polysensus · GitHub
Do you have any metrics on the project currently? (TVL, transactions, volume, unique addresses, etc. Optimism metrics preferred; please link to public sources such as Dune Analytics, etc.):
No, we do not have metrics yet: this project proposes to bring a new game to Optimism Goerli, which has not yet been deployed.
Who are your competitors?:
The competitive landscape of on-chain gaming is changing fast.
Our closest competitors are existing web3 game development platforms, although most are not currently active on Optimism.
Immutable X: Our project is different as it (i) builds cross-chain capacity into its core design through the Superchain capabilities in combination with a bespoke gaming-friendly chain (which, unlike Immutable X’s solution, does not rely on zero knowledge technology to scale: although zk tech is promising, at this stage of development we prefer an offering not reliant on it), which we believe is a core need for web3 game builders; and (ii) embeds AI tooling into its core design, in order to offer independent and small scale game developers with tight budgets a convenient solution.
Mythical Games: full-service platform for on-chain game developers on permissioned EOS blockchain with Ethereum bridge. We prefer to build on permissionless infrastructure: a key web3 need. Mythical does not have cross-chain offering nor AI integration at present as far as we are aware.
Ultra.io: blockchain game development platform, not yet functional. No cross-chain and AI capabilities at present as far as we are aware.
Other companies offer monetization opportunities through basic blockchain options (marketplace, wallet, NFT minting). We envisage as our ultimate goal a full-suite platform that helps build a web3 game (and adding AI tooling). These companies could nevertheless expand their services and become competitors:
Horizon Blockchain Games: wallet integration and other monetization tooling.
Fractal.is: web2.5 game developer tools but focused on game asset trading and gamer tournaments.
Intella X: Proof-of-Contribution protocol economics through native token, heavy focus on trading, NFT minting and GameFi.
Altura: focuses on monetization of games through basic blockchain integration. Not a full-scale web3 game development platform.
Recently announced partnership between MetaMask x Unity and Infura: this shows traction of web3 (or at least web 2.5) gaming. As a web3 native team with extensive gaming background we see our opportunity in enabling uniquely web3 gaming experiences. We are excited to see Unity making traditional gaming content more available to web3.
Web3 game developers and gaming studios, which could vertically integrate and become a competitor:
- Revolving Games (web3 gaming studio); Metatheory, Playmint, Xterio (building web3 games) and others.
Our closest competitor active on Optimism is Sequence (https://sequence.xyz/), which is not Optimism-native.
We also anticipate competition from web2 gaming companies entering the web3 space (see for example the recent partnership between Unity, MetaMask and Infura).
What differentiates you from your competitors?:
The key differences with our main competitors outside of Optimism are laid out above. In summary: our ambitions differ because (1) we don’t focus on just economics or trading but on fun and innovative gameplay opportunities that blockchain can offer (such as commit/reveal for game maps or the ability to capture your game victory as a token), (2) generative AI tools that help game developers, in particular small developers, to focus on what they love most (coming up with awesome game plots) and easily turn it into a playable game, (3) build on existing game-friendly L2 infrastructure from Optimism rather than creating yet another L1 or L2, with embedded multi-chain possibilities to ensure ‘magic sword portability’.
We differ from Sequencer in our focus on becoming an Optimism-native platform that is focused on gaming needs. We will also build out basic generative AI functionality in this project (and plan to expand it post-project). Finally, we think some of our Chaintrap features (commit/reveal of dungeon maps and other features) are new and exciting and this (and future features to be built post-project) will set us apart from existing competitors.
Will your project be composable with other projects on Optimism? If so, please explain:
Yes. We see two steps in composability.
For this specific project, we will make part of our code publicly accessible under a standard open licence so that others in the Optimism ecosystem can learn from, and build on, it. Especially those Optimism projects offering NFT collections that could be turned into Optimism-based games may find this beneficial.
Beyond the deliverables of this project, we anticipate that our ultimate goal of offering an Optimism-native web3 game development platform will offer many more composability opportunities. The most straightforward integration is with existing Optimism games, who could use our platform for additional gameplay features. Optimism-native NFT collections or marketplaces are a second composability avenue. We also see composability opportunities with Circular Art’s generative AI tools, fiat on-and off-ramps provided by Kado and web3 domains offered by Punk. Finally, we can offer composability with general cross-chain building tools from Alchemy and Tenderly, for example, for Optimism-based applications.
Who are your founders?:
Robin Bryce, founder and CTO
Dr. Ann Sofie Cloots, co-founder and CEO.
What makes your founders well-positioned to accomplish your goals with this project (1-2 sentences on each)?:
We combine years of technical expertise on blockchain technology and a deep understanding of the web3 commercial landscape.
Our co-founder CTO is Principal Engineer at an award-winning UK technology company, leading its ledger technology operations and development in production for 2+ years and named as inventor on its blockchain patent. Several years of experience in secure distributed systems, IoT and online gaming, credited on 7 triple A games, computer graphics specialist and freelance project member for technology and digital security companies.
Our co-founder CEO has been actively working in and researching the blockchain industry for several years (recently mostly DeFi and DAO related work). She has extensive commercial knowledge about the web3 space, including infrastructure gaps, the competitive landscape and potential partners.
Tell us about the rest of your team (if there are more teammates):
Dr. Mansoor Ahmed-Rengers (blockchain advisor). PhD in computer science and postdoctoral researcher (security and blockchain consensus models), University of Cambridge. Experience as security engineer, with several academic papers on digital assets and blockchain. Mansoor contributes valuable experience in blockchain, AI and entrepreneurship.
Is this your first Web3 project?: It is our first Web3 project involving an app. Our RRR testnet is Web3-compatible, although we have not deployed it commercially.
** If not, what else have you built? (Share links, Github repository, or any other useful information.):**
Robust Round Robin fork of Consensys/Quorum
Underlisted are all in support of JWT based geth/quorum node access control using this JSON-RPC API security | ConsenSys GoQuorum
GitHub - polysensus/auth-traefikforward: traefik forwardauth + secure token exchange to replace authorization header - authorization plugin for the traffic edge proxy
GitHub - polysensus/auth-tokenexchange: derives access tokens for internal services from id tokens from federated providers based on custom claims - secure token exchange for the auth plugin
GitHub - polysensus/auth-apikeystore: A service for creating and managing service api keys. Firestore specific. - micro service facade for firebase hosted API access key store
Note: these all got forked (and further developed) to the Polysensus org repos which are open source
GitHub - robinbryce/benchblock a benchmarking and load-testing tool for geth/ethereum based networks
GitHub - polysensus/diamond-deploy: ERC 2535 deployment package. cli tool and package - ERC-2535 deployment tool, deals with facet selector collisions and automatic upgrade via runtime code hash checks
GitHub - robinbryce/iona: development cluster. gcp with managed k8s, multi-region - pre-cursor devops/infra to our current SaaS
GitHub - polysensus/chaintrap-maptool: Python based map generator for chaintrap - “tinykeep” base map generator. Produces ‘logical’ maps that can be used on chain
We are happy to grant reader access so our contract code and game app can be reviewed. As we make a game by way of example, the intention is to turn Chaintrap and any other games we may develop for illustration purposes in the future into open source freely available example code. But we feel it’s not quite the right time to fully open it up yet.
I understand that Builders grants are subject to a 1 year lock-up, as explained further in this post 2: Yes
**Is your project funded? If so, provide an estimate of how many months of funding runway your project has: ** We are self-funded at the moment but have applied for a public grant.
What is the size of the grant request?
How do you justify the size of the grant?
This is a modest grant request, proportionate to the stage of our team and the proposed project.
This modest grant will help us make Chaintrap an end-to-end playable game on Optimism’s testnet. It is sufficient to deliver the critical milestones described below and we are not asking for more than required for our described contribution to the Optimism ecosystem.
We prefer to ask for a small grant for this modest step rather than asking for more and overpromising. After the successful completion of this grant, the Optimism community can decide whether it wants to fund any follow-up grants we may apply for.
We plan to deploy to mainnet as a next step, once this project has been successfully completed.
Describe in discrete steps your plan for accomplishing your project:
Our key aim of this project is to have an end-to-end playable game (Chaintrap) brought to Optimism’s testnet.
This requires making the existing contracts work on the testnet and doing the additional work required to make Chaintrap a simple but end-to-end playable game. Both steps require more smart contract work and testing.
We will integrate basic generative AI capabilities to provide an illustration of user-personalized content for an Optimism-native game.
We then plan to add an OpenSea integration for the NFTs created for Chaintrap gameplay: a game NFT will automatically be listed on OpenSea, with a token logo created using generative AI.
We also like to verify our contracts: we see this as an important step to launch Chaintrap on Mainnet post-project.
As to the code we plan currently have and plans to open source our code:
The repository with the ERC1155 & ERC2535 based smart contracts implementing the on-chain game logic will be open sourced. The repository will have a full suite unit tests, integration tests, automated CI/CD, and adequate source level documentation. Licence TBD, but GPL or MIT likely. The repo is currently private, but will become public and open source as part of this project. We anticipate open sourcing it early in the project. The contracts do not yet support a fully completable game. Making the game a completable experience on OPTIMISM (testnet) would be a deliverable for this project. https://github.com/polysensus/chaintrap-contracts head commit cf2061a593acb592bb60f135ddc353e92ffc7c4b
We have a Java Script game support library for Chaintrap. Its purpose is to provide a game state management layer for clients. We have a command line client and a web3 application using it. Automated testing and adequate source level documentation will be included in the deliverable. This will be open sourced and MIT as part of this project. We anticipate open sourcing it early. If it impacts our application we can do so now. Changes to support Optimism may be required here. Changes to support a completable game experience will be required. https://github.com/polysensus/chaintrap-arenastate head commit 5a06a8fb55b2dcd7cfb43fa8e1ddae90a5cb0c6f
We have a web3 client (the one in our demo video) which we are happy to opensource (also MIT). However, we see this more as a technical demonstrator than a production ready game experience. Again automated testing and adequate source level documentation provided. Crucially though it will be capable of demonstrating the full game experience. Simple isometric dungeon rendering for the player view, top down plan views for creation and dungeon management for the game host. https://github.com/polysensus/chaintrap-frontend head commit 70f570d7b7186bd50133d5361503ad1c035d68cc
Other repositories required by the game are already open source. We don’t anticipate much further development is required in these to support this project.
GitHub - polysensus/chaintrap-maptool: Python based map generator for chaintrap (a simple random dungeon generator used to create the game maps)
GitHub - polysensus/diamond-deploy: ERC 2535 deployment package. cli tool and package (contract deployment tooling)
The repositories underpinning the backend infrastructure and operations are closed source and we consider these outside the scope of this project.
Please provide any additional information that will facilitate accountability:(smart contracts addresses relevant to the proposal, relevant organizational wallet addresses, etc.) See links to our code listed above.
Does your plan depend on the receipt of OP tokens?: No.
What is your plan for the use of the OP token after the 1 year lock-up?:
We anticipate a split, with part of the OP tokens (approximately 65%) for the team and the remainder (approximately 35%) for user incentives.
The 35% of tokens allocated to user incentives can be distributed in different ways. We plan to use them to incentivise a creator economy by passing tokens onto dungeon creators and dungeon masters. We think they demonstrate a longer-term commitment and therefore we believe distributing OP tokens to them makes sense.
Our proposed distribution is roughly:
15% of tokens to be allocated to gamers willing to be alpha- and beta-testers of Chaintrap building dungeons and hosting sessions who provide the most valuable feedback on how to improve the game and its integration within the Optimism ecosystem, at the stage of Goerli integration.
The remaining 20% to be allocated to users who help us improve on the game and its integration within the Optimism ecosystem. Based on the feedback from early adopters (at the Goerli testnet stage), we plan to set a number of small challenges to help us address the suggestions made by the community. We plan to issue a mini-bounty for every such challenge that is successfully completed by a community member. For example, if initial user feedback suggests in-game items from Chaintrap would benefit from NFT lending (for composability to transport those game items to other Optimism-based games), a challenge could be to help us connect Chaintrap to Backed.
Please provide benchmark milestones for this project. These milestones should guide the Optimism community on the progress of your project during the 1-year lock-up period.
In addition to the critical milestones listed below, we want to achieve the following benchmark milestones:
Integrate simple Generative AI capabilities into the end-to-end playable game, allowing players to personalise the visualisation of in-game items and the game environment. Expected delivery date 30 May 2023
Integrate Chaintrap game with OpenSea. Expected delivery date: 31 August 2023.
We do not expect these benchmarks to take a full year to be accomplished. Our aim is to have them accomplished within 4-5 months after the start of the project.
- We want to attract 500 users to play Chaintrap by the end of the 1-year lock-up period.
Please define critical milestones for this project. Critical milestones are meant to show good-faith efforts to accomplish the project. Non-completion of these milestones could lead to revocation of remaining grant rewards.
End-to-end playable game on-chain (testnet) interacting directly with the smart contracts via a Java Script library that will be open-source. This will be delivered in less than a year (expected: approximately 3-4 months).
This will involve:
Integrating tests in the application library showing an end-to-end playthrough of the game as part of automated testing which we will be operating on Hardhat. Expected delivery date: 30 June 2023.
Same as above (integrating tests in the application library showing an end-to-end playthrough of the game as part of automated testing) but operating on Optimism testnet (Goerli). Expected delivery date: 15 August 2023.
Open source the repository with the ERC1155 & ERC2535 based smart contracts implementing the on-chain game logic. This will include full suite unit tests, integration tests, automated CI/CD, and adequate source level documentation. Expected delivery date: 15 August 2023 at the latest (likely earlier).
Open source the Java Script game support library for Chaintrap. This will include automated testing and adequate source level documentation. Expected delivery date: 15 August 2023 at the latest (likely earlier).
Does your project solve a problem for the Optimism ecosystem?:
Yes: it will boost Optimism’s appeal for on-chain game developers and help it become more widely used for web3 (or web2.5) gaming.
How does your proposal offer a value proposition solving the above problem?:
It’s a modest grant request to showcase a simple dungeon game on Optimism testnet as a first step towards building out gaming-friendly infrastructure on Optimism Mainnet.
Why will this solution be a source of growth for the Optimism ecosystem?:
It will help create infrastructure that various other builders can use to make their own games on Optimism. Web3 gaming is a promising area of growth within the wider crypto sector and our project can give builders a taste of the possibilities of Optimism-native gaming capabilities.
How committed are you (and your team) to building on Optimism?:
We have considered various options, including building out our own gaming-friendly mainnet (which we currently run as a testnet but we prefer to build our platform on an existing L2) and Polygon, which we decided against as it breaks the gameplay. We want to launch our platform on Optimism as it is a very promising L2 for the type of on-chain gaming infrastructure we intend to build. The Superchain is particularly appealing to us for this goal of creating a multichain web3 game development platform in the near future.
Is your project Optimism Native?: yes
I understand that I will be required to provide additional KYC information to the Optimism Foundation to receive this grant: Yes
I understand that I will be expected to following the public grant reporting requirements outlined here: Yes