Chess Game Analyzer

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

Vinvin
Posts: 5228
Joined: Thu Mar 09, 2006 9:40 am
Full name: Vincent Lejeune

Re: Chess Game Analyzer

Post by Vinvin »

Ferdy wrote: Could you translate this.

Code: Select all

A Model game for White and Black
"Un jeu exemplaire de la part des blancs et des noirs."
(May be add a "." at the end of 2 previous sentences too)
Vinvin
Posts: 5228
Joined: Thu Mar 09, 2006 9:40 am
Full name: Vincent Lejeune

Re: Chess Game Analyzer, v39.6.beta

Post by Vinvin »

swami wrote:
Ferdy wrote:
Vinvin wrote:If possible, some stats at the end of the games would be interesting :
numbers of Inaccuracies, Mistakes and Blunders.

Lichess style : https://en.lichess.org/H84tcoxf/black

Lance5500
9 Inaccuracies
0 Mistakes
2 Blunders
42 Average centipawn loss

auditor2016
4 Inaccuracies
2 Mistakes
1 Blunders
28 Average centipawn loss
How many centipawn loss is a move considered to be an Inaccuracy, or Mistake or a Blunder?
In my experience, an inacccuracy is about 0.30 - 0.59 centipawn loss.
Mistake 0.60 - 0.99 centipawn loss
Blunder: 1.00 and above centipawn loss
Lichess has very big values (0.50 , 1.00 and 3.00) probably because it's mostly fast games and weak level of players.
I like values from Swaminathan. May be even a bit lower :
Inaccuracies : 0.25 to 0.49 CPL
Mistakes : 0.50 to 0.99 CPL
Blunders : 1.00 CPL and above.

In French :
Imprécisions
Erreurs
Gaffes
Carlos777
Posts: 1731
Joined: Sun Dec 13, 2009 6:09 pm

Re: Chess Game Analyzer

Post by Carlos777 »

Ferdy wrote:
PeterO wrote:Great tool!

My native language is german. Is it possible to change the comments?
As far as I have seen there are just a few sentences. So I would change: "Better is" to "Besser ist:".

Peter
Try to translate the following comment the ones inside the {}.

Code: Select all

BAD_COMMENT = {'Not good is',
               'But not',
               'Bad is',
               'Inferior is',
               'Not reliable is',
               'Incorrect is',
               'Unsatisfactory is'
               }

Code: Select all

REASON_COMMENT = {'due to',
                  'in view of',
                  'thanks to',
                  'considering',
                  'on the grounds of',
                  'because of',
                  'for the reason that',
                  }

Code: Select all

GOOD_COMMENT = {1: 'A nice try could be',
                2: 'Better is',
                3: 'More accurate is',
                4: 'Superior is',
                5: 'Excellent is'
                }

Code: Select all

ALTERNATIVE_COMMENT = {'Also playable is',
               'Another interesting line is',
               'One that deserves attention is',
               'A good alternative is',
               'Also sufficient is',
               'Worthy of consideration is',
               'Also practical is',
               'A fine line worth of consideration is',
               'Also capable is',
               'Also promising is',
               'Another modest line is',
               'Another possiblity is',
               'A good one too is',
               'Not to be underestimated is'
               }
Then I will just add an option

Code: Select all

--lang german
Default is english when --lang is not defined.
In spanish it would be:

Code:
BAD_COMMENT = {'No es bueno',
'Pero no',
'Es malo',
'Es inferior',
'No es confiable',
'Es incorrecto',
'Es insatisfactorio'
}

Code:
REASON_COMMENT = {'Debido a',
'en vista de',
'gracias a',
'considerando',
'en base a',
'por',
'por la razón que',
}

Code:
GOOD_COMMENT = {1: 'Un buen intento sería',
2: 'Es mejor',
3: 'Es más acertado',
4: 'Es superior',
5: 'Es excelente'
}

Code:
ALTERNATIVE_COMMENT = {'También es jugable',
'Otra linea interesante es',
'Merece atención',
'Una buena alternativa es',
'También es suficiente',
'Digna de consideración es',
'Es práctico también',
'Una buena linea digna de consideración es',
'También es posible',
'También es prometedora',
'Otra linea modesta es',
'Otra posibilidad es',
'Otra buena jugada es',
'No hay que subestimar'
}

Code: Select all

White is threatening 
Black is threatening 
A Model game for White and Black 
A Model game for White 
A Model game for Black
Las blancas amenazan
Las negras amenazan
Un juego modelo para ambos
Un juego modelo para las blancas
Un juego modelo para las negras
Ferdy
Posts: 4833
Joined: Sun Aug 10, 2008 3:15 pm
Location: Philippines

Re: Chess Game Analyzer, v39.6.beta

Post by Ferdy »

Vinvin wrote:
swami wrote:
Ferdy wrote:
Vinvin wrote:If possible, some stats at the end of the games would be interesting :
numbers of Inaccuracies, Mistakes and Blunders.

Lichess style : https://en.lichess.org/H84tcoxf/black

Lance5500
9 Inaccuracies
0 Mistakes
2 Blunders
42 Average centipawn loss

auditor2016
4 Inaccuracies
2 Mistakes
1 Blunders
28 Average centipawn loss
How many centipawn loss is a move considered to be an Inaccuracy, or Mistake or a Blunder?
In my experience, an inacccuracy is about 0.30 - 0.59 centipawn loss.
Mistake 0.60 - 0.99 centipawn loss
Blunder: 1.00 and above centipawn loss
Lichess has very big values (0.50 , 1.00 and 3.00) probably because it's mostly fast games and weak level of players.
I like values from Swaminathan. May be even a bit lower :
Inaccuracies : 0.25 to 0.49 CPL
Mistakes : 0.50 to 0.99 CPL
Blunders : 1.00 CPL and above.

