Piškvorky (také známé jako Gomoku) je klasická desková hra pro dva hráče, kteří se střídají v umisťování svých symbolů (X a O) na herní desku. Cílem hry je vytvořit nepřerušenou řadu pěti vlastních symbolů horizontálně, vertikálně nebo diagonálně.
Tato implementace nabízí moderní webovou verzi hry s čistým uživatelským rozhraním a možností hrát proti počítači nebo proti jinému hráči.
- Hrací pole 20x20 - dostatečně velké pro strategickou hru
- 5 v řadě pro výhru - klasická pravidla Gomoku
- Dva herní režimy:
- 👥 Hráč vs. Hráč - pro hru s přítelem na stejném zařízení
- 🤖 Hráč vs. Počítač - pro samostatnou hru proti AI
- Inteligentní AI - počítačový protivník používá strategii, ne jen náhodné tahy
- Náhodný začínající hráč - pro spravedlivou hru
- Vizuální prvky:
- Zvýraznění posledního tahu
- Zvýraznění vítězné sekvence
- Zobrazení souřadnic pro lepší orientaci
- Zvýraznění řádků a sloupců při najetí myší
- Označení nedávných tahů pro sledování průběhu hry
Projekt je vytvořen pomocí moderních webových technologií:
- Next.js - React framework pro produkční aplikace
- TypeScript - Typově bezpečný JavaScript
- Tailwind CSS - Utility-first CSS framework
- shadcn/ui - Komponenty pro moderní UI
- Node.js 18.0.0 nebo novější
- npm nebo yarn
-
Naklonujte repozitář:
git clone https://github.com/chr1stiani/piskvorky.git cd piskvorky -
Nainstalujte závislosti:
npm install # nebo yarn install -
Spusťte vývojový server:
npm run dev # nebo yarn dev -
Otevřete http://localhost:3000 ve vašem prohlížeči.
- Na úvodní obrazovce vyberte herní režim (Hráč vs. Hráč nebo Hráč vs. Počítač)
- Zadejte jména hráčů (v režimu PvP)
- Klikněte na "Start Game" pro zahájení hry
- Hráči se střídají v umisťování svých symbolů na herní desku kliknutím na prázdné pole
- První hráč, který vytvoří nepřerušenou řadu pěti svých symbolů, vyhrává
- Po skončení hry můžete:
- Kliknout na "Play Again" pro novou hru se stejnými hráči
- Kliknout na "Back to Setup" pro změnu nastavení hry
Počítačový protivník používá několik strategií:
- Detekce vítězných tahů - AI rozpozná, když může vyhrát v jednom tahu
- Blokování hrozeb - AI blokuje potenciální vítězné tahy protihráče
- Strategické umisťování - AI se snaží vytvářet řady a blokovat řady protihráče
- Minimax algoritmus - pro pokročilé plánování tahů (v těžší obtížnosti)
Příspěvky jsou vítány! Pokud chcete přispět k projektu:
- Forkněte repozitář
- Vytvořte větev pro vaši funkci (
git checkout -b feature/amazing-feature) - Commitněte vaše změny (
git commit -m 'Add some amazing feature') - Pushněte do větve (
git push origin feature/amazing-feature) - Otevřete Pull Request
- Inspirováno klasickou hrou Piškvorky/Gomoku
- Vytvořeno jako součást výukového projektu
Vytvořeno s ❤️ v České republice