Using stockfish for a chess program. It gives the same moves every time for any position. It even opens with the same moves.
I'm using the python-chess library for communicating with stockfish I'm not sure if that's where the issue lies or if it's something else.
engine = chess.engine.SimpleEngine.popen_uci(
r"engine/stockfish_14.1_win_x64_popcnt/stockfish_14.1_win_x64_popcnt.exe")
Stockfish plays the move it thinks is best in any given position. That is why it will always give you the same move if you feed it the same position and give it the same amount to think.
In engine vs engine tournaments they often play according to given opening positions. The first X moves are therefore given and then the engines will play on from there by themselves. This way the games will be different most of the times, otherwise the games would look the same no matter how many times they played.