In French :
Imprécisions
Erreurs
Gaffes
Here is an anticle about blunder.
http://preview.tinyurl.com/blunderChess

I believe this is not only a minimum of 1 pawn. Currrently the game analyzer considers blunder as >= 300 CPL or 3 PL.

On the other hand, I am trying to resolve an issue of the impact of a CPL. If the position is already >= 6 pawns and the player move is only worth 3 pawns, a position with 3 pawns is still winning, there the CPL is 6-3 = 3*100 = 300. Does the move deserves to get a blunder symbol '??' ?
Ferdy
Posts: 4833
Joined: Sun Aug 10, 2008 3:15 pm
Location: Philippines

Re: Chess Game Analyzer

Post by Ferdy »

Carlos777 wrote:
Ferdy wrote:
PeterO wrote:Great tool!

My native language is german. Is it possible to change the comments?
As far as I have seen there are just a few sentences. So I would change: "Better is" to "Besser ist:".

Peter
Try to translate the following comment the ones inside the {}.

Code: Select all

BAD_COMMENT = {'Not good is',
               'But not',
               'Bad is',
               'Inferior is',
               'Not reliable is',
               'Incorrect is',
               'Unsatisfactory is'
               }

Code: Select all

REASON_COMMENT = {'due to',
                  'in view of',
                  'thanks to',
                  'considering',
                  'on the grounds of',
                  'because of',
                  'for the reason that',
                  }

Code: Select all

GOOD_COMMENT = {1: 'A nice try could be',
                2: 'Better is',
                3: 'More accurate is',
                4: 'Superior is',
                5: 'Excellent is'
                }

Code: Select all

ALTERNATIVE_COMMENT = {'Also playable is',
               'Another interesting line is',
               'One that deserves attention is',
               'A good alternative is',
               'Also sufficient is',
               'Worthy of consideration is',
               'Also practical is',
               'A fine line worth of consideration is',
               'Also capable is',
               'Also promising is',
               'Another modest line is',
               'Another possiblity is',
               'A good one too is',
               'Not to be underestimated is'
               }
Then I will just add an option

Code: Select all

--lang german
Default is english when --lang is not defined.
In spanish it would be:

Code:
BAD_COMMENT = {'No es bueno',
'Pero no',
'Es malo',
'Es inferior',
'No es confiable',
'Es incorrecto',
'Es insatisfactorio'
}

Code:
REASON_COMMENT = {'Debido a',
'en vista de',
'gracias a',
'considerando',
'en base a',
'por',
'por la razón que',
}

Code:
GOOD_COMMENT = {1: 'Un buen intento sería',
2: 'Es mejor',
3: 'Es más acertado',
4: 'Es superior',
5: 'Es excelente'
}

Code:
ALTERNATIVE_COMMENT = {'También es jugable',
'Otra linea interesante es',
'Merece atención',
'Una buena alternativa es',
'También es suficiente',
'Digna de consideración es',
'Es práctico también',
'Una buena linea digna de consideración es',
'También es posible',
'También es prometedora',
'Otra linea modesta es',
'Otra posibilidad es',
'Otra buena jugada es',
'No hay que subestimar'
}

Code: Select all

White is threatening 
Black is threatening 
A Model game for White and Black 
A Model game for White 
A Model game for Black
Las blancas amenazan
Las negras amenazan
Un juego modelo para ambos
Un juego modelo para las blancas
Un juego modelo para las negras
I am stopping adding feature of language translation. Perhaps this will be added in the later version.

I am trying to focus on finding bugs and improving code readability. If things goes well this tool will be integrated in a very nice GUI Lucas chess.

https://www-lucaschess.rhcloud.com/
Vinvin
Posts: 5228
Joined: Thu Mar 09, 2006 9:40 am
Full name: Vincent Lejeune

Re: Chess Game Analyzer, v39.6.beta

Post by Vinvin »

Ferdy wrote:
Vinvin wrote:
swami wrote:
Ferdy wrote:
Vinvin wrote:If possible, some stats at the end of the games would be interesting :
numbers of Inaccuracies, Mistakes and Blunders.

Lichess style : https://en.lichess.org/H84tcoxf/black

Lance5500
9 Inaccuracies
0 Mistakes
2 Blunders
42 Average centipawn loss

auditor2016
4 Inaccuracies
2 Mistakes
1 Blunders
28 Average centipawn loss
How many centipawn loss is a move considered to be an Inaccuracy, or Mistake or a Blunder?
In my experience, an inacccuracy is about 0.30 - 0.59 centipawn loss.
Mistake 0.60 - 0.99 centipawn loss
Blunder: 1.00 and above centipawn loss
Lichess has very big values (0.50 , 1.00 and 3.00) probably because it's mostly fast games and weak level of players.
I like values from Swaminathan. May be even a bit lower :
Inaccuracies : 0.25 to 0.49 CPL
Mistakes : 0.50 to 0.99 CPL
Blunders : 1.00 CPL and above.

In French :
Imprécisions
Erreurs
Gaffes
Here is an anticle about blunder.
http://preview.tinyurl.com/blunderChess

I believe this is not only a minimum of 1 pawn. Currrently the game analyzer considers blunder as >= 300 CPL or 3 PL.

On the other hand, I am trying to resolve an issue of the impact of a CPL. If the position is already >= 6 pawns and the player move is only worth 3 pawns, a position with 3 pawns is still winning, there the CPL is 6-3 = 3*100 = 300. Does the move deserves to get a blunder symbol '??' ?
Yes, I think Lichess solved this issue by not counting CPL for average when eval is already > some value (300 seems good). But I think the move deserve a "?" nevertheless.
Vinvin
Posts: 5228
Joined: Thu Mar 09, 2006 9:40 am
Full name: Vincent Lejeune

