I'm building chess engine in c++. Engine is based on Bitboards and MagicBitboards. It uses alpha-beta pruning and quisance search
On Windows you can just open chess_engine.sln in Visual Studio and compile it.
- Clone repository
git clone https://github.com/pietraldo/chess_engine.git- Go to folder
cd chess_engine
cd chess_engine- Compile
g++ -O3 -march=native -o kuba_engine prog.cpp Game.cpp Functions.cpp MoveGeneration.cpp UciTranslator.cpp variables.cpp MagicBitboards.cpp GamePrepare.cpp Evaluation.cpp -lm- Turn on Engine
./kuba_engineI have implemented so far few UCI commends:
Starting position
position startposFen position
position fen xgo perft xgo depth xHere's the plan:
- Figure out the magic numbers
- Get the move generation working
- Test the move generation
- Speed up the move generation
- Create a way to evaluate the game state
- Build a function to find the best move
- Meet the UCI standards for chess engines
- Make Transposible Table
- Make Multithreading