Releases: mvanthoor/rustic
Rustic Alpha 3.0.5
Rustic Alpha 3.0.5
Version 3.0.5 is a maintenance release. Its main 'feature' is having
dropped separate material counting, by moving the material values directly
into the PSQT's. This is done so that these PSQT's can be used as a basis
for the upcoming Rustic 4. That way, it can be determined how much playing
playing strength is added in Rustic 4 by tapering and tuning these tables.
There is no functional difference between this version and the previous ones,
so the existing binaries of Alpha 3.0.0 can be used.
- Unified the material values with the PSQT values the same way Rustic
4-beta does. This does not impact playing strength of Alpha 3. - Update 'clap' to 4.4.18
- Update 'crossbeam-channel' to 0.5.11
- Remove 'crossbeam-utils' (automatically pulled in)
Rustic Alpha 3.0.4 | 2.3 | 1.4
Version 3.0.4
Version 2.3
Version 1.4
These releases contain maintenance updates to make the Alpha 1, Alpha 2 and Alpha 3 series compile cleanly with Rust Edition 2021 and the currently latest versions of the libraries it depends on. There is no functional difference to the previous versions. For normal playing and testing, the existing binaries can be used.
- Upgrade 'clap' to 4.4.11
- Upgrade 'crossbeam-channel' to 0.5.10
- Upgrade 'crossbeam-utils' to 0.8.18
Rustic Alpha 3.0.3 | 2.2 | 1.3
Version 3.0.3
Version 2.2
Version 1.3
These releases contain maintenance updates to make the Alpha 1, Alpha 2 and Alpha 3 series compile cleanly with Rust Edition 2021 and the currently latest versions of the libraries it depends on. There is no functional difference to the previous versions. For normal playing and testing, the existing binaries can be used.
- Update About banner layout
- Upgrade 'rand_core' to 0.6.4
- Upgrade 'clap' to 4.1.14
- Upgrade 'crossbeam-channel' to 0.5.7
- Upgrade 'crossbeam-utils' to 0.8.15
Rustic Alpha 3.0.2 | 2.1 | 1.2
Version 3.0.2
Version 2.1
Version 1.2
These releases contain maintenance updates to make the Alpha 1, Alpha 2 and Alpha 3 series compile cleanly with Rust Edition 2021 and the currently latest versions of the libraries it depends on. There is no functional difference to the previous versions. For normal playing and testing, the existing binaries can be used.
- Upgrade to Rust Edition 2021
- Upgrade 'rand' to 0.8.5
- Upgrade 'rand_core' to 0.6.3 (security fix)
- Upgrade 'rand_chacha' to 0.3.1
- Upgrade 'if_chain' to 1.0.2
- Upgrade 'clap' to 3.2.8
- Upgrade 'crossbeam-channel' to 0.5.5
- Upgrade 'crossbeam-utils' to 0.8.10 (security fix)
Rustic Alpha 3.0.1
- Fixed a variable having the wrong type. This caused the "extra" module failing to compile.
NB: For normal chess engine usage nothing has changed. A default compile does not include the "extra" module. Therefore this release doesn't include any new binaries. You can just keep using the binaries for Alpha 3.0.0.
Rustic Alpha 3.0.0
This release adds two new features: Killer Moves and Principal Variation Search. In self-play against the previous version Alpha 2, this new version is about +80 Elo (+/- 20 Elo) stronger. Since Alpha 3.0.0, a pre-compiled binary for MacOS (Intel) is also available.
- New features:
- Killer Moves
- Principal Variation Search (PVS)
- Changes:
- Switch versioning scheme to SemVer. Versions are going to be in the
form "a.b.c" from now on, with the following meaning:- Increment a: A new strength-gaining feature was added.
- Increment b: A bug was fixed that gained strength.
- Increment c: A feature was added or a bug was fixed that did not
gain stregnth. It is not necessary to test this version for a rating
change.
- Switch versioning scheme to SemVer. Versions are going to be in the
- Misc:
- Updated crossbeam-channel to version 0.5.1
- A Makefile was added, so Rustic can be built using "GNU Make". When
typing "make" (or "gmake" in MacOS), the Makefile will build all Rustic
versions for the platform it's being compiled on. - Re-add showing the size of the TT and number of threads in About.
- Fairly large update of the book on https://rustic-chess.org/.
Rustic Alpha 2
This release adds a transposition table to the engine. The rating increase as compared to Alpha 1 is about 165 Elo when running in the same gauntlet tournament. In self-play the difference is around 200 Elo.
- New Features:
- Transposition table for search and perft.
- Ordering on transposition table move.
- Set TT size through --hash option or UCI parameter.
- Improvement:
- Move check extension higher up in the search routine, to prevent quiescence search while in check.
- Changes:
- seldepth: report max ply reached during the search, instead of selective depth at last completed iteration.
- Count all nodes visited, instead of only nodes which generated moves.
- Change random number generator from SmallRng to ChaChaRng for reproducible behavior between platforms/OS's/architectures/versions.
- Cleanup
- Change Root PV handling to remove redundant code.
- Miscellaneous small renames, refactors, and cleanups.
- Add rand_chacha and remove SmallRng number generators.
- Update Rand library to 0.8.3.
Rustic Alpha 1.1
This is a bugfix release. Alpha 1 lost all of its games on time forfeit when playing in MoveTime mode (for example, when playing seconds/move).
- Bugfixes:
- Do not exceed alotted time in MoveTime mode.
Rustic Alpha 1
This is the very first public release of Rustic. The chess engine is still very basic at this point, but fully functional for playing and analyzing games in a UCI interface. Below are the features included in this version.
The engine has been tested on the CCRL Blitz list: It's strength is 1695 Elo.
Engine:
Bitboard board representation
Magic bitboard move generator
UCI-protocol
Search
Alpha/Beta search
Quiescence search
MVV-LVA move ordering
Check extension
Evaluation
Material counting
Piece-Square Tables