Re: Chess Game Analyzer, v39.6.beta

Post by Vinvin »

Vinvin wrote:
Ferdy wrote:
Vinvin wrote:
swami wrote:
Ferdy wrote:
Vinvin wrote:If possible, some stats at the end of the games would be interesting :
numbers of Inaccuracies, Mistakes and Blunders.

Lichess style : https://en.lichess.org/H84tcoxf/black

Lance5500
9 Inaccuracies
0 Mistakes
2 Blunders
42 Average centipawn loss

auditor2016
4 Inaccuracies
2 Mistakes
1 Blunders
28 Average centipawn loss
How many centipawn loss is a move considered to be an Inaccuracy, or Mistake or a Blunder?
In my experience, an inacccuracy is about 0.30 - 0.59 centipawn loss.
Mistake 0.60 - 0.99 centipawn loss
Blunder: 1.00 and above centipawn loss
Lichess has very big values (0.50 , 1.00 and 3.00) probably because it's mostly fast games and weak level of players.
I like values from Swaminathan. May be even a bit lower :
Inaccuracies : 0.25 to 0.49 CPL
Mistakes : 0.50 to 0.99 CPL
Blunders : 1.00 CPL and above.

In French :
Imprécisions
Erreurs
Gaffes
Here is an anticle about blunder.
http://preview.tinyurl.com/blunderChess

I believe this is not only a minimum of 1 pawn. Currrently the game analyzer considers blunder as >= 300 CPL or 3 PL.

On the other hand, I am trying to resolve an issue of the impact of a CPL. If the position is already >= 6 pawns and the player move is only worth 3 pawns, a position with 3 pawns is still winning, there the CPL is 6-3 = 3*100 = 300. Does the move deserves to get a blunder symbol '??' ?
Yes, I think Lichess solved this issue by not counting CPL for average when eval is already > some value (300 seems good). But I think the move deserve a "?" nevertheless.
+ some ideas here : http://www.chessanalysis.ee/a%20study%2 ... rength.pdf
The largest mistake possible is 2.00. In the case of large mistakes, it doesn't matter how
large it exactly was, but the fact that a mistake was committed. An example can be instanced
where player A in a game makes 5 mistakes 2.01; 2.68; 1.94, 2.08 and 2.44, but player B
only one mistake withe the value of 13.34. If I didn't use the boundary value, we would
arrive at the conclusion that both players had played at a similar level of accuracy, which
would be obviously misleading. 2.00 is chosen arbitrarily and is not actually more valid than
any other similar value.
Ferdy
Posts: 4833
Joined: Sun Aug 10, 2008 3:15 pm
Location: Philippines

Re: Chess Game Analyzer, v39.6.beta

Post by Ferdy »

Vinvin wrote:
Ferdy wrote:
Vinvin wrote:
swami wrote:
Ferdy wrote:
Vinvin wrote:If possible, some stats at the end of the games would be interesting :
numbers of Inaccuracies, Mistakes and Blunders.

Lichess style : https://en.lichess.org/H84tcoxf/black

Lance5500
9 Inaccuracies
0 Mistakes
2 Blunders
42 Average centipawn loss

auditor2016
4 Inaccuracies
2 Mistakes
1 Blunders
28 Average centipawn loss
How many centipawn loss is a move considered to be an Inaccuracy, or Mistake or a Blunder?
In my experience, an inacccuracy is about 0.30 - 0.59 centipawn loss.
Mistake 0.60 - 0.99 centipawn loss
Blunder: 1.00 and above centipawn loss
Lichess has very big values (0.50 , 1.00 and 3.00) probably because it's mostly fast games and weak level of players.
I like values from Swaminathan. May be even a bit lower :
Inaccuracies : 0.25 to 0.49 CPL
Mistakes : 0.50 to 0.99 CPL
Blunders : 1.00 CPL and above.

In French :
Imprécisions
Erreurs
Gaffes
Here is an anticle about blunder.
http://preview.tinyurl.com/blunderChess

I believe this is not only a minimum of 1 pawn. Currrently the game analyzer considers blunder as >= 300 CPL or 3 PL.

On the other hand, I am trying to resolve an issue of the impact of a CPL. If the position is already >= 6 pawns and the player move is only worth 3 pawns, a position with 3 pawns is still winning, there the CPL is 6-3 = 3*100 = 300. Does the move deserves to get a blunder symbol '??' ?
Yes, I think Lichess solved this issue by not counting CPL for average when eval is already > some value (300 seems good). But I think the move deserve a "?" nevertheless.
Currently in game analyzer when a player move is a blunder by +3 or more pawns and yet the player's position score after the move is still >= 1.5 pawn, I add a move annotation symbol ?! to its move.
retep1
Posts: 44
Joined: Sun Aug 07, 2016 5:24 pm

Re: Chess Game Analyzer

Post by retep1 »

I get allways these following two games (with no correct header) at the beginning of the outputfile.
The third game (and the following games) have a correct header.
What may Im doing wrong? Plz help.
Thx for your great tool!

[Event "?"]
[Site "?"]
[Date "????.??.??"]
[Round "?"]
[White "?"]
[Black "?"]
[Result "1-0"]
[Annotator "Brainfish 020816 64 POPCNT (20.0s/pos, thread=1, blunder_margin=15cp)"]

{A Model game for White and Black} 1-0
1-0

[Event "?"]
[Site "?"]
[Date "????.??.??"]
[Round "?"]
[White "?"]
[Black "?"]
[Result "1-0"]
[Annotator "Brainfish 020816 64 POPCNT (20.0s/pos, thread=1, blunder_margin=15cp)"]

