Before my one and only "mon" reached level 4, I was out of ether.
Such was the end result of my first experience with Etheremon, a game inspired by Pokemon and built on the world's second-largest blockchain, ethereum. I had around $15 worth of ether to spare, so I decided to try it out, eventually arming myself with a cute, fire-themed creature called Kyari.
But I quickly ran into an issue with the blockchain game. Namely, with $15, I never got a chance to move on to more interesting gameplay: battling other users' mons, "evolving" my mon into more powerful forms, laying eggs or making trades.
Every action, from "catching" the mon (in reality a non-fungible ERC-721 token) to "training" it in gym sessions with other mons (i.e., altering the data associated with that token), had cost the equivalent of a dollar or two.
The reason is that every update to Etheremon's smart contracts calls for "gas," part of a complex fee mechanism that incentivizes the miners who maintain the ethereum blockchain. Making matters worse, these transactions often took several minutes to complete.
Such problems – transactions that cost too much and take too long – are known by the shorthand "scalability" in the blockchain world, and they've caused severe headaches for game designers who want to use a decentralized platform like ethereum.
Poor user experience – which also involves having to buy ether and install a browser extension that can connect to the blockchain – has stunted adoption. Etheremon is the second-most popular ethereum-based game, but that's not saying much. At the time of writing, it's had just 209 users over the previous 24 hours, according to DappRadar.
At one point, gas costs rose so much that Etheremon's developers had to take drastic action.
"It became super, super expensive, and we saw our daily active users drop a lot," co-founder and business development director Nedrick Ngo told CoinDesk.
As a result, the team moved "battles" – in which users pit their mons against others' for experience points and bragging rights – off the ethereum chain and onto centralized servers.
Partially re-centralizing a decentralized game seems like it's missing the point, however, so Etheremon announced earlier this month that it is planning to move much of the gameplay to a new, soon-to-be-launched blockchain protocol called Zilliqa (both Zilliqa's and Etheremon's teams are based in Singapore).
But in a decision that may reflect an emerging trend in the development of decentralized applications (dapps) such as Etheremon, the designers don't plan to move the game's assets. The tokenized "mons" that encode data such as level, experience points and evolutionary form – data that gamers have earned through many slow and costly actions – will stay on ethereum for the time being.
In other words, Etheremon will be one game on two blockchains: a zippier, more scalable chain on top, allowing users to play the game quickly and cheaply; and an (arguably) more secure chain below, providing users with the reassurance that their hard-won assets are safe from attack.
As Ngo put it:
"Zilliqa would work as a side-chain for us."
Zilliqa: sharding from launch
Ethereum's developers have a number of scalability projects in the works. But according to Ngo, Etheremon's team and its users can't wait around for those to be implemented.
"They have to commit Casper and then proof-of-stake and then sharding, so it will take a long time," he told CoinDesk.
Zilliqa, by contrast, is rare if not unique in the world of blockchain protocols, in that it is integrating sharding, a technique that's been used to manage more traditional databases for decades, from the get-go.
Amrit Kumar, Zilliqa's co-founder and head of research, said the technique has allowed the network to process 2,488 transactions per second in tests, whereas ethereum, right now, can manage perhaps a couple dozen.
Kumar explained how sharding works in a blockchain network using an example.
Given a network of 10,000 computers (known as "nodes"), he said, a sharding protocol would split those up into 10 smaller networks (or "shards") of 1,000 nodes each. Each shard would then process a subset of the total transactions. Every time Alice sent some cryptocurrency tokens, for example, shard A would process the transaction. Every time Bob sent some, the transaction would go to shard B.
This technique is relatively new territory for blockchains, but Zilliqa's team brings serious academic credentials to bear on the problem.
Two authors of an early paper laying out a blockchain sharding protocol are involved: Zilliqa chief scientific advisor Prateek Saxena, and Kyber Network CEO Loi Luu, who advises the project.
Kumar said Zilliqa, which is expected to launch before the end of the third quarter, aims to be "the go-to platform for applications which require high throughput and high scalability."
Scalability and throughput are not the only considerations for Etheremon's developers, however.
Users want gameplay to be fast, but they want to be sure there's no risk of losing their lovingly bred, trained and evolved monsters. The mons represent a good deal of accumulated time and expense for some users, and therefore there are currently no plans to migrate these tokens over to a new chain.
Instead, the data from gameplay on Zilliqa will periodically be synced over to these tokens.
"We actually feel that keeping all the in-game assets on the ethereum network is very secure," said Ngo.
Kumar said he understood why Etheremon would keep in-game assets where they were:
"Ethereum is certainly an established network and we do understand that there's still some benefit of using ethereum."
He argued, however, that in certain ways Zilliqa offers more security than ethereum, because Zilliqa's non-Turing complete language, Scilla, means "you won't be able to write a buggy contract like [the] DAO," the ethereum-based victim of an infamous 2016 hack. According to Kumar, because Scilla is not as complex as ethereum's language, Solidity, it is easier to test for vulnerabilities.
On the other hand, Zilliqa's method of reaching network consensus, practical Byzantine fault tolerance (PBFT), is potentially more vulnerable to certain kinds of attacks than ethereum's proof-of-work method. Unlike bitcoin or ethereum, which are theoretically secure so long as the majority of the nodes follows the rules, PBFT presents a potential limitation, in that it requires two-thirds of nodes to be "honest."
In other words, PBFT runs the risk not just of 51 percent attacks, but 34 percent attacks. Although, Kumar argued that the situation is actually more complicated, since it's possible to attack a proof-of-work blockchain without controlling a majority of nodes.
Whatever the actual security advantages of keeping Etheremon assets on ethereum versus moving them to Zilliqa, this sort of architecture – in which a slower, battle-tested chain is used to store assets while a top layer processes transactions – may be catching on.
"It's really important to have that decentralized base layer of ethereum," Loom Network co-founder James Duffy told CoinDesk in May, "because then you can use it like the high court."
At the moment, Etheremon and Zilliqa have yet to figure out how exactly to juggle two chains, but Ngo was optimistic, telling CoinDesk this is "just the first stage of the collaboration."
Etheremon gameplay image courtesy of Etheremon