Репозиторий содержит игру "Герои" которая представляет из себе аватарку популярной игры Disciples. Играть могут как люди так и боты, также бот против человека и бот против бота, бот играет не оптимально(делает рандомные ходы из доступных).
Игра сделана как клиент-сервер, отдельно запускается Server и отдельно четное кол-во клиентов(Client) - пакет simpleSockets. Клиенты распределяются в игровые комнаты(GameRoom) по 2 в каждую, настройки сервера игры такие как макс. кол-во игроков, макс. кол-во комнат, макс.время ответа и т.д. содержатся в server.properties файле. В пакете additional содержатся доп. модули для сбора и анализ статистики игр между игроками/ботами. Диаграмма классов(uml) проекта - heroesGameDiagram.
Более подробное описание правил игры
Презентация с описанием игры
Для игры есть "умный бот" который содержит ИИ реализующее 2 игровые стратегии - https://github.com/acdemeg/Hero_Game_Project_SmartBot .
Вариант 1
В пакете simpleSockets запустить Server
Запустить Client, ввести имя и выбрать режим
В конфигурация запуска должно быть разрешение на параллельный запуск Client, запускаем второго и последующего клиентов
Вариант 2 (С "умным ботом")
Собрать проект mvn package
Запустить Heroes_Game-1.0.jar
Собрать проект Hero_Game_Project_SmartBot
Запустить Heroes_Game-1.0.jar внутри Hero_Game_Project_SmartBot
Либо запустить Client внутри Heroes_Game
Игра была создана с использованием Java 11+, jUnit 4, Swing, Jackson Framework, Maven, Opencsv, Lanterna, Slf4J, Logback, JMathPlot.
Начало игры
Процесс игры
Пример лога игры
Пример файла статистики игр