Skip to content

Releases: fsmosca/chess-artist

v3.2

24 Apr 02:41
Compare
Choose a tag to compare
  • 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

12 Feb 14:42
0267756
Compare
Choose a tag to compare

Enhancements

  • Add enginename option
    Examples:
    --enginename "Stockfish 11 @i7-2600K"
    --enginename "Lc0 v0.23.2 w591000 10x128 blas"
  • Don't restart engine after every position is analyzed when creating puzzles from pgn and when solving positions from test suite.

v2.9

11 Jan 08:39
34f1c27
Compare
Choose a tag to compare

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

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})
      

D. Files

  • The chess-artist.exe file inside chess-artist_v2.9.zip is only tested under windows 10.

v1.0

19 Oct 00:52
9d307a5
Compare
Choose a tag to compare

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

17 Oct 09:43
f5f8a2f
Compare
Choose a tag to compare

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

16 Oct 11:45
dbab1ea
Compare
Choose a tag to compare

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

27 Nov 13:13
Compare
Choose a tag to compare
  • 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

15 Oct 12:57
Compare
Choose a tag to compare

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.