Releases: fsmosca/chess-artist
Releases · fsmosca/chess-artist
v3.2
- In this release the exe file now supports the latest Stockfish 15 version.
- Readme from this release.
2022-04-24
0. chess_artist.py
The python source responsible for analyzing the games, test the engine with
test suites and annotating an epd file.
1. chess_artist.exe
This is a compiled file from the latest chess_artist.py. The exe conversion was
done by pyinstaller v5.0 at https://pyinstaller.org/en/stable/.
This exe is scanned by virustotal with the following result.
https://www.virustotal.com/gui/file/08df02af55bb7a5b81d27bf1eafc342e822a21bfdae2466676985ae10086ca47?nocache=1
According to virustotal, at present there are 16 security vendors out of 68
that consider chess_artist.exe to be malicious. This is because of the
technology used by pyinstaller to convert a python script to exe file.
Pyinstaller has nothing to do with those malicious entities detected by those
16 vendors.
2. analyze.bat
A windows batch file to analyze the games in pgn file. You can edit
(right click on the file and press edit) it to analyze other pgn file or change
the engine that analyzes the games.
3. sf15.exe
sf15.exe is stockfish 15 compiled for modern processor (POPCNT), you can
download it along with other compilations from
https://stockfishchess.org/download/. If you have the latest processor try
the AVX2 compile as it is faster than POPCNT.
The source can be found in github at
https://github.com/official-stockfish/Stockfish.
Development version can be downloaded from https://abrok.eu/stockfish/.
4. osloesports22.pgn
This file contains some games from Oslo Esports Cup 2022. You can run the
analyze.bat or double click it to analyze the games in this file. This file
was downloaded from https://theweekinchess.com/.
v2.12
v2.9
A. Bug fixes
- Wait for readyok from uci engine after sending isready.
- Fix parsing of results when sending eval command to Stockfish engine.
B. New Features
- Only supports python 3.
- Add --draw flag to only analyze games with draw results.
- Can analyze Fischer Random Chess games.
- Sample game header tags
[Variant "chess 960"]
, from weekinchess[Variant "fischerandom"]
, from winboard/xboard[Variant "Chess960"]
, from Lichess and Chess.com
- GUI that can view FRC (Fischer Random Chess) games
- Winboard/Xboard
- Lichess
- Sample game header tags
C. Improvements
- Modify writing of pgn output when there is threat move.
- Don't write empty comment as in
{ }
in pgn output comments. - Improve logging when calculating piece mobility.
- Improve comment before the first move in the analyzed game. Analysis time and move score are easier to interpret.
- Example
{Hash 256mb, Threads 2, analysis 15.0s per position, move score is in pawn unit, positive is good for white and negative is good for black} 1. Nb3 $6 {-0.16} (1. c3 {+0.80})
- Example
D. Files
- The chess-artist.exe file inside chess-artist_v2.9.zip is only tested under windows 10.
v1.0
Major changes since v1.0.rc5
- Add --min-score-stop-analysis option
- Add --max-score-stop-analysis option
Files
- chess-artist.exe
- stockfish 10 exe files under engine/stockfish/windows folder
- pgn files under pgn folder
- epd file under epd folder
- book.bin file (polyglot book format) under book folder
- run_chess_artist.bat, a batch file to run chess-artist to analyze games.
Note
- This is the last version that supports Python 2.7.
v1.0.rc5
Major changes since v1.0.rc2
- Add --playerandopp option
To analyze moves on games of Magnus including moves from his opponent:
chess-artist.exe --infile iommast19.pgn --outfile magnus.pgn --enginefile stockfish.exe --movetime 5000 --engineoptions "Hash value 128, Threads value 1" --playerandopp "Carlsen, Magnus"
- Don't add a NAG (?, ?!) etc to a game move if there is a book move and movetime is below 20s
- Add --loss flag
To analyze moves on lost games of Movsesian, Sergei including moves from his opponent:
chess-artist.exe --infile iommast19.pgn --outfile ms_loses.pgn --enginefile stockfish.exe --engineoptions "Hash value 128, Threads value 2" --movetime 5000 --playerandopp "Movsesian, Sergei" --loss
v1.0.rc2
A. Major changes since v0.2.0
- am opcode in epd suite is now considered for engine epd test
- Add polyglot book support
- Add move comment "with a better passed pawn"
- Add comment on king safety
- Add depth option for epd analysis
- Refactor sending of commands and receiving of replies from engine
- Remove support for cerebellum book type
- Remove rating difference calculation
- Add synonyms to excellent and better for comment
- Always set odd number of moves in a variation
- Add feature to create puzzles or test positions
- Add good mobility detection for position comment
- Detect move that sacrifices material
- Replace move error with blunder/bad counts
- Don't write $0 or empty NAG in output file
- Add --wordycomment flag
- Add --moveend option
- Add --player option
- Add --color option
B. File
- chess-artist.zip
- Contains chess-artist.exe
C. Help
usage: Chess Artist v1.0.rc2 [-h] -i INFILE -o OUTFILE -e ENGINEFILE
[-n ENGINEOPTIONS] [--bookfile BOOKFILE] --eval
{static,search} [--movetime MOVETIME]
[--depth DEPTH] [--movestart MOVESTART]
[--moveend MOVEEND] [--log] --job
{analyze,test,createpuzzle} [--wordycomment]
[--player PLAYER] [--color COLOR]
Read pgn and analyze games in it or analyze epd file or test engines with epd
test suites
optional arguments:
-h, --help show this help message and exit
-i INFILE, --infile INFILE
input pgn or EPD filename
-o OUTFILE, --outfile OUTFILE
output filename
-e ENGINEFILE, --enginefile ENGINEFILE
input engine filename
-n ENGINEOPTIONS, --engineoptions ENGINEOPTIONS
input engine options, like threads, hash and others
example: --engineoptions "Hash value 128, Threads
value 1"
--bookfile BOOKFILE input book filename
--eval {static,search}
eval can be static or search. static uses static
evaluation of Stockfish
--movetime MOVETIME input analysis time per position in ms, (default=1000)
--depth DEPTH input analysis depth, (default=0)
--movestart MOVESTART
input move number to start the analysis, this is used
when analyzing games, (default=8)
--moveend MOVEEND input move number to end the analysis, this is used
when analyzing games, (default=1000)
--log Save log to chess_artist_log.txt
--job {analyze,test,createpuzzle}
type of jobs to execute, can be analyze or test or
createpuzzle. To create puzzle: --infile games.pgn
--job createpuzzle, To analyze pgn: --infile games.pgn
--job analyze, To annotate epd: --infile positions.epd
--job analyze, To test engine with epd: --infile
test.epd --job test
--wordycomment There are more words in the move comments such as
better is, planning, excellent is, Cool is and others.
--player PLAYER enter player name to analyze, (default=None)
--color COLOR enter color of player to analyze, (default=None)
Chess Artist v1.0.rc2
D. Readme
https://github.com/fsmosca/chess-artist/blob/master/README.md
Release 0.2.0
- Tune annotation symbols based on analysis time.
- Reduce position complexity number when center is closed.
- Remove annotator name after a variation line, the annotator tag in the tag section of the game is enough to determine the annotator.
- Calculate threat move when position is not easy, this threat move is added as move comment in the notation.
Release 0.1.0
When analyzing a game use Stockfish and/or Brainfish engine. When using cerebellum book use the Brainfish engine together with cerebellum_light.bin. For testing engine with epd test suite, use any uci engines that supports movetime command. Have a look on the readme file for other info.
The file chess-artist-exe.zip contains an executable file for windows, readme and a sample batch file.