Page 2 of 2

Re: Is there a current tool like the old "GameAnalyzer" ?

Posted: Sat Jul 20, 2013 4:21 am
by User923005
tünaydın
:difus_lazy2

Re: Is there a current tool like the old "GameAnalyzer" ?

Posted: Sat Jul 20, 2013 5:54 am
by User923005
This modification allows it to reformat CEGT games, as well as CEGT games:

Code: Select all

// This simple nerdy program is used to remove the seconds indicator
// from CCRL/CEGT annotated PGN files for input into GameAnalyzer
// This code is hereby dedicated to the public domain.
// If you live in some backwards, backwater ignorant country
// that does not recognize public domain, then a dual license
// of BSD with no advertising clause is also offered.
// Have fun.
//
// USAGE: gafix < input_annotated_pgn_file > output_pgn_file
// e.g.:
// gafix.exe <  Komodo_5_1_MP_64-bit_4CPU.commented.[155].pgn > fixed.pgn
#include <stdio.h>
#include <string.h>

char string[32767];

int main(void)
{
    while (fgets(string, sizeof string, stdin))
    {
        char *where;
        while (where = strstr(string, "s}"))
        {
            where[0] = ' ';
        }
        
        while (where = strstr(string, "s ("))
        {
            where[0] = ' ';
        }
        printf(string);
    }
    return  0;
}

Re: Is there a current tool like the old "GameAnalyzer" ?

Posted: Sat Jul 20, 2013 12:04 pm
by ChessDrone
Hello chess friends,

I just tried to CEGT and it seems to work. I think it removes "S".

What is the GUI that produce PGN with this tool is needed?

I have another question about GameAnalyser, you would have a part of PGN that would be relevant for me to test with GameAnalyser utility and so I can understand?

Regards

Re: Is there a current tool like the old "GameAnalyzer" ?

Posted: Sat Jul 20, 2013 7:19 pm
by User923005
This link tells how the CCRL files are produced:
http://www.computerchess.org.uk/ccrl/4040/about.html

This link tells how the CEGT files are produced:
http://www.husvankempen.de/nunn/testers/conditions.htm

Here is a CCRL game after cleanup:
[Event "CCRL 40/40"]
[Site "CCRL"]
[Date "2012.09.03"]
[Round "339.1.540"]
[White "Hiarcs 14"]
[Black "Deep Junior 12.5 64-bit"]
[Result "1/2-1/2"]
[ECO "B39"]
[Opening "Sicilian"]
[Variation "accelerated fianchetto, Breyer variation"]
[PlyCount "95"]
[WhiteElo "2969"]
[BlackElo "2926"]

