Skip to content

Releases: sacon1s/blizzard

Blizzard v1.0.1

Choose a tag to compare

@sacon1s sacon1s released this 01 Nov 20:59

Improvements

  • +17 Elo over 1.0 (400 games, 0.2 s per move); 97% against Stockfish 2800 and 65% against Stockfish 3190.
  • Smarter move ordering: the engine remembers which moves work when their squares are under attack, and tries moving a piece out of an attack by a weaker piece first.
  • More precise pruning: weak quiet moves are cut by the depth they would actually be searched to.
  • Search parameters retuned.

Downloads

File For
blizzard-1.0.1-windows.zip Windows 10/11, 64-bit
blizzard-1.0.1-universal.zip Linux; macOS and others with Node.js 18+

Play in the browser: sacon1s.github.io/blizzard.

Blizzard v1.0

Choose a tag to compare

@sacon1s sacon1s released this 25 Oct 16:26

Improvements

  • +65 Elo over 0.9 (200 games, 0.2 s per move); 95% against Stockfish 2800 and 63% against Stockfish 3190.
  • Stronger search: principal-variation lines are searched more carefully, checking moves are reduced too, move history looks four moves back, evaluations are corrected by the last two moves, deeper null-move pruning.
  • Faster network: the output layer works in integers, about a third faster with the same evaluations.
  • Network fine-tuned further on all training positions.
  • Website: a Review page for chess.com, lichess and Blizzard Chess games.
  • The built-in opening book is now off by default (option OwnBook), so the engine plays from your GUI's book.
  • Safer time management when the clock runs low: no losses on time even in long games without increment.
  • Blizzard is now under the MIT license.

Downloads

File For
blizzard-1.0-windows.zip Windows 10/11, 64-bit
blizzard-1.0-universal.zip Linux; macOS and others with Node.js 18+

Play in the browser: sacon1s.github.io/blizzard.

Blizzard v0.9

Choose a tag to compare

@sacon1s sacon1s released this 24 Oct 17:27

Improvements

  • New neural network trained on 48 million positions: more accurate evaluations, closer to Stockfish.
  • Better search: smarter move reductions.
  • +30 Elo over 0.8.
  • Move sounds, plus arrows and highlighted squares drawn on the board with the right mouse button.

Downloads

File For
blizzard-0.9-windows.zip Windows 10/11, 64-bit
blizzard-0.9-universal.zip Linux; macOS and others with Node.js 18+

Play in the browser: sacon1s.github.io/blizzard.

Blizzard v0.8

Choose a tag to compare

@sacon1s sacon1s released this 23 Oct 16:44
c88e992

A native engine that thinks on several cores. On two cores Blizzard 0.8 scored +43 =53 −4 against 0.7
(69.5%, +143 Elo, 95% interval +100 to +191) in 100 games at 0.2 s per move. Against Stockfish 19 at its
highest limited setting (3190) it scored +11 =14 −5 (60%).

What's new

Native programs for Windows and Linux. The downloadable engine is no longer JavaScript running in Node.js:
the C core is compiled straight to machine code, with AVX2 instructions for the network. On one core it is about
20% faster than the WebAssembly build, and the Windows download shrank from 34 MB to 2.9 MB (with both programs).
blizzard-old-cpu.exe is the same engine for processors without AVX2.

Several cores at once. The new Threads option runs the search on several cores (Lazy SMP: every thread
searches the same position and they share one transposition table). By default Blizzard takes half of the
cores, up to 8. On two cores it searches about 2.7 million positions per second instead of 1.4 million.

Evaluations on Stockfish's scale. On 1,411 positions compared with a deep Stockfish 16 analysis (a million
nodes each), Blizzard's evaluations pointed to the same side in 99% of positions, but its numbers ran
about 8% larger on a typical position. Shown evaluations are now scaled to match, in the UCI engine, in the
browser and in game review.

Website. The logo now slowly turns on the home page.

Strength

Match Games Score Elo difference (95% interval)
0.8 on 2 cores vs 0.7 100 69.5% +143 (+100 to +191)
0.8 on 1 core vs 0.7 29 63.8% +98 (+22 to +185)
0.8 on 2 cores vs Stockfish 2800 30 93% (0.7 scored 81%) +458 (+334 to +798)
0.8 on 2 cores vs Stockfish 3190 30 60% (0.7 scored 50%) +70 (−18 to +169)

