Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
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
Многопользовательская сетевая игра от Яндекс Практикума
- Host: GitHub
- URL: https://github.com/4l3x777/dog_story
- Owner: 4l3x777
- License: mit
- Created: 2024-08-12T18:37:29.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2024-08-12T19:12:40.000Z (5 months ago)
- Last Synced: 2024-11-09T00:14:05.369Z (2 months ago)
- Topics: backend, frontend, game-development, multiplayer-game, rest-api
- Language: JavaScript
- Homepage:
- Size: 4.33 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
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)