Deep dive: Hyligotchi, your testnet companion

A Hyligotchi follows you around in the Hyli testnet world. This entirely ZK-proven little creature is hungry for oranges, so you’ll need to play a lot of testnet games to keep it happy… and alive!

Deep dive: Hyligotchi, your testnet companion

A Hyligotchi follows you around in the Hyli testnet world. This entirely ZK-proven little creature is hungry for oranges, so you’ll need to play a lot of testnet games to keep it happy… and alive!

Here’s how we built the Hyligotchi, powered by the Succinct Prover Network, along with an overview of the technical choices our tech team made when creating it.

At one glance

Purpose A fun character to follow you around
Proof systems SP1 for Hyligotchi
Risc0 for $ORANJ
Key Hyli feature Cross-contract composition
Offchain execution
Source code https://github.com/hyli-org/hyligotchi

How to play Hyligotchi

Hyligotchi is a little creature that you can care for in different ways. It needs to breathe oxygen ($O2, which you gain by playing Orange Trail, entirely proven with SP1), eat oranges ($ORANJ, which you obtain from the faucet, also built with SP1), and sometimes it becomes sick, requiring some vitamin ($VIT) from eZKasino to heal.

To care for your Hyligotchi, you will need to burn these three tokens.

When you start on the Hyli testnet, play Faucet Ninja and earn $ORANJ. You can bet $ORANJ on eZKasino for $VIT or on orange trail for $O2. $ORANJ feeds your Hyligotchi, $VIT cures it, and $O2 makes it happy.

The choices we made for Hyligotchi

To be completely honest, we didn’t build Hyligotchi to showcase a specific feature of Hyli! We built it so that you’d have a fun mini-game that unifies all the other apps into a nice storyline.

And, well, the Hyli × Succinct prover network collaboration makes it smooth and straightforward to develop and play a game like Hyligotchi!

Fixed-interval state updates

A very simple contract powers Hyligotchi: our centralized server periodically checks on your Hyligotchi's progress. At each interval, if it hasn’t been fed in a long time, the Hyligotchi will get hungrier; happiness levels and sickness status change randomly.

For this testnet demo, we’ve kept a long interval (several minutes) to avoid overloading the proving network that we use − that’s Succinct’s prover network, and we thank them for supporting us on our testnet!

We expect Hyligotchi to be the contract that we upgrade the most frequently during our testnet, as we have a bunch of fun features in mind!

What gets proven?

Two types of proofs are created in Hyligotchi:

  • Proofs of the server ping: at every server ping, a proof of the server run is created, verified, and settled on Hyli. Instead of triggering a new proof for every single player, we batch game updates into these intervals: one proof is generated per tick. It only includes users whose state actually changed (e.g., Hyligotchi got hungrier), reducing cost and improving throughput.
  • Proofs of the player’s actions: that is, proof of token burn and of state transitions (e.g., burn $VIT, get status « healthy »).

All states are Merkelized for scalability, allowing us to prove and update only the subset of users whose pets have changed without recalculating the global state. We’ll discuss proof optimization and Merkel trees further in our end-of-June roundup, which will provide a deep dive into the entire architecture of our testnet and the choices we made regarding it. Stay tuned!

As usual, super-simple proof composition with Hyli

While our standard token contract is in Risc0, Hyligotchi is built and proven with SP1. Moreover, we’re calling three different tokens into a single app, and that multi-call is often a hassle on legacy blockchains. On Hyli, it’s no more complicated than writing with a single proving scheme and leveraging a single token.

Not only that, but we’re also limiting gas fees: since all execution is offchain, we don’t need to run the state check and Hyligotchi updates at every single server ping or user action. We only need to prove that they happened, which makes it easier, more scalable, and cheaper than legacy blockchains.

Fun fact: the Hyligotchi front-end is a library that we can embed in any other app that settles on the Hyli testnet.

The Hyli testnet is currently live! Get an invite code to start caring for your Hyligotchi at hyli.fun with an invite code or start building your own apps.