Chesser: A Chess Engine derived from wingletx by Syed Fahad
Moderators: hgm, Harvey Williamson, bob
Forum rules
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
- vittyvirus
- Posts: 641
- Joined: Wed Jun 18, 2014 12:30 pm
Chesser: A Chess Engine derived from wingletx by Syed Fahad
"Chesser is a Bitboard chess engine based on Stef Luijten's Winglet Chess
Engine. This program came into existence because I saw a huge room for
improvement in Winglet."
My first Chess Engine!
https://sourceforge.net/projects/chesser/
Chesser code has lots and lots of speed-ups and new things...
I've done lots and lots of speed-ups, and heavily tweaked the evaluation function. Although it does a perfect score against wingletx at times, my tests show it's around 2000...
The download includes the 32-bit executables and source for Chesser and wingletx. My compiler (MSVC++ 2010 Express) doesn't support 64-bit for now. So please compile for 64-bits if you can!!! The project files for Chesser are also included.
I'd also request CCRL to test this Winboard engine...
Engine. This program came into existence because I saw a huge room for
improvement in Winglet."
My first Chess Engine!
https://sourceforge.net/projects/chesser/
Chesser code has lots and lots of speed-ups and new things...
I've done lots and lots of speed-ups, and heavily tweaked the evaluation function. Although it does a perfect score against wingletx at times, my tests show it's around 2000...
The download includes the 32-bit executables and source for Chesser and wingletx. My compiler (MSVC++ 2010 Express) doesn't support 64-bit for now. So please compile for 64-bits if you can!!! The project files for Chesser are also included.
I'd also request CCRL to test this Winboard engine...
'I would only believe in a god who could dance.' - Friedrich Nietzsche
Re: Chesser: A Chess Engine derived from wingletx by Syed Fa
I tried compiling Chesser on VS2013, but it fails due to massive amounts of linker errors caused by multiply defined objects. On a quick glance the cause is globals.h and the plain variables contained within. If you have something like "int DISTANCE[64][64];" in a header file in the global namespace every time the file is included somewhere else the variable is duplicated which causes severe problems for the linker leading to the errors. Do you get any warnings or errors related to this?
Functional programming combines the flexibility and power of abstract mathematics with the intuitive clarity of abstract mathematics.
https://github.com/mAarnos
https://github.com/mAarnos
- vittyvirus
- Posts: 641
- Joined: Wed Jun 18, 2014 12:30 pm
Re: Chesser: A Chess Engine derived from wingletx by Syed Fa
Thank you!Bloodbane wrote:I tried compiling Chesser on VS2013, but it fails due to massive amounts of linker errors caused by multiply defined objects. On a quick glance the cause is globals.h and the plain variables contained within. If you have something like "int DISTANCE[64][64];" in a header file in the global namespace every time the file is included somewhere else the variable is duplicated which causes severe problems for the linker leading to the errors. Do you get any warnings or errors related to this?
You can solve the problem by simply by turning on /FORCE:MULTIPLE
Goto Project Properties->Linker->General->Force File Output and turn it on.
Should solve the problem immediately.
'I would only believe in a god who could dance.' - Friedrich Nietzsche
Re: Chesser: A Chess Engine derived from wingletx by Syed Fa
The code is compiled by adding the flag.
But you have not put popcnt to 64 bits or Bitscanforward,, ..
You lose a lot of speed,
Winglet is a good choice to keep improving.
But you have not put popcnt to 64 bits or Bitscanforward,, ..
You lose a lot of speed,
Winglet is a good choice to keep improving.
Re: Chesser: A Chess Engine derived from wingletx by Syed Fa
That worked, but I would suggest getting rid of the problem instead of working around it by messing with the linker. Anyways, here's the link to the x64 version.
http://www.filedropper.com/chesser
http://www.filedropper.com/chesser
Functional programming combines the flexibility and power of abstract mathematics with the intuitive clarity of abstract mathematics.
https://github.com/mAarnos
https://github.com/mAarnos
- vittyvirus
- Posts: 641
- Joined: Wed Jun 18, 2014 12:30 pm
Re: Chesser: A Chess Engine derived from wingletx by Syed Fa
Can you email it to me? sydfhd@gmail.comBloodbane wrote:That worked, but I would suggest getting rid of the problem instead of working around it by messing with the linker. Anyways, here's the link to the x64 version.
http://www.filedropper.com/chesser
'I would only believe in a god who could dance.' - Friedrich Nietzsche
- vittyvirus
- Posts: 641
- Joined: Wed Jun 18, 2014 12:30 pm
Re: Chesser: A Chess Engine derived from wingletx by Syed Fa
Unfortunate enough, my compiler didn't seem to support popcnt64 or _BitScanForward64()velmarin wrote:The code is compiled by adding the flag.
But you have not put popcnt to 64 bits or Bitscanforward,, ..
You lose a lot of speed,
Winglet is a good choice to keep improving.
'I would only believe in a god who could dance.' - Friedrich Nietzsche
Re: Chesser: A Chess Engine derived from wingletx by Syed Fa
Fully agreed. However, the source of the problem is already in Winglet and most probably Syed was not aware of it.Bloodbane wrote:That worked, but I would suggest getting rid of the problem instead of working around it by messing with the linker.
@Syed: Chesser.vcxproj has wrong path names for magicmoves.c and magicmoves.h, these need to be fixed.
Re: Chesser: A Chess Engine derived from wingletx by Syed Fa
Congratulations!!vittyvirus wrote:"Chesser is a Bitboard chess engine based on Stef Luijten's Winglet Chess
Engine. This program came into existence because I saw a huge room for
improvement in Winglet."
My first Chess Engine!
https://sourceforge.net/projects/chesser/
Daniel José -
http://www.andscacs.com
- vittyvirus
- Posts: 641
- Joined: Wed Jun 18, 2014 12:30 pm
Re: Chesser: A Chess Engine derived from wingletx by Syed Fa
Oh, I didn't notice that... I'd fix it soon. Thanks!Sven Schüle wrote:Fully agreed. However, the source of the problem is already in Winglet and most probably Syed was not aware of it.Bloodbane wrote:That worked, but I would suggest getting rid of the problem instead of working around it by messing with the linker.
@Syed: Chesser.vcxproj has wrong path names for magicmoves.c and magicmoves.h, these need to be fixed.
'I would only believe in a god who could dance.' - Friedrich Nietzsche


