Releases: pkrisz99/Renegade
Releases · pkrisz99/Renegade
Renegade 0.5.1
Version 0.5.1 (December 17, 2022)
- Fixed crashing when opponent makes a move that resets the fifty-move counter right before reaching 50
- Fixed fast legal move existance function to not be blind to some checkmates
Score of Renegade 0.5.1 vs Renegade 0.4.0: 133 - 45 - 22 [0.720]
... Renegade 0.5.1 playing White: 66 - 23 - 11 [0.715] 100
... Renegade 0.5.1 playing Black: 67 - 22 - 11 [0.725] 100
... White vs Black: 88 - 90 - 22 [0.495] 200
Elo difference: 164.1 +/- 50.3, LOS: 100.0 %, DrawRatio: 11.0 %
Renegade 0.5.0
Version 0.5.0 (December 17, 2022)
- Faster move generation (50k -> 320k nps, perft: 0.95m -> 4.4m)
- Lazy move legality checking
- Bulk bitwise attack map generation
- Usage of lzcnt instructions
- Early stop for legal move existance checking if the king has an adjacent non-attacked square
- Increased default hash size again: 16 -> 64 MB
- Some parts of the code had been cleaned up
Renegade 0.4.0
Version 0.4.0 (December 9, 2022)
- Proper move ordering instead of interior node evaluation
- Principal variation search
- Killer move heuristic (2 moves / ply)
- Full PV output (instead of the first move only)
- Support for more UCI search parameters and limits (such as nodes, depth and movetime)
- More granular time management
- Storing node type in transposition table
- Implemented 'hard' time limits
- Temporarily removed quiescence search
- No longer performs an illegal move after detecting a draw
- Minor changes:
- kiwipete position shortcut
- 'debug sizeof' command
Score of Renegade dev vs Renegade 0.3.0: 228 - 20 - 12 [0.900]
... Renegade dev playing White: 111 - 12 - 7 [0.881] 130
... Renegade dev playing Black: 117 - 8 - 5 [0.919] 130
... White vs Black: 119 - 129 - 12 [0.481] 260
Elo difference: 381.7 +/- 68.1, LOS: 100.0 %, DrawRatio: 4.6 %
Renegade 0.3.0
Version 0.3.0 (November 19, 2022)
- Limited support for opening books
- Three-fold repetition recognition
- Fixed flipped piece-square tables (whoops)
- Option for enabling quiescence search (disabled by default)
- Popcnt for accelerating move generation
- Simplified sliding piece attack map generation
- Configurable engine settings: Hash, QSearch, OwnBook
- New debug commands (debug draw, debug eval, debug settings, debug hashalloc, debug pasthashes)
- Shorthand for disabling the opening book: nb (same as 'setoption name OwnBook value False')
Score of Renegade dev vs Renegade 0.2.0: 20 - 3 - 7 [0.783]
Elo difference: 223.3 +/- 134.2, LOS: 100.0 %, DrawRatio: 23.3 %
Renegade 0.2.0
Version 0.2.0 (November 11, 2022)
- Project renamed to Renegade
- New function for checking the existence of a legal move (instead of generating all of them and checking if size > 0), resulting in a huge nps increase)
- Added transposition tables with a max size of 125000
- Implemented Zobrist hashing
- More efficient move generation, bitboards used in more places
- Simplified sliding piece move generation
- Memory reservation for lists
- Fixed using empty() instead of clear()
- Displaying hashfull and the first move of pv for output
- Perft speed: ~800k, nps: ~150k
Renegade (Damnchess++) 0.1.0
Version 0.1.0 (November 6, 2022)
- The first mostly stable iteration of the C++ implementation
- First version playing on Lichess, still named Damnchess and without a version number
- Bulk of it was written on October 30, 2022
- Basic alpha-beta pruning (5 ply deep in average)
- Time management to avoid running out of time
- Should pass all perft tests
- Perft speed: ~300k, nps: ~25k
Python versions (October 2022)
- Beginning of the journey: October 7, 2022
- Based on python-chess, doing about 10-11k nps