Every match: 0.2 s per move. Stockfish 19 is the single-threaded browser build, limited with UCI_Elo;
Blizzard 0.8 played it on 2 cores. More cores make Blizzard stronger still, but this was measured on a
two-core machine only. Full-strength Stockfish, without a limit, is still far stronger. These are not
FIDE or CCRL ratings; they compare Blizzard versions under the same conditions.

Downloads

File For SHA-256
blizzard-0.8-windows.zip Windows 10/11, 64-bit, nothing to install 2c3263e0e0d0fd72d299b5eaa96fd74c9ee4bc6da6fc70d6ab31706fbcb1c877
blizzard-0.8-universal.zip Linux (ready program); macOS and others with Node.js 18+ be31ac8ddbc7b69318654445a5f6a1c4fb2a2cb809eb590ea9f0ebeeb6b1fe7a

Unpack, then add blizzard.exe (or blizzard-linux, or node blizzard-uci.js) to Arena, Cute Chess,
En Croissant or any other UCI program. Play it in the browser at
sacon1s.github.io/blizzard.

Upgrading from 0.7

  • Replace the old files. New options: Threads, Move Overhead, Clear Hash; Hash now defaults to 64 MB.
  • UseNNUE (the old hand-written evaluation) is only in the Node.js version, blizzard-uci.js.
  • The programs are not code-signed: if SmartScreen warns, click More info, then Run anyway.

data-1

data-1 Pre-release
Pre-release

Choose a tag to compare

@sacon1s sacon1s released this 24 Oct 10:20
Site: stronger blizzard on the first screen, move sounds, arrows and …

Blizzard v0.7

Choose a tag to compare

@sacon1s sacon1s released this 18 Oct 14:32
1ff3916

On a par with the strongest limited Stockfish. Against Stockfish 19 at its highest limited setting (3190)
Blizzard 0.7 scored +10 =20 −10 (50%, 0 Elo) in 40 games at 0.2 s per move. Against 0.6 it is +64 Elo:
+155 =174 −80 (59.2%) in 409 games, 95% interval +39 to +90.

What's new

The evaluation corrects itself by piece placement. Since 0.4 the search has remembered how far the static
evaluation was off in positions with the same pawn structure, and nudged later evaluations by that much. Now it
also remembers this for the placement of each side's pieces (knights, bishops, rooks and queens of one color),
and corrects the evaluation by both. This one change was worth +64 Elo.

Fast testing and tuning. Two copies of the engine can now play inside one process, about 3,600 short games an
hour on two cores, with an early stop as soon as the result is clear (tools/selfplay.js). Search parameters can
be changed without rebuilding the core, and tools/spsa.js tunes them automatically.

Tested and left out (600 games each): ProbCut (−16 Elo), double and negative singular extensions (−7),
pruning quiet moves with a bad history (+3), 16 automatically tuned search parameters (−8), and twice the weight
for the new correction (+4).

Strength

Match Games Score Elo difference (95% interval)
0.7 vs 0.6 409 59.2% +64 (+39 to +90)
0.7 vs Stockfish 2800 40 81% (0.6 scored 74%) +255 (+151 to +425)
0.7 vs Stockfish 3000 40 59% (0.6 scored 71%) +61 (−15 to +144)
0.7 vs Stockfish 3190 40 50% (0.6 scored 45%) 0 (−77 to +77)

Stockfish 19 here is the single-threaded browser build, limited with UCI_Elo, at 0.2 s per move. Full-strength
Stockfish, without a limit, is still far stronger. These are not FIDE or CCRL ratings; they compare Blizzard
versions under the same conditions.

Downloads

File For SHA-256
blizzard-0.7-windows.zip Windows 10/11, 64-bit, nothing to install fd6379aab75fc78279d9d2b0d592512e3619de753cd674717d65c8df23316b55
blizzard-0.7-universal.zip macOS, Linux and others, needs Node.js 18+ fa3def7de0ed1baf708a83f621538db936244a79067bac22ab929ad1ad90a77d

Unpack, then add blizzard.exe (or node blizzard-uci.js) to Arena, Cute Chess, En Croissant or any
other UCI program. Play it in the browser at sacon1s.github.io/blizzard.

Upgrading from 0.6

  • Replace the old files. UCI options are unchanged.
  • blizzard.exe is not code-signed: if SmartScreen warns, click More info, then Run anyway.

Blizzard v0.6

