I Bred 'Crypto Kitties' on the Ethereum Blockchain
CryptoKitties wants to make blockchain tech fun.
Trying to explain Ethereum to someone who is unfamiliar with the topic is a bit like administering anesthesia. You start by explaining a blockchain and their eyes slowly glaze over. By the time you've gotten to smart contracts and ICOs, they're slack jawed and drooling all over the place. When you're finished and they regain consciousness, they won't remember a thing.
This is all to say that learning about and using Ethereum—most succinctly described as a distributed computing platform based on a public ledger—can be unbelievably dull. In a bid to make blockchain technology fun, a Canadian tech company called Axiom Zen has created CryptoKitties, a game where players breed and trade cats using smart contracts on the Ethereum blockchain.
"Kitties should be a part of this revolution of bringing blockchain technology to the masses," Benny Giang, a product manager at Axiom Zen told me in an email. "So many great companies are building awesome technology that the world won't care about or understand. We're the flag bearer for the rest of this ecosystem in terms of getting celebrities to associate with kitties and the Ethereum network."
A test version of CryptoKitties was unveiled last weekend at ETH Waterloo, the largest Ethereum hackathon in the world. It was accompanied by a breeding competition that challenged participants to breed digital kittens with certain physical traits and rewarded breeders with real Ether (the digital money that powers apps on the Ethereum network).
As a cat-lover with an interest in Ethereum, when I heard about the project I thought I'd try my hand at breeding a few crypto kitties of my own.
CryptoKitties will be officially released on November 1, meaning players can spend real money (in the form of Ether, of course) to breed, collect, and sell digital cats. For now, however, anyone can try out the game for free using the Rinkeby test network. This network functions just like the real Ethereum network, except for the Ether generated on Rinkeby is worthless and only used to test the functionality of apps before they're released.
Before I could begin breeding cats, I had to download Metamask, a plugin for the Chrome Browser that enables users to interact with apps on the Ethereum blockchain. After generating a wallet and filling it with some free Ether from the Rinkeby faucet, I was ready to breed. Unfortunately, all the cats generated for the hacking competition had already been given away so I had to ask some people in the CryptoKitties chatroom to send two of their own cats to my Ethereum wallet.
Starting with these two cats—which I have named Mother and Board—I was ready to begin breeding. Although I could breed either of my crypto cats with any of the thousands of other cats that have been generated on CryptoKitties, I opted to breed Mother and Board with each other. The genome of each cat consists of a 256-bit number and breeding basically involves mashing these numbers together to produce a new 256-bit number that represents a new cat with unique physical characteristics.
Once I selected Mother as the dame and Board as the sire, I bred them by generating a smart contract that basically determines how much Ether I'm going to send to the CryptoKitties wallet for the privilege of breeding and how much Ether I'm going to pay for executing this smart contract on the Rinkeby blockchain (this is called gas). Since this was a test version of the game, I paid zero Ether to CryptoKitties and one-thousandth of an Ether for gas to power the transaction.
After the smart contract was registered on the Rinkeby blockchain, Mother's status on the CryptoKitties site was changed to pregnant. If I wanted her to give birth to a new kitten, I would have to generate another smart contract like the one above. If this was real money, birthing this new kitten would cost me about $1.50. Once the birth smart contract was executed on the Rinkeby network, a new kitten appeared on my profile. I've named it Motherboard:
CryptoKitties is a pretty unique application on the Ethereum network, but the question is whether anyone will actually use it. Although the game is super accessible to those unfamiliar with blockchain tech, I can't imagine ever using real money to breed digital cats. Then again, I'm a curmudgeon who's forgotten how to have fun.
Years ago, people went crazy for ostensibly worthless objects like Beanie Babies, Pokemon cards or Tamagotchi. Many of these items were later resold for obscene amounts of money since there were enough people who enjoyed the objects to create a market for them. CryptoKitties is banking on this desire to collect unique objects to launch its game, even if those objects are just some immutable lines of code on the blockchain.
The idea that scarcity can be programmed on the blockchain to create collectibles has been floated before: Memelords have used the idea to register rare Pepes on the blockchain and a company called Larva Labs has created blockchain avatars called CryptoPunks that can also be collected.
Compared to these other apps, the strength of CryptoKitties is that it is a great way for a newbie to learn about how Ethereum smart contracts work.
"Everyone understands that [blockchain] technology has the power to change how governments, banks, and centralized organizations operate," Giang told me."But they are also missing the point that is getting the rest of the world to give a damn. Cats are our way doing just that for meow."