Tento projekt se zaměřuje na optimalizaci hry Krycí jména. Využívá různé algoritmy s cílem rychle a efektivně uhodnout nebo předat nápovědu.
Demo: https://codenames.krychlic.com
Využívá faktu, že obě strany znají seřazený slovník českých slov. S pomocí toho mapuje libovolnou konfiguraci Grid s 9 či méně agenty na právě jednu kombinaci word a hint, čímž je schopen vyhrát libovolnou pozici v jednom tahu.
-
Instalace závislostí
pnpm install
-
Vygenerování lookup table
Nejprve vytvořte složkupublic/algorithms/dictionary, poté spusťte:node util.js
-
Spuštění aplikace
pnpm run dev
Chcete přidat vlastní algoritmus?
- Implementujte abstraktní třídu
Algorithmvsrc/lib/algorithms/algorithm.ts - Přidejte instanci algoritmu do mapy
algorithmsvsrc/App.tsx - Otevřete pull request s popisem změn
Grid: Herní pole 5×5, strukturované jako pole 5 řádků boolean hodnotWord: Spisovné české slovo nebo ustálené slovní spojení (bez zkratek a cizích slov)Hint: Číselná nápověda (0-9 nebo ∞)
This project focuses on optimizing the game Codenames. It uses various algorithms to quickly and efficiently guess or give clues.
Demo: https://codenames.krychlic.com
Uses the fact that both sides know a sorted dictionary of Czech words. It maps any Grid configuration with 9 or fewer agents to exactly one word and hint combination, allowing it to win any position in a single turn.
-
Install dependencies
pnpm install
-
Generate lookup table
First create thepublic/algorithms/dictionaryfolder, then run:node util.js
-
Start the application
pnpm run dev
Want to add your own algorithm?
- Implement the abstract
Algorithmclass insrc/lib/algorithms/algorithm.ts - Add your algorithm instance to the
algorithmsmap insrc/App.tsx - Open a pull request describing your changes
Grid: 5×5 game board, structured as an array of 5 rows of boolean valuesWord: Standard Czech word or established phrase (no abbreviations or foreign words)Hint: Numerical hint (0-9 or ∞)
By K0stka, 2025