minIncubation
int64minIncubation is the minimum number of blocks an egg must sit before it can hatch.
Value
20
waitCap
int64waitCap is the incubation-time bonus cap (in blocks) used by rarityTier, so waiting forever doesn't guarantee a legendary — it just improves odds.
Value
200
speciesNames
[8]string- OID
- 025050…c958:4
speciesNames details
rarityNames
[4]string- OID
- 025050…c958:6
rarityNames details
rarityEmoji
[4]string- OID
- 025050…c958:8
rarityEmoji details
egg
typeegg is the persisted record for one planted egg, hatched or not.
Value
v1.egg
eggs
v0.Tree// id string -> \*egg
- OID
- 025050…c958:10
eggs details
nextID
intValue
0
totalPlanted
intValue
0
totalHatched
intValue
0
rarityCounts
[4]int- OID
- 025050…c958:15
rarityCounts details
get
func(id string) (*v1.egg, bool)- OID
- 025050…c958:16
get details
hashSeed
func(parts []string) stringhashSeed hashes the given parts (joined with ":") to a deterministic hex digest. Used to derive an egg's species and rarity roll from facts already fixed at plant time, so nobody — not even the owner — can game the outcome after the fact.
- OID
- 025050…c958:18
hashSeed details
seedBytes
func(seedHex string) (uint8, uint8)seedBytes pulls the first two bytes out of a hex digest for use as two independent 0-255 rolls (species pick, rarity roll).
- OID
- 025050…c958:19
seedBytes details
rarityTier
func(roll uint8, waitBlocks int64) intrarityTier turns a 0-255 roll plus the blocks waited into a tier index 0..3 (common..legendary). Waiting longer raises the effective score, so patience improves your odds, but a bad roll can still land common even after a long wait, and a lucky roll can hatch rare almost immediately.
- OID
- 025050…c958:20
rarityTier details
plant
func(owner .uverse.address, height int64) *v1.eggplant is the non-crossing core of PlantEgg.
- OID
- 025050…c958:21
plant details
PlantEgg
func() stringPlantEgg starts incubating a new egg for the caller. Returns its ID.
- OID
- 025050…c958:22
PlantEgg details
hatch
func(e *v1.egg, height int64) stringhatch is the non-crossing core of Hatch.
- OID
- 025050…c958:23
hatch details
Hatch
func(id string) stringHatch hatches an incubated egg the caller owns.
- OID
- 025050…c958:24
Hatch details
train
func(e *v1.egg) stringtrain is the non-crossing core of Train.
- OID
- 025050…c958:25
train details
Train
func(id string) stringTrain gives a hatched creature the caller owns some experience, leveling it up every 50 XP.
- OID
- 025050…c958:26
Train details
rename
func(e *v1.egg, name string) stringrename is the non-crossing core of Rename.
- OID
- 025050…c958:27
rename details
Rename
func(id string, name string) stringRename gives a hatched creature the caller owns a custom name.
- OID
- 025050…c958:28
Rename details
byIDNumeric
typebyIDNumeric orders eggs by their numeric ID, ascending.
Value
v1.byIDNumeric
allEggs
func() []*v1.egg- OID
- 025050…c958:29
allEggs details
renderHome
func() string- OID
- 025050…c958:30
renderHome details
renderEgg
func(id string, height int64) string- OID
- 025050…c958:31
renderEgg details
renderOwner
func(rawAddr string) string- OID
- 025050…c958:32
renderOwner details
Render
func(path string) stringRender shows the full egg list at "", a single egg's detail when path is a numeric ID, or one owner's eggs when path is a bech32 address.
- OID
- 025050…c958:33