Giter VIP home page Giter VIP logo

mora-chess-engine's Introduction

Hi there ๐Ÿ‘‹, I'm Gonzalo

Software Engineer.

Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.

This is an out-of-context picture of my cat, just because.

My cat

mora-chess-engine's People

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

mora-chess-engine's Issues

Mora 1.1 vs Minic 3.19

[Event "?"]
[Site "?"]
[Date "2022.05.23"]
[Round "1.1"]
[White "Minic 3.19"]
[Black "MORA"]
[Result "1-0"]
[PlyCount "135"]

  1. e4 {53/10 201ms} 1... d5 {31/7 147ms} 2. exd5 {101/11 220ms} 2... Nf6 {-15/7
    217ms} 3. d4 {109/11 354ms} 3... Qxd5 {-29/7 230ms} 4. Nf3 {103/10 276ms} 4...
    Nc6 {-58/6 323ms} 5. Nc3 {124/9 221ms} 5... Qa5 {-114/7 249ms} 6. Bb5 {178/11
    293ms} 6... Ne4 {-109/7 323ms} 7. Qd3 {207/10 325ms} 7... Bf5 {-125/8 271ms} 8.
    Ne5 {258/11 371ms} 8... Nd6 {-173/7 161ms} 9. Nxc6 {253/13 305ms} 9... Bxd3
    {-86/8 432ms} 10. Nxa5+ {219/12 334ms} 10... Bxb5 {-96/8 350ms} 11. Nxb7
    {252/12 468ms} 11... Bc4 {-169/9 128ms} 12. Na5 {386/12 444ms} 12... Ba6
    {-155/8 199ms} 13. Bf4 {397/11 240ms} 13... e6 {-159/8 196ms} 14. O-O-O {401/12
    443ms} 14... Be7 {-140/8 242ms} 15. d5 {483/11 429ms} 15... O-O {-134/8 232ms}
  2. Rhe1 {455/11 251ms} 16... Bf6 {-144/8 230ms} 17. Be5 {481/11 261ms} 17...
    Bxe5 {-97/8 176ms} 18. Rxe5 {589/12 459ms} 18... Rae8 {-130/8 236ms} 19. a3
    {590/12 485ms} 19... exd5 {-64/8 375ms} 20. Rxe8 {697/11 306ms} 20... Rxe8
    {-168/9 396ms} 21. Nxd5 {880/13 435ms} 21... Be2 {-208/9 153ms} 22. Nxc7
    {866/12 332ms} 22... Bxd1 {-260/10 329ms} 23. Nxe8 {986/12 443ms} 23... Nxe8
    {-328/11 254ms} 24. Kxd1 {1327/13 631ms} 24... Nd6 {-263/10 396ms} 25. c4
    {1292/11 582ms} 25... h6 {-302/9 164ms} 26. Kc2 {1426/10 356ms} 26... Ne4
    {-318/10 220ms} 27. Nc6 {1548/12 604ms} 27... a6 {-340/10 242ms} 28. b4
    {1542/11 562ms} 28... Nxf2 {-289/9 515ms} 29. Nb8 {1506/11 374ms} 29... Ng4
    {-285/10 161ms} 30. Nxa6 {1426/11 512ms} 30... Ne3+ {-285/9 414ms} 31. Kc3
    {1520/10 363ms} 31... Ng4 {-500/10 390ms} 32. b5 {1994/12 540ms} 32... Nf6
    {-548/9 427ms} 33. Kb4 {2039/10 498ms} 33... Nd7 {-499/10 414ms} 34. c5
    {1885/11 456ms} 34... Ne5 {-590/9 164ms} 35. c6 {2151/10 372ms} 35... Ng6
    {-1113/10 179ms} 36. Kc5 {2470/12 531ms} 36... Nf4 {-1110/8 181ms} 37. b6
    {2456/9 468ms} 37... Kh7 {-1295/9 381ms} 38. b7 {2642/10 403ms} 38... Ne6+
    {-1402/9 444ms} 39. Kb6 {2535/9 268ms} 39... h5 {-1391/9 196ms} 40. a4 {2644/10
    385ms} 40... Nf4 {-1391/9 211ms} 41. a5 {2648/9 489ms} 41... g5 {-1372/9 261ms}
  3. Kc5 {2920/11 432ms} 42... h4 {-1280/8 341ms} 43. Nb4 {2658/10 321ms} 43...
    h3 {-1425/9 272ms} 44. gxh3 {2733/10 259ms} 44... Kg6 {-1434/9 237ms} 45. a6
    {2978/10 227ms} 45... Ne6+ {-1495/8 361ms} 46. Kb6 {2703/9 271ms} 46... Nf4
    {-1919/9 237ms} 47. Kb5 {2994/11 256ms} 47... Nxh3 {-1892/8 371ms} 48. a7
    {2968/9 433ms} 48... Nf2 {-2045/9 170ms} 49. Nd5 {3282/11 453ms} 49... Ne4
    {-1967/8 205ms} 50. c7 {2979/10 523ms} 50... Nd6+ {-2087/8 192ms} 51. Ka6
    {2862/10 398ms} 51... Nxb7 {-2094/8 148ms} 52. Kxb7 {4977/11 356ms} 52... Kf5
    {-2160/9 242ms} 53. Kc8 {4978/9 274ms} 53... f6 {-2081/9 172ms} 54. h3 {4688/12
    350ms} 54... Ke5 {-2045/10 244ms} 55. Ne3 {5042/10 314ms} 55... Kd4 {-1931/10
    203ms} 56. Nf1 {3514/9 442ms} 56... g4 {-2082/10 329ms} 57. hxg4 {5288/12
    457ms} 57... f5 {-2243/9 180ms} 58. Ne3 {4115/11 265ms} 58... Kxe3 {-2029/10
    186ms} 59. gxf5 {3242/10 342ms} 59... Kd4 {-2201/11 185ms} 60. f6 {4623/11
    274ms} 60... Kd5 {-2859/9 203ms} 61. Kd7 {4614/10 286ms} 61... Ke5 {-20920/11
    255ms} 62. f7 {5068/10 331ms} 62... Kf6 {-21005/10 412ms} 63. Kd6 {5143/9
    190ms} 63... Kxf7 {-20784/9 480ms} 64. a8=Q {M5/13 411ms} 64... Kf6 {M-33462/9
    471ms} 65. c8=Q {M2/4 15ms} 65... Kg5 {M-33463/9 280ms} 66. Qf3 {M3/17 272ms}
    66... Kg6 {M-33464/8 460ms} 67. Qcg4+ {M2/121 117ms} 67... Kh7 {M-33465/8
    476ms} 68. Qh1# {M1/121 43ms} 1-0

