Skip to content

Chessmatus/chess_game_pythonCourseProject2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Многопользовательская игра Chess

  1. Возможности

    • Играть по локальной сети с первым подключившимся игроком
    • Можно смотреть статистику игр (ПОБЕДЫ/НИЧЬИ/ПОРАЖЕНИЯ)
    • Сервер поддерживает несколько игр одновременно
  2. Особенности игрового процесса:

    • При запуске игры открывается меню:

Меню

  • При нажатии на RESULTS при входе:

Начальные результаты

  • Нажимая на BACK, возвращаемся в главное меню
  • При нажатии на PLAY, открывается окно ожидания соперника (если уже есть готовый соперник, то сразу откроется окно игры):

Окно ожидания

  • Как только второй игрок подключился, открывается окно игры (скриншот после нескольких ходов):

Окно игры

  • При нажатии на кнопку DRAW, игрок предлагает второму игроку ничью. Предложение отобразится у оппонента:

Предложение ничьи

  • Оппонент, нажимая на DRAW примет ничью. Результат отобразится рядом с "именами" и позиция "заморозится":

Фиксирование ничьи

  • Помимо этого, ничья фиксируется автоматически при недостаточном количестве материала либо пате.
  • Нажимая на кнопку RESIGN, игрок сдает партию. Результат отображается и позиция замораживается:

Сдача партии

  • Помимо этого, если один игрок поставил мат, то результат отображается автоматически.
  • После фиксирования результата, нажимая на кнопку EXIT, игроки возвращаются в главное меню (возвращение происходит при нажатии хотя бы одним игроком кнопки EXIT).
  • Результаты сохраняются, и их можно посмотреть нажав на кнопку RESULTS:

Обновленные результаты

  1. Замечания:

    • Игра поддерживает все базовые правила шахмат (подтверждаю как FIDE Master)
    • Подразумевается, что тестирование игры по сети будет проводится с одного устройства (запуская main.py несколько раз после запуска сервера)
    • При желании проверить взаимодействие внутри локальной сети с разных устройств, нужно выбрать одно устройство сервером (запустить на нем server.py), но до этого в файле network.py, в классе Network изменить self.server = "..." (на hostname выбранного устройства)
  2. Запуск:

    • Запуск сервера:
    git clone https://github.com/Chessmatus/chess_game_02.git 
    cd chess_game_02
    git checkout -b dev origin/dev
    pip install -r requirements.txt
    cd src
    cd game
    python3 server.py
    
    
  • Первый игрок: открываем новое окно терминала (не закрываем предыдущее!) и выполняем:
cd chess_game_02
git checkout -b dev origin/dev
cd src
cd game
python3 main.py
  • Второй игрок: открываем новое окно терминала (не закрываем предыдущее!) и выполняем:

    cd chess_game_02
    git checkout -b dev origin/dev
    cd src
    cd game
    python3 main.py
    
    
     
    
    
    

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages