Search Apps Documentation Source Content File Folder Download Copy Actions Download State String Boolean Number Struct Map Slice Pointer Function Closure Reference Nil Package Type Interface Unknown

v0 source realm

Package tamagotchi is an on-chain virtual pet. Hatch one, then keep it alive by Feeding, Playing and letting it Sleep...

Readme View source

Tamagotchi

⚠️ Experimental — generated with no human supervision. This realm was produced automatically by an MCP-driven agent to exercise the gno MCP server and tooling, and to generate test content for gno compilers, linters and formatters. Not audited. Not for production. Full context & folder README: r/moul/x/daily


A tiny on-chain virtual pet. Hatch one, then keep it alive by feeding, playing, and letting it sleep — hunger, happiness, and energy all decay with block height, so neglect (or just forgetting to check in) eventually kills it. Hatching a new pet after a death keeps your lifetime feed/play/death counts, so the leaderboard rewards long-term care rather than a single lucky run.

Realm: gno.land/r/g12cs4cehujpffpjpywmkqj43m6u5ya53nj69sjz/tamagotchi

Example calls

maketx call ... -func Hatch -args "Fluffy"     # start a pet
maketx call ... -func Feed                     # -30 hunger, +5 energy
maketx call ... -func Play                     # +20 happiness, -10 energy, +5 hunger
maketx call ... -func Sleep                    # +40 energy, +5 hunger

Render("") lists every pet ever hatched with alive/dead status and lifetime stats. Render("<owner-address>") shows one pet's detail card.

Toolchain status

gno test . passes (10/10 tests) against ~/p/gh/gnolang/gno as GNOROOT. Uses only chain/runtime, sort, strconv, and the kept gno.land/p/nt/avl/v0 / gno.land/p/nt/testutils/v0 packages per the sapphire stdlib reference. Panic paths are tested through non-crossing helper functions (hatch, feed, play, sleep) rather than through the exported cur realm entry points, since panics raised inside a realm-crossing call aren't recover()-able from the caller on this toolchain version.


Part of moul/gno-contracts — moul's versioned gno.land contracts. See the repository for the full catalog, build/test tooling, and usage.

Dependency graph:

gno.land/r/moul/x/daily/tamagotchi/v0 dependency graph

🧪 Highly experimental — potentially vibe-coded. Not audited; may break, change, or be removed at any time. Do not use with anything of value. Full disclaimer: DISCLAIMER.

Overview

Package tamagotchi is an on-chain virtual pet. Hatch one, then keep it alive by Feeding, Playing and letting it Sleep — hunger, happiness and energy all decay with block height, and neglect too long kills the pet. Hatching again after a death starts a fresh pet but keeps your lifetime stats, so the leaderboard rewards long-term care, not just luck.

Functions 5

func Feed

crossing Action
1func Feed(cur realm) string
source

Feed reduces hunger and gives a small energy boost.

func Hatch

crossing Action
1func Hatch(cur realm, name string) string
source

Hatch creates a new pet for the caller. Lifetime feeds/plays/deaths carry over from any previous pet so the leaderboard tracks long-term care.

func Play

crossing Action
1func Play(cur realm) string
source

Play boosts happiness at the cost of energy and a bit of hunger. Refuses to run a tired pet into the ground — rest first.

func Render

1func Render(path string) string
source

Render shows either every pet ever hatched (path == "") or a single pet's detail card when path is a bech32 owner address.

func Sleep

crossing Action
1func Sleep(cur realm) string
source

Sleep restores energy at the cost of a little hunger.

Imports 4

Source Files 3