Crazy Cat Lady Games · Offline model audit

Same heist. Three regions.
300,000,000 simulated rounds.

The twelve-step curved game was simulated separately for Paris, Brazil and South Africa. The countries share the same payout model; each simulation uses a different reproducible random stream.

100Mpaths per region
97.000%theoretical RTP, rounded
3.000%theoretical house edge, rounded
12cashout checkpoints

RTP measures all staked credits, including losing rounds. A 97% RTP means about 97 gross credits returned per 100 credits staked over repeated play. It is not a 97% chance of winning. Rain is already funded inside this model.

Paris

100,000,000 paths · 10-credit stake · gross return includes the original stake

Independent seed

Swipe the table sideways to see RTP and confidence intervals →

Cash out afterBase targetReach / paidAvg. gross winMeasured RTP95% intervalHouse edge
Steal 11.10×88.139%11.005 credits96.995%96.988%–97.002%3.005%
Steal 21.25×77.534%12.510 credits96.991%96.981%–97.002%3.009%
Steal 31.45×66.825%14.514 credits96.992%96.979%–97.005%3.008%
Steal 41.75×55.367%17.519 credits96.998%96.981%–97.015%3.002%
Steal 52.10×46.141%21.024 credits97.008%96.988%–97.029%2.992%
Steal 62.60×37.269%26.029 credits97.006%96.982%–97.031%2.994%
Steal 73.25×29.818%32.534 credits97.010%96.981%–97.039%2.990%
Steal 84.10×23.637%41.039 credits97.002%96.968%–97.036%2.998%
Steal 95.20×18.637%52.044 credits96.993%96.954%–97.033%3.007%
Steal 106.60×14.685%66.049 credits96.991%96.945%–97.036%3.009%
Steal 118.20×11.819%82.053 credits96.975%96.923%–97.027%3.025%
Steal 1210.00×9.697%100.000 credits96.973%96.915%–97.031%3.027%

Base targets are before Rain. Each row is a separate stopping policy applied to the same simulated paths; do not add the row returns together. A rare earlier 10× settlement counts as paid in later rows.

3,289,385Rain events
0.7001%Rain per eligible successful steal
1,043,029,883Uint32 draws consumed
11.5ssimulation runtime

What the numbers say

The 36 individual region/step estimates range from 96.973% to 97.026%. All 36 agree with the exact model within the simultaneous 95% intervals.

The table shows ordinary 95% intervals. The JSON also contains Bonferroni intervals for all 36 region/step comparisons together, using z=3.19695. Statistical agreement is evidence of consistency; it is not proof that a live RNG is fair.

Actual engine cross-check

9,080 scripted boundary and payout cases, plus 5,000 random paths and 28,731 transition checks, were compared against createDemoGame. This covers ordinary wins, failures, each Rain boundary, cent payouts, and early or final 10× caps with the same random-draw order.

One path, twelve possible exits

A full path records what would happen if play continued. Each row asks what would have been paid if the player stopped after that steal. Rows within a region therefore share random paths and are correlated. The simulation generated 300,000,000 full paths, not twelve times that many.

Quantized probabilities and rounding

Success thresholds use the game’s imported curved functions and exact Uint32 cutoffs. Rain is checked only after a successful eligible steal. Gross payouts round to the nearest cent, with half cents rounded up; rewards stop at 10×. Exact dynamic programming enumerates all reachable multiplier states.

Scope and limits

This is an offline audit of the demo’s mathematical model and transition mapping. Its deterministic AES sampler is for reproducibility. It does not certify browser entropy, server security, a competition leaderboard, regulatory compliance, or real-money suitability. Play-credit RTP uses the same returned-credits / staked-credits definition.

Exact rounding check at five stakes

These are analytical results, not extra simulations. Each entry includes quantized Rain, quantized survival, cent rounding, and the 10× cap. Tiny differences above 97% come from the Uint32 threshold rounding.

StakeLowest exact RTPHighest exact RTPSteps
1.00 credits97.000000015%97.000000170%All 12
1.10 credits97.000000013%97.000000155%All 12
2.50 credits97.000000012%97.000000157%All 12
10.00 credits97.000000015%97.000000170%All 12
100.00 credits97.000000015%97.000000170%All 12
Reproduce this audit
npx tsx scripts/curved-payout-analysis.ts 100000000 cclg-curved-three-regions-2026-10-08-v1

Math version: demo-curved-rain-inclusive-97-12-v6
Audit seed: cclg-curved-three-regions-2026-10-08-v1
Started: 2026-10-08T09:27:11.882Z
Finished: 2026-10-08T09:27:47.298Z

{
  "src/game/demo.ts": "ae96f2d002fba56cf7800f59007f47442f0c6551d42149088eb93cea777f4f1f",
  "src/game/curved-math.ts": "4b0b9a8520b2e77ae2f69a12378639c6204f7754c18a2bd47f2ccda9c52e394e",
  "scripts/curved-payout-analysis.ts": "2cf7f00fbd7a2bd48fe04325732a3c1254248ff6210f17f2fedc4cc72f425ff0"
}

Audit sampler: SHA-256-derived AES-256-CTR key per region, zero IV, little-endian 32-bit words. Full keys, draw counts, exact tables, confidence intervals, and tail/Rain metrics are saved in report.json.