I'm looking to try and write a chess AI. Is there something i can use on the .NET framework (or maybe even a chess program scripted in Lua) that will let me write and test a chess AI without worrying about actually makign a chess game?
            Asked
            
        
        
            Active
            
        
            Viewed 1.6k times
        
    14
            
            
        - 
                    4Good luck! Writing a good chess engine is notoriously difficult. – Steve K Nov 20 '09 at 09:41
 
4 Answers
23
            Not sure about what you are trying to do.
If you are looking for a ready-to-use chess GUI, you can use WinBoard. It is completely decoupled from the underlying chess engine(s), thanks to an established communication protocol. Your chess engine thus becomes a console app exchanging commands with the GUI.
A more modern alternative following the same concept is UCI. A GUI supporting UCI is Arena.
        AndreaG
        
- 1,106
 - 2
 - 12
 - 28
 
- 
                    1
 - 
                    4Sorry, didn't mean to be snarky. Just prefer the term "chess gui" instead of "chess game", which is quite ambiguous. By the way, http://www.gamedev.net/reference/programming/features/chess1/ is a very good tutorial on building a chess engine, in case you didn't know it already. – AndreaG Nov 20 '09 at 10:03
 
15
            
            
        I write a Computer Chess Blog that takes you through all the steps of writing a chess engine in C# from scratch, it includes a computer chess links section and a chess game starter kit.
Adam Berent
        Adam Berent
        
- 1,992
 - 19
 - 21
 
- 
                    1Nice work. Have you considered turning the BoardEvaluation class into an interface (IBoardEvaluation)? Developers could then plug their own Evaluation classes in. – Lee Smith Dec 03 '09 at 17:55
 
4
            
            
        Here are some open source chess boards / games that run on Windows.
        Stephen C
        
- 698,415
 - 94
 - 811
 - 1,216
 
1
            
            
        - Use one of the open source chess games.
 - Figure out the interface that decides the computer's next move.
 - Implement your own AI using the same interface and remove the user interface part.
 - Compare your AI to the included one.
 - Fun!
 
        Sebastian
        
- 4,802
 - 23
 - 48