Skip to content

Instantly share code, notes, and snippets.

@nginnever
Last active April 26, 2018 17:04
Show Gist options
  • Save nginnever/e1aa9c639a560fa9f9adb3c1ae757ed1 to your computer and use it in GitHub Desktop.
Save nginnever/e1aa9c639a560fa9f9adb3c1ae757ed1 to your computer and use it in GitHub Desktop.

Gaming District

The gaming district is a community of devs, modders, hackers, and gamers, competing and uniting to create and experience new games. A district0x and Finality Labs collaboration.

Purpose:

To imagine and practically implement immersive, expansive, and inclusive gaming experiences. To coordinate those that are most invested in the games they play and allow them to decide how it should be built and maintained.

Description:

Finality Labs is working on building a gaming district centered around the development of open gaming communities with governance and assets running on distributed ledgers. The gaming district will explore producing games that are themselves DAOs, districts, or sub-districts that give dedicated gamers the ability to decide how various aspects of game generation and maintenance take place. Projects may be easily forked and stake holders in game proposals may pull funding or support different visions of how a game should be built and maintained over time. The second, often talked about, aspect of blockchains and gaming is game title interoperability, where a character in one game can mean something in another game. While not applicable to every gaming title, we see a potential for interoperability within titles. Since everything currently sits on the Ethereum ledger, and a side effect of the ledger is public bytes, games may choose to interpret any state of any other game as they see fit without royalties or permission. These are what we call metaverse games sharing a base layer of state.

Layer 2 Scalability Research and Development

Gaming on the blockchain won't work without immediate solutions to how these system will be ran in a cost effective and decentralized way. A core component of the district is the research and development done into scaling Ethereum and other blockchain ledgers. Finality Labs is collaborating with SpankChain on their generalized-state-channels implementation to facilitate cheap channel instantiation, state transfers, and channel upgrade paths for both the SpankChain camsite and the CryptoKitties Battle Arena while an RPG in the works will explore an application specific plasma chain.

Games

Cryptokitties Battle Arena

The gaming district plans to ship its first title CryptoKitties Battle Arena. CKBA is a turn-style based fighting system that allows you to deposit your favorite cryptokitties into a solidity contract called "The Arena". The arena maintains the total state of all kitteh fighting stats. Upon deposit the genetic sequence of the cryptokitty is read from their ERC721 object to determine which genetic sequence equals higher or lower base power ratings that impact the overall kitty stats like HP and DP. To engage in battle, two parties will break away into a state-channel to play out a turn-style fighting game. This is the first attempt at escrowing state that is not a balance in a state-channel. Rather than leaving the consensus of the main chain over the balance of two parties, the two parties will leave consensus on the outcome of a game based on stats stored in the main chain. The outcome of the channel fight is ultimately settled back to the main chain in the form of a wager in ether or kitty ownership transfer.

RPG

State-channels are good for state where consensus can be unanimously signed off on by the participants of the battle. However it might be nice to allow something like a level up system from the cryptokitties battles. If we decide to allow level-ups or persit any state between battles, then the stats in a channel are no longer meaningful to only the participants of the channel since the state changes impact a larger set of state. This would require a mechanism to enforce rules on the battle games such that no advantage can be gained by introducing state from the battle back into the arena. We are actively researching RPG style games that may sit on a Plasma chain that enforces rules that keep players honest. More to come on this soon.

(Project CODENAME)

CODENAME is an idea for the gaming district to help create a VR metaverse game. CODENAME will use something like the ERC721 object standard to represent physical dimensions in an expansive MMO where users may customize not only their own zones on a planet, but also planets, stars, solar systems, and galaxies if enough resources are amassed. Land will be generated in a similar way as the Decentraland events, but we feel that we need an open standard for defining how land should be generated and auctioned so that other organizations may claim portions of the metaverse. A standard universe grid could be agreed upon by interested blockchain development groups or perhaps an alliance formed around defining the layout of the metaverse is also needed. Once the structure is defined, a simple example of a land generation system would be like name space auctions in ENS where anyone could signal to the metaverse their intent to put the initial price down on a sliding scale auction for a set of land. Finality Labs will purchase a galaxy in the metaverse. QRTs, an NFT (further explained below) will be burnable for permissioned land in the districts upcoming galaxy.

In collaboration with Decentraland, we will jointly build the metaverse by respecting land units already built in decentraland. This means we build a protocol that won't build on their coordinates and we will read the land data from Ethereum and we may explore mirroring everything when interfacing through one of our hubs. Decentraland interface is welcome to join this standard of metaverse land generation or not.

While land registration is a novel idea created by Decentraland, it defines only part of the metaverse. Arguably the web is the first example of an open collaborative space that we have all been shaping. We plan to support a client interface that supports open web standards so that content creation in the metaverse has a low barrier of entry. An example of such a client would be a modified Janus Web.

Networking for a metaverse game is also an interesting challenge that we have been studying for a few years. We were early contributors to the IPFS project and began experimenting with Janus Web and IPFS content addressing of web VR assets in 2015. We also began thinking about shared state over pub/sub systems to extend every step taken or every part of the physics rules and extra metaverse game logic (more on this later) in the metaverse to a consensus protocol on a distributed ledger over that state. This is a continued area of research and recent layer 2 scalability proposals have us particularly excited about some new ideas.

Permissions over the scripts generated by the districts in the metaverse is another challenge. We think that a system of token curated code registries could be a solution to blacklist hashes of malicous code that the client will reject. This is to prevent malicious javascript from a user created zone from taking over the client. DCL has put great work into solving this problem.

We believe that there should be multiple ways to interface with the metaverse and the gaming district will focus on making sure there are many ways to access the base layer of data. Finality will initially populate the gaming sectors of the DCL and FNT universe with some of its favorite titles generate by the studio. It will also support educational planets with access to free and open classrooms. It is likely that CODENAME will have multiple interfaces with different hardware that may interpret the metaverse as best that it can with the given hardware.

Finality Tokens - FNT (early draft)

FNT is responsible for facilitating the decisions of what games should be created. This is similar to how staking DNT signals to the community which districts should be created. It will be used to vote on proposals for new games to be built, on forks, or any other governance needs.

FNT holders will be able to generate a token called Quarters (QRT) that will be used as an access token to the services or games that Finality and the gaming district create. The first game that QRT will provide access to will be the CryptoKitties Battle Arena and Finality will mint the initial supply to seed the access to the game and secure funding for the core Finality team. This also gives the dedicated gamers in the gaming district community the ability to help shape ownership in the Finality Labs galax in the metaverse by earning FNT and staking QRT to exchange for land in the metaverse.

How to obtain FNT?

Finality Labs will print 1 Billion FNT and hold 100% of the total supply. This means that FNT will have to be earned by contributing to or becoming advanced in one of the districts games. The reserve of FNT is specifically held to create protocols that incentive align throughout the lifespan of the organization. We are exploring in-game mining protocols that reward individuals that spend the most time with the games they will have voting rights over.

In collaboration with district0x, The gaming district will respect a 1:1 voting by allowing both DNT and FNT to be staked to its contract.

FNT may be earned by: (Potential Ideas)

  • Providing Layer 2 scalability infra in the form of watch nodes to exit byzantine Plasma chains or report on cheated mutual state re-entry from state-channel games in the arena.
  • Displaying proficiency and skill in any game that links to FNT and winning hosted tournaments or challenges
  • Providing valuable proposals for new games similar to DNT districts
  • Providing coding, art, design or other valuable contributions to the district or any proposed game.
  • More to be decided...

Ethereum Address:

0x181e1ff49cae7f7c419688fcb9e69af2f93311da

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment