Skip to content

adastra1826/Swift-UCI-Chess-Engine

Repository files navigation

This is currently a work in progress. It is not currently useable in any way except for responding to basic UCI prompts:

isready ->    readyok
uci ->        id name Peerless Chess Engine
              id author Nicholas Doherty
              readyok

Current package dependencies for logging: XCGLogger: https://github.com/DaveWoodCom/XCGLogger

Codebase Visualization: https://mango-dune-07a8b7110.1.azurestaticapps.net/?repo=adastra1826%2FSwift-UCI-Chess-Engine

It seems like the GUI I'm mainly testing with (SCID: https://scid.sourceforge.net) is unable to read Swift getline(), but it can see Swift print() statements. Therefore, it can see log statments directed to the terminal. A good GUI will ignore output it does not understand, and I have not yet discovered an issue with this. That said, input from the engine and output directed to the engine are specifically handled with C++ std::cin and std::cout. Additionally, log specific output can be directed to a .txt file. Engine specific output is easily distinguishable from log output, as logs have additional metadata besides the actual log statement.

About

Chess engine written in Swift that is UCI compatible. Input and output are handled with C++.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published