- Navigate to the
src/tcp_server
folder. - Build the server using the Makefile:
make server
. - Run the server with
./binaries/game_tcp_server
.
- Navigate to the
src/client
folder. - Build the client using the Makefile:
make client
. - Run the client with
./binaries/game_client
.
Build and run the tests using the Makefile: make test
.
- Connect two clients to the server.
- Clients will be assigned 'X' and 'O'.
- Use the following format to make a move:
X<space>Y
whereX
andY
are the coordinates (0-2). - Example:
1 1
represents placing a symbol in the center.
- The server uses a simple TCP connection to handle two clients.
- The Tic Tac Toe game logic is implemented in the
TicTacToe
class. - The server and client communicate using a custom protocol for moves and messages.
The repository is configured with GitHub Actions to automate the build and release process:
- Automatically builds and tests the project on every push to the main branch.
- Checks for any build or test failures.
- Generates a release when code is merged into the main branch.
- The release includes the compiled binaries for the server (
game_tcp_server
) and client (game_client
). - The release is tagged with the format
v1.x
wherex
is the GitHub Actions run number.
To download the released binaries, navigate to the Releases section on GitHub.
Feel free to explore and modify the code and GitHub Actions workflows for your needs!