About playbuns
playbuns makes web games you open straight in a browser — no install, no sign-up. Every game here is designed, built, measured and shipped by one person.
What we build
Most playbuns games are hybrids. We take a classic genre whose rules everyone already knows, then layer on one judgment call that genre never asked you to make. Put deduction on top of sudoku and filling in a number stops being bookkeeping — it becomes buying evidence (Murder Grid). Put card drafting on top of sudoku and the question flips from «where does this go» to «should I play this card at all, or throw it away» (Draftoku). Put a market on top of 2048 and the hand merging tiles becomes the hand timing a sale (Market 2048). Put an ecosystem on top of Reversi and «flip more, win more» flips into «own too much territory and famine follows» (EcoFlip).
The reason for this is not aesthetic. It is that you can cut the cost of explaining the rules to nearly zero and still create a decision nobody has made before. A first-time player reaches «oh, it's sudoku», «oh, it's 2048», «oh, it's Reversi» in about three seconds. After that there is exactly one new layer to learn — and that layer is the whole game, because everything else is already familiar and needs no explaining.
playbuns currently runs 14 games built on this formula. Rather than list every one here, this page shows the reasoning behind a few of them; the rules and strategy for each game live in its own guide page.
Design principles
No accounts
There is no sign-up, no login and no payment. Progress lives in your browser's localStorage and never reaches a server. Switch devices and your history is gone — but in exchange, there is no personal data for us to hold in the first place.
Mobile first
Every game is designed at 390px portrait before anything else. Desktop comes second. Show someone a loading spinner after they tap a link and a large share of them leave, so we build no-build-step static HTML to keep the first paint as fast as possible.
Same day, same puzzle
Games with a daily puzzle generate it deterministically from the date. Everyone who plays on a given day gets exactly the same board. That is the only way comparing results means anything. Before release we verify a full year of puzzles to confirm there is not a single unsolvable day.
Spoiler-free sharing
Result cards show «how you solved it» and never «what the answer was». Sharing should not cost the next player their game.
Fifth principle — ship an MVP, then run bots against it to find where the spec itself is broken
Playing a few rounds by hand and deciding «this feels fun» is not verification. The person who built it knows the rules, so they unconsciously walk the paths that work, and they blame themselves for the rounds they lose. Once an MVP exists, we always run a no-input bot or a greedy bot to simulate hundreds of rounds and use the result to find defects in the spec itself, not just tune numbers. Three cases below are pulled directly from real measurement logs.
Magnet Break — a no-input bot that never once switches on the magnet ran all 12 stages for 60 simulated seconds each. 4 of the 12 stages (5, 7, 8 and 10) cleared with zero player input. The magnet — the game's entire core mechanic — was decorative in a third of the game. The cause was that every target block sat in the same center column the ball launches from. The fix was launching the ball perfectly vertically and never placing a target in the center column again. Re-running the same bot after the redesign gave a no-input clear rate of 0/12, while a bot that actually uses the magnet still cleared 12/12. Both numbers have to be measured together — checking only one direction easily produces «a level nobody can beat» or «a level anyone beats by accident».
Chroma Drop — a script that automatically inspects the board state at game-over found that 21–36% of filled rows were «unrecoverable». Once two different mixed colors land in the same row, that row can never be cleared, and the player had no way to know it or undo it. We judged this a structural flaw in the rules, not a balance issue, and added both a warning signal for dead rows and a «bleach» ability that reverts tiles back to a pure color. After the fix, the unrecoverable rate dropped to around 9%, and a follow-up measurement showed the warning signal — not the bleach ability alone — was doing almost all of the work.
Peak Load — a script simulating the opening seconds of a match showed that 22% of the failure budget was already spent 20 seconds into a run, before the player could do anything about it. Completing a first line takes 15–25 seconds, so the game was punishing players before they had a chance to respond. The fix was a warm-up window during which outage does not accumulate, lasting until either the first discharge or 25 seconds, whichever comes first. The same measurement also revealed the phase difficulty curve was inverted — the morning phase, meant to be the easiest, accumulated a per-round gauge of 37.4, worse than the supposedly hardest peak phase's 24.2. Raising the morning demand band restored the intended order: morning 18.8, peak 25.8.
All three were the kind of problem no amount of hands-on playtesting would ever catch. «Hard» versus «impossible», and «gentle» versus «actually harsher» are indistinguishable by feel — they only show up once you measure them as numbers.
How they are built
Most of these games are static web apps with no build step — one index.html, plain JavaScript modules, CSS. Skipping frameworks is not a matter of taste; it is about how fast the first screen paints. On mobile, the moment you show someone a loading spinner after they tapped a link, a large share of them leave.
Everything deploys to Cloudflare Workers, and each game gets its own subdomain (14 game subdomains plus the apex domain, 15 hosts in total). Analytics mostly funnel into a single unified GA4 property, with a couple of games running their own separate GA property on top.
Every deploy carries automated verification with it. scripts/verify-site.sh curls the deployed host and checks, across all 15 hosts, that a canonical tag exists, that the GA4 tag is present, that the AdSense tag is present on domains that should carry it (the hub's guide pages, fandomdex) and absent on domains that shouldn't (thin game shells), that robots.txt declares a sitemap, that every <loc> in sitemap.xml actually returns 200, that ads.txt carries the publisher ID, and that a nonexistent path returns a real 404 instead of a soft 404. Separately, scripts/check-docs.mjs runs a mechanical check across all 40 guide documents before every deploy — canonical matching its own path, exactly one H1, every JSON-LD block parsing cleanly, ko/en hreflang pairs pointing at pages that actually exist, meta description length, and every internal link resolving to a real file. Each game also has its own Playwright test suite — when murder-grid's nine separate CSS files were merged into one bundle, the change only shipped after a full-page pixel comparison on both mobile and desktop showed zero-pixel difference and 163 tests passed.
We don't hide that AI coding tools are part of the workflow. What stays human is deciding what's correct, measuring it, and judging the result. At one point the scaffold script used to spin up new games was quietly inserting an ad tag into the game shell by mistake — an automation bug written by a person — and the thing that caught it was verify-site.sh running automatically right after deploy. The tag was pulled immediately and the scaffold itself was fixed. Tools can write the code; deciding what rules that code has to follow, and confirming it actually follows them, stays a human job.
About the advertising
We run Google AdSense to cover hosting costs, but where it runs and where it never runs follows a strict, specific line.
- Ads run only on playbuns.com's guide pages, making-of notes, and this about page — the pages that actually write out rules, strategy and design process.
- The game screens — all 14 game subdomains — carry no ads at all. A play surface has too little running text and is exactly the shape that gets flagged as ads on a content-poor page.
- No ad tags of any kind are loaded on the privacy policy, terms, or contact pages.
- We run no auto interstitials, no overlays covering a game canvas, and no manually placed ad slots — right now only Google Auto ads run, and only on the document pages; the play surface has no ad of any form.
- This is not a child-directed site. The target age is 14 and up, and there is no path — no sign-up, no contact form — where age is ever verified. Ad personalization defaults to denied in the EEA, UK and Switzerland unless a visitor consents otherwise.
- fandomdex has been excluded from advertising as of September 5, 2026. It is built around real people and existing IP, so we made the conservative call on ad policy there.
The full detail is in our privacy policy.
Operator
- Service: playbuns (playbuns.com)
- Operator: Heesoo Jin
- Country: Republic of Korea
- Contact: contact page · jiniancompany@gmail.com
Making-of notes
We write down what we actually got wrong. The full list lives at the making-of notes index.
- I shipped two games nobody could win — two 2048 variants built in a day, both impossible to clear, for completely different reasons.
- The stages that cleared themselves — how a no-input bot found 4 of 12 stages clearing with zero player action, and how vertical launch fixed it.
- A third of the rows couldn't be cleared — finding the «unrecoverable» rows the color-mixing rules created, and answering them with a bleach ability.
- Mornings were harder than the peak — how measurement uncovered a balance inversion where the phase meant to be easiest was, by the numbers, the hardest.
When a game ships or a rule changes, this page and the relevant game guide are updated together.
FAQ
There is no account — where does my progress live?
In your browser's localStorage only. It never reaches a server. There is no sign-up and no login. Switch devices or browsers and that device's history is gone, but in exchange there is no personal data for us to hold in the first place.
Why are there no ads on the game screens?
A game screen has very little running text, which is exactly the shape Google flags as ads on content-poor pages. So we pulled ad tags from all 14 game subdomains. Ads only run on playbuns.com's guide pages, making-of notes and this page, where the rules, strategy and design process are actually written out.
Why is the daily puzzle the same everywhere in the world?
Because it is derived deterministically from the date instead of calling Math.random. Anyone opening the game on the same calendar day gets exactly the same puzzle, regardless of region. Before release we verify a full year of puzzles to confirm there is not a single unsolvable day.
The rules guide and the actual game disagree — which one is right?
The game code is the source of truth. Guide pages are written by reading the code, and being human-written they can drift. When that has happened, we corrected both the guide and the in-game copy to match the code, and updated this page's revision date the same day.
Why does fandomdex carry no ads?
fandomdex is built around real people and existing IP, so as of September 5, 2026 we made the conservative call to exclude it from advertising entirely. It is the one property held to a different bar than the other 12 games.
How do I get in touch?
Use the contact page form or email jiniancompany@gmail.com. One operator reads and answers every message personally.