Skip to content

How To Use

Juules32 edited this page Sep 29, 2024 · 1 revision

Once you have your executable running, the main way to interact with the engine is through UCI commands:

  1. [quit | exit]
  • Terminates the program.
  1. ucinewgame
  • Shorthand for position startpos, which starts a new game.
  1. position [<preset> | <fen_string>] [moves <move1> <move2> ...]
  • Used to set the position to the given input.
  • Presets include: startpos, trickypos, killerpos, and others.
  • A <fen_string> can be used instead (without quotation marks).
  • Then comes a list of moves to make after setting the position. The moves must be written in the form <start_square><end_square>.
  • For example, a valid command could be: position startpos moves e2e4 e7e5 g1f3, which sets up the starting position and goes into the King's Knight Variation.
  1. go depth <plies>
  • Determines and returns the best move N plies (half-moves) into the future.
  1. go perft <plies>
  • Used for debugging and performance purposes. For each available move, it displays the number of possible game states N plies into the future.
Clone this wiki locally