1. Nf3 {+0.00/1 0 } c5 {+0.00/1 0 } 2. c4 {+0.00/1 0 } Nc6 {+0.00/1 0 } 3. d4
{+0.00/1 0 } cxd4 {+0.00/1 0 } 4. Nxd4 {+0.00/1 0 } g6 {+0.00/1 0 } 5. e4
{+0.00/1 0 } Bg7 {+0.00/1 0 } 6. Be3 {+0.00/1 0 } Nf6 {+0.00/1 0 } 7. Nc3
{+0.00/1 0 } Ng4 {+0.00/1 0 } 8. Qxg4 {+0.00/1 0 } Nxd4 {+0.00/1 0 } 9. Qd1
{+0.54/20 63 } Nc6 {(Nc6) -0.37/20 59 } 10. Qb3 {(Bd3) +0.50/20 75 } Nd4 {(Qa5)
-0.16/18 33 } 11. Qa4 {(Qa4) +0.59/20 31 } b6 {(b6) -0.23/18 30 } 12. Rd1
{(O-O-O) +0.63/21 42 } Ne6 {(Ne6) -0.21/20 66 } 13. Qc2 {(Be2) +0.63/20 42 }
O-O {(Bb7) -0.30/19 86 } 14. Be2 {(Be2) +0.75/20 33 } Bb7 {(Bb7) -0.36/18 29 }
15. O-O {(O-O) +0.69/20 37 } Rc8 {(Nc5) -0.33/17 28 } 16. Nd5 {(Rfe1) +0.60/18
41 } f5 {(Nc7) -0.36/17 30 } 17. f4 {(exf5) +0.66/17 34 } Nc5 {(d6) -0.45/17
48 } 18. e5 {(e5) +0.64/19 52 } Bc6 {(Bc6) -0.56/18 52 } 19. Bf3 {(Bf3)
+0.84/19 34 } Rf7 {(e6) -0.57/19 61 } 20. Qd2 {(b3) +0.83/19 63 } e6 {(e6)
-0.53/20 50 } 21. Bxc5 {(Bxc5) +0.75/20 33 } bxc5 {(bxc5) -0.53/20 35 } 22. Nc3
{(Nc3) +0.67/21 40 } a6 {(a6) -0.54/21 78 } 23. Qe3 {(b3) +0.67/19 58 } Bxf3
{(Bxf3) -0.47/18 31 } 24. Qxf3 {(Qxf3) +0.59/20 44 } g5 {(g5) -0.51/19 59 } 25.
b3 {(h3) +0.64/20 31 } Qc7 {(Re7) -0.36/18 27 } 26. Rd6 {(g3) +0.61/20 45 } g4
{(gxf4) -0.40/21 120 } 27. Qg3 {(Qg3) +1.16/23 51 } Qb7 {(Ra8) -0.37/21 34 }
28. Rd3 {(Rfd1) +1.21/23 34 } Bf8 {(Qc6) -0.29/20 29 } 29. Rfd1 {(Rfd1)
+1.20/23 46 } h5 {(Qc6) -0.31/21 37 } 30. Qh4 {(Qh4) +1.11/21 61 } Qc6 {(Bh6)
-0.50/20 26 } 31. Qg5+ {(Na4) +1.65/22 38 } Rg7 {(Kh8) +0.00/21 27 } 32. Qxh5
{(Qh6) +0.00/25 79 } Rh7 {(Rh7) +0.00/20 18 } 33. Qg6+ {(Qg5) +0.00/27 43 } Rg7
{(Rg7) +0.00/24 43 } 34. Qh5 {(Qh6) +0.00/29 44 } Rh7 {+0.00/24 41 } 35. Qg5+
{+0.00/27 40 } Kh8 {(Kh8) +0.00/22 26 } 36. Qg6 {(Rd6) +0.00/24 46 } Rh6 {(Rh6)
+0.00/25 36 } 37. Qf7 {(Qg5) +0.00/28 47 } Rh7 {(Rh7) +0.00/24 39 } 38. Qg6
{(Qf6) +0.00/28 48 } Rh6 {+0.00/26 62 } 39. Qg5 {+0.00/30 40 } Rh7 {(Rh7)
+0.00/25 11 } 40. Rd6 {+0.00/25 63 } Bxd6 {(Bxd6) +0.00/23 46 } 41. Rxd6
{(Rxd6) +0.00/25 46 } Qb7 {(Qa8) +0.00/23 28 } 42. Qf6+ {(Qf6) +0.00/25 44 }
Kg8 {(Kg8) +0.00/23 41 } 43. Qg6+ {(Qg6) +0.00/25 35 } Kh8 {(Rg7) +0.00/25 61 }
44. Qf6+ {(Qf6) +0.00/26 42 } Kg8 {+0.00/27 25 } 45. Qg5+ {+0.00/26 41 } Rg7
{(Kh8) +0.00/23 25 } 46. Qh4 {(Qh5) +0.00/25 39 } Rh7 {(Rh7) +0.00/23 36 } 47.
Qg5+ {(Qg5) +0.00/27 33 } Kh8 {+0.00/26 27 } 48. Qf6+ {+0.00/26 37 } 1/2-1/2

