Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/4l3x777/dog_story

Многопользовательская сетевая игра от Яндекс Практикума
https://github.com/4l3x777/dog_story

backend frontend game-development multiplayer-game rest-api

Last synced: 7 days ago
JSON representation

Многопользовательская сетевая игра от Яндекс Практикума

Awesome Lists containing this project

README

        

# Dog Story - многопользовательская сетевая игра, созданная в процессе прохождения курса от Яндекс Практикума

+ Цель игры: собрать потеряные вещи и доставить их к месту сбора

## Frontend

+ написан на `JavaScript`, `html`

## Backend

+ написан на `С++`

## Параметры запуска сервера

+ Параметр `--help` (`-h`) должен выводить информацию о параметрах командной строки.
+ Параметр `--tick-period` (`-t`) задаёт период автоматического обновления игрового состояния в миллисекундах. Если этот параметр указан, каждые N миллисекунд сервер должен обновлять координаты объектов. Если этот параметр не указан, время в игре должно управляться с помощью запроса `/api/v1/game/tick`
+ Параметр `--config-file` (`-c`) задаёт путь к конфигурационному JSON-файлу игры.
+ Параметр `--www-root` (`-w`) задаёт путь к каталогу со статическими файлами игры.
+ Параметр `--randomize-spawn-points` включает режим, при котором пёс игрока появляется в случайной точке случайно выбранной дороги карты.
+ Параметр `--state-file` задает имя файла для сохранения в нем состояния игры.
+ Параметр `--save-state-period` задает с какой переодичностью проводить сохранение состояния игры

## Запуск сервера

+ необходимо установить БД `Postgres` и задать подключение через переменную окружения `GAME_DB_URL`
+ запустить через скрипт файл `game_server.sh`

## Пример игры

![alt text](/img/dog_story.gif)