Token Streaming in Web3 Games

xRaise
6 min readAug 30, 2023

--

We’re living in an era where technology is changing constantly. New innovations are dropping everyday, and frontier tech (like web3) is attracting innovators across industries.

One such innovation in web3 is token streaming. Protocols like Sablier Finance have served as the beacon for real-time finance.

But, what if we try and explore the potential of this feature outside of finance, specifically in web3 gaming?

Diving Deeper Than Surface-Level Tokenisation

Web3 gaming’s allure has been primarily encapsulated by the tokenisation of in-game assets. That shiny gem you just earned can now be traded or sold as a fungible asset in the decentralised world. Yet, our imagination should not be confined to just trading gems and coins.

Imagine tokenising the very essence of a game character — the health points (HP), magic points (MP), or even the effects of spells.

This might sound like an eccentric dream, but it’s not. It’s the magic token streaming can weave.

Players can “use” 10 $GAME tokens to use a Defence Potion, which stays active for a fixed time interval.

This can work as a Token Stream, where 10 tokens are streamed from the player’s wallet to the game’s Burn Wallet, and the duration of the stream is how long the potion will last. This creates a verifiable, on-chain representation of a feature (here: Potion), and more advanced players can directly interact with the smart contract to create new Potion strategies.

Creating Balance in the Web3 Game Economy

Web3 games, despite their brilliance, often teeter on the precipice of economic imbalance.

The lack of token sinks leads to an inflationary environment, devaluing in-game resources. With resources losing value, most players end up leaving as the economic upside diminishes.

But what if we reimagined the game’s very core mechanics using token streaming?

Think of tokenising the duration and effects of a spell or potion. Let’s use the same Defence Potion example from before. The Potion, for instance, could be activated using a token stream from the player’s wallet to a burn wallet.

This not only serves as an on-chain representation of in-game features (like the Potion) but also gives seasoned players an avenue to interact directly with the smart contract.

The Evolution of Battle Genre Games

Envision a grand arena where strategic token streams dictate the outcome.

A formidable boss stands tall, with its health points on display.

To vanquish this opponent, a player might need to initiate a token stream that represents continuous attacks, chipping away at the boss’s health.

In return, the player could receive a token stream representing the experience points earned, directly proportional to the damage inflicted.

Introducing Time as a Dimension of Gaming

This is a feature we’re excited about — being the creators of an on-chain version of Alchemistry.

While ingredients could be tokenised and deposited into a specific recipe path, token streaming can help add a dimension of time to the game, that too on-chain.

For example, the game can charge tokens to process and mix elements. Mixing Fire and Rock initially would just give an Ore, but leaving the Fire and Rock to metamorphose over a longer period of time (longer streaming) can create Magma or Lava over time!

Similarly, combining Water and Gravity might not give any output in the short term, but in the long term, it gives you a Stalactite.

This isn’t merely about slow or fast production rates but about introducing the dimension of time to the gaming experience, much like how real-life products demand patience and time.

The Next Big Thing

Token streaming, a marvel of the web3 domain, remains largely an untapped reservoir in the gaming world.

As we stand at the crossroads of immersive gaming experiences and decentralised technology, it’s imperative that we delve deeper into this confluence.

The future might just witness games where token streams dictate narratives, strategies, and outcomes.

And in this evolving landscape, xRaise Wallet, which natively supports token streaming, will be an invaluable torchbearer.

Note: Implementing Token Streaming on zkSync

zkSync recently committed an update that unties L2 block timestamp from the L1 timestamp.

This was an extremely crucial update that helped make Token Streaming a reality for us. Why is it important? Let’s dive in.

zkSync uses zero-knowledge virtual machine to scale the L1 network, and zkEVM allows executing smart contracts in a way that is compatible with zero-knowledge-proof computation and generates a relatively small execution correctness proof that is stored in the L1 network.

Zk allows combining multiple transactions in one batch. The price of the batch execution and proof generation is independent of the number of batched transactions — so the more transactions batched, the execution price gets amortized across all of them, and this results in cheaper transactions overall.

While this method has many advantages, it also brings new challenges.

In zkSync blocks are produced every several seconds, while in L1 every 60–90 seconds.

Previously, L1 timestamps were used in zkSync which were not quite accurate. While for most of the time-dependent logic this is not a problem, token streaming on xRaise with this method was impossible to implement

Token streaming usually works like this:

You open a token stream that charges money on a per-second basis. The stream has a limit — the maximum amount of tokens that can be charged during the stream. If the limit is exceeded, the user stops paying.

To charge the exact amount of tokens leaked during the stream, the smart contract should know the exact time passed.

The precision of the L1 timestamp updated roughly once every 60–90 seconds was not sustainable for streaming mechanics.

But after the network update, a virtual timestamp is calculated by zkEVM and updated every several seconds, making the streams feature possible.

For showcasing streaming, we have built a simple idle mining game.

In this game, you have digital assets — miners — that mine some amount of token per time. You can rent a powerful miner by opening a USDT stream that charges USDT every second, but in exchange, gives the miner that produces the mining token.

Play the game here: https://testnet.xraise.io/playground/mining_game

Learn More About xRaise on:

website: https://www.xraise.io/

docs: https://docs.xraise.io/

Medium, X(formerly Twitter), Discord

DISCLAIMER

xRaise develops open-source software and self custodial wallet but does not independently provide, manage, or oversee the Protocol or any blockchain network. The Services are created to help users engage more conveniently in-game, dApp services.

xRaise is self-custodial. You will retain full control of the digital assets stored in your wallet at all times, and xRaise will never assume custody of, or exert any control over, those digital assets. xRaise will not have access to, take possession of, or otherwise have the ability to control the digital assets stored in your wallet.

WE DO NOT guarantee any profits or rewards, and any involvement in this project is entirely at the participant’s own risk. Participation in this project is done solely at the discretion of the individual, and any potential risks should be thoroughly evaluated prior to involvement.

Please note that owning and investing in RAISE token does not guarantee rewards, profits, ownership of company shares, or similar benefits. The value of token can be volatile and is subject to market fluctuations, which may lead to partial or total investment losses. We do not guarantee the future value of our token, nor do we provide investment advice or recommendations. Consequently, we strongly recommend conducting your research and assessing your personal risk tolerance before making any investment decisions. Mentions of potential exchange listings are purely hypothetical, and there is no guarantee that they will materialize. All investments inherently involve risk, and individual investments do not ensure actual results or returns. Investors bear sole responsibility for any investment decisions they make.

--

--

xRaise

A smart contract wallet & SDK platform for blockchain gaming.