It's still a little hard to understand, but if you break it down move by move it is much simpler:
[Event "CCRL 40/40"]
[Site "CCRL"]
[Date "2012.09.03"]
[Round "339.1.540"]
[White "Hiarcs 14"]
[Black "Deep Junior 12.5 64-bit"]
[Result "1/2-1/2"]
[ECO "B39"]
[Opening "Sicilian"]
[Variation "accelerated fianchetto, Breyer variation"]
[PlyCount "95"]
[WhiteElo "2969"]
[BlackElo "2926"]

1. Nf3 {+0.00/1 0 } c5 {+0.00/1 0 } {we are in book here...}
2. c4 {+0.00/1 0 } Nc6 {+0.00/1 0 }
3. d4 {+0.00/1 0 } cxd4 {+0.00/1 0 }
4. Nxd4 {+0.00/1 0 } g6 {+0.00/1 0 }
5. e4 {+0.00/1 0 } Bg7 {+0.00/1 0 }
6. Be3 {+0.00/1 0 } Nf6 {+0.00/1 0 }
7. Nc3 {+0.00/1 0 } Ng4 {+0.00/1 0 }
8. Qxg4 {+0.00/1 0 } Nxd4 {+0.00/1 0 } {this is the last book move}
9. Qd1 {+0.54/20 63 } Nc6 {(Nc6) -0.37/20 59 } {For these moves, we see the evaluation in pawns, the depth in plies and the number of seconds thinking time, I am not sure what the move in parenthesis is (Nc6) but it is probably the move that was pondered}
10. Qb3 {(Bd3) +0.50/20 75 } Nd4 {(Qa5) -0.16/18 33 }
11. Qa4 {(Qa4) +0.59/20 31 } b6 {(b6) -0.23/18 30 }
12. Rd1 {(O-O-O) +0.63/21 42 } Ne6 {(Ne6) -0.21/20 66 }
13. Qc2 {(Be2) +0.63/20 42 } O-O {(Bb7) -0.30/19 86 }
14. Be2 {(Be2) +0.75/20 33 } Bb7 {(Bb7) -0.36/18 29 }
15. O-O {(O-O) +0.69/20 37 } Rc8 {(Nc5) -0.33/17 28 }
16. Nd5 {(Rfe1) +0.60/18 41 } f5 {(Nc7) -0.36/17 30 }
17. f4 {(exf5) +0.66/17 34 } Nc5 {(d6) -0.45/17 48 }
18. e5 {(e5) +0.64/19 52 } Bc6 {(Bc6) -0.56/18 52 }
19. Bf3 {(Bf3) +0.84/19 34 } Rf7 {(e6) -0.57/19 61 }
20. Qd2 {(b3) +0.83/19 63 } e6 {(e6) -0.53/20 50 }
...
etc.

An additional fix for the material made it work with the large CEGT file. I removed the trailing newline and used puts() instead of printf(). Somewhere in the file there was some symbol being interpreted as a printf format specifier:

Code: Select all

// This simple nerdy program is used to remove the seconds indicator
// from CCRL/CEGT annotated PGN files for input into GameAnalyzer
// This code is hereby dedicated to the public domain.
// If you live in some backwards, backwater ignorant country
// that does not recognize public domain, then a dual license
// of BSD with no advertising clause is also offered.
// Have fun.
//
// USAGE: gafix < input_annotated_pgn_file > output_pgn_file
// e.g.:
// gafix.exe <  Komodo_5_1_MP_64-bit_4CPU.commented.[155].pgn > fixed.pgn
#include <stdio.h>
#include <string.h>

char string[32767];

int main(void)
{
    while (fgets(string, sizeof string, stdin))
    {
        char *where;
        while (where = strstr(string, "s}"))
        {
            where[0] = ' ';
        }
        
        while (where = strstr(string, "s ("))
        {
            where[0] = ' ';
        }
        where = strchr(string, '\n');
        if (where) where[0] = 0;
        puts(string);
    }
    return  0;
}

Re: Is there a current tool like the old "GameAnalyzer" ?

Posted: Sat Jul 20, 2013 7:43 pm
by ChessDrone
I'll watch, thank you! :)