A poker roguelike in the browser — a single-file static game with no build step and no runtime dependencies. Inspired by Balatro, with its own art, data, and identity.
Play: open index.html, or serve the folder with any static server.
| System | Count | State |
|---|---|---|
| Jokers | 150 | all have working effects |
| Vouchers | 32 | 20 sold and working, 12 data-only |
| Tags | 24 | 22 working |
| Boss Blinds | 28 | 11 with working mechanics |
| Decks | 15 | all modifiers working |
| Stakes | 8 | 7 with working modifiers |
| Challenges | 20 | system complete, rules are Deckstorm's own |
| Spectral cards | 18 | 14 functional |
| Tarot / Planet | 22 / 12 | complete |
| Seals | 4 | complete |
| Editions | 4 | includes Negative |
| Packs | 15 | complete |
Also implemented: Showdown blinds every 8th Ante, Endless Mode (Ante 9 to a practical cap of 39), and the full left-to-right Joker activation order with held-card retriggers resolved last.
This repository does not claim to be a complete Balatro clone:
- Challenges are Deckstorm's own designs. Balatro's 20 challenge rules could not be verified (the wikis block automated access), so they were not copied and were not guessed at either. The system is data-driven and can be swapped.
- Endless Mode uses a 1.6x per-Ante target multiplier, which is our approximation rather than a verified figure. Antes 1-8 use verified values.
- 12 vouchers, 17 boss blinds, and 4 spectral cards are present as data but
their mechanics are not built yet. Unimplemented vouchers are marked
belumAktifand are deliberately not sold in the shop, so a player can never buy something that does nothing. - Joker art is procedurally generated pixel art. Balatro's jokers are hand-drawn character art; ours are unique and consistent but simpler.
- Card slots in the shop currently sell Jokers only. Tarot and Planet cards appear as packs and rewards, not as shop slots.
Every card, Joker, voucher, boss, tag, pack, seal, and edition is original
pixel art generated by the scripts in tools/, one PNG at a time. Nothing is
taken from any other source.
python3 tools/generate-cards.py --sheet # 52 cards + back
python3 tools/generate-items.py joker --sheet
python3 tools/wajah.py # 150 jester faces
python3 tools/emblems.pynode test.js # data and icons
node test-efek.js # scoring engine, 103 cases
npm test # also runs test-ui.js, which needs a browser (jsdom fails)index.html shell; scripts load in dependency order
js/ game.js, cards.js, jokers.js, efek.js (scoring), consumables.js
js/data/ jokers, decks, stakes, challenges
css/ theme
assets/img/ generated pixel art
tools/ art generators and source data
docs/ preview sheets
MIT — see LICENSE.