# Custom MVP Music — Сайт
**Сайт для входа через Steam, где вы найдете гимны MVP. Игроки могут просматривать песни и слушать их в
браузере и выбрать нужный одним щелчком мыши. Вы управляете каталогом через панель администратора, а не редактируете
конфигурационный файл через FTP.**
Сайт и плагин используют одну базу данных MySQL, поэтому синхронизировать что-либо вручную не нужно. Добавьте
песню на сайте, и она появляется в игровом меню`!mvp` буквально за несколько секунд. Игрок, выбравший
гимн на сайте будет звучать, когда они в следующий раз станут MVP, без повторного подключения — и выбор, сделанный в
Игра сразу же появляется в их профиле.
---
## Прежде чем купить — прочтите этот раздел
**Это сопутствующий веб-сайт для плагина Custom MVP Music, а не самостоятельный продукт.** Он
редактирует базу данных плагина. Если плагин не установлен на вашем сервере CS2, в игре ничего не будет воспроизводиться.
Два практических требования:
- **Веб-сайт должен иметь доступ к базе данных MySQL плагина.** Если сайт и игровой сервер находятся на
разные компьютеры — это обычная ситуация — необходимо разрешить подключение с IP-адреса веб-хостинга (в cPanel
(то есть *Remote MySQL*), либо переместить базу данных рядом с сайтом и настроить плагин так, чтобы он использовал именно её.
- **Ключ Steam Web API**, предоставляемый Steam бесплатно, для доступа к именам игроков и аватарам.
Кроме того, он работает на обычном виртуальном хостинге. Здесь нет этапа сборки Node, нет рабочего процесса в очереди, нет
`storage:link`, и никаких заданий cron — достаточно простого PHP 8.3 и MySQL. Пошаговое руководство по cPanel можно найти
включено.
---
## Что получают ваши игроки
**Каталог, который стоит пролистать.** Обложки, метки категорий, быстрый поиск и надпись «Этим пользуются N игроков»
Рассчитывайте на каждую песню, включенную в игровой плейлист, а не только на те, что представлены на сайте.
**Предварительный просмотр в браузере.** Загрузите короткий фрагмент каждой песни, и игроки смогут прослушать его, прежде чем принять окончательное решение,
вместо того чтобы выбирать имя наугад и ждать следующего раунда MVP.
**Один клик **— **и гимн выбран**: конкретная песня, случайный выбор из всего плейлиста или просто случайный порядок
в рамках одной категории. Те же три варианта, что и в игровом меню.
**Хиты этой недели и прямая трансляция.** Пять самых популярных песен за последние семь дней, а также последние
восемь MVP в режиме реального времени. Это придает странице динамичность и ненавязчиво рекламирует ваш сервер.
**Личный профиль** (`/me`): текущий гимн, история званий MVP, самые прослушиваемые песни и
переключатель для отключения гимнов других игроков, который срабатывает во время игры.
**VIP-песни отмечены специальным значком.** Сайт повторяет ограничение плагина на количество бесплатных песен и помечает значком все, что выходит за пределы этого лимита
его, чтобы игроки могли видеть, что открывает тот или иной VIP-ранг. Фактический контроль осуществляет плагин.
---
## Что вы получаете в качестве администратора
**Песни.** Добавлять, редактировать, скрывать или удалять. Загрузка обложки, загрузка фрагмента для предварительного просмотра, категория, в игре
права доступа, порядок сортировки. При скрытии песни она удаляется из меню, при этом ничьи настройки не теряются — это
возвращается в точно таком же виде, каким было.
**Флаг «никогда не воспроизводилась».** Плагин помечает каждую песню, которую удалось воспроизвести. Любая песня, у которой есть
Для вас отмечено, что «никогда не проштамповано», — именно так можно обнаружить неправильно введенное название звукового события
несколько месяцев назад и с тех пор постепенно выходит из строя.
**Категории.** Создавайте жанры, назначайте каждому свой цвет, устанавливайте (по желанию) внутриигровое разрешение, которое блокирует
весь жанр, изменить их порядок — и всё это прямо на странице, не покидая её.
**Игроки.** Все, кто выбрал гимн, что именно они выбрали, и кнопка сброса.
**Дашборд** с количеством прослушиваний в день за две недели, самыми популярными песнями за последние 30 дней, недавними
авторизации, а также список игроков, указывающий на песни, которые в данный момент скрыты.
---
## Вход и доступ
Вход осуществляется **исключительно через** **Steam OpenID** — сайт никогда не видит и не сохраняет пароль. Steam возвращает
SteamID; веб-API предоставляет имя и аватар.
Права администратора определяются списком SteamID64 в `.env`файле, **а не** флагом базы данных — это сделано намеренно.
Ничто из того, что происходит внутри базы данных или в панели администратора, не может привести к присвоению кому-либо прав администратора.
Загруженные обложки перекодируются на сервере в квадратные изображения формата WebP. Фотография с телефона размером 5 МБ превращается в
Плитка размером ~40 КБ, и в корневой папке веб-сайта оказываются исключительно пиксели, независимо от того, что было указано при загрузке.
---
## Как он взаимодействует с плагином
Обе стороны используют одни и те же таблицы`mvp_music_*`. Плагин загружает изменения из каталога по заданному вами интервалу
(по умолчанию: каждые 10 секунд) и считывает выбор, когда игрок подключается; веб-сайт считывает и записывает
одни и те же строки.
- Песни, добавленные, отредактированные или скрытые на сайте, поступают на сервер в течение нескольких секунд. Звуковое событие по-прежнему
должно присутствовать в вашем аддоне для мастерской — сайт его регистрирует, но не загружает аудио в CS2.
- Переключатели и регулятор отключения звука перемещаются в обоих направлениях, повторного подключения не требуется.
- Каждый гимн, прозвучавший в игре, пополняет историю сайта, таблицы лидеров и отметку «никогда не играл».
- При переименовании звукового события или слога категории сохраняются все выбранные элементы и история. Никто ничего не теряет.
Отключите интеграцию с сайтом в настройках плагина, и таблицы сайта останутся неизменными.
---
## Требования
| | |
|---|---|
| Плагин «Custom MVP Music» | продается отдельно — необходимо |
| PHP | Версия 8.3 или более поздняя с расширением GD для обложек |
| MySQL / MariaDB | та же база данных, которую использует плагин |
| Домен с HTTPS | Steam перенаправляет обратно только на тот самый общедоступный URL-адрес |
| Ключ Steam Web API | бесплатно, в Steam |
Laravel 13, Tailwind CSS v4 и Alpine.js. Таблица стилей поставляется в готовом виде, а Alpine.js предоставляется из
ваш собственный сервер, поэтому ни Node, ни CDN здесь не задействованы.
---
## Что вы получаете
- Готовый сайт, готовый к загрузке.
- `DEPLOY.md`: пошаговое руководство по развертыванию cPanel, включая настройку корневого каталога,
`.env` ключи и примечание «Удаленный MySQL».
- Демо-сидер, который заполняет сайт примерными песнями, игроками и историей игр за две недели, так что
Вы сможете увидеть готовый результат, прежде чем подключить его к реальным данным.
- Таблицы базы данных создаются той стороной, которая запускается первой. Импортировать SQL-запросы не требуется.
---
## Версия
**1.0** — текущая версия.
---
## Лицензия и поддержка
- Используйте его для любого количества ваших собственных серверов и сообществ, сколько захотите, и столько, сколько захотите.
- Запрещается перераспространять, перепродавать, передавать или публиковать эти файлы, как целиком, так и частично.
- Обновления для этой основной версии предоставляются бесплатно.
- Возврат средств после передачи файлов не производится — выше приведен полный перечень требований, поэтому
Перед покупкой убедитесь, что ваши технические характеристики соответствуют требованиям.
Приветствуются вопросы перед покупкой.
---
*Custom MVP Music — Сайт · автор: illusion @ CodeStrike*