[Event "?"]
[Site "?"]
[Date "2022.05.23"]
[Round "1.8"]
[White "MORA"]
[Black "Minic 3.19"]
[Result "1-0"]
[PlyCount "119"]

  1. d4 {38/8 320ms} 1... Nf6 {-25/10 337ms} 2. Nc3 {17/8 229ms} 2... d5 {9/10
    345ms} 3. Qd3 {40/7 317ms} 3... c5 {124/10 320ms} 4. dxc5 {2/7 158ms} 4... e5
    {158/10 336ms} 5. Bg5 {62/7 159ms} 5... d4 {20/9 224ms} 6. O-O-O {97/7 176ms}
    6... Nc6 {-20/8 233ms} 7. Ne4 {97/7 143ms} 7... b6 {-29/8 324ms} 8. Qf3 {236/6
    145ms} 8... Nb4 {-446/8 235ms} 9. Bxf6 {359/7 350ms} 9... gxf6 {-503/9 270ms}
  2. Nxf6+ {378/8 282ms} 10... Ke7 {-431/11 356ms} 11. Qxa8 {378/8 127ms} 11...
    Kxf6 {-440/11 450ms} 12. Qf3+ {410/7 224ms} 12... Ke7 {-470/10 235ms} 13. a3
    {463/7 363ms} 13... Na2+ {-514/11 422ms} 14. Kb1 {510/7 149ms} 14... Be6
    {-521/11 419ms} 15. e3 {510/7 373ms} 15... bxc5 {-509/11 411ms} 16. c4 {505/8
    325ms} 16... Nc3+ {-512/11 406ms} 17. bxc3 {505/7 470ms} 17... Qb6+ {-506/11
    431ms} 18. Kc2 {556/7 175ms} 18... Bd7 {-499/10 380ms} 19. Rb1 {599/7 166ms}
    19... Ba4+ {-508/11 404ms} 20. Kc1 {654/7 217ms} 20... Bb3 {-623/9 249ms} 21.
    Bd3 {640/7 172ms} 21... a5 {-626/9 312ms} 22. Bc2 {711/7 453ms} 22... a4
    {-637/11 292ms} 23. Ne2 {704/7 180ms} 23... Bg7 {-675/9 362ms} 24. cxd4 {783/7
    191ms} 24... cxd4 {-619/10 299ms} 25. exd4 {763/7 178ms} 25... Rb8 {-641/9
    281ms} 26. Re1 {714/7 333ms} 26... Bh6+ {-693/9 462ms} 27. Kd1 {789/7 265ms}
    27... Qa7 {-756/10 365ms} 28. Qg3 {951/7 189ms} 28... f6 {-799/10 426ms} 29.
    Bxb3 {884/8 212ms} 29... axb3 {-752/10 478ms} 30. Qh3 {882/8 215ms} 30... Bg7
    {-739/10 288ms} 31. Rxb3 {834/8 289ms} 31... Qa4 {-827/11 281ms} 32. Nc1 {886/7
    454ms} 32... Rd8 {-738/13 399ms} 33. Qd3 {908/8 398ms} 33... Kf7 {-744/10
    267ms} 34. d5 {920/8 246ms} 34... Kg8 {-805/9 287ms} 35. Re2 {922/7 214ms}
    35... Bh6 {-776/9 567ms} 36. Rb2 {938/7 465ms} 36... Rc8 {-753/8 307ms} 37. Rc2
    {951/7 463ms} 37... Qa8 {-841/9 425ms} 38. Ne2 {999/6 336ms} 38... Rd8 {-867/9
    278ms} 39. Nc3 {992/6 129ms} 39... Qa7 {-881/9 528ms} 40. Ne4 {1013/7 300ms}
    40... f5 {-1000/9 318ms} 41. Nf6+ {1096/7 345ms} 41... Kh8 {-1095/10 576ms} 42.
    Qxf5 {1045/8 286ms} 42... Bf4 {-1215/10 510ms} 43. g3 {1110/7 164ms} 43... Bh6
    {-1247/11 461ms} 44. Qxe5 {1139/7 247ms} 44... Rf8 {-1050/11 451ms} 45. Nh5+
    {1260/7 190ms} 45... Kg8 {-1456/12 411ms} 46. Qe6+ {1458/8 296ms} 46... Rf7
    {-1602/10 395ms} 47. Qxh6 {1458/8 413ms} 47... Qd4+ {-1603/12 382ms} 48. Qd2
    {1505/8 464ms} 48... Qa1+ {-1506/11 381ms} 49. Rc1 {1504/9 392ms} 49... Qe5
    {-1566/11 359ms} 50. Nf4 {1559/8 335ms} 50... h6 {-1585/9 191ms} 51. Re3
    {1541/7 320ms} 51... Qb8 {-1623/10 223ms} 52. c5 {1561/7 147ms} 52... Qb5
    {-1661/10 383ms} 53. Qc2 {1601/7 169ms} 53... Rf8 {-1712/9 370ms} 54. Qg6+
    {1926/8 242ms} 54... Kh8 {-1796/5 14ms} 55. Qxh6+ {1926/8 402ms} 55... Kg8
    {-1763/7 18ms} 56. Qg5+ {2122/9 363ms} 56... Kh8 {-3513/13 534ms} 57. Ng6+
    {2122/8 412ms} 57... Kg8 {-3953/11 378ms} 58. Ne7+ {M6/7 404ms} 58... Kh7
    {-M2/91 161ms} 59. Qg6+ {M3/8 259ms} 59... Kh8 {-M1/121 13ms} 60. Qh6# {M1/8
    346ms} 1-0

