Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/v4nden/contextnomultiplayer
Соревновательный режим для контекстно.рф
https://github.com/v4nden/contextnomultiplayer
express framer-motion game mobx nextjs
Last synced: 10 days ago
JSON representation
Соревновательный режим для контекстно.рф
- Host: GitHub
- URL: https://github.com/v4nden/contextnomultiplayer
- Owner: V4nden
- Created: 2024-04-22T15:23:36.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2024-05-09T10:06:48.000Z (6 months ago)
- Last Synced: 2024-05-09T11:28:56.738Z (6 months ago)
- Topics: express, framer-motion, game, mobx, nextjs
- Language: TypeScript
- Homepage:
- Size: 381 KB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Сорвеновательный режим для игры контекстно.рф
![preview](https://github.com/V4nden/ContextnoMultiplayer/assets/59515058/3db81c92-dc16-4660-ae87-385194181363)
_Автор оригинальной игры - https://github.com/yuloskov (Артем Юлосков)_
## Как играть в контекстно?
Цель игры - угадать секретное слово. Это слово занимает первое место в списке.
### Основные правила (из оригинальной игры)
У тебя есть неограниченное количество попыток.
Все слова в списке ранжированы по их схожести с секретным словом.
Чем выше слово в списке (чем меньше его номер), тем оно ближе к секретному слову### Принцип работы
Это как игра горячо-холодно. Например, если секретное слово "кот", то "кошка" будет выше в списке (ближе к "коту") по сравнению с "собака".
Алгоритм анализировал множество текстов и использует контекст для определения сходства слов.
Введи случайное слово в поле ввода и нажми на кнопку со стрелочкой. Правила сразу станут понятны. Удачи!---
_Проект использует API контекстно.рф, загадать можно любое слово что есть в словаре оригинальной игры!_
## Механики дополнения
### Комнаты
Комната - игра, каждое загаданное слово создаёт комнату к которой может подключится неограниченное количество игроков.
### Игроки
Каждый игрок имеет своё место, цвет и никнейм. Место вычисляется относительно очков других игроков в комнате, очки же в свою очередь устанавливаются за ранг ближайшего к загаданному слову
### Подсказки
Подсказок из оригинальной игры нету, вместо этого оператор (лидер лобби) может сам подсказывать игрокам слова связанные с загаданным, либо словами описать что загаданное слово из себя представляет.
Любой игрок в комнате может поделится имеющимся у себя словом с другим игроком, наведя на него курсор и нажав соответствующую кнопку на слове. Делится словами можно неограниченно.### Оператор
Лидер лобби сразу становится оператором. Оператор может видеть, какие слова пишут игроки и в зависимости от правильности хода их мыслей направлять на загаданное слово. Оператором может стать игрок, который отгадал загаданное слово.
### Лучше всего играть в компании, с голосовым чатом
---
# Развертывание проекта локально
После клонирования репозитория установите все зависимости в директориях `client/` и `server/`
> `$ cd client && npm i` > `$ cd server && npm i`
В папке client создайте файл `.env.local` и укажите ключ `NEXT_PUBLIC_SOCKET_IO_SERVER`, это будет IP-адрес с портом **25535**
_Пример:_
`.env.local`
`NEXT_PUBLIC_SOCKET_IO_SERVER="http://localhost:25535"`Запуск проекта осуществляется запуском веб приложения и сервера где происходит общение клиентов (игроков) между собой
> `$ cd server` >`$ npm start`
> `$ cd client` >`$ npx next dev`
### Готово! Проект запущен на порту 3000!