Shinigami V.1.18.2 – Gen 2 Edition (Latest)
A professional chess engine with full tree parallelization, advanced NNUE, LLM-powered move explanations, self-adapting features, and a brutal/funny trash talk system.
- Genetic Feature Engineering: DEAP-powered auto-tuning for piece values and PSTs mid-game.
- Dynamic Opening Book Pruning: Opening book now self-prunes weak lines and adapts to new opponents.
- Enhanced Evaluation:
- King safety, pawn structure, mobility, outpost, bishop pair, rook/queen evaluation refined.
- Full UCI Protocol: Full UCI compliance.
- Logging: Cleaner, more informative logs for games, search, and training.
- Opponent Learning: Engine adapts to your style in real time.
- Debug: Fixed a Lot of Bugs and made the code more cleaner and organized.
- Full Tree Parallelization: Multicore search for epic depth and speed.
- Advanced NNUE (HalfKAv2): Modern neural evaluation (user-trainable).
- CNN Policy Network: Move ordering powered by a convolutional neural net.
- Syzygy Tablebase Support: Endgame perfection (≤7 pieces).
- Genetic Feature Engineering: DEAP-powered auto-tuning for piece values and tables.
- Self-Play & Training: Generates and learns from games, retrains NNUE and policy networks.
- Dynamic Opening Book: Adapts with self-play and opponent moves, prunes weak lines.
- Opponent Learning: Adapts to your style, learning openings and move qualities.
- Puzzle Generator: Built-in tactical puzzles and board tasks.
- GUI & Console: Tkinter GUI or classic terminal mode.
- UCI Protocol: Plug into chess GUIs (Arena, CuteChess, etc.).
- Trash Talk Engine: Witty, customizable, optionally brutal commentary.
- LLM Explanations: In-character move explanations via OpenAI API (optional).
- Extreme Difficulty Modes: From beginner to "The Big Bang" (with cosmic warnings...).
Clone the Repository:
git clone https://github.com/Tonmoy-KS/Shinigami-Chess-Engine
cd Shinigami-Chess-EngineInstall Dependencies:
pip install -r requirements.txtRequires Python 3.8+.
- NNUE Weights: Download
nnue_weights.bin(HalfKAv2 compatible) and place in project root or specify with--nnue-file. - Syzygy Tablebases: Download and place .rtb files in
./tablebasesor specify via--syzygy-path. - Polyglot Opening Book: Place
.binfile in project root or specify via command-line.
Console Mode:
python3 Main_Code_1GUI Mode:
python3 Main_Code_1 --guiSelf-Play & Training:
python3 Main_Code_1 --self-play 100Custom Paths & Cores:
python3 Main_Code_1 --cores 4 --nnue-file /path/to/my_nnue.bin --syzygy-path /path/to/my_tablebasesUCI Protocol (for chess GUIs):
python3 Main_Code_1 --uciGame statistics, self-play, and learning data are logged to shinigami_engine.log.
- Uses OpenAI API (set
OPENAI_API_KEYenvironment variable). - Optional, can be enabled/disabled at runtime.
- Provides witty, in-character commentary on engine moves.
- easy: Beginner
- medium: Club-level
- hard: Strong player
- god-of-death: near Grandmaster
- puzzle: Tactical puzzle mode
- masochist: Insane mode
- dialing-satan-s-number: Meme mode
- the-big-bang: God mode
-
What makes Shinigami different from other chess engines?
A: Genetic feature engineering, trash talk, and LLM-powered move explanations made it a great UX software and different from other Great engines that are just Silent Calculators. -
How do I enable LLM Explanations?
A: Set your OpenAI API key and OpenAI model and enable at startup,we also have a LLM model but it's currently not available. -
How do I enable/disable The Trash Talk Dictionary?
A: Enabled by default. You can customize or disable in the source code. -
What are “The Big Bang” and “Dialing Satan’s Number” modes?
A: Extreme/joke modes. “The Big Bang” is blocked for safety; “Dialing Satan’s Number” is a meme. just to test the limits of Computation. -
Does Shinigami learn/adapt openings from games?
A: Yes, via dynamic pruning and opponent learning. -
How do I train NNUE and Policy Network?
A: Use self-play, or use your own datasets via Training a PyTorch model. so official Model currently. -
Is Shinigami UCI-compliant for GUIs?
A: Yes. -
Can I contribute neural weights, feature sets, or puzzles?
A: contributions welcome. -
What about system requirements for extreme modes?
A: Use first five modes are Official modes that are Stable; the other modes are just experiments. -
Can I customize the playing style (aggressive, positional)?
A: Not currently. planned for future updates.
License: MIT
Credit: Tonmoy-KS
Do not claim as your own; fork, mod, and contribute instead!
- Inskitz [https://github.com/InSkitz]
- Dakter-Tech [https://github.com/dakther-tech]
- Shanjid-KS [https://github.com/shanjid-KS]
Pull requests, feature ideas, and code reviews are welcome! For major contributions, open an issue first.
GitHub: Tonmoy-KS
Happy reaping in 64 squares! — bye