[Event "?"]
[Site "?"]
[Date "2022.05.23"]
[Round "1.2"]
[White "MORA"]
[Black "Minic 3.19"]
[Result "0-1"]
[PlyCount "160"]

  1. d4 {38/8 163ms} 1... d5 {-30/9 248ms} 2. Nc3 {38/8 251ms} 2... Nf6 {6/9
    236ms} 3. Qd3 {40/7 116ms} 3... c5 {93/9 232ms} 4. dxc5 {2/7 197ms} 4... Nc6
    {77/9 349ms} 5. Bg5 {9/7 172ms} 5... d4 {230/10 364ms} 6. Ne4 {10/7 155ms} 6...
    Nxe4 {176/11 281ms} 7. Qxe4 {31/8 173ms} 7... g6 {197/10 372ms} 8. O-O-O {90/7
    172ms} 8... Bf5 {216/9 231ms} 9. Qf3 {126/7 145ms} 9... Qa5 {117/9 365ms} 10.
    e4 {56/7 181ms} 10... dxe3 {248/10 287ms} 11. Bxe3 {70/7 231ms} 11... Qxa2
    {476/11 382ms} 12. Bd3 {-86/7 181ms} 12... Bg7 {464/10 210ms} 13. Bxf5 {-106/8
    217ms} 13... Qxb2+ {541/12 420ms} 14. Kd2 {-169/8 388ms} 14... gxf5 {545/12
    311ms} 15. Qxf5 {-167/8 182ms} 15... e6 {534/12 433ms} 16. Qe4 {-167/8 187ms}
    16... O-O-O+ {614/14 320ms} 17. Ke2 {-167/7 406ms} 17... Rxd1 {674/13 306ms}
  2. Kxd1 {-132/8 398ms} 18... Qb5 {710/13 474ms} 19. Ne2 {-147/7 154ms} 19...
    Rd8+ {746/14 448ms} 20. Ke1 {-187/7 215ms} 20... Qa5+ {833/14 469ms} 21. c3
    {-267/8 341ms} 21... Qa1+ {856/15 284ms} 22. Nc1 {-267/8 412ms} 22... Qxc3+
    {918/15 454ms} 23. Ke2 {-267/7 424ms} 23... Nd4+ {939/14 449ms} 24. Kd1 {-292/8
    408ms} 24... Nc2+ {957/13 456ms} 25. Ke2 {-240/8 419ms} 25... Nxe3 {926/15
    474ms} 26. fxe3 {-240/8 406ms} 26... Rd2+ {836/11 443ms} 27. Kf3 {-234/8 404ms}
    27... Qf6+ {855/12 444ms} 28. Qf4 {-233/8 165ms} 28... Qxf4+ {888/9 311ms} 29.
    exf4 {-222/9 366ms} 29... a5 {1019/12 409ms} 30. Ne2 {-188/9 223ms} 30... a4
    {1099/11 331ms} 31. Ng3 {-208/9 267ms} 31... Bd4 {1186/12 378ms} 32. Rc1
    {-239/9 176ms} 32... Rf2+ {1161/11 585ms} 33. Ke4 {-278/8 446ms} 33... Bb2
    {1048/10 534ms} 34. Rg1 {-302/9 486ms} 34... Rc2 {1134/11 326ms} 35. Kd3
    {-298/10 359ms} 35... Rc3+ {1078/13 570ms} 36. Kd2 {-298/8 355ms} 36... Rxc5
    {1128/14 514ms} 37. Ne4 {-316/9 436ms} 37... Rc7 {1092/13 322ms} 38. Rd1
    {-301/7 466ms} 38... a3 {1182/12 392ms} 39. Nd6+ {-529/8 239ms} 39... Kd8
    {1228/12 464ms} 40. Ke3 {-531/8 349ms} 40... Ke7 {1281/11 406ms} 41. Nb5
    {-507/7 338ms} 41... Rc1 {1275/11 511ms} 42. Nxa3 {-830/9 294ms} 42... Bxa3
    {1520/12 382ms} 43. Rxc1 {-554/9 144ms} 43... Bxc1+ {1563/11 320ms} 44. Kf3
    {-613/9 163ms} 44... b5 {1603/11 841ms} 45. g3 {-583/10 295ms} 45... b4
    {1671/10 485ms} 46. Ke2 {-640/11 133ms} 46... b3 {1609/9 465ms} 47. Kd3
    {-646/11 343ms} 47... b2 {1710/11 260ms} 48. Kc2 {-614/11 351ms} 48... e5
    {1527/10 251ms} 49. fxe5 {-618/10 178ms} 49... Ke6 {1773/10 301ms} 50. g4
    {-660/11 264ms} 50... Kxe5 {1664/10 377ms} 51. Kb1 {-856/11 164ms} 51... Bh6
    {1492/9 331ms} 52. Kxb2 {-595/11 174ms} 52... Bf4 {1578/11 383ms} 53. h3
    {-591/11 236ms} 53... Ke4 {1703/11 197ms} 54. Kc3 {-586/10 161ms} 54... Kf3
    {1679/10 237ms} 55. Kd4 {-605/12 286ms} 55... Bg3 {1722/10 250ms} 56. Kd5
    {-552/11 164ms} 56... h6 {1815/12 369ms} 57. Kc6 {-556/12 244ms} 57... Kg2
    {2183/13 407ms} 58. Kd7 {-622/13 340ms} 58... Kxh3 {2881/14 364ms} 59. Ke7
    {-622/11 428ms} 59... Kxg4 {3167/12 228ms} 60. Kf6 {-1425/12 175ms} 60... h5
    {3153/12 239ms} 61. Ke7 {-1525/13 297ms} 61... h4 {3664/12 396ms} 62. Kf6
    {-1482/12 223ms} 62... Bd6 {3873/12 193ms} 63. Kg7 {-1531/12 455ms} 63... h3
    {4965/13 400ms} 64. Kg8 {-20837/11 445ms} 64... Bf4 {4543/12 294ms} 65. Kg7
    {-1617/11 220ms} 65... f5 {4742/14 386ms} 66. Kf6 {-1678/12 395ms} 66... Bg5+
    {4911/13 605ms} 67. Ke5 {-1659/10 461ms} 67... f4 {4583/12 301ms} 68. Kd4
    {-20775/10 190ms} 68... f3 {4407/11 209ms} 69. Kd3 {-21020/11 196ms} 69... Kg3
    {4490/13 405ms} 70. Ke4 {-21021/11 200ms} 70... h2 {5083/10 166ms} 71. Kd4
    {-21092/10 482ms} 71... Kg2 {4087/11 367ms} 72. Ke5 {-21027/11 287ms} 72... Kf1
    {4553/11 240ms} 73. Kf5 {-20720/11 501ms} 73... f2 {5209/12 238ms} 74. Kxg5
    {-20739/11 301ms} 74... h1=Q {5275/12 326ms} 75. Kf6 {-2305/9 307ms} 75... Kg2
    {M7/14 448ms} 76. Ke5 {-2175/8 235ms} 76... f1=Q {M6/13 208ms} 77. Ke6 {-2207/7
    512ms} 77... Qh5 {M4/13 224ms} 78. Kd6 {M-33463/8 227ms} 78... Qff7 {M3/9 20ms}
  3. Kc6 {M-33464/9 354ms} 79... Qhd5+ {M2/121 144ms} 80. Kb6 {M-33465/8 529ms}
    80... Qfb7# {M1/121 69ms} 0-1