Choose a tag to compare

@sacon1s sacon1s released this 18 Oct 09:30
7b966c0

+182 Elo over 0.5, and ahead of Stockfish 3000. In a match against 0.5 Blizzard 0.6 scored +12 =13 −0
(74.0% in 25 games, 95% interval +102 to +285) at 0.2 s per move; the match stopped as soon as the result
was clear. Against Stockfish 19 limited to 3000 it now scores 71% (+158 Elo), and against 2800 74%.

What's new

A new search core in WebAssembly. The search now runs in WebAssembly compiled from C (core/blizzard.c,
about 50 KB, built into engine.js). It keeps a bitboard position with magic attack tables, generates only
legal moves, and runs the network on SIMD. It searches 1.2 to 1.7 million positions per second, three to four
times as many as the JavaScript search, both in the browser and in the UCI engine.

The same evaluation, only faster. Move generation matches the reference perft counts on six standard test
positions, and on 2,000 test positions the network gives exactly the same evaluation as the JavaScript code.
The JavaScript search stays as a fallback for browsers without WebAssembly and for the hand-written evaluation
(UseNNUE false).

Tested and left out. A transposition table with buckets of four entries lost 17 Elo in 286 games.

Strength

Match Games Score Elo difference (95% interval)
0.6 vs 0.5 25 74.0% +182 (+102 to +285)
0.6 vs Stockfish 2800 40 74% (0.5 scored 65%) +179 (+80 to +319)
0.6 vs Stockfish 3000 40 71% (0.5 scored 30%) +158 (+73 to +265)
0.6 vs Stockfish 3190 40 45% (not measured for 0.5) −35 (−126 to +52)

Stockfish 19 here is the single-threaded browser build, limited with UCI_Elo, at 0.2 s per move.
These are not FIDE or CCRL ratings; they compare Blizzard versions under the same conditions.

Downloads

File For SHA-256
blizzard-0.6-windows.zip Windows 10/11, 64-bit, nothing to install 46765bc9545f85cff6e0f3a0a6e9e551f34238964258b45f88fa4ddef3236805
blizzard-0.6-universal.zip macOS, Linux and others, needs Node.js 18+ 85a0adadfca9ac98b9b0e3406a9c3f8060264934f98acebed4129b2bf35228b0

Unpack, then add blizzard.exe (or node blizzard-uci.js) to Arena, Cute Chess, En Croissant or any
other UCI program. Play it in the browser at sacon1s.github.io/blizzard.

Upgrading from 0.5

  • Replace the old files. UCI options are unchanged.
  • UseNNUE false still switches to the hand-written evaluation; it runs on the JavaScript search.
  • blizzard.exe is not code-signed: if SmartScreen warns, click More info, then Run anyway.

Blizzard v0.5

Choose a tag to compare

@sacon1s sacon1s released this 18 Oct 02:47
709b33d

+53 Elo over 0.4. In a 100-game match Blizzard 0.5 scored +40 =35 −25 (57.5%), with a 95% interval
of −2 to +110 Elo, at 0.1 s per move with book openings, each opening played with both colors.
Against Stockfish 2800 it scores 65%, and against Stockfish 3000 30%.

What's new

Twice the neurons. The network is now 3072 → 2×256 → 1, with the same king-aware inputs as before.
Thanks to the WebAssembly SIMD code from 0.4, it is only about 5% slower than the 0.4 network.

More and better training data. The network was pretrained on 12.1 million positions with
Stockfish 19's static evaluation, then fine-tuned on 11.4 million positions scored by a short search
(1000 nodes each): 7.8 million by Stockfish 19 and 3.6 million new ones by the full Stockfish 16, whose
larger network judges positions more accurately. On 30,000 positions it never saw in training, its error
is 7% lower than that of the 0.4 network.

Tested and left out. ProbCut, history-based pruning, double and negative singular extensions, and
scaling the evaluation toward a draw as the fifty-move rule approaches lost 16 to 32 Elo against 0.4.
A second network layer (2×256 → 16 → 1) was 1.3% more accurate but 17% slower, and lost 83 Elo to the same
network without it. Another 3.9 million positions gave nothing measurable. The search is the same as in 0.4,
about 2% faster.

A new website. Black and white throughout. The first screen is a snowstorm with the word Blizzard; as you
scroll, the word scatters into snow and the snow gathers into the logo. Versions open to show what changed,
and comparisons have their own Compare tab. The play page is black and white too; only the move ratings
keep their colors.

