Closed Slivki-coder closed 10 months ago
For the first move, your engine will receive a go movetime x
command and not a go wtime x btime x winc x binc x
. This command means that the engine mut search for exactly this amount of time. Your uci_loop()
doesn't support such a command.
First move engine communication:
2023-11-18 16:46:01,220 chess.engine (engine.py:1062) DEBUG <UciProtocol (pid=16956)>: << ucinewgame
2023-11-18 16:46:01,220 chess.engine (engine.py:1062) DEBUG <UciProtocol (pid=16956)>: << isready
2023-11-18 16:46:01,313 chess.engine (engine.py:1088) DEBUG <UciProtocol (pid=16956)>: >> readyok
2023-11-18 16:46:01,314 chess.engine (engine.py:1062) DEBUG <UciProtocol (pid=16956)>: << position startpos moves d2d4
2023-11-18 16:46:01,314 chess.engine (engine.py:1062) DEBUG <UciProtocol (pid=16956)>: << go movetime 10000
2023-11-18 16:46:01,315 chess.engine (engine.py:1088) DEBUG <UciProtocol (pid=16956)>: >> info string NNUE evaluation using nn-ea57bea57e32.nnue enabled
2023-11-18 16:46:01,316 chess.engine (engine.py:1088) DEBUG <UciProtocol (pid=16956)>: >> info depth 1 seldepth 1 multipv 1 score cp -34 nodes 20 nps 10000 hashfull 0 tbhits 0 time 2 pv d7d5
2023-11-18 16:46:01,317 chess.engine (engine.py:1088) DEBUG <UciProtocol (pid=16956)>: >> info depth 2 seldepth 2 multipv 1 score cp -34 nodes 40 nps 20000 hashfull 0 tbhits 0 time 2 pv d7d5
Later move engine communication:
2023-11-18 16:46:12,437 chess.engine (engine.py:1062) DEBUG <UciProtocol (pid=16956)>: << position startpos moves d2d4 d7d5 c2c4
2023-11-18 16:46:12,438 chess.engine (engine.py:1062) DEBUG <UciProtocol (pid=16956)>: << go wtime 180000 btime 177998 winc 0 binc 0
2023-11-18 16:46:12,448 chess.engine (engine.py:1088) DEBUG <UciProtocol (pid=16956)>: >> info string NNUE evaluation using nn-ea57bea57e32.nnue enabled
2023-11-18 16:46:12,449 chess.engine (engine.py:1088) DEBUG <UciProtocol (pid=16956)>: >> info depth 1 seldepth 1 multipv 1 score cp -6 nodes 35 nps 3888 hashfull 0 tbhits 0 time 9 pv d5c4
thanks that resolved the issue
I made my chess engine in python a few days ago and today I tried to put it on lichess. I converted it to an exe file using pyinstaller and then followed the instructions on this website. when I start up the engine in my cli it starts returning error like this:
The engine is online on lichess but it does not make moves until I log into the bot account and do the firstmove mannually. It plays normally after I do this and I think it is because lichess does not start the clocks until each player made a move. Do I need to change anything in the config.yml file? Here is my uci loop, if anyone could tell me where my mistake is I would be very grateful.
The engine works fine in arena chess GUI