[Event "?"]
[Site "?"]
[Date "2022.05.23"]
[Round "1.3"]
[White "Minic 3.19"]
[Black "MORA"]
[Result "1-0"]
[PlyCount "155"]

  1. e4 {53/10 201ms} 1... Nc6 {3/7 298ms} 2. d4 {149/11 336ms} 2... d5 {-13/8
    205ms} 3. exd5 {102/11 335ms} 3... Qxd5 {5/8 286ms} 4. Nf3 {76/10 267ms} 4...
    Bf5 {5/7 528ms} 5. Nc3 {152/9 189ms} 5... Qe6+ {-54/7 318ms} 6. Be3 {249/10
    369ms} 6... O-O-O {-71/7 120ms} 7. d5 {169/12 220ms} 7... Qf6 {41/7 224ms} 8.
    Bb5 {210/12 369ms} 8... Nb4 {64/6 108ms} 9. O-O {292/12 361ms} 9... Nxc2 {79/7
    143ms} 10. Bg5 {304/12 216ms} 10... Qg6 {63/7 132ms} 11. Rc1 {241/10 392ms}
    11... a6 {38/7 206ms} 12. Be2 {366/11 384ms} 12... h6 {5/7 335ms} 13. Bh4
    {629/11 352ms} 13... Qh7 {-21/6 175ms} 14. g4 {632/12 402ms} 14... Bxg4 {-102/8
    265ms} 15. Qxc2 {628/11 238ms} 15... Qxc2 {-49/9 322ms} 16. Rxc2 {656/11 275ms}
    16... Nf6 {-84/8 180ms} 17. Ne5 {701/12 481ms} 17... Bf5 {-176/8 201ms} 18.
    Rcc1 {664/12 453ms} 18... Nxd5 {-170/8 217ms} 19. Nxf7 {725/11 458ms} 19...
    Nxc3 {-356/8 162ms} 20. Rxc3 {821/13 417ms} 20... Rd2 {-338/8 159ms} 21. Bg3
    {787/12 344ms} 21... e5 {-354/8 284ms} 22. Nxh8 {836/13 406ms} 22... Rxe2
    {-548/8 170ms} 23. Rf3 {877/12 332ms} 23... g6 {-577/9 243ms} 24. Nxg6 {1028/13
    277ms} 24... Bxg6 {-544/9 226ms} 25. Rxf8+ {1283/10 497ms} 25... Kd7 {-596/9
    256ms} 26. Rd1+ {1237/11 611ms} 26... Ke6 {-520/8 190ms} 27. a3 {1332/10 348ms}
    27... Rxb2 {-477/8 175ms} 28. Re1 {1286/11 461ms} 28... e4 {-484/8 454ms} 29.
    Rh8 {1263/9 297ms} 29... Rb3 {-470/9 397ms} 30. Re3 {1227/10 455ms} 30... Rxe3
    {-435/10 278ms} 31. fxe3 {1332/11 592ms} 31... c5 {-494/10 224ms} 32. Rd8
    {1308/10 477ms} 32... c4 {-447/10 190ms} 33. Be1 {1342/11 523ms} 33... Bf5
    {-365/9 207ms} 34. Kf2 {1415/11 453ms} 34... h5 {-380/9 311ms} 35. Bb4 {1370/11
    324ms} 35... h4 {-388/9 504ms} 36. Rd6+ {1268/11 662ms} 36... Ke5 {-386/10
    467ms} 37. Rb6 {1257/10 380ms} 37... Bc8 {-452/11 454ms} 38. Bc3+ {1352/10
    553ms} 38... Kd5 {-452/10 344ms} 39. a4 {1383/12 438ms} 39... Bd7 {-419/10
    187ms} 40. Rxb7 {1351/12 326ms} 40... Bxa4 {-440/11 214ms} 41. Rh7 {1452/13
    468ms} 41... Be8 {-465/10 174ms} 42. Rxh4 {1472/12 547ms} 42... Bb5 {-489/10
    160ms} 43. Rh5+ {1632/12 330ms} 43... Kd6 {-493/10 380ms} 44. h4 {1658/12
    263ms} 44... Kd7 {-619/9 193ms} 45. Rg5 {1957/11 293ms} 45... Bc6 {-973/9
    180ms} 46. h5 {2019/13 472ms} 46... a5 {-1394/9 222ms} 47. h6 {2013/12 420ms}
    47... a4 {-1518/9 217ms} 48. Ra5 {2010/12 368ms} 48... Kd6 {-1518/9 151ms} 49.
    h7 {1971/9 211ms} 49... Kc7 {-1545/8 240ms} 50. Rc5 {1907/10 264ms} 50... Kb6
    {-1481/9 414ms} 51. Rg5 {1907/11 222ms} 51... a3 {-1514/9 183ms} 52. Rg8
    {1790/11 412ms} 52... Bd5 {-1399/9 203ms} 53. Rd8 {1783/10 388ms} 53... Bc6
    {-1421/9 197ms} 54. Rb8+ {1894/9 295ms} 54... Ka7 {-1690/8 446ms} 55. Rg8
    {1794/11 358ms} 55... Bd5 {-1415/9 475ms} 56. Rg1 {1809/9 231ms} 56... Kb6
    {-1631/8 198ms} 57. Kg3 {1732/9 203ms} 57... a2 {-1501/9 379ms} 58. Kf4
    {2081/11 224ms} 58... Kb5 {-1529/9 436ms} 59. Rg2 {1725/10 383ms} 59... a1=Q
    {-1523/9 223ms} 60. Bxa1 {1632/13 600ms} 60... Bc6 {-1708/9 351ms} 61. Rg5+
    {1910/11 350ms} 61... Kb6 {-1560/8 469ms} 62. Bd4+ {1924/10 342ms} 62... Kb7
    {-1751/8 470ms} 63. Rg6 {1927/13 557ms} 63... c3 {-1789/9 186ms} 64. Rxc6
    {4114/12 361ms} 64... Kxc6 {-1708/12 430ms} 65. Bxc3 {3679/12 421ms} 65... Kd7
    {-1708/11 212ms} 66. Kf5 {4124/12 198ms} 66... Ke7 {-1708/11 464ms} 67. Bd4
    {4033/13 413ms} 67... Kd7 {M-33461/10 217ms} 68. Bb6 {3873/11 222ms} 68... Kc6
    {-1676/12 303ms} 69. Kxe4 {3468/11 312ms} 69... Kxb6 {-1323/12 215ms} 70. Kd5
    {3153/12 212ms} 70... Ka6 {M-33461/12 413ms} 71. e4 {3267/11 306ms} 71... Kb6
    {M-33461/12 389ms} 72. e5 {5297/14 335ms} 72... Kc7 {-2215/11 496ms} 73. e6
    {5744/15 300ms} 73... Kc8 {-20777/10 481ms} 74. h8=Q+ {M5/14 354ms} 74... Kc7
    {M-33462/10 493ms} 75. e7 {M3/5 16ms} 75... Kb7 {M-33463/10 438ms} 76. e8=Q
    {M3/22 263ms} 76... Kb6 {M-33463/8 484ms} 77. Qa8 {M2/121 136ms} 77... Kc7
    {M-33465/9 485ms} 78. Qa7# {M1/121 67ms} 1-0