1. d4 {Cerebellum recommends: e4} 1...g6 {Cerebellum recommends: Nf6} 2. c4 {Cerebellum recommends: e4} 2...Bg7 {Cerebellum recommends: Nf6} 3. Nc3 {Cerebellum recommends: e4} 3...Nf6 {Move from cerebellum} 4. e4 {Move from cerebellum} 4...d6 {Move from cerebellum} 5. Nf3 {Move from cerebellum} 5...O-O {Move from cerebellum} 6. Be2 {Move from cerebellum} 6...e5 {Move from cerebellum} 7. O-O {Move from cerebellum} 7...Nc6 {Cerebellum recommends: exd4} 8. d5 {Move from cerebellum} 8...Ne7 {Move from cerebellum} 9. Nd2 {Cerebellum recommends: Ne1} 9...Nd7 {Cerebellum recommends: a5} 10. b4 {Cerebellum recommends: Nb3} 10...f5 {Move from cerebellum} 11. f3 {Move from cerebellum} 11...f4 {Cerebellum recommends: c6} 12. Ba3 {Cerebellum recommends: c5}
12... Rf7 $0 $14 {+0.98/23} ({More accurate is} 12...a5 13.bxa5 Rxa5 14.Bb2 b6 15.Nb3 Ra8 $14 {+0.44/23})
({ A fine line worth of consideration is } 12...b6 13.Nb3 g5 14.c5 h5 15.Rc1 Nf6 $14 {+0.91/23})
({White is threatening} 12... -- 13.c5 Rf6 14.Nc4 g5 15.Qb3 a6 16.Na5 $14 {+1.04/22}) 13. c5



[Event "?"]
[Site "?"]
[Date "2016.06.17"]
[Round "3"]
[White "PU"]
[Black "FW"]
[Result "1-0"]
[ECO "E97"]
[PlyCount "78"]
[EventDate "2016.??.??"]
[Annotator "Brainfish 020816 64 POPCNT (20.0s/pos, thread=1, blunder_margin=15cp)"]

