Texas Hold'em rebuild deck
VERY HARD
Hand evaluation is a library and the betting rounds are a state machine, so a table that deals and pays out correctly is a weekend — the game is the betting, and an opponent that plays its cards instead of playing you is not poker, it is a slot machine with extra steps.
You will get a good prototype. The product is what comes after.
Very hard, and specifically for one reason. The table, the dealing, the evaluation, even side pots — all of that is a long weekend and mostly solved by libraries. Then you need opponents, and the honest position is that good poker AI is a research field. What you can get in a weekend is a bot that plays defined ranges with fixed frequencies, which is beatable but not stupid, and which is enough to make the game worth playing. Ask for range-based frequencies by name; ask for 'a poker AI' and you get one that raises with good cards and folds with bad ones, which anyone beats in twenty minutes.
- Difficulty
- VERY HARD · 4 of 5
- First playable
- A project
- The original
- 1 team-years
- Released
- 1925 · Classic
- Genre
- Card
Build a Texas Hold'em table with AI opponents. Vanilla JS or React, play money only, no backend. Requirements: - Full no-limit ring game: blinds, hole cards, preflop, flop, turn, river, showdown. Dealer button rotates, blinds can escalate on a timer for tournament mode. - Use a tested hand evaluator rather than writing one. Then test the parts nobody else tests: split pots on identical hands, kickers, and side pots when several players are all in for different amounts. Build a pot object that tracks eligibility per player and settles from the smallest all-in upward. - Betting engine as an explicit state machine: legal actions per player per street, minimum raise sizing after a raise, and the rule that an all-in below a full raise does not reopen the betting. - AI opponents with a defined range-based policy, not a hand-based one. Each bot holds a preflop opening range by position, a continuation-bet frequency, and a bluff frequency chosen so its value bets and bluffs arrive in a sensible ratio for the size it uses. Give each bot a personality by shifting those numbers — a nit, a maniac, a calling station — and show the labels only on a debug toggle. - Equity display for the human on a toggle: win probability against a random hand and against the bots' modelled ranges, via a fast Monte Carlo. - Hand history log in standard notation, replayable, showing each bot's cards after the fact so you can see when you were bluffed. Definition of done: a three-way all-in with uneven stacks pays out exactly the right side pots, and reviewing a hand history shows a bot bluffed me with a hand its own range said it should have.
- An opponent that bluffs coherently — strong bots come from counterfactual regret minimisation over months of self-play, not from a prompt
- Reads, tells and table talk, which is what people mean when they say they play poker
- Any version handling real money, which is a licensing and compliance problem, not a coding one
- Side pots done right, if you let the model rush them — all-ins with three uneven stacks is where clones quietly lose chips
Opponents that act on a range and a frequency, never on their actual cards
The instinct when writing a card bot is to look at its hand and decide. That produces an opponent whose bet size tells you exactly what it holds, so it is transparent within a session. Give it a range it is representing and a frequency it must hit, and force it to bluff the required share of the time regardless of what it was dealt, and it becomes unreadable using the same amount of code. The idea generalises to any hidden-information game: the bot's behaviour should be a distribution, not a function of its private state.
ScopeA weekend— build just this, not the game
Build a range-versus-hand bot comparison as a single self-contained HTML file. No dependencies, play money. - A simplified betting game with hidden cards, one betting round and a showdown, is enough. - Implement two bots. HAND bot decides purely from the strength of what it holds. RANGE bot decides from a policy: with this board and this position it bets 65% of the time, and it fills that frequency with its strongest holdings plus a fixed share of its weakest, choosing by hash so the choice is consistent within a hand. - Play 1,000 hands of each against a simple exploitative opponent that adapts to observed betting patterns, and chart the chip results. - Show a live readout of each bot's bet frequency and the actual composition of its betting range, split into value and bluffs. Definition of done: the exploitative opponent beats HAND bot within a few hundred hands and cannot get a read on RANGE bot at all.
Not a clone — Texas Hold'em re-themed and cut down to something you can finish. The angle is the important reel: it is what turns a project into a weekend. 24,360 ways to land.
Algorithm No Reflexes
Texas Hold'em, but a puzzle version — same fiction, no reflexes, set in a creator internet. Rendered in comic-book halftone.
Build a browser game called "Algorithm No Reflexes". The pitch in one line: a card in the spirit of Texas Hold'em, but a puzzle version — same fiction, no reflexes, set in a creator internet. WHAT THIS IS Take the SHAPE of Texas Hold'em — its core loop, and whatever makes that loop good — and rebuild it as your own game in a different world at a smaller scope. Use your own names, art and audio, which you want anyway: a reskin of somebody else's game is less interesting than a new one that works the same way. THE ANGLE — this is the important constraint, honour it above everything else A puzzle version — same fiction, no reflexes. Keep the world and the tension, remove execution difficulty entirely. Every encounter has a correct answer discoverable by thought. This is what makes the project finishable. If a decision would push the scope back towards the original's, take the smaller option every time. THE THEME A creator internet. Views, comments and virality as physics. Attention is the scarce resource and the feed never sleeps. The theme is not a coat of paint. Let it change what the mechanics mean — a reload, a health pack and a locked door should all be things that make sense in this world and nowhere else. LOOK Comic-book halftone. Bold ink, Ben-Day dots, speed lines on hits, and panel-border flashes on big moments. REQUIREMENTS - Runs in a browser with no build step. Canvas 2D unless the angle genuinely requires 3D, in which case three.js. - Fixed-timestep update loop with interpolated rendering, so it behaves the same at 60Hz and 144Hz. - Every tuning constant in one CONFIG object at the top, exposed as live sliders in a debug panel. You will find the feel by dragging those, not by prompting. - All content — levels, entities, balance numbers — in JSON or plain data files, never inline in the logic. - Audio generated with the Web Audio API rather than asset files. - Respect prefers-reduced-motion: keep the fades, drop the shake and the parallax. BUILD ORDER 1. The core loop with placeholder rectangles, at the reduced scope the angle demands. No theme, no art, no audio. Make it fun as rectangles first. 2. The angle's consequences. Cutting to bots, or to turn-based, or to one level changes the design rather than just shrinking it — find out how and rewrite step 1. 3. The theme, as content and data. 4. The look, applied last as a rendering layer over a game that already works. Start by writing a one-page plan: the core loop, what the angle removes and what that frees you to do properly, and what you are deliberately leaving out. Wait for me to approve it before writing code.
Half the time one of these already does what you wanted, and the other half it saves you a week of solving a problem someone documented in 1997.
One count per game. No account — it is tied to a salted hash of your IP, which is not stored in a form anyone can reverse. Every build adds 1 team-years to the counter on the homepage.
Then try these
Questions
How hard is Texas Hold'em to rebuild with an AI agent?
Yes — every game is buildable at some scope. The question is how hard, and Texas Hold'em is VERY HARD (4 of 5). You will get a good prototype. The product is what comes after. Hand evaluation is a library and the betting rounds are a state machine, so a table that deals and pays out correctly is a weekend — the game is the betting, and an opponent that plays its cards instead of playing you is not poker, it is a slot machine with extra steps. Reckon on a project to something you can actually play — not to something that matches the 1 team-years Robstown, Texas spent.
What makes Texas Hold'em hard to rebuild?
Hand evaluation is a library and the betting rounds are a state machine, so a table that deals and pays out correctly is a weekend — the game is the betting, and an opponent that plays its cards instead of playing you is not poker, it is a slot machine with extra steps. That is why it sits at VERY HARD rather than a tier either side of it. If you want the idea without the project, the transferable part is opponents that act on a range and a frequency, never on their actual cards — a weekend of work.
How long does it take to build a Texas Hold'em clone?
Wrong question, and it is worth saying why. Nobody rebuilds Texas Hold'em — the original took Robstown, Texas on the order of 1 team-years, released in 1925 on Classic. What you can do is reach something playable and genuinely yours in about a project, and then keep going for as long as it stays interesting. Any figure that claims otherwise is measuring a prototype and calling it a game.
What do I lose by building my own Texas Hold'em?
An opponent that bluffs coherently — strong bots come from counterfactual regret minimisation over months of self-play, not from a prompt. Reads, tells and table talk, which is what people mean when they say they play poker. Any version handling real money, which is a licensing and compliance problem, not a coding one. Those are the parts a prompt will not hand you.
Which AI coding agent should I use to build it?
Any of Claude Code, Codex or Cursor will handle this prompt. Paste it as your first message, let the agent scaffold the project, then iterate on feel — the second, third and tenth prompts are where a game actually gets good. Work in an empty folder or a fresh git branch so you can throw it away cheaply.
One email when new games go on the list. No other reason to email you, ever.