[Event "?"]
[Site "?"]
[Date "2022.05.23"]
[Round "1.6"]
[White "MORA"]
[Black "Minic 3.19"]
[Result "0-1"]
[PlyCount "40"]

  1. d4 {38/8 145ms} 1... d5 {-30/9 255ms} 2. Nc3 {38/8 226ms} 2... Nf6 {6/9
    235ms} 3. Qd3 {40/7 314ms} 3... c5 {93/9 238ms} 4. dxc5 {9/7 147ms} 4... Nc6
    {77/9 336ms} 5. Bg5 {9/7 484ms} 5... d4 {230/10 366ms} 6. Ne4 {0/7 314ms} 6...
    Nxe4 {176/11 264ms} 7. Qxe4 {31/8 155ms} 7... g6 {197/10 362ms} 8. O-O-O {78/7
    147ms} 8... Bg7 {165/9 201ms} 9. e3 {83/7 253ms} 9... Bf5 {204/11 320ms} 10.
    Qf3 {82/7 157ms} 10... Qa5 {161/11 391ms} 11. exd4 {110/6 353ms} 11... Nxd4
    {268/10 263ms} 12. Qxb7 {114/7 149ms} 12... O-O {337/10 308ms} 13. Qxe7 {63/6
    357ms} 13... Qxa2 {1005/11 221ms} 14. Bf6 {-33/6 205ms} 14... Bh6+ {1108/13
    390ms} 15. Bg5 {-187/7 209ms} 15... Rfe8 {1177/11 294ms} 16. Qxe8+ {-187/7
    380ms} 16... Rxe8 {2041/13 265ms} 17. Be3 {-1049/8 368ms} 17... Rxe3 {M4/16
    303ms} 18. f4 {M-33463/8 247ms} 18... Bxf4 {M3/24 273ms} 19. Kd2 {M-33463/7
    362ms} 19... Nb3+ {M2/121 137ms} 20. cxb3 {M-33464/7 365ms} 20... Qxb2# {M1/121
    71ms} 0-1

