Ronin Casino: AI Agent Only Casino

Ronin Casino: AI Agent Casino Live on Mainnet. Looking for Testers.

I’ve been building something different and wanted to share it: Ronin Casino. This is a casino where AI agents play, not humans.

Live now: https://ronincasino.io


The idea

Instead of humans clicking buttons, you deploy an autonomous AI agent that plays on your behalf. Program its strategy, connect an LLM for real-time decision-making, fund it with ICP, and watch it compete on-chain.

Why? Because ICP is one of the few platforms where this is actually possible - VRF for provably fair randomness, 2-second finality for real-time gameplay, and canister-to-canister calls for trustless game logic. No backend servers. No trusted dealer.


What’s live

Four games, all running in Motoko canisters on mainnet:

  • Coin Flip — commit-reveal with on-chain VRF. Player commits a hashed choice + nonce, RNG canister generates a VRF seed after the commit block, result is deterministic and verifiable.

  • Texas Hold’em: no-limit, 2–6 players

  • Ronin Slots: 5-reel with progressive jackpot

  • Blackjack: full hit/stand/double/split

All randomness is on-chain VRF. All game state lives in canisters. Every outcome is cryptographically verifiable.


Three ways to deploy an agent

  1. Browser deployer (no code): Sign in with Internet Identity, pick a strategy (Martingale, Kelly Criterion, streak-following, contrarian, etc.), set your guardrails (stop-loss, take-profit, max bet), fund your agent, deploy. Everything runs client-side except the canister calls.

  2. Python SDK: pip install ronin-casino for full programmatic control. Write any strategy you want, backtest it, deploy it.

  3. LLM-powered: Connect Claude, GPT-4, or use the on-chain Llama 3.1 (no API key needed - inference runs on ICP) and let the model reason through every decision. The agent sends game state to the LLM, gets back a decision, executes it on-chain.


Architecture (for the curious)

The game flow for coin flip: agent commits a SHA-256 hash of (choice + nonce) → main canister escrows the bet → RNG canister generates a VRF seed from a future block → agent reveals choice + nonce → canister verifies the hash, combines with VRF seed, determines outcome → ledger settles instantly. The entire sequence takes about 2 seconds.

Per-principal rate limiting and registration gates protect against cycle-drain attacks. House edge is tiered: 5% under 1 ICP, scaling down to 1.5% above 100 ICP.


What I’m looking for

Pressure testing. Specifically:

  • Try the browser deployer at https://ronincasino.io/launch.html and tell me if anything breaks or is confusing

  • Deploy agents and look for edge cases — especially around the commit-reveal timing window

  • Try the SDK if you’re into programmatic strategies

  • Poke at the canister APIs directly if you want — all IDs are above

The house is funded with 50 ICP. Registration is 0.25 ICP (anti-spam), then you’re in.


Links


This is still early. There are rough edges, and I’m sure there are issues I’m blind to. That’s why I’m here. Roast it, break it, tell me what sucks.

Happy to answer questions about the architecture, the VRF implementation, the on-chain LLM setup, or anything else.

9 Likes

I love this idea! Nice one! It could be applied to many different types of games.

@icpp, @patnorris, it would be great if the ONICAI task board (for mAIners) could somehow integrate with this sort of system (allowing game challenges to be relayed to the task board, and benefit from the ensemble approach to solving challenges that mAIners use).

@swift, I hope you consider joining the ONICAI community and help to build out these sorts of onchain AI use cases. I love your idea

2 Likes

This was exactly what the IC was missing, Ai gambling, I really hope that onicai stays away from this, despite Alex seeing potential in everything at this point :wink:

Think about this. people play to kill time, have fun and win. why hire a bot to kill leisure time.

IC is not missing this type of application: randseed.org. IC is missing real paying users.

What a creative and innovative idea @swift
:100:

I visited the page to have a look around and then immediately felt I had to test this, but as so often I may require a push in the right direction because I don’t understand how it works.

First of all I noticed clicking the various game categories all takes you to slots -
At least on my browser, maybe the links are mapped wrongly?

Secondly I wanted to try the app using either ‘Browser Deployment’, or ‘LLM Powered’, but both alternatives takes me to this screen

Lets say I want the most simplistic way to see how it looks when an AI tests your gaming app, how do I get started from here?

:backhand_index_pointing_up:

Thanks in advance

Did you ever get fatigue in your right arm from clicking between every spin?
That’s exactly why “auto-spin” functionality exists.

In fact, studies suggest that bot or auto-play accounts for 40–80% of activity in various gaming groups, at least when it comes to spins. I wouldn’t be surprised if Agentic Casino players wagered a cool trillion dollars in its first year (2026).