1. d4 {Cerebellum recommends: e4} 1...Nf6 {Move from cerebellum} 2. c4 {Move from cerebellum} 2...g6 {Cerebellum recommends: e6} 3. Nc3 {Move from cerebellum} 3...Bg7 {Cerebellum recommends: d5} 4. e4 {Move from cerebellum} 4...d6 {Move from cerebellum} 5. Nf3 {Move from cerebellum} 5...O-O {Move from cerebellum} 6. Be2 {Move from cerebellum} 6...e5 {Move from cerebellum} 7. O-O {Move from cerebellum} 7...Nc6 {Cerebellum recommends: exd4} 8. d5 {Move from cerebellum} 8...Ne7 {Move from cerebellum} 9. b4 {Cerebellum recommends: Ne1} 9...a5 {Cerebellum recommends: Nh5} 10. bxa5 {Cerebellum recommends: b5} 10...Rxa5 {Move from cerebellum} 11. a4 {Cerebellum recommends: Nd2} 11...c5 {Cerebellum recommends: Nh5} 12. Bd2 {Move from cerebellum} 12...Ra8 {Move from cerebellum}
13. Bd3 $0 $14 {+0.53/23} ({Better is} 13.Rb1 b6 14.Qb3 Ra6 15.Rb2 Nh5 16.g3 $14 {+0.80/20})
({ Also sufficient is } 13.Ne1 Ne8 14.f3 f5 15.Rb1 Nf6 16.Nd3 $14 {+0.70/20})
13... Nd7 $0 $14 {+0.86/21} ({Better is} 13...Nh5 14.Re1 f5 15.Rb1 Nf4 16.Bf1 h6 $14 {+0.50/20})
({ A good alternative is } 13...b6 14.Rb1 Nh5 15.g3 Bg4 16.Be2 Ra6 $14 {+0.74/20})
({White is threatening} 13... -- 14.Rb1 Nh5 $14 {+0.79/23}) 14. Nb5
14... Qb6 $0 $16 {+2.22/25} ({More accurate is} 14...Nf6 15.Ra3 Nh5 16.h3 Ra6 17.Re1 f6 $14 {+0.87/20})
({ Also playable is } 14...Ra6 15.Rb1 h6 16.Qc1 g5 17.a5 Ng6 $14 {+0.89/20})
({White is threatening} 14... -- 15.Nxd6 Nf6 16.Nxc8 Nxc8 17.Qe2 Nd6 18.a5 $16 {+2.02/25}) 15. a5
15... Qa6 $0 $16 {+2.76/27} ({Better is} 15...Qd8 16.Nxd6 Nf6 17.Nb5 Nc6 18.Qb1 Nb4 $16 {+2.33/22})
({White is threatening} 15... -- 16.axb6 Rb8 $18 {+14.05/23}) 16. Nc7 Qa7 $7 17. Nxa8 Qxa8 18. Qc1
18... Re8 $0 $16 {+2.92/22} ({Better is} 18...Qb8 19.Rb1 Qc7 20.Bc2 Nf6 21.Re1 Nh5 $16 {+2.65/21})
({ Another modest line is } 18...f5 19.Ng5 fxe4 20.Nxe4 Nf5 21.Rb1 Nf6 $16 {+2.73/21})
({White is threatening} 18... -- 19.Rb1 $16 {+2.78/24})
19. g3 $0 $16 {+2.65/22} ({Better is} 19.Qc2 Qb8 20.Rfb1 Qc7 21.Ra3 Kh8 22.h3 $16 {+2.86/24})
({ Another possiblity is } 19.Rb1 Kh8 20.Rb5 Ng8 21.Qb2 Ngf6 22.Rb1 $16 {+2.85/24})
19... Nf6 $0 $16 {+2.91/22} ({Better is} 19...Qb8 20.Nh4 Qc7 21.Bc3 Nf6 22.Qb2 Nh5 $16 {+2.48/20})
({ A good one too is } 19...Kf8 20.Rb1 Ng8 21.Qb2 Ngf6 22.Rfe1 Kg8 $16 {+2.69/20})
({White is threatening} 19... -- 20.Rb1 $16 {+2.79/23})
20. Bg5 $0 $16 {+2.50/22} ({Better is} 20.Qb2 Qa6 21.Rab1 Nd7 22.Qb5 Qa8 23.Rfe1 $16 {+2.79/20})
({ One that deserves attention is } 20.Re1 Qb8 21.Qb2 Qc7 22.Nh4 Rf8 23.Reb1 $16 {+2.63/20}) Bg4 21. Nh4
21... Qc8 $0 $18 {+3.10/26} ({A nice try could be} 21...Bh3 22.Re1 Qc8 23.f3 Qc7 24.Re2 Ra8 $16 {+2.50/22})
({White is threatening} 21... -- 22.Qb2 $18 {+3.04/26})
22. Ng2 $0 $16 {+2.54/23} ({More accurate is} 22.Qb2 Rd8 23.f3 Bh3 24.Rfb1 Rd7 25.a6 $18 {+3.13/25})
({ Not to be underestimated is } 22.f3 Bh3 23.Rf2 Qc7 24.a6 Ra8 25.axb7 $16 {+2.63/25})
22... Bf3 $0 $16 {+2.81/23} ({Better is} 22...Bh3 23.f3 Qc7 24.Qb2 Bc8 25.Bc2 Nd7 $16 {+2.56/22})
({ A fine line worth of consideration is } 22...Qc7 23.f3 Bc8 24.Qb1 Bh3 25.Qb2 Bc8 $16 {+2.58/22})
({White is threatening} 22... -- 23.f3 Bd7 24.Qb2 Qc7 25.Rfb1 Bc8 26.Qb6 $18 {+3.21/26}) 23. Re1
23... Qh3 $0 $18 {+3.61/26} ({A nice try could be} 23...Nh5 24.Nh4 Bg4 25.Rb1 Bh3 26.f3 Qc7 $16 {+2.53/18})
({ Worthy of consideration is } 23...h5 24.Nh4 Bg4 25.Bd2 Rd8 26.Rb1 Bh3 $16 {+2.59/18})
({White is threatening} 23... -- 24.Rb1 Bg4 $18 {+3.10/25}) 24. Nh4 $7
24... Ng4 $4 $18 {+7.73/25} ({A nice try could be} 24...Bh5 25.f3 Ra8 26.Qd2 Qd7 27.Rab1 Nc8 $18 {+3.78/21})
({White is threatening} 24... -- 25.Nxf3 Nc8 26.Qb2 Re7 27.a6 bxa6 28.Rxa6 $18 {+7.03/25}) 25. Nxf3 $7
25... f6 $0 $18 {+8.60/24} ({A nice try could be} 25...h6 26.Bd2 f5 27.Bf1 Qh5 28.h3 Nf6 $18 {+7.67/22})
({White is threatening} 25... -- 26.Bf1 $18 {+9.60/25}) 26. Bf1 Qh5 27. Bd2 f5
28. Kg2 $6 $18 {+6.00/22} ({Superior is} 28.h3 $1 Nf6 29.Ng5 Nc8 30.Qb1 Bh6 31.h4 $18 {+8.87/22})
({ Another interesting line is } 28.Nh4 g5 29.Bxg5 Ng6 30.exf5 Nxh4 31.Bxh4 $18 {+7.81/22})
28... Rf8 $0 $18 {+6.63/24} ({A nice try could be} 28...fxe4 29.Rxe4 Nf6 30.Bd3 Nxe4 31.Bxe4 Qg4 $18 {+5.81/21})
({White is threatening} 28... -- 29.h3 Nf6 30.Ng5 f4 31.gxf4 exf4 32.Bxf4 $18 {+8.82/24}) 29. h3
29... fxe4 $0 $18 {+6.58/24} ({Better is} 29...Nxf2 30.Nh4 f4 31.Kxf2 fxg3+ 32.Kxg3 Rf4 $18 {+6.26/22})
({White is threatening} 29... -- 30.hxg4 fxg4 31.Ng1 g5 32.Bxg5 Ng6 33.a6 $18 {+10.30/26})
30. hxg4 $0 $18 {+5.67/24} ({More accurate is} 30.Nh4 Rxf2+ 31.Kg1 Nf5 32.hxg4 Qxg4 33.Nxf5 $18 {+6.31/23}) exf3+ $7 31. Kg1 $7 Qxg4 $7
32. Re4 $4 $15 {-0.82/28} ({Excellent is} 32.Qb1 $1 Qd7 33.Ra3 Rf7 34.Rb3 Nf5 35.Bh3 $18 {+5.65/22})
({ Also practical is } 32.Qc2 g5 33.Qe4 Qh5 34.g4 Qh4 35.Ra3 $18 {+5.42/22})
32... Qh5 $4 $18 {+12.06/26} ({Excellent is} 32...Qxe4 $1 33.Rb1 Nf5 34.Rxb7 h5 35.Bg5 Qg4 $15 {-1.14/23})
({White is threatening} 32... -- 33.Rxg4 $18 {+19.28/24}) 33. Rh4 Qf5
34. Qb1 $6 $18 {+5.90/25} ({Excellent is} 34.Bh3 $1 Qd3 35.Ra3 Qe2 36.Be6+ Kh8 37.Re3 $18 {+12.29/23})
({ Also promising is } 34.a6 Qd7 35.Bh3 Nf5 36.a7 Ra8 37.Qb1 $18 {+7.38/23})
34... Qf6 $2 $18 {+8.24/25} ({A nice try could be} 34...Qc8 35.Bh3 Nf5 36.Qb6 Bf6 37.Bxf5 Qxf5 $18 {+6.05/23})
({White is threatening} 34... -- 35.Bh3 Qxb1+ 36.Rxb1 Nf5 37.Bxf5 gxf5 38.Rxb7 $18 {+10.00/26})
35. Qc1 $6 $18 {+5.06/25} ({Superior is} 35.Qxb7 $1 Nf5 36.Re4 Nxg3 37.fxg3 Qf5 38.Rh4 $18 {+7.68/23})
({ Also capable is } 35.Re4 Qf5 36.Ra3 Kh8 37.Rb3 Ng8 38.Rxb7 $18 {+7.39/23}) Nf5 36. Bg5 Qf7 $7
37. Rh2 $0 $18 {+4.16/22} ({More accurate is} 37.Bh3 $1 h5 38.a6 bxa6 39.Rxa6 Qd7 40.Bxf5 $18 {+4.97/21})
({ Incorrect is } Re4 $2 { because of } Nd4 38.Bh3 Kh8 39.Rb1 Ne2+ $18 {+4.12/21})
37... e4 $0 $18 {+4.73/23} ({A nice try could be} 37...h6 38.Bxh6 Nxh6 39.Rxh6 Bxh6 40.Qxh6 Qg7 $18 {+4.19/21})
({White is threatening} 37... -- 38.Rb1 $18 {+4.89/23})
38. Ra3 $0 $18 {+4.24/21} ({Better is} 38.Rb1 Qc7 39.Bh3 Nd4 40.Be6+ Kh8 41.Kh1 $18 {+4.43/21})
38... Bd4 $0 $18 {+5.03/23} ({A nice try could be} 38...Re8 39.Qb1 h6 40.Bd2 h5 41.Rb3 Qf6 $18 {+4.07/19})
({White is threatening} 38... -- 39.Qb1 $18 {+5.27/23}) 39. Bh3 $1 Nxg3 1-0
:D :D
Ferdy
Posts: 4833
Joined: Sun Aug 10, 2008 3:15 pm
Location: Philippines