[Event "?"]
[Site "?"]
[Date "2022.05.23"]
[Round "1.10"]
[White "MORA"]
[Black "Minic 3.19"]
[Result "0-1"]
[PlyCount "200"]

  1. Nf3 {18/8 165ms} 1... Nf6 {-25/10 343ms} 2. d4 {46/8 239ms} 2... d5 {-21/11
    342ms} 3. e3 {37/7 118ms} 3... e6 {-26/10 346ms} 4. Bb5+ {37/7 222ms} 4... Nbd7
    {2/10 288ms} 5. O-O {32/7 261ms} 5... Bd6 {8/9 255ms} 6. Qd3 {57/7 138ms} 6...
    c6 {191/10 213ms} 7. Ba4 {21/7 139ms} 7... b5 {176/10 385ms} 8. Bb3 {62/8
    301ms} 8... a5 {171/11 358ms} 9. a4 {15/7 190ms} 9... Ba6 {262/10 220ms} 10.
    axb5 {63/8 262ms} 10... cxb5 {261/11 399ms} 11. Nc3 {31/7 219ms} 11... a4
    {320/11 397ms} 12. Ba2 {-121/7 190ms} 12... b4 {434/11 324ms} 13. Nb5 {-138/8
    179ms} 13... Qb6 {533/13 345ms} 14. Nxd6+ {-226/8 176ms} 14... Qxd6 {613/11
    244ms} 15. c4 {-240/8 446ms} 15... bxc3 {639/13 387ms} 16. Qxc3 {-263/8 384ms}
    16... Bxf1 {648/13 313ms} 17. Kxf1 {-257/8 434ms} 17... Ne4 {652/12 432ms} 18.
    Qa3 {-268/8 306ms} 18... Qxa3 {781/11 262ms} 19. bxa3 {-270/9 217ms} 19... O-O
    {819/12 274ms} 20. Bb1 {-268/9 274ms} 20... Rfc8 {857/12 353ms} 21. Bd3 {-278/9
    378ms} 21... Rab8 {786/11 396ms} 22. Bd2 {-277/8 262ms} 22... Rb3 {941/11
    534ms} 23. Bxe4 {-255/8 405ms} 23... dxe4 {949/13 317ms} 24. Ng5 {-358/8 151ms}
    24... Nf6 {962/12 286ms} 25. Bb4 {-366/9 309ms} 25... h6 {1000/10 373ms} 26.
    Nh3 {-353/9 322ms} 26... Nd5 {1067/12 575ms} 27. Bc5 {-330/9 272ms} 27... Rcb8
    {1056/11 450ms} 28. Nf4 {-294/9 209ms} 28... Rb1+ {1316/15 406ms} 29. Rxb1
    {-371/10 335ms} 29... Rxb1+ {1323/17 532ms} 30. Ke2 {-371/10 472ms} 30... Nxf4+
    {1325/15 623ms} 31. exf4 {-261/9 210ms} 31... Rb2+ {1400/13 443ms} 32. Ke3
    {-278/11 386ms} 32... f5 {1376/12 369ms} 33. h3 {-278/12 305ms} 33... Kf7
    {1377/13 558ms} 34. Bd6 {-278/12 410ms} 34... Rb1 {1377/12 478ms} 35. Kd2
    {-278/11 463ms} 35... Rg1 {1384/12 669ms} 36. g3 {-279/11 158ms} 36... Rf1
    {1355/13 566ms} 37. Ke3 {-279/10 165ms} 37... Rd1 {1386/13 519ms} 38. Bc5
    {-279/11 439ms} 38... Rd3+ {1366/12 447ms} 39. Ke2 {-279/11 141ms} 39... g5
    {1402/12 286ms} 40. fxg5 {-261/10 171ms} 40... hxg5 {1377/12 513ms} 41. Kf1
    {-289/10 242ms} 41... f4 {1368/11 297ms} 42. gxf4 {-298/11 330ms} 42... gxf4
    {1393/13 493ms} 43. Kg2 {-312/11 239ms} 43... Kg6 {1435/13 375ms} 44. Bd6
    {-340/10 128ms} 44... Kf5 {1438/13 403ms} 45. Bc5 {-370/10 146ms} 45... e3
    {1459/11 217ms} 46. fxe3 {-392/10 146ms} 46... Rxe3 {1476/11 405ms} 47. h4
    {-393/10 161ms} 47... Kg4 {1459/13 192ms} 48. Kf2 {-416/10 216ms} 48... Rb3
    {1459/13 383ms} 49. Be7 {-424/10 317ms} 49... Rd3 {1436/14 231ms} 50. Bc5
    {-445/11 293ms} 50... Kxh4 {1483/13 238ms} 51. Ke2 {-449/10 293ms} 51... Rb3
    {1540/13 403ms} 52. Bd6 {-519/9 194ms} 52... f3+ {1482/12 216ms} 53. Ke1
    {-519/10 493ms} 53... Kg4 {1630/12 346ms} 54. Kf2 {-540/10 160ms} 54... Rd3
    {1654/12 247ms} 55. Bc5 {-568/11 266ms} 55... Kf4 {1719/14 401ms} 56. Kf1
    {-573/11 283ms} 56... Ke4 {1808/13 297ms} 57. Kf2 {-580/10 193ms} 57... Rd2+
    {1871/15 375ms} 58. Kf1 {-599/10 216ms} 58... Rxd4 {2185/15 344ms} 59. Bxd4
    {-511/11 447ms} 59... Kxd4 {2253/12 358ms} 60. Kf2 {-1315/15 191ms} 60... Ke4
    {2340/13 325ms} 61. Kg3 {-1448/15 215ms} 61... Ke3 {2510/13 250ms} 62. Kh3
    {-1448/13 484ms} 62... f2 {2774/14 414ms} 63. Kg4 {M-33461/13 456ms} 63... e5
    {3205/14 409ms} 64. Kf5 {-1553/11 463ms} 64... e4 {2644/11 203ms} 65. Ke5
    {-2015/11 242ms} 65... Kd3 {3377/13 417ms} 66. Kd6 {-2032/11 327ms} 66... e3
    {3195/11 357ms} 67. Kc6 {-2172/11 456ms} 67... Kc4 {3620/11 321ms} 68. Kd6
    {-2282/12 440ms} 68... e2 {3739/11 288ms} 69. Kc7 {M-33461/11 407ms} 69... Kb3
    {3595/9 242ms} 70. Kc6 {M-33461/10 218ms} 70... Kxa3 {3330/11 347ms} 71. Kc5
    {-2363/10 303ms} 71... Kb2 {2794/10 281ms} 72. Kb4 {-2115/8 486ms} 72... e1=N
    {4660/11 305ms} 73. Kxa4 {-20776/10 219ms} 73... Kc3 {5310/13 207ms} 74. Kb5
    {-20773/10 496ms} 74... Kd4 {5319/15 375ms} 75. Kc6 {-20838/11 214ms} 75...
    f1=B {5507/13 210ms} 76. Kd6 {-20892/11 218ms} 76... Bc4 {5553/14 255ms} 77.
    Kc6 {-20892/11 430ms} 77... Ke5 {5553/14 406ms} 78. Kc5 {-20898/12 314ms} 78...
    Bd5 {5553/14 207ms} 79. Kb4 {-20898/11 243ms} 79... Kd4 {5673/15 255ms} 80. Kb5
    {-20898/12 339ms} 80... Nc2 {5658/15 417ms} 81. Kb6 {-20899/12 437ms} 81... Ke5
    {5790/14 235ms} 82. Kc5 {-20899/11 304ms} 82... Ke6 {5792/15 237ms} 83. Kb6
    {-20899/12 292ms} 83... Kd7 {5790/15 266ms} 84. Kc5 {-20902/13 498ms} 84... Ba2
    {5793/16 325ms} 85. Kb5 {-20902/13 288ms} 85... Kd6 {5825/16 253ms} 86. Ka5
    {-20902/13 463ms} 86... Kc6 {5908/15 280ms} 87. Ka6 {-20906/12 279ms} 87... Nd4
    {5909/15 303ms} 88. Ka5 {-20906/12 449ms} 88... Kc5 {5909/17 325ms} 89. Ka4
    {-20906/13 331ms} 89... Nc2 {5911/16 279ms} 90. Ka5 {-20907/13 259ms} 90... Bb3
    {5912/17 320ms} 91. Ka6 {-20907/13 365ms} 91... Bd5 {6029/16 288ms} 92. Ka7
    {-20915/13 350ms} 92... Nd4 {M9/15 447ms} 93. Kb8 {-20916/11 498ms} 93... Ne6
    {M8/15 250ms} 94. Kc8 {-20925/12 204ms} 94... Kc6 {M7/16 285ms} 95. Kb8
    {-20925/12 277ms} 95... Kb6 {M6/17 253ms} 96. Kc8 {M-33461/12 252ms} 96... Bc6
    {M5/17 239ms} 97. Kb8 {M-33462/13 339ms} 97... Bd7 {M4/18 286ms} 98. Ka8
    {M-33463/14 418ms} 98... Nc5 {M3/39 212ms} 99. Kb8 {M-33464/14 392ms} 99...
    Na6+ {M2/121 77ms} 100. Ka8 {M-33465/14 250ms} 100... Bc6# {M1/121 30ms} 0-1

