Hemos estado investigando y trabajando un poco con el motor de ajedrez que hemos seleccionado, Stockfish, y no hay una documentación muy clara de lo que hay que hacer, así que aquí damos una serie de pasos necesarios para que funcione todo. Suponemos que en el ordenador ya está instalada una versión actual de Python 3.x.
1 – Instalamos el módulo stockfish en Python. Este módulo es un interfaz o ‘wrapper’ entre Python y el motor de ajedrez. Existen varios interfaces disponibles pero éste nos ha parecido más completo. Para instalarlo en Windows se abre una ventana de comandos en el ordenador con cmd y se escribe pip install stockfish.
2 – Descargar el motor Stockfish de su página, pero hay un problema. La última versión actual (14.1) parece que tiene un conflicto con el interfaz, porque no es capaz de reconocer el número de versión. Mientras lo arreglan vamos a usar la versión anterior (14), que se puede descargar del enlace:
Nosotros hemos escogido la versión más compatible, ya que el ordenador donde vamos a trabajar con él no es muy moderno.
3 – Descomprimir el fichero descargado y copiar el programa ejecutable a una carpeta. Si se va a usar siempre con el mismo usuario, se puede colocar en cualquier carpeta, pero si se va a usar con otros usuarios entonces debe ser colocado en una carpeta pública. En nuestro caso lo hemos copiado a la carpeta de documentos públicos en ‘Usuarios’:
C:\Users\Public\Documents\Stockfish\stockfish_14_x64.exe
4 – Ya se puede usar el motor Stockfish desde Python. Abrimos una ventana de IDLE para probar.
5 – Tecleamos las siguientes instrucciones:
- from stockfish import *
- stock=Stockfish(r»C:\Users\Public\Documents\Stockfish\stockfish_14_x64.exe»)
Y vemos que se abre una ventana negra con el nombre del programa Stockfish. Ése es el motor funcionando.
6 – Podemos probar cualquier instrucción para comprobar que funciona, por ejemplo, la de escribir el tablero en la pantalla: print(stock.get_board_visual())
Ahora seguiremos trabajando con el motor e interfaz para construir el programa global.
Deja una respuesta