Re: Chess Game Analyzer

Post by Ferdy »

retep1 wrote:I get allways these following two games (with no correct header) at the beginning of the outputfile.
The third game (and the following games) have a correct header.
What may Im doing wrong? Plz help.
Thx for your great tool!

[Event "?"]
[Site "?"]
[Date "????.??.??"]
[Round "?"]
[White "?"]
[Black "?"]
[Result "1-0"]
[Annotator "Brainfish 020816 64 POPCNT (20.0s/pos, thread=1, blunder_margin=15cp)"]

{A Model game for White and Black} 1-0
1-0

[Event "?"]
[Site "?"]
[Date "????.??.??"]
[Round "?"]
[White "?"]
[Black "?"]
[Result "1-0"]
[Annotator "Brainfish 020816 64 POPCNT (20.0s/pos, thread=1, blunder_margin=15cp)"]

1. d4 {Cerebellum recommends: e4} 1...g6 {Cerebellum recommends: Nf6} 2. c4 {Cerebellum recommends: e4} 2...Bg7 {Cerebellum recommends: Nf6} 3. Nc3 {Cerebellum recommends: e4} 3...Nf6 {Move from cerebellum} 4. e4 {Move from cerebellum} 4...d6 {Move from cerebellum} 5. Nf3 {Move from cerebellum} 5...O-O {Move from cerebellum} 6. Be2 {Move from cerebellum} 6...e5 {Move from cerebellum} 7. O-O {Move from cerebellum} 7...Nc6 {Cerebellum recommends: exd4} 8. d5 {Move from cerebellum} 8...Ne7 {Move from cerebellum} 9. Nd2 {Cerebellum recommends: Ne1} 9...Nd7 {Cerebellum recommends: a5} 10. b4 {Cerebellum recommends: Nb3} 10...f5 {Move from cerebellum} 11. f3 {Move from cerebellum} 11...f4 {Cerebellum recommends: c6} 12. Ba3 {Cerebellum recommends: c5}
12... Rf7 $0 $14 {+0.98/23} ({More accurate is} 12...a5 13.bxa5 Rxa5 14.Bb2 b6 15.Nb3 Ra8 $14 {+0.44/23})
({ A fine line worth of consideration is } 12...b6 13.Nb3 g5 14.c5 h5 15.Rc1 Nf6 $14 {+0.91/23})
({White is threatening} 12... -- 13.c5 Rf6 14.Nc4 g5 15.Qb3 a6 16.Na5 $14 {+1.04/22}) 13. c5



[Event "?"]
[Site "?"]
[Date "2016.06.17"]
[Round "3"]
[White "PU"]
[Black "FW"]
[Result "1-0"]
[ECO "E97"]
[PlyCount "78"]
[EventDate "2016.??.??"]
[Annotator "Brainfish 020816 64 POPCNT (20.0s/pos, thread=1, blunder_margin=15cp)"]

