summaryrefslogtreecommitdiff
path: root/cmd
AgeCommit message (Collapse)Author
2022-01-23Highlight the previous move.Robby Zambito
This is particularly helpful when using the game to play on a real board
2022-01-21Add command line argument to print the final board as a scheme objectRobby Zambito
This could be useful to create a machine learning AI, which uses the final board for training. Also bubble up the final score and present it at the end of the game.
2022-01-21Fleshed out Scheme primitivesRobby Zambito
* Moved board specific functions from othello.h to new othello_board.h * Removed unused function pointer for player moves * Added prototypes in headers for SCM functions, including scm_get_current_player, * Made get_winner accept a board and current player. This is useful for predictions to see if some move would make the other player a winner. * get_winner also writes the players scores to provided pointers.
2022-01-18* Made print_board accept a board to print.Robby Zambito
* free_board should not return anything. * is_valid_move and has_valid_moves accept a board. * Implemented primitives for Scheme strategies to get the current player, and to get the board, and the validity of a move. * Removed game logic from is_valid_move. Instead simply apply the move to a temp board, and see if the move worked. * Created a very simple strategy for testing these primitives. It only hardcodes the first move, and then fails since that move is no longer valid.
2022-01-17Successfully read a move from schemeRobby Zambito
Also was able to print the current board from scheme, so we should be able to do basic analysis at least. Should add more primitives for use from scheme.
2022-01-05Open strategy files and pass them to the game loopRobby Zambito
Also fixed a bug where we could have gone off the upper bounds of the board.
2021-12-29Started parsing argumentsRobby Zambito
We will use this to load the strategy file for an AI player.
2021-12-29Do not pass board aroundRobby Zambito
Instead use the get_board() function to get a reference to the board.
2021-11-25Add empty statements to supress unused waringRobby Zambito
We will use these values eventually.
2021-11-21Added _GNU_SOURCE to every fileRobby Zambito
We are not aiming for high portability with this program. Anywhere that Guile is available, we should be able to access _GNU_SOURCE extensions.
2021-08-31Add GPLv3 and add copyright notice to each file.Robby Zambito
2021-07-25Replaced player_color type with equivalent player_color enumRobby Zambito
2021-07-25Return player_color from game_loop rather than char.Robby Zambito
The player_color type already is set to char, but this is a bit clearer as to what the actual return values are
2021-07-25Removed commented codeRobby Zambito
2021-07-25Initial commitRobby Zambito