The function create_board(size) creates a square game board filled with zeros and places a 1 in the center cell. Only the center cell should be 1 — all other cells should be 0.
Instead, every row in the board gets the 1, not just the middle one. Changing one cell somehow changes all of them.
The board-creation line looks completely normal. What is * size actually doing to the rows?