A "Guess Who?" party game built around Dota 2 heroes. Share a seed with a friend, get the same board, hide your hero β and find theirs first.
Hidden Pool is a two-player deduction game in the spirit of the classic Guess Who? board game, using the hero pool of Dota 2 (126 portraits, up to Kez, Muerta and Ringmaster).
There is no server and no matchmaking: both players generate an identical board from a shared seed and play over voice chat (Discord, a stream, a call). Each player secretly holds one hero, and you take turns asking yes/no questions β "Is your hero melee?", "Does it have a beard?", "Is it an Intelligence hero?" β crossing out cards until someone names the opponent's hero.
- Both players press Create Game.
- One player shares the seed and cards count shown at the top of the board; the other enters the same values and presses Generate. Both boards are now identical.
- Your secret hero is shown in the top slot. Reroll it with β», lock it with π, or pick one yourself with a right click.
- Take turns asking yes/no questions and mark the cards that no longer fit.
- The first player to correctly name the opponent's hero wins. Press Clear for a rematch on the same board or Generate for a new one.
| Input | Action |
|---|---|
| Left click | Cycle the card mark: β crossed out β β maybe β none |
| Middle click | Clear the card mark |
| Right click | Make this card your secret hero (unless locked) |
| Esc | Pause |
- π² Seed-based boards β the same seed and card count always produce the same set of heroes, so no networking is needed.
- π¦Έ 126 Dota 2 heroes with configurable board size (up to the full pool).
- βοΈ Three-state marking β crossed out, "maybe", or clear β with snappy DOTween feedback.
- π Secret hero lock so a stray right click never swaps your pick.
- π English and Russian localization.
- π Sound and music volume, fullscreen/windowed toggle, saved between sessions.
- π± Safe-area aware UI for phones with notches.
| Area | Used |
|---|---|
| Engine | Unity 2022.3.62f3 (LTS), uGUI + TextMeshPro |
| Reactive / async | UniRx, UniTask |
| Animation | DOTween |
| Editor tooling | Asset Usage Detector, Build Report Tool |
| Localization | Simple Localization (CSV, EN/RU) |
| Analytics | GameAnalytics SDK |
| UI art | GUI PRO Kit β Fantasy RPG |
Assets/
βββ Data/ # ScriptableObject instances: AppData, MatchData, PacksData, UserData
βββ Scenes/Main.unity # The only scene
βββ Scripts/
β βββ Components/ # CardBase β a single card and its marks
β βββ Data/ # ScriptableObject definitions (MatchData holds a reactive game state)
β βββ Systems/ # CardsGenerateSystem, SaveData, Settings, SoundDesigner, hotkeys
β βββ UI/Menues/ # InterfaceManager + BaseMenu-derived screens
β βββ Localization/ # Localization bootstrap
βββ Resources/Localization/ # CSV string tables
βββ Sprites/HeroesPortraits/ # Hero portraits used for cards
βββ WebGLTemplates/Responsive/
The game flow is driven by a ReactiveProperty<MatchData.State> (MainMenu β InitializeGame β Game β EndGame); systems and menus subscribe to it instead of calling each other directly. Screens derive from BaseMenu and are switched through InterfaceManager.
- Install Unity 2022.3.62f3 via Unity Hub (add Android / WebGL modules if you need those builds).
- Clone the repository:
git clone https://github.com/BasteArima/HiddenPool.git
- Open the folder in Unity Hub and load
Assets/Scenes/Main.unity. - Press Play.
Android release builds are signed with a keystore that is not part of the repository. Put your own keystore at
Keys/HiddenPool.keystore(theKeys/folder is git-ignored) or pick another one in Player Settings β Publishing Settings.
| Platform | Notes |
|---|---|
| Windows | Standalone build, fullscreen/windowed toggle |
| Android | Package com.KatharsisGames.HiddenPools |
| WebGL | Uses the bundled responsive WebGL template |
The source code of Hidden Pool is licensed under the GNU General Public License v3.0.
Third-party content keeps its own license and is not covered by the GPL: Dota 2 hero portraits (Valve Corporation), GUI PRO Kit β Fantasy RPG, Simple Localization and other Asset Store packages, UniRx / UniTask (MIT), DOTween, the Comfortaa font (SIL OFL) and the music track.
- Author: Mr.Robot (Midaser) Β· KatharsisGames
- Music: LIVING PUFF
- Privacy Policy
Hidden Pool is a fan-made project and is not affiliated with or endorsed by Valve Corporation. Dota 2 and all hero names and portraits are trademarks and property of Valve Corporation.



