Launched a few days ago, CryptoKitties is essentially like an digital version of Pokemon cards but based on the Ethereum blockchain. And like most viral sensations that catch on in the tech world, it’s blowing up fast.

Built by Vancouver and San Francisco-based design studio AxiomZen, the game is the latest fad in the world of cryptocurrency and probably soon tech in general.

People are spending a crazy amount of real money on the game. So far about $1.3M has been transacted, with multiple kittens selling for ~50 ETH (around $23,000) and the “genesis” kitten being sold for a record ~246 ETH (around $113,000). This third party site tracks the largest purchases made to date on the game. And like any good viral sensation prices are rising and fluctuating fast. Right now it will cost you about .03 ETH, or $12 to buy the least expensive kitten in the game.

So now we have people using Ether, an asset with arguably little tangible utility – to purchase an asset with unarguably zero tangible utility. Welcome to the internet in 2017.

In all seriousness, it’s a little bit reminiscent of the beanie baby trend where people were paying insane amounts of money for stuffed animals. But if the popularity continues to increase these people may be able to make a return by reselling or breeding their rare kittens, or they’ll be stuck holding the virtual cryptographic keys to a virtual rare kitten when the market crashes in a few days, like eventually happened with beanie babies.

There are a few cool things about the game though, and putting aside the valuation absurdity it’s actually a cool way for beginners to interact with the Ethereum blockchain.

First off, it’s important to understand that since it’s played on the Ethereum blockchain there’s no central entity managing the game. This means users literally own their kittens. Unlike playing Neopets where everything was stored on a central database and your pet was deleted when the company shut down, CryptoKitties is decentralized and will live forever on the Ethereum blockchain.

The game is run via a set of 5 Ethereum smart contracts written by AxiomZen, and users interact with it via their own Ethereum address. Right now the easiest way to do that is by using the Chrome extension MetaMask which gives you the ability to send and receive Ethereum directly in your browser. You then would navigate to the CryptoKitties site which is essentially an interface to interact with their smart contracts so you can buy sell and breed kittens.

Right now about 15% of all Ethereum network traffic is dedicated to the game, making it the most popular smart contract on the network. For reference, number two with about 8% of network transactions is EtherDelta, the popular decentralized token exchange.

This traffic is making it hard to play CryptoKitties, and a lot of transactions (like buying and selling cats) are taking longer than usual to process and needing multiple attempts.

🚨🚨🚨🚨 Due to network congestion, we are increasing the birthing fee from 0.001 ETH to 0.002 ETH. This will ensure your kittens are born on time! The extra is needed to incentivize miners to add birthing txs to the chain. Long-term solution will be explored very soon! 🚨🚨🚨🚨 — CryptoKitties (谜恋猫) (@CryptoKitties) December 3, 2017

Not only is this making it hard to play the game, but this scaling issue is a real concern for the Ethereum network in general. If one viral game that hasn’t even spread beyond the tech world can slow down the network, what happens when the blockchain expands to real world applications?

Anyways, back to the game. Still confused? Us too. Here’s an explanation of how it works:

How to Play

The game was seeded with 100 “Founder Kitties”. There’s also one new “Gen 0” cat released ever 15 minutes, which are listed for the average price of the last five sold, plus 50% – but the sale price declines over 24 hours until someone eventually buys it.

And anyone can sell their kittens via an auction, where they pick a starting price and an ending price and the price declines over time until someone buys it. So for example I could put a kitten up for sale for a one day auction for 1 ETH starting price and 0 ETH ending price, and if someone buys it 12 hours after the auctions starts they’d be paying me .5 ETH.

Kittens can also be created by breeding them, which the game calls Siring. You can put your own kitten up for sire for a specified amount of ether and someone can breed with it, and they get the offspring and you get the ether. Or, you can pay to breed your cat with someone else’s and you keep the offspring and they keep the ether.

It can take anywhere from an hour to a week in “cooldown time” to breed a new kitten. The shorter the time the better, since you can sell the offspring sooner and breed again. This means kittens with shorter cooldown time usually sell for more.

Each kitten has a 256-bit genome that holds the genetic sequence to all the different combinations kittens can have. These include things like background color, cooldown time, whiskers, beards, stripes and so on. Some of these genes can be recessive, meaning a kitten without stripes could still breed one with stripes.

It’s important to note that there’s no “rare scale” established by the game that assigns rarity values to these genetic sequences. That means the community is independently deciding what traits are rare by paying a premium for them. For example, kittens with a gold background have been selling more than kittens with other colors.

Users can only self-customize the name of their kitten, and often use this space to advertise rare attributes like color or generation.

Right now there’s no way to see the actual genetic sequence for a kitten on CryptoKitties’ site, but since it’s all open-source code within an Ethereum contract it’s only a matter of time before someone figures out how to “read” your cat’s genetic sequence and make breeding recommendations based on it. There’s also some randomness built in, which keeps it fun by giving someone with a less rare kitten the chance to breed a rare one.

Each time a cat breeds the generation increases one. So the offspring of a Gen 0 kitten would be a Gen 1, and so on. Earlier generation kittens seem to be selling for more money, both for the intangible rareness factor and the tangible fact that earlier generation kittens usually have shorter cool down times.

Axiom makes money by keeping the ether collected from selling the initial 100 kitties, plus the newly generated kitties sold each 25 minutes. They also take a 3.75% fee of all auctions or siring transactions. If you sell a kitten by interacting directly with the smart contract (and not going through CryptoKitties’ website) you wouldn’t have to pay the 3.75% fee.

What’s Next?

Unlike some viral projects, the team behind CryptoKitties was set on building out this product regardless of this hype. Mack Flavelle, the project lead for the game explained to me that the team has at least a year’s worth of product improvements in the pipeline, the most immediate of which is improving the UI on the web platform.

They also want to work to make the on-boarding process easier, because at the end of the day it’s still not easy for the average person to setup MetaMask and figure out how to buy ether and use it to transact on the network.

The project has a pretty good FAQ here which explains a bit more about the game’s future plans and how it works today.