Transposition table return value

The probe_hash method returns an int value representing:

  • the score of the position if it was a hash table hit.
  • an error value -1 in case of a hash table miss.

The problem is that -1 could be a valid score for some positions, so in that case the search algorithm is not going to use that value because it will think the position was not found in the transposition table.
An easy fix would be to use a value outside the range of valid scores. Something better would be for the method to return a bool to indicate success and return the score changing an output parameter.

int probe_hash(Key key, int depth, int alpha, int beta, Move &pv_move) {
Hash_entry hash_entry = hash_table[key % hash_table.capacity()];
if (hash_entry.zobrist_key == key) {
pv_move = hash_entry.best_move;
if (hash_entry.depth >= depth) { // Only use a value obtained with a deeper or equal search
if (hash_entry.node_type == HASH_EXACT)
return hash_entry.score;
if (hash_entry.node_type == HASH_ALPHA && hash_entry.score <= alpha)
return alpha;
if (hash_entry.node_type == HASH_BETA && hash_entry.score >= beta)
return beta;
}
}
return -1;
}

int hash_score = probe_hash(pos.get_position_key(), depth, alpha, beta, pv_move);
if (hash_score != -1) {
return hash_score;
}

Search time overflow?

While running a tournament on Windows, the engine suddenly stopped playing moves. The last info command sent to the GUI showed that the search time was a negative number (so a timeout event never happened), which is a strong indicative of an overflow.
It is a major problem on Windows because the stop command is not implemented so the program can't recover from this error.

