A Pokémon-style web game prototype where every monster is a piece of Brazilian culture and folklore. GBA-style pixel art (240×160, hand-drawn sprite grids), a 4-channel chiptune engine (2 pulse + triangle + noise, Web Audio), and zero dependencies — plain HTML/CSS/JS.
Open index.html in a browser (or serve the folder with any static server):
python3 -m http.server 8000
# → http://localhost:8000Controls: Arrow keys / WASD to walk · Z / Enter = A button ·
X / Esc = B button. The on-screen pad also works.
- Choose a starter — SACI (Folclore), CAPIVARA (Bicho) or BRIGADEIRO (Comida)
- Explore Vale Verde — overworld with houses, pond, festival arena, NPCs
- Wild encounters — walk in the tall grass; weaken wild Brazmon and catch them with a BRAZBOLA
- Trainer battles — four trainers (with Pokémon-style line-of-sight ambushes), ending with FESTEIRO GARANTIDO and his BOI-BUMBÁ at the festival arena
| Brazmon | Type | Inspiration |
|---|---|---|
| SACI | Folclore | Saci-Pererê |
| CAPIVARA | Bicho | capivara |
| BRIGADEIRO | Comida | brigadeiro |
| ONÇA | Bicho | onça-pintada |
| BOTO | Folclore | boto cor-de-rosa |
| PÃO DE QUEIJO | Comida | pão de queijo |
| BERIMBAU | Ginga | capoeira |
| VIOLA | Ritmo | viola caipira |
| GOLAÇO | Ginga | futebol |
| FUNKEIRA | Ritmo | funk |
| ACARAJÉ | Comida | acarajé |
| BOI-BUMBÁ | Festa | Festival de Parintins |
Type wheel: BICHO → COMIDA → FESTA → GINGA → RITMO → FOLCLORE → BICHO (each beats the next).
js/data.js— pixel art as character grids, monsters/moves, the world map, NPCs, and the music scoresjs/audio.js— chiptune sequencer + sound effectsjs/engine.js— sprite compiler, input, text/dialog, game loopjs/overworld.js— tiles/camera, grid movement, encounters, trainer LOSjs/battle.js— turn-based battles, catching, switching, exp/levelsjs/main.js— title, starter selection, state wiringtools/validate.js— data sanity checker (node tools/validate.js)
Built as a prototype/demo — have fun! 🎉