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
- 08db17…086c:4
speciesNames details
rarityNames
[4]string- OID
- 08db17…086c:6
rarityNames details
rarityEmoji
[4]string- OID
- 08db17…086c:8
rarityEmoji details
egg
typeegg is the persisted record for one planted egg, hatched or not.
Value
eggling.egg
eggs
v0.Tree// id string -> \*egg
- OID
- 08db17…086c:10
eggs details
nextID
intValue
0
totalPlanted
intValue
0
totalHatched
intValue
0
rarityCounts
[4]int- OID
- 08db17…086c:15
rarityCounts details
get
func(id string) (*eggling.egg, bool)- OID
- 08db17…086c: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
- 08db17…086c: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
- 08db17…086c: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
- 08db17…086c:20
rarityTier details
plant
func(owner .uverse.address, height int64) *eggling.eggplant is the non-crossing core of PlantEgg.
- OID
- 08db17…086c:21
plant details
PlantEgg
func() stringPlantEgg starts incubating a new egg for the caller. Returns its ID.
- OID
- 08db17…086c:22
PlantEgg details
hatch
func(e *eggling.egg, height int64) stringhatch is the non-crossing core of Hatch.
- OID
- 08db17…086c:23
hatch details
Hatch
func(id string) stringHatch hatches an incubated egg the caller owns.
- OID
- 08db17…086c:24
Hatch details
train
func(e *eggling.egg) stringtrain is the non-crossing core of Train.
- OID
- 08db17…086c:25
train details
Train
func(id string) stringTrain gives a hatched creature the caller owns some experience, leveling it up every 50 XP.
- OID
- 08db17…086c:26
Train details
rename
func(e *eggling.egg, name string) stringrename is the non-crossing core of Rename.
- OID
- 08db17…086c:27
rename details
Rename
func(id string, name string) stringRename gives a hatched creature the caller owns a custom name.
- OID
- 08db17…086c:28
Rename details
escapeInline
func(s string) stringescapeInline neutralizes markdown-active characters in untrusted text before it's embedded inline in Render output.
- OID
- 08db17…086c:29
escapeInline details
shortAddr
func(a .uverse.address) string- OID
- 08db17…086c:30
shortAddr details
byIDNumeric
typebyIDNumeric orders eggs by their numeric ID, ascending.
Value
eggling.byIDNumeric
allEggs
func() []*eggling.egg- OID
- 08db17…086c:31
allEggs details
renderHome
func() string- OID
- 08db17…086c:32
renderHome details
renderEgg
func(id string, height int64) string- OID
- 08db17…086c:33
renderEgg details
renderOwner
func(rawAddr string) string- OID
- 08db17…086c:34
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
- 08db17…086c:35