Havoc (itch) (samuraigames1)
About
# Havoc
Gothic / Capablanca 10x8 Xboard chess engine. Written in C++17 language.
## Features
- Xboard protocol v2 supported
- Gothic + Capablanca _10x8_ variants supported
- Perft / print board / list / analyze ... supported
- Super fast movegenerator
- Extremely stable code
- OOP design. Small codebase
- Battle proven: 1,000s of games w/o issues
## Example game #1
```
[Event "Computer Chess Game"]
[Site "desktop"]
[Date "2022.09.17"]
[Round "-"]
[White "Havoc 2.6"]
[Black "Havoc 2.3"]
[Result "1-0"]
[TimeControl "60+2"]
[Variant "gothic"]
[Annotator "1. +0,37 1... +0,05"]
1. f4 {+0,37/10} e5 {+0,05/9 4} 2. g3 {+0,58/11 4} f5 {-0,22/7 4} 3. Bxb7
{+0,53/12 4} Bxb7 {+0,06/10 4} 4. Ac5+ {+0,65/12 4} Qe7 {-0,16/8 4} 5. Axb7
{+0,59/11 4} Nc6 {-0,19/8 4} 6. e4 {+0,52/10 4} Cb8 {+1,27/7 4} 7. Axa8
{+0,66/11 4} Cxa8 {+1,47/8 4} 8. exf5 {+0,65/9 4} Qf6 {+1,20/8 4} 9. Nh3
{+0,90/11 4} Ac4+ {+0,67/8 4} 10. d3 {+1,02/11 4} Aa5 {+0,22/9 4} 11. Ce4
{+1,67/12 4} Qxf5 {+0,06/8 4} 12. Cg5 {+1,75/11 3} Nh6 {-0,41/9 3} 13. O-O
{+1,96/11 3} exf4 {-0,66/9 3} 14. Bd2 {+2,34/11 3} Ab6 {-0,84/11 3} 15.
gxf4 {+2,42/10 3} Kg8 {-0,64/9 3} 16. Cxf5 {+2,24/10 3} Nxf5 {-0,58/11 3}
17. Qe2 {+2,18/10 3} Nfd4 {+0,00/12 3} 18. Qd1 {+0,00/11 3} Nf5
{+0,00/15 3} 19. Re1 {+2,10/11 3} g6 {-0,72/10 3} 20. Nc3 {+2,09/11 3} d5
{-0,49/10 3} 21. Ng5 {+2,19/9 3} Bf6 {-0,23/8 3} 22. Qe2 {+2,19/9 3} Cf8
{-0,38/9 3} 23. Qg2 {+2,19/10 3} Nh4 {-0,41/10 3} 24. Qi4 {+2,23/10 2,9}
Bxg5 {-0,55/9 2,9} 25. fxg5 {+2,36/10 2,9} Ni6 {-0,91/10 2,9} 26. Rf1
{+2,35/10 2,9} Ce6 {-0,61/10 2,9} 27. Rae1 {+2,57/10 2,8} Cg7 {-0,88/9 2,8}
28. Rf6 {+4,10/10 2,8} j5 {-2,94/8 2,8} 29. Qf4 {+5,27/11 2,8} Ad7
{-4,10/10 2,8} 30. Nxd5 {+5,50/11 2,7} Nxg5 {-4,71/10 2,7} 31. Qxg5
{+5,52/10 2,7} Ci6 {-6,55/10 2,7} 32. Rfe6 {+6,89/11 2,7} Cxg5
{-5,71/9 2,7} 33. Bxg5 {+9,12/12 2,7} Rj7 {-9,79/13 2,7} 34. Nf6+
{+9,83/12 2,6} Axf6 {-10,30/14 2,6} 35. Rxf6 {+9,86/13 2,6} h6
{-12,19/15 2,6} 36. Rxg6+ {+11,48/13 2,6} Kf8 {-11,71/14 2,6} 37. Rf6+
{+11,52/13 2,6} Kg7 {-12,18/16 2,6} 38. Rxc6 {+11,56/14 2,5} hxg5
{-12,07/15 2,5} 39. Rxc7+ {+11,60/14 2,5} Kf6 {-12,03/13 2,5} 40. Rxa7
{+12,46/14 2,5} j4 {-12,25/13 2,5} 41. Ree7 {+12,51/13 2,5} g4
{-12,44/14 2,5} 42. Rf7+ {+12,53/12 2,5} Ke5 {-12,84/14 2,5} 43. Rae7+
{+12,60/12 2,4} Kd5 {-12,70/13 2,4} 44. Re4 {+12,80/13 2,4} Rj6
{-12,73/12 2,4} 45. Rxi7 {+13,67/11 2,4} Rf6 {-12,23/11 2,4} 46. Re1
{+12,51/11 2,4} Rf2 {-12,30/12 2,4} 47. Rc1 {+13,56/12 2,4} Rf6
{-12,54/11 2,4} 48. Ri4 {+13,72/13 2,4} Rb6 {-13,23/14 2,4} 49. b3
{+13,78/14 2,4} Rg6 {-13,46/12 2,3} 50. Rg1 {+13,82/13 2,3} Rc6
{-13,71/12 2,3} 51. Ri5+ {+13,81/14 2,3} Kd4 {-13,42/14 2,3} 52. Rxg4+
{+13,82/13 2,3} Kc3 {-13,10/13 2,3} 53. Rc4+ {+17,98/15 2,3} Rxc4
{-12,82/16 2,3} 54. bxc4 {+20,35/18 2,3} Kb4 {-14,13/13 2,3} 55. Rj5
{+20,18/13 2,3} Ka4 {-14,55/13 2,3} 56. Kh1 {+21,95/13 2,3} j3
{-14,15/14 2,3} 57. ixj3 {+23,37/13 2,3} Kb4 {-14,83/14 2,3} 58. Kg2
{+23,38/13 2,2} Ka3 {-15,05/13 2,2} 59. c5 {+28,96/13 2,2} Kxa2
{-24,11/15 2,2} 60. c6 {+31,26/13 2,2} Kb2 {-24,79/14 2,2} 61. c7
{+31,35/12 2,2} Kb1 {-25,24/13 2,2} 62. c8=Q {+32,68/11 2,2} Kc1
{-25,12/12 2,2} 63. Qc3 {+104,85/8 1,1} Kb1 {-104,85/7 0,1} 64. Ra5
{+104,85/4 0,1} Kc1 65. Ra1# {+104,85/2 0,1}
{Xboard adjudication: Checkmate} 1-0
```
## Example game #2
```
[Event "Computer Chess Game"]
[Site "desktop"]
[Date "2022.09.18"]
[Round "-"]
[White "Havoc 2.6"]
[Black "Havoc 2.3"]
[Result "1-0"]
[TimeControl "60+1"]
[Variant "gothic"]
[Annotator "1. +0,36 1... +0,06"]
1. f4 {+0,36/10} e5 {+0,06/10 3} 2. g3 {+0,24/9 3} f5 {-0,22/7 3} 3. Bxb7
{+0,88/12 3} Bxb7 {+2,07/9 3} 4. Ac5+ {+0,36/11 3} Qe7 {-0,17/8 3} 5. Axb7
{+0,42/10 3} Nc6 {-0,02/6 3} 6. Cd3 {+0,35/9 2,9} Cb8 {+0,11/8 2,9} 7. Ac5
{+0,26/9 2,8} d6 {-0,08/8 2,8} 8. Ab3 {+0,37/9 2,8} Cxb3 {+0,12/8 2,8} 9.
axb3 {+1,51/9 2,7} O-O-O {+0,69/8 2,7} 10. Nh3 {+2,92/10 2,6} g5
{-0,33/8 2,6} 11. fxg5 {+3,48/10 2,6} d5 {-0,44/10 2,6} 12. O-O
{+3,52/10 2,5} a5 {-0,33/9 2,5} 13. Ra4 {+3,67/10 2,4} Ae6 {-0,71/8 2,4}
14. Cc3 {+3,69/10 2,4} Rd6 {-0,50/9 2,4} 15. Cb5 {+3,85/8 2,3} Qe8
{-0,77/7 2,3} 16. Rf1 {+4,04/7 2,3} Bg7 {-0,56/8 2,3} 17. d3 {+4,13/9 2,2}
h6 {-1,07/7 2,2} 18. Bd2 {+4,38/8 2,2} Nj6 {-1,24/7 2,2} 19. gxh6
{+4,95/8 2,1} Bxh6 {-1,28/7 2,1} 20. Bxa5 {+4,97/8 2,1} Qd7 {-2,03/6 2,1}
21. Bb4 {+9,03/11 2,1} Nb8 {-6,15/10 2,1} 22. Ca7+ {+9,40/12 2,0} Kd8 23.
Bxd6 {+9,18/11 2,0} Qxd6 {-6,79/8 2,0} 24. e4 {+9,40/10 1,9} fxe4
{-6,47/9 2,0} 25. dxe4 {+9,52/10 1,9} Ke7 {-7,00/9 2,0} 26. Nc3
{+9,80/8 1,9} Nc6 {-8,26/9 1,9} 27. Nxd5+ {+11,87/10 1,8} Kd7
{-10,41/11 1,9} 28. Cb5 {+12,02/8 1,8} Nh7 {-9,90/9 1,9} 29. Rc4
{+12,29/8 1,8} Bf8 {-10,00/9 1,8} 30. Rxc6 {+15,07/9 1,7} Axh3+
{-14,25/9 1,8} 31. ixh3 {+27,29/10 1,7} Qxc6 {-104,85/9 1,7} 32. Qg4+
{+104,85/8 0,6} Qe6 {-104,85/7 0,1} 33. Rf7+ {+104,85/6 0,1} Kd8
{-104,85/5 0,1} 34. Qxe6 {+104,85/4 0,1} Ng5 {-104,85/3 0,1} 35. Cb8#
{+104,85/2 0,1}
{Xboard adjudication: Checkmate} 1-0
```
## Pro version
Pro version comes w/ ability to tune your own net
```
#4 ( Rounds: 1000 / Games: 10 / Think: 5ms ) tuning started ...
+++ [ #1223: 8543ms ] [ 11 - 6 - 3 : 20 ] [ LOS: 88.7374 % ] [ 0.625 ] [ ELO diff: +88.7395 ]
#5 ( Rounds: 1000 / Games: 10 / Think: 5ms ) tuning started ...
+++ [ #142: 11369ms ] [ 11 - 7 - 2 : 20 ] [ LOS: 82.7111 % ] [ 0.6 ] [ ELO diff: +70.4365 ]
#6 ( Rounds: 1000 / Games: 10 / Think: 5ms ) tuning started ...
+++ [ #919: 9721ms ] [ 11 - 5 - 4 : 20 ] [ LOS: 93.3193 % ] [ 0.65 ] [ ELO diff: +107.538 ]
#7 ( Rounds: 1000 / Games: 10 / Think: 5ms ) tuning started ...
+++ [ #737: 7696ms ] [ 9 - 6 - 5 : 20 ] [ LOS: 78.0711 % ] [ 0.575 ] [ ELO diff: +52.5116 ]
#8 ( Rounds: 1000 / Games: 10 / Think: 5ms ) tuning started ...
=== [ #388: 9023ms ] [ 9 - 9 - 2 : 20 ] [ LOS: 50 % ] [ 0.5 ] [ ELO diff: -0 ]
#9 ( Rounds: 1000 / Games: 10 / Think: 5ms ) tuning started ...
=== [ #477: 10699ms ] [ 8 - 8 - 4 : 20 ] [ LOS: 50 % ] [ 0.5 ] [ ELO diff: -0 ]
#10 ( Rounds: 1000 / Games: 10 / Think: 5ms ) tuning started ...
--- [ #1006: 9863ms ] [ 5 - 12 - 3 : 20 ] [ LOS: 4.47775 % ] [ 0.325 ] [ ELO diff: -126.968 ]
#11 ( Rounds: 1000 / Games: 10 / Think: 5ms ) tuning started ...
--- [ #444: 8420ms ] [ 8 - 11 - 1 : 20 ] [ LOS: 24.5649 % ] [ 0.425 ] [ ELO diff: -52.5116 ]
#12 ( Rounds: 1000 / Games: 10 / Think: 5ms ) tuning started ...
+++ [ #1049: 10031ms ] [ 11 - 5 - 4 : 20 ] [ LOS: 93.3193 % ] [ 0.65 ] [ ELO diff: +107.538 ]
#13 ( Rounds: 1000 / Games: 10 / Think: 5ms ) tuning started ...
```
```
havoc-2.6-pro-x86-linux-64bit # Linux version
havoc-2.6-pro-x86-windows-64bit.exe # Windows version
```
## Free version (v2.6)
As pro version but w/o tuning functionality
```
havoc-2.6-free-x86-linux-64bit # Linux version
havoc-2.6-free-x86-windows-64bit.exe # Windows version
```
## Usage
Havoc is like any standard chess engine. Except only Gothic and Capablanca _10x8_ chess are supported
## License
Private. Only for personal usage.