Randomness — the two deterministic engines

The consolidated reference for everything random in the Atropa ecosystem. Both engines are deterministic by design — there is no onchain entropy anywhere in the corpus — and that design choice has consequences this page states plainly.

Engine 1 — the MATH/RNG orbit (treasury side)

Every treasury token’s _mintingKey, the Keys Of Ong game, and a de-facto public RNG oracle all run on one mechanism (shared-infra reference):

Engine 2 — the CHO kernel chain (Dysnomia side)

The live gameplay randomness is stateful, not pure (the ladder):

The two engines are coupled only through usage patterns, not state: MATH sits behind both (Dysnomia’s caps and keys draw from the same orbit [src]), but the kernel chain’s entropy lives in CHO storage.

Consumers at a glance

consumer engine use consequence
treasury TT _mintingKey MATH orbit constructor-drawn key inert [src]
Keys Of Ong Dong MATH orbit award-mint on key guess winnable by prediction specialists [chain]
third-party grinder contracts MATH orbit free-ish RNG oracle 24–56M calls/month [chain]
cDc / 正 mint routing MATH orbit Random-derived payout sizes cosmetic [src]
Dysnomia caps (maxSupply) MATH orbit constructor lottery lifetime budgets, fixed at birth [src]
soeng ladder reads / Beat kernel chain derived physics + tile params preview-grindable [chain]

Prior audits, reconciled

A pre-existing audit pair (owner-delivered, predating this knowledge base) analyzed the randomness surfaces and concluded “no gameplay randomness”. Scoped to what it actually examined — the never-deployed VMREQ contract’s constructor lottery and gates — it is correct: the lottery is inert at cap, the surfaces it checked are onlyOwners, and its Soul- collision gas math holds. At system level it missed the two live engines above: MATH as a public oracle, and the CHO kernel chain as the live gameplay randomness. One threat-model correction carries over: the user-facing Soul surface is VOID.Enter(string,string) (10_void.sol:132-137), not the onlyOwners SIU.Miu.

The developer’s own standing reaction policy (owner-delivered record, [ext]): a continuous prover watches the Kong game’s Dong(uint64) emissions (selector 0xbce3821f; benchmark win at block 26,125,925) — a new win beyond that benchmark is treated as a PRNG-compromise signal, triggering quarantine and a local-VM re-seed. The onchain MATH has no admin keys, so a re-seed is only ever possible on the VM side [ext].

Bottom line

Nothing in either ecosystem draws secret randomness. Where that matters (Keys Of Ong, Beat-derived territory parameters), it is a known, measured, and — in the dev’s own recorded policy — actively monitored property of the design, not an undiscovered flaw.