1. d4 {Cerebellum recommends: e4} 1...Nf6 {Move from cerebellum} 2. c4 {Move from cerebellum} 2...g6 {Cerebellum recommends: e6} 3. Nc3 {Move from cerebellum} 3...Bg7 {Cerebellum recommends: d5} 4. e4 {Move from cerebellum} 4...d6 {Move from cerebellum} 5. Nf3 {Move from cerebellum} 5...O-O {Move from cerebellum} 6. Be2 {Move from cerebellum} 6...e5 {Move from cerebellum} 7. O-O {Move from cerebellum} 7...Nc6 {Cerebellum recommends: exd4} 8. d5 {Move from cerebellum} 8...Ne7 {Move from cerebellum} 9. b4 {Cerebellum recommends: Ne1} 9...a5 {Cerebellum recommends: Nh5} 10. bxa5 {Cerebellum recommends: b5} 10...Rxa5 {Move from cerebellum} 11. a4 {Cerebellum recommends: Nd2} 11...c5 {Cerebellum recommends: Nh5} 12. Bd2 {Move from cerebellum} 12...Ra8 {Move from cerebellum}
13. Bd3 $0 $14 {+0.53/23} ({Better is} 13.Rb1 b6 14.Qb3 Ra6 15.Rb2 Nh5 16.g3 $14 {+0.80/20})
({ Also sufficient is } 13.Ne1 Ne8 14.f3 f5 15.Rb1 Nf6 16.Nd3 $14 {+0.70/20})
13... Nd7 $0 $14 {+0.86/21} ({Better is} 13...Nh5 14.Re1 f5 15.Rb1 Nf4 16.Bf1 h6 $14 {+0.50/20})
({ A good alternative is } 13...b6 14.Rb1 Nh5 15.g3 Bg4 16.Be2 Ra6 $14 {+0.74/20})
({White is threatening} 13... -- 14.Rb1 Nh5 $14 {+0.79/23}) 14. Nb5
14... Qb6 $0 $16 {+2.22/25} ({More accurate is} 14...Nf6 15.Ra3 Nh5 16.h3 Ra6 17.Re1 f6 $14 {+0.87/20})
({ Also playable is } 14...Ra6 15.Rb1 h6 16.Qc1 g5 17.a5 Ng6 $14 {+0.89/20})
({White is threatening} 14... -- 15.Nxd6 Nf6 16.Nxc8 Nxc8 17.Qe2 Nd6 18.a5 $16 {+2.02/25}) 15. a5
15... Qa6 $0 $16 {+2.76/27} ({Better is} 15...Qd8 16.Nxd6 Nf6 17.Nb5 Nc6 18.Qb1 Nb4 $16 {+2.33/22})
({White is threatening} 15... -- 16.axb6 Rb8 $18 {+14.05/23}) 16. Nc7 Qa7 $7 17. Nxa8 Qxa8 18. Qc1
18... Re8 $0 $16 {+2.92/22} ({Better is} 18...Qb8 19.Rb1 Qc7 20.Bc2 Nf6 21.Re1 Nh5 $16 {+2.65/21})
({ Another modest line is } 18...f5 19.Ng5 fxe4 20.Nxe4 Nf5 21.Rb1 Nf6 $16 {+2.73/21})
({White is threatening} 18... -- 19.Rb1 $16 {+2.78/24})
19. g3 $0 $16 {+2.65/22} ({Better is} 19.Qc2 Qb8 20.Rfb1 Qc7 21.Ra3 Kh8 22.h3 $16 {+2.86/24})
({ Another possiblity is } 19.Rb1 Kh8 20.Rb5 Ng8 21.Qb2 Ngf6 22.Rb1 $16 {+2.85/24})
19... Nf6 $0 $16 {+2.91/22} ({Better is} 19...Qb8 20.Nh4 Qc7 21.Bc3 Nf6 22.Qb2 Nh5 $16 {+2.48/20})
({ A good one too is } 19...Kf8 20.Rb1 Ng8 21.Qb2 Ngf6 22.Rfe1 Kg8 $16 {+2.69/20})
({White is threatening} 19... -- 20.Rb1 $16 {+2.79/23})
20. Bg5 $0 $16 {+2.50/22} ({Better is} 20.Qb2 Qa6 21.Rab1 Nd7 22.Qb5 Qa8 23.Rfe1 $16 {+2.79/20})
({ One that deserves attention is } 20.Re1 Qb8 21.Qb2 Qc7 22.Nh4 Rf8 23.Reb1 $16 {+2.63/20}) Bg4 21. Nh4
21... Qc8 $0 $18 {+3.10/26} ({A nice try could be} 21...Bh3 22.Re1 Qc8 23.f3 Qc7 24.Re2 Ra8 $16 {+2.50/22})
({White is threatening} 21... -- 22.Qb2 $18 {+3.04/26})
22. Ng2 $0 $16 {+2.54/23} ({More accurate is} 22.Qb2 Rd8 23.f3 Bh3 24.Rfb1 Rd7 25.a6 $18 {+3.13/25})
({ Not to be underestimated is } 22.f3 Bh3 23.Rf2 Qc7 24.a6 Ra8 25.axb7 $16 {+2.63/25})
22... Bf3 $0 $16 {+2.81/23} ({Better is} 22...Bh3 23.f3 Qc7 24.Qb2 Bc8 25.Bc2 Nd7 $16 {+2.56/22})
({ A fine line worth of consideration is } 22...Qc7 23.f3 Bc8 24.Qb1 Bh3 25.Qb2 Bc8 $16 {+2.58/22})
({White is threatening} 22... -- 23.f3 Bd7 24.Qb2 Qc7 25.Rfb1 Bc8 26.Qb6 $18 {+3.21/26}) 23. Re1
23... Qh3 $0 $18 {+3.61/26} ({A nice try could be} 23...Nh5 24.Nh4 Bg4 25.Rb1 Bh3 26.f3 Qc7 $16 {+2.53/18})
({ Worthy of consideration is } 23...h5 24.Nh4 Bg4 25.Bd2 Rd8 26.Rb1 Bh3 $16 {+2.59/18})
({White is threatening} 23... -- 24.Rb1 Bg4 $18 {+3.10/25}) 24. Nh4 $7
24... Ng4 $4 $18 {+7.73/25} ({A nice try could be} 24...Bh5 25.f3 Ra8 26.Qd2 Qd7 27.Rab1 Nc8 $18 {+3.78/21})
({White is threatening} 24... -- 25.Nxf3 Nc8 26.Qb2 Re7 27.a6 bxa6 28.Rxa6 $18 {+7.03/25}) 25. Nxf3 $7
25... f6 $0 $18 {+8.60/24} ({A nice try could be} 25...h6 26.Bd2 f5 27.Bf1 Qh5 28.h3 Nf6 $18 {+7.67/22})
({White is threatening} 25... -- 26.Bf1 $18 {+9.60/25}) 26. Bf1 Qh5 27. Bd2 f5
28. Kg2 $6 $18 {+6.00/22} ({Superior is} 28.h3 $1 Nf6 29.Ng5 Nc8 30.Qb1 Bh6 31.h4 $18 {+8.87/22})
({ Another interesting line is } 28.Nh4 g5 29.Bxg5 Ng6 30.exf5 Nxh4 31.Bxh4 $18 {+7.81/22})
28... Rf8 $0 $18 {+6.63/24} ({A nice try could be} 28...fxe4 29.Rxe4 Nf6 30.Bd3 Nxe4 31.Bxe4 Qg4 $18 {+5.81/21})
({White is threatening} 28... -- 29.h3 Nf6 30.Ng5 f4 31.gxf4 exf4 32.Bxf4 $18 {+8.82/24}) 29. h3
29... fxe4 $0 $18 {+6.58/24} ({Better is} 29...Nxf2 30.Nh4 f4 31.Kxf2 fxg3+ 32.Kxg3 Rf4 $18 {+6.26/22})
({White is threatening} 29... -- 30.hxg4 fxg4 31.Ng1 g5 32.Bxg5 Ng6 33.a6 $18 {+10.30/26})
30. hxg4 $0 $18 {+5.67/24} ({More accurate is} 30.Nh4 Rxf2+ 31.Kg1 Nf5 32.hxg4 Qxg4 33.Nxf5 $18 {+6.31/23}) exf3+ $7 31. Kg1 $7 Qxg4 $7
32. Re4 $4 $15 {-0.82/28} ({Excellent is} 32.Qb1 $1 Qd7 33.Ra3 Rf7 34.Rb3 Nf5 35.Bh3 $18 {+5.65/22})
({ Also practical is } 32.Qc2 g5 33.Qe4 Qh5 34.g4 Qh4 35.Ra3 $18 {+5.42/22})
32... Qh5 $4 $18 {+12.06/26} ({Excellent is} 32...Qxe4 $1 33.Rb1 Nf5 34.Rxb7 h5 35.Bg5 Qg4 $15 {-1.14/23})
({White is threatening} 32... -- 33.Rxg4 $18 {+19.28/24}) 33. Rh4 Qf5
34. Qb1 $6 $18 {+5.90/25} ({Excellent is} 34.Bh3 $1 Qd3 35.Ra3 Qe2 36.Be6+ Kh8 37.Re3 $18 {+12.29/23})
({ Also promising is } 34.a6 Qd7 35.Bh3 Nf5 36.a7 Ra8 37.Qb1 $18 {+7.38/23})
34... Qf6 $2 $18 {+8.24/25} ({A nice try could be} 34...Qc8 35.Bh3 Nf5 36.Qb6 Bf6 37.Bxf5 Qxf5 $18 {+6.05/23})
({White is threatening} 34... -- 35.Bh3 Qxb1+ 36.Rxb1 Nf5 37.Bxf5 gxf5 38.Rxb7 $18 {+10.00/26})
35. Qc1 $6 $18 {+5.06/25} ({Superior is} 35.Qxb7 $1 Nf5 36.Re4 Nxg3 37.fxg3 Qf5 38.Rh4 $18 {+7.68/23})
({ Also capable is } 35.Re4 Qf5 36.Ra3 Kh8 37.Rb3 Ng8 38.Rxb7 $18 {+7.39/23}) Nf5 36. Bg5 Qf7 $7
37. Rh2 $0 $18 {+4.16/22} ({More accurate is} 37.Bh3 $1 h5 38.a6 bxa6 39.Rxa6 Qd7 40.Bxf5 $18 {+4.97/21})
({ Incorrect is } Re4 $2 { because of } Nd4 38.Bh3 Kh8 39.Rb1 Ne2+ $18 {+4.12/21})
37... e4 $0 $18 {+4.73/23} ({A nice try could be} 37...h6 38.Bxh6 Nxh6 39.Rxh6 Bxh6 40.Qxh6 Qg7 $18 {+4.19/21})
({White is threatening} 37... -- 38.Rb1 $18 {+4.89/23})
38. Ra3 $0 $18 {+4.24/21} ({Better is} 38.Rb1 Qc7 39.Bh3 Nd4 40.Be6+ Kh8 41.Kh1 $18 {+4.43/21})
38... Bd4 $0 $18 {+5.03/23} ({A nice try could be} 38...Re8 39.Qb1 h6 40.Bd2 h5 41.Rb3 Qf6 $18 {+4.07/19})
({White is threatening} 38... -- 39.Qb1 $18 {+5.27/23}) 39. Bh3 $1 Nxg3 1-0
:D :D
I tried the two games but it works fine here. Did you use the exe? or the script?

Be aware that the output file is in append mode, meaning if you analyze certain games in the past those games will not be deleted, if you use the same output filename.

In any case I cannot solve this because I cannot reproduce this on my machine.

To get a good pgn formatting and compliance it is also better to run pgn-extract on your input pgn file before feeding it in the tool. Especially if the source of your pgn file is not so reliable.


But the following is a bug that I already fixed on my latest dev version.

{A Model game for White and Black} 1-0
1-0

The result was twice written.