Консольная игра «Морской бой» написанная на языке C++ с использованием Boost.Asio (TCP server/client) и рассчитанная на двоих игроков.
Каждый игрок на поле 8х8 располагает 10 кораблей:
- 1 четырёхпалубный (занимающий 4 клетки),
- 2 трёхпалубных,
- 3 двухпалубных,
- 4 однопалубных.
В данной программе расположение кораблей определяется случайным образом. Для этого необходимо указать сид как параметр командной строки при запуске программы.
Игроки делают выстрелы, не видя расположение кораблей соперника. При промахе ход передаётся другому игроку. При попадании даётся право ещё одного выстрела. Соперник сообщает результат выстрела — «мимо», «попал», «убил». Последний статус означает, что поражены все клетки, занимаемые кораблём.
Параметры запуска для сервера:
seabattle random_seed port
Параметры запуска для клиента:
seabattle random_seed ip_address port