Error conditions:

Version: MORA 1.1.0
SO: Windows 10
GUI: Arena
Time Control: 40 moves in 1 minute, repetitive
Tournament elapsed time: like 4 hours.
System time: 16:30hs

This fragment should be tested:

long long get_current_time_in_milliseconds() {
milliseconds now = duration_cast<milliseconds>( // @suppress("Type cannot be resolved") // @suppress("Symbol is not resolved")
steady_clock::now().time_since_epoch() // @suppress("Function cannot be resolved") // @suppress("Method cannot be resolved")
);
return now.count(); // @suppress("Method cannot be resolved")
}

MORA crashes occasionally

Hi Gonzalo,

I'm trying to use MORA and I found it crashes occasionally.

Version: MORA 1.1.0
SO: Windows 10
GUI: command line / uci

Steps to reproduce:

uci
id name MORA
id author Gonzalo Arro
option name Hash type spin default 128 min 1 max 1024
uciok
isready
readyok
ucinewgame
isready
readyok
position fen rnbqkb1r/5ppp/p2ppn2/1p6/3NP3/2N1BP2/PPP3PP/R2QKB1R w KQkq b6 0 8 moves e1f2 a6a5 d4b5 a8a7 b5a7 h7h6 a7c8 a5a4 c8b6 f8e7 f1c4 e6e5 d1d2 g7g5 c3a4 e8g8 a4c3 g5g4 f3g4 d6d5 e4d5 d8b6 e3b6 b8c6 d5c6 e7d6 d2d6 h6h5 d6f6 g8h7 f6e5 f8e8 e5e8 f7f5 e8h5 h7g7 h5f5 g7h6 c6c7 h6g7 c7c8q g7h6
go depth 2
info score cp 4969 depth 1 nodes 83 time 4 pv c3b1

Thanks,
Mauricio

PS: good job with your chess engine!!!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.