Tournament-grade Reversi with AI-powered opponents
50-100x faster โข 11 AI players โข 644 opening sequences โข Modern web interface
pip install reversi42
reversi42Open http://localhost:8000 in your browser and start playing!
- Bitboard architecture - 50-100x faster than traditional implementations
- Advanced AI algorithms - Alpha-beta pruning, transposition tables, parallel search
- Configurable depth - From beginner (3 ply) to expert (16 ply)
- Temperature-based variety - Probabilistic move selection for more diverse gameplay
- ELO ratings: 1250-1880 (beginner to expert)
- Unique strategies: Adaptive, defensive, aggressive, tactical, chaotic
- YAML-based configuration - Create custom AI players without coding
- Move variety - Lower-level players use temperature-based selection for more varied gameplay
- 644 tournament sequences - Derived from professional play
- Trie-based lookup - Instant move suggestions
- Multiple evaluation modes - Balanced and tactical openings
- Real-time gameplay - FastAPI + WebSocket for instant updates
- Game management - Save/load games in XOT format
- Live analysis - Move evaluation and position visualization
- Automated competitions - Benchmark AI players
- Statistical analysis - Comprehensive performance metrics
- Custom configurations - Flexible tournament setups
| Player | ELO | Strategy | Depth | Style |
|---|---|---|---|---|
| DIVZERO.EXE | 1880 | Adaptive | 8/12/16 | Maximum strength, parallel processing |
| The Oracle | 1850 | Endgame Focus | 7/9/14 | Endgame specialist, parity evaluation |
| Apocalyptron | 1850 | Balanced | Adaptive | Strong balanced AI |
| Fortress Eternal | 1800 | Defensive | 10 | Defensive specialist |
| The Executioner | 1770 | Aggressive | 9 | Aggressive, mobility-focused |
| The Strangler | 1750 | Mobility Control | 11 | Restricts opponent mobility |
| Corner Reaper | 1720 | Positional | 8 | Corner control specialist |
| Glitch Lord | 1500ยฑ200 | Chaotic | Variable | Unpredictable, randomized |
| Lightning Strike | 1400 | Speed | 4 | Fast-playing |
| Blitz Demon | 1350 | Rapid Fire | 5 | Ultra-fast |
| Zen Master | 1250 | Balanced | 3 | Beginner-friendly |
๐ View detailed player profiles โ
pip install reversi42git clone https://github.com/lookee/Reversi42.git
cd Reversi42
pip install -e .Requirements: Python 3.9+
Create your own AI opponents using YAML configuration filesโno programming required!
cp config/players/00_AI_CONFIG_TEMPLATE.yaml config/players/enabled/my_ai.yaml
# Edit the configuration file
reversi42 # Your player is automatically discovered!Move Variety (Temperature): Control how deterministic your AI plays:
temperature: 0.0- Always plays the best move (deterministic)temperature: 0.1-0.3- Mostly best moves, occasional varietytemperature: 0.4-0.5- High variety for more unpredictable gameplay- Auto-calculated based on depth (lower depth = higher temperature)
- Speed: 50-100x faster than array-based implementations
- Search Depth: 4-16 ply (configurable)
- Parallel Processing: Multi-core support
- Memory: Optimized data structures
- User Guide - Getting started, rules, strategies
- API Reference - Complete API documentation
- Architecture - System design and technical details
- Tutorials - Create custom AI players
- Tournament Guide - Tournament system usage
# Run test suite
./scripts/run_tests.sh
# With coverage
pytest --cov=src tests/572+ tests covering unit, integration, and characterization scenarios.
- Apocalyptron AI Engine: 800+ tests (evaluation, ordering, pruning, cache, search, observers)
- Board Module: 34 tests (BoardModel, BoardControl, ViewFactory)
- Players Module: 60+ tests (PlayerFactory, PlayerHuman, PlayerApocalyptron, config system)
- Core Module: 34 tests (config, game_config)
- Infrastructure: 10 tests (persistence/game_io)
- Integration Tests: 50+ tests (board integrity, player isolation, book instant mode)
- Bitboard Tests: Comprehensive move generation tests
- WebGUI Tests: Backend server, WebSocket observer, E2E tests
- ~17,000 lines of Python code
- 572+ tests with comprehensive coverage (target: 80%+)
- 44 test files organized by module
- 40+ documentation files
- 11 AI players pre-configured
- 644 opening sequences from professional play
GNU General Public License v3.0 or later
See LICENSE for details.
Luca Amore
๐ www.lucaamore.com
๐ง luca.amore@gmail.com
- Donato Barnaba and Federazione Italiana Gioco Othello (FNGO) - Reversi expertise
- PointyStone3 Project - Opening book contributions
Reversi42 - Professional-grade Reversi for players and researchers
GitHub โข
PyPI โข
Issues