Strength

Match Games Score Elo difference (95% interval)
0.5 vs 0.4 100 57.5% +53 (−2 to +110)
0.5 vs Stockfish 2800 40 65% (0.4 scored 61%) +108 (+17 to +216)
0.5 vs Stockfish 3000 40 30% (0.4 scored 26%) −147 (−250 to −64)

Stockfish 19 here is the single-threaded browser build, limited with UCI_Elo, at 0.2 s per move.
These are not FIDE or CCRL ratings; they compare Blizzard versions under the same conditions.

Downloads

File For SHA-256
blizzard-0.5-windows.zip Windows 10/11, 64-bit, nothing to install ad351a4ca34c8170819b67e45e12fd0f11fceccf5e1e196dd48ba309163106ca
blizzard-0.5-universal.zip macOS, Linux and others, needs Node.js 18+ f789c07281d8ddaaa5b7225f4859583145d896fcca4ca31c0d44ee47a23c3d2d

Unpack, then add blizzard.exe (or node blizzard-uci.js) to Arena, Cute Chess, En Croissant or any
other UCI program. Play it in the browser at sacon1s.github.io/blizzard.

Upgrading from 0.4

  • Replace the old files. UCI options are unchanged.
  • UseNNUE false still switches to the hand-written evaluation.
  • The engine still loads the 0.2, 0.3 and 0.4 networks.
  • blizzard.exe is not code-signed: if SmartScreen warns, click More info, then Run anyway.

Blizzard v0.4

Choose a tag to compare

@sacon1s sacon1s released this 17 Oct 21:47
460951c

+186 Elo over 0.3. In a 200-game match Blizzard 0.4 scored +117 =64 −19 (74.5%), with a 95% interval
of +146 to +231 Elo. Both engines had 0.2 s per move and played book openings, each opening with both colors.
Against Stockfish 2800 it now scores 61%, up from 47% for 0.3.

What's new

Twice the search-scored training data. The network keeps the same shape as in 0.3 (3072 → 2×128 → 1,
king-aware inputs), but it was fine-tuned on 6.6 million positions scored by a short Stockfish 19 search,
up from 3 million. Its error was checked on 30,000 positions it never saw in training.

A faster network. Accumulator updates and the output layer now run on WebAssembly SIMD, eight numbers
per instruction, both in the browser and in the UCI engine. That is 30–45% more positions per second,
with exactly the same evaluations as the plain JavaScript path, which is still there as a fallback.

Search.

  • Correction history: the static evaluation is adjusted by how far off it was in earlier positions with
    the same pawn structure.
  • Capture history orders captures by how well they worked before.
  • Continuation history now also looks at the move two plies back.
  • With a fixed time per move (go movetime), the engine uses the whole time.

On their own the search changes were worth about +60 Elo against 0.3; with the new network, +186.

Strength

Match Games Score Elo difference (95% interval)
0.4 vs 0.3 200 74.5% +186 (+146 to +231)
0.4 vs Stockfish 2800 40 61% (0.3 scored 47%) +80 (−17 to +190)
0.4 vs Stockfish 3000 40 26% (0.3 scored 20%) −179 (−290 to −95)

Stockfish 19 here is the single-threaded browser build, limited with UCI_Elo. These are not FIDE or
CCRL ratings; they compare Blizzard versions under the same conditions.

Downloads

File For SHA-256
blizzard-0.4-windows.zip Windows 10/11, 64-bit, nothing to install 004ad177d94243cda4171bf49caea5bd948dda34bc6d7a911e8b72e6edc59dcb
blizzard-0.4-universal.zip macOS, Linux and others, needs Node.js 18+ 119aaeee499cd0bf9e42b35e4023ae939300313c215ba61b0ad64bab5baab5dd

Unpack, then add blizzard.exe (or node blizzard-uci.js) to Arena, Cute Chess, En Croissant or any
other UCI program.

Upgrading from 0.3

  • Replace the old files. UCI options are unchanged.
  • UseNNUE false still switches to the hand-written evaluation.
  • The engine still loads 0.2 and 0.3 networks.
  • blizzard.exe is not code-signed: if SmartScreen warns, click More info, then Run anyway.

Blizzard v0.3

Choose a tag to compare

@sacon1s sacon1s released this 17 Oct 16:42
629bc8b
Add files via upload