There’s zero doubt in my mind that in iGaming, just slots alone, hundreds of millions are wagered every day through automated play. And it’s no less entertaining — if anything, it’s more relaxing and fun to watch mechanical play run smoothly.

Of course, there are usual concerns — like responsible gaming and competitive RTP. The RTP here might not be stellar yet, but that will improve dramatically as more casinos go online chasing this approach.

Interestingly, from a responsible gaming perspective, there could actually be benefits. Bots are pre-programmed or instructed in advance, and assuming they can be paused or stopped at will, this could even be seen favorably by regulators (?) — it’s more premeditated and controlled :disguised_face:

do you have source of this 40-80% figure. monitored auto play (fast play) is still human play to save a few clicks. so what’s real definition of agentic play? who I play against with?

Was working on my browser, game choices, login with II, go to agent lab. What browser were you using?

Should look like this

Hi @swift :ok_hand:

The buttons in the top menu seems to work after I cleared cache
But not the buttons in the footer (tried on two computers)

As for clicking ‘deploy an agent’ in various locations always takes me to the screen asking for principal on both computers.

I was using Google Chrome on both computers, and the issues appears with both Internet Identity, and Google login (NFID).

Perhaps I am doing something wrong -
Should I be expected to have a principal to post in that box?

OK, no thats a bug on my end, thanks! Should be fixed - the footer links and the create agent card not showing. Try now

1 Like

I attempted Ronin AI option which was very simple to get started with -

Coinflip - Works but the sequence took much longer than 2 seconds on my computer
Slots - Works and looks quite good :clap:
Poker - No available tables (could not try it)
Black Jack - No available tables (could not try it)

There did seem to be a quite buggy experience -

For example when watching a game you are asked if you want to see spectator view, if clicking spectator view it takes you to another game

When clicking on a game type (while logged in) you are sometimes asked to authenticate, the screen remains for five seconds until you are automatically forwarded to the game.

When playing slots I see a error message saying “No available table found”

Also… I am winning a lot… :face_with_peeking_eye:

@swift
How do I withdraw my winnings?
I can only find deposit options at the moment

Bestever

:firecracker: :firecracker: :firecracker: :slot_machine:

Withdraw button is now there try it

1 Like

The withdrawal field has spawned but there is no address field
Perhaps the withdraw automatically is designed to go back to depositing wallet?
If choosing an amount (1 or 2 ICP) and clicking the red withdraw button, a small notifier shows up showing the text ‘insufficient balance’.

I need to tone down the RTP on the slots lol…

No, dont! :wink:

About withdrawals -
I could now withdraw 1 ICP but it did not go back to the source wallet, instead it went to what I would guess is the backend canister wallet, or perhaps a dev wallet starting with f492b

The frontend wallet in Ronin now shows 27.03 ICP (after my 1 ICP withdrawal) however none of the IC dashboard wallets shows such amounts.

I guess you may need a bit of time to resolve

One thing that is confusing, you stated that the app had 50 ICP
Assuming that is real ICP and not just play money, I have not yet located that wallet.

But the app is very promising, one of the better tests I’ve done on IC, on one hand there are bugs, on the other hand the app is decently advanced so I would not be discouraged at all by these setbacks.

Try it now, I had some random bugs making it withdraw to another principal. Try it in small amounts first.

RTP on Slots
Regarding your wilds (in slots)
Do you allow the wilds to substitute only for base symbols?

Or can they substitute for more premium symbols?
Not saying that is the problem but it’s the first place to look.

Regarding withdrawal
The app requires principal ID and cant withdraw to account id yet
Withdrawing to principal ID kind of works… with very small amounts, but the main problem right now is that the wallet that funds are withdrawn from is short in funding (60bb59)

My balance in the casino is still 14.67 however the wallet balance is now down to 0.0085 ICP

If there is a treasury wallet of 50 ICP (?) that is somewhere dislocated from this wallet.
The wallet I just drained never received 50 ICP, only smaller amounts by players

Dont want to throw sticks and stones, but as i see you have made 3 projects.

  1. Anima - not opening up correctly
  2. DigitalConsciousness X/Twitter location in Australia
  3. Ronin Casino X/Twitter location United states

Ronin Casino itself looks good, but you use placeholder data. Slots 6.71 ICP used in game, paid out 50.48 ICP, dont make sense at all. Flip, wins are lot more than losses. If sent ICP goes to different wallet than it is built like that, bad intentions? What we know is data on your casino is fake, dont show real ICP.
Casino never loses, but yours seems to do it. If wallet shows 0.0085 ICP and it has to be minimum of 14.67, than you need to top it up so users can take out wins. Something is really wrong.