C# Chess Game that enables a user to play chess against the computer. Developed using C# (C Sharp) and the Microsoft DotNet framework.
It plays a challenging, and I'm told "fun", tactical game of chess.
I'd like to improve the computational speed and overall playing strength of the engine by getting other developers to contribute to the project.
A well-designed, and hopefully easy-to-understand, object-model that will enable other developers to quickly get involved in the project.
Play the against computer opponent Graphical chess board Helpful high-lighting of legal chess moves are when clicking on a piece Real-time chess clocks Move history displayed Load/Save chess games during play Undo/Redo moves See real-time computer thinking See post-analysis tree of all moves considered by computer Stalemate and 3-move repetition detection
Alpha-Beta search with Pricipal-variation (PVS) Iterative Deepening Hashtable (transition) using Zobrist Keys Null-move forward pruning (verified and non-verified) 0x88 board representation Move ordering using Hash table and History Heuristic Quiescience Search with (MVV/LVA and SEE) Search Extensions (Check, Re-Capture, Pawn-promotion) Futility pruning (Standard & Extended) "n moves in x minutes" Move time-allocation algorithm