Releases: NotKaede-11/Coco-Engine
Release list
v1.5.0-pre.1
Important
This is a development pre-release published for testing and feedback. It is not the next stable Coco release, and search defaults or packaged builds may change before that release.
What's included
- Reworked board-state, hashing, move-generation, NNUE accumulator, transposition-table, and search correctness foundations.
- Expanded UCI support including MultiPV, Ponder, complete search limits, WDL reporting, and tablebase telemetry.
- Optional BMI2/PEXT sliding attacks with a tested magic-bitboard fallback.
- Deterministic datagen, reproducible artifact manifests, checksums, and broader correctness/portability testing.
- Platform-specific Windows, Linux, Linux ARM64, Intel macOS, and Apple Silicon builds.
The current NNUE is embedded in every engine binary. This pre-release does not use a built-in opening book.
Which binary should I download?
| File | Platform | Best For |
|---|---|---|
coco-chess-windows-x86-64-bmi2.exe |
Windows | Intel Haswell+ / AMD Zen 3+ (recommended for most x86 users) |
coco-chess-windows-x86-64-avx2.exe |
Windows | AMD Zen 1/2 / older Intel (if bmi2 version is slow) |
coco-chess-windows-x86-64-avx512.exe |
Windows | AVX-512-capable Intel/AMD CPUs |
coco-chess-windows-x86-64-popcnt.exe |
Windows | Older x86-64 CPUs with SSE4.1 + POPCNT |
coco-chess-linux-x86-64-bmi2 |
Linux | Intel Haswell+ / AMD Zen 3+ |
coco-chess-linux-x86-64-avx2 |
Linux | AMD Zen 1/2 / older Intel |
coco-chess-linux-x86-64-avx512 |
Linux | AVX-512-capable Intel/AMD CPUs |
coco-chess-linux-x86-64-popcnt |
Linux | Older x86-64 CPUs with SSE4.1 + POPCNT |
coco-chess-linux-arm64 |
Linux | ARMv8 systems, including Raspberry Pi 5 and ARM servers |
coco-chess-linux-arm64-dotprod |
Linux | ARMv8.2 systems with dot-product support |
coco-chess-macos-apple-silicon |
macOS | Apple M1, M2, M3, M4 |
coco-chess-macos-x86-64-avx2 |
macOS | Intel-based Mac |
coco-chess-macos-x86-64-popcnt |
macOS | Older Intel Mac without AVX2 |
Note: The NNUE weights are embedded directly in each binary — no separate
.nnuefile is needed.
Pure calculation: Coco has no built-in opening book and no release artifact contains one. GUI-provided books are external to the engine.
BMI2 note: On AMD Zen 1 and Zen 2 CPUs, BMI2/PEXT is emulated in microcode (slow). Use the
avx2binary instead.
AVX-512 note: Use the AVX-512 binary only when your CPU explicitly supports AVX-512F, BW, DQ, and VL. Otherwise use BMI2, AVX2, or POPCNT.
Setup
- Download the binary for your OS and CPU.
- Place it wherever you store engine executables.
- Add it to your GUI (Arena, BanksiaGUI, Cute Chess, etc.) and set the binary path.
Please report crashes, illegal moves, time losses, malformed PVs, or unexpected platform problems through GitHub Issues.
See CHANGELOG.md for the complete provisional change list.
v1.4.0
Coco Chess Engine Release v1.4.0
Please ensure the engine binary and the neural network weights file (coco.nnue) are placed in the same folder.
See the CHANGELOG.md for full change lists.
v1.3.0 - Lazy SMP Multithreading & Search Upgrades
This release introduces a major suite of search, threading, and tactical upgrades to Coco:
- Lazy SMP Multithreading: Support for shared-memory search up to 1024 threads using a lockless Transposition Table (TT) (configured via
ThreadsUCI option). - Contextual Continuation History (CMH + FMH): Context-aware quiet move ordering using Countermove and Follow-up histories.
- Capture History Heuristics: Dedicated sorting table for captures within MVV-LVA slots.
- On-Demand Enemy Threats: Penalizes moves entering defended enemy squares using dynamic threats bitboards.
- Hardware Optimizations: Fully vectorized neural network evaluation using AVX2 intrinsics and support for expanded (512/1024) L1 layer sizes.
v1.1.1 - Singular Extensions Completion & UCI Name Update
Coco v1.1.1
A focused follow-up to v1.1.0 that completes the singular extensions feature and updates the engine identity.
Highlights
- Singular Extensions (double-extension): The singular verification search now grants a +2 ply extension when a TT move is strongly singular (verified well below the singular bound) on non-PV nodes. Cumulative double extensions are capped at 6 to prevent runaway depth inflation.
- UCI Engine Name: The engine now identifies itself as Coco v1.1.1 in UCI handshake.
Assets
coco-chess.exe— statically-linked Windows build (no external DLLs required).coco.nnue— the paired neural network weight file.
Requirements
- A CPU supporting AVX2 (built with
-march=native). - Windows (x64).
v1.1.0 - Search & Pruning Upgrades
Coco v1.1.0
A batch of search-selectivity, pruning, and tactical-vision upgrades. Every change was validated through the SPRT testing funnel before merge.
Highlights
- Static Exchange Evaluation (SEE): A fast swap-list SEE now prunes losing captures in Quiescence Search before they touch the recursive tree.
- Safe QS Futility Pruning: Quiet captures in Quiescence are pruned after the best 2 captures using a wide 350 cp margin (promotions excluded).
- Internal Iterative Reductions (IIR): PV nodes with a total TT cache miss at depth >= 3 get depth reduced by 1, cutting redundant branch exploration for big branch reduction.
- Improving Heuristic: Reverse Futility Pruning margins and Late Move Reductions now scale dynamically based on whether the static eval improved over the last 2 plies.
- Dynamic Stockfish-Style Time Management: Best-move stability tracking, falling-evaluation extensions, and a single-legal-move (easy move) early cutoff now steer the clock budget.
- Singular Extensions (partial): A conservative, non-recursive singular verification search around the TT move, with a multicut short-circuit when the exclude-search still fails high over beta.
- Slider X-Ray King Masking:
checkers/pinned/pin_raysare precalculated once per node and used to filter illegal moves beforemake_move, reducing search nodes while keeping peak NPS.
Performance
- Bulk perft counting (depth-1 fast path) for faster perft.
- Build now uses
-march=native -fltofor full host-ISA utilization and link-time optimization, with AVX2 intrinsics included in the NNUE header.
Assets
coco-chess.exe— statically-linked Windows build (no external DLLs required).coco.nnue— the paired neural network weight file. Place it next to the executable (or in the working directory); the engine falls back between the two automatically.
Requirements
- A CPU supporting AVX2 (built with
-march=native). - Windows (x64).
v1.0.1 - Heuristic Config & Fallback Loaders
v1.0.1 Release Notes
This release introduces dynamic configurations, safety checks, and compilation improvements for the Coco Chess Engine.
Key Changes
- Dynamic UCI Options: Added
Move Overhead(clock latency padding) andEvalFile(dynamic runtime neural network weight loader) options. - Directory Fallback Loader: Added automatic runtime fallback search to locate
coco.nnuenext to the running executable if it is not found in the active working directory. - Fail-Fast Startup: The engine will now exit immediately with code 1 if the network fails to load, preventing silent zero-eval regressions.
- Static Compilation: The engine binaries are now statically compiled, removing external DLL dependencies (
libgcc_s_seh-1.dll, etc.).
Attachments
coco-chess.exe: The statically compiled Windows engine binary.coco.nnue: The baseline NNUE weights file.
Note: Please keep coco-chess.exe and coco.nnue in the same folder to ensure the engine loads the network successfully.
v1.0.0 - Baseline Release
Release Archive
This folder contains all the official, production-ready builds of the Coco Chess Engine. Each release is a snapshot of the engine as it evolves, including the necessary binaries and weight files required to run that specific version.
What you will find in each release:
- Engine Binaries: The compiled
coco-chess.exeready for use in any UCI-compatible GUI. - Neural Network Weights: The specific
.nnueweights file optimized for this version (coco.nnue). Please ensure the binary and the weights are kept together in the same directory to avoid evaluation errors. - Configuration Snapshot: A brief summary of the search heuristics and tuning parameters (like
RFP_MarginorLMR_Constant_Scaled) used for that build. - Version History: A change log detailing the improvements, bug fixes, or training updates implemented since the last version.
Note on Usage:
Since Coco is an AI-developed project that is continuously being trained and refined, older versions may behave differently than newer ones. I recommend always using the latest release for the most stable and strongest playing experience.