Friday, May 5, 2017

Skiull 0.2 released

Download link



Please don't mirror the download link, just send it to this page!!

I'm sure that this engine is not bug free!!
Any bug report will be appreciated!!

Only (for now) Windows 64-bit with popcount and without it




What's new



  • Refactored Make and Unmake move, gave in start position like 600kns more
  • Added Transposition table, up to 2048MB, default 16MB
  • Added repetition detection (but in some games still repeat even winning)
  • Added null move
  • According to 1m + 1s 1000 games should be like ~1750 ELO CCRL 40/4
    • vs Skiull 0.1: +228 ELO
    • vs Pigeon 1.5.0: -22 ELO


Saturday, October 22, 2016

Skiull 0.1 chess engine download

Well, today is the day... a modified version of Stockfish, is not a clone because I modified part of the code, you know, you can't create a chess engine from scratch, that's impossible!!! nah just kidding!!


Image from Google is NOT mine


Download link



Please don't mirror the download link, just send it to this page!!

I'm sure that this engine is not bug free!!
Any bug report will be appreciated!!

No 32-bits plan because I don't have 32-bits systems to test it
With popcnt enabled and without it





http://www.mediafire.com/file/sw5aw2thgpdi3k5/skiull-0.1-x64.zip
Files hosted on Mediafire


03/11/2016 Update!
Added macOS binaries

The zip file contains binaries for:

Operating system Compiled with
Windows MSVC 2013
GNU/Linux gcc 6.1.2
macOS gcc 4.2.1 LLVM 8.0.0



A little story


I discovered the chess engine world in ~2010, I'm self-taught programmer, I started programming in  ~2000, Visual Basic 6.0 ☻, then ASP, PHP, C#, C/C++, not much about C++


Since 2013 I started "programming" a chess engine, watching the youtube videos: Chess Engine In C a chess engine called Vice (Video Instructional Chess Engine) from BlueFeverSoft

After that I just modified the Vice to play "better", but never released


Tests



This is the very first version and it's weak, can't even win against Pigeon 1.5.0, so I think it's like ~1500 ELO
I have tested others weak engines but there were not 100% functional, the only one that worked fine was Pigeon developed by Stuart Riffle


Programming language



Skiull it's developed in C99 and it's almost a total rewrite, "almost" because shares little things from Vice that I will improve later...


Features



  • Implements the UCI protocol that I also took from Vice with some minors improvements
  • Just a plain vanilla alphabeta search, no extensions, no reductions, no killers, no history moves... no nothing
  • No transposition table
  • Quiescence search, I don't qsearch when in check, I skip all moves that gives checks in qsearch, and recently discovered that suffers search explosion with this posistion: r4rk1/1ppqbpp1/2npbn1p/4p3/p1P1P3/3PBN2/PP1NBPPP/2RQ1RK1 w - - 0 1, as you can see it takes some time to show the pv and spent too much time in qsearch, look the qnodes and nodes
  • Very basic eval, just the PST from CPW and nothing more
  • Magic moves from Pradu Kannan (I'm trying to do one by myself)
  • Bitboard move generator, the one that is implemented in Sungorus or called Kindergarten bitboard (sorry I was confused with the term, it implements magic move generator)
  • MakeMove and UnmakeMove are exactly from Vice but with bitboards, I will try to improve this
  • The move encode are also from Sungorus:
    #define ENCODE_MT(mt, to, fr) ((mt) << 12 | (to) << 6 | (fr))
    I know I can improve this
  • In the pv only print the root move
  • Same time management as Vice


Non UCI standard commands


When you start Skiull, it will be in "console" mode you can type:

perftsuite [depth]

Default depth it's 6
The file: my_perftsuite.epd should be in the same directory as Skiull, you can download it from here

perftrookie [depth]

Default depth it's 6
The file: perft-random.epd, like 6000+ positions (Copyright (C) 2007, 2008 by Marcel van Kervinck, thanks Marcel) should be in the same directory as Skiull, you can download it from here

divide [depth] [fen]

Default depth it's 6
Default fen is startpos

 perft [depth] [fen]

Default depth it's 6
Default fen is startpos


Chess GUIs



Skiull is a console program, so I recommend to play with a chess GUI like




Where comes the name?


The name Skiull comes from putting together Skill and Skull, a skull with skills? maybe... but not like Ghost Rider... bad movie


Many thanks to..