link to OliThink's page on Chess-Progamming-Wiki
Special thanks to Jim Ablett and Dann Corbit for their support and contribution!
link to OliThink's page on GitHub (5.11.9 sources and executables, can also be downloaded here)
OliThink 5.11.9
New! OliThink talks UCI now! (updated 27. Aug. 2025, UCI protocol, slim version)
Minimalistic chess engine OliThink without any use of external libraries. Engine runs without any chess information. No tablebases, no neural net (NNUE) etc.
ELO about 3000. 128 MB fix Hashsize.
5.10.5:
Windows x64
Mac OSX x64
Linux x64
Source Code
Translation of OliThink 5 C to java.
5.9.9 is available with an own GUI as standalone application.
Play OliThink5 Java online (Demo)
Start with "java -jar OliThinkGUI.jar" or just doubleclick if your OS is correctly configured.
OliThink 5.3.3
Please note that versions 5.4.0 to 5.4.3 and versions before 5.3.3 contain a destabilizing bug.
Check this branch for the fix of either version.
OliThink 4 or before:
(4.1.3 has been fixed for 64bit compile, 3.0.7 for a 3-fold repetition bug, 2.2.3 for a protocol bug)
New Move Generator OliPerft (Pre OliThink 5)
New Features:
- Magic Move Bitboard (Edit: Actually it's Kindergarten Bitboard, an independent invention.)
- No piece list, no Array[64] board, just plain bitboard
- Simple, easy and short code
- One symmetric "doMove" function for doMove and undoMove
- Includes "divide" option for debugging
- Counts 100 Millions of Moves/second (on a 64bit System 200 Millions, on a modern 64bit CPU 700 Millions (EDIT: Now 1600 Millions))
Usage: oliperft <depth> <fen>
#oliperft 6 "r3k2r/p1ppqpb1/bn2pnp1/3PN3/1p2P3/2N2Q1p/PPPBBPPP/R3K2R w KQkq - 0 1"
for "divide" just add "-" before the <depth>
#oliperft -6 "r3k2r/p1ppqpb1/bn2pnp1/3PN3/1p2P3/2N2Q1p/PPPBBPPP/R3K2R w KQkq - 0 1"
Important Links for OliThink: