тикеты ланучера

This commit is contained in:
2026-10-04 12:15:27 +04:00
parent 93a9442e1c
commit 028aa9e35d
3 changed files with 119 additions and 1 deletions
+17
View File
@@ -34,6 +34,23 @@ npm run build
## Игровые функции
Манифест нового Rust-клиента публикуется инструментом `moonwell-deploy` из
`moonwell-client-core`. Файлы лежат в
`World of Warcraft 1.12.1/releases/<buildHash>/`, активный манифест —
`manifest-1.12.1.json`. Для этих значений задайте
`MOONWELL_LAUNCHER_BASE_PATH="World of Warcraft 1.12.1"` и
`MOONWELL_LAUNCHER_MANIFEST_KEY=manifest-1.12.1.json` в `.env`, затем очистите кеш
конфигурации. Учётные данные `AWS_*` должны указывать на то же хранилище, что
сборщик. Секреты не передаются лаунчеру.
`GET /api/launcher/download/{path}` разрешает путь только из активного манифеста
и подписывает его `objectKey` в пределах настроенного префикса. Старый манифест
без `objectKey` продолжает использовать `<base-path>/<path>`. Новый манифест
переключается после загрузки всех объектов; старые релизы остаются в S3 для
докачивания и отката. Публикации запускаются последовательно. Windows и macOS
нуждаются в отдельных наборах файлов и настройках манифеста: выбор ОС API пока
не выполняет.
- Регистрация создаёт случайный постоянный игровой пароль в `account.s`/`account.v`, SRP-данные пароля сайта в `site_credentials`, запись в `realmcharacters` для каждого реалма и доступ в `account_access`.
- Вход на сайт и через API лаунчера сверяет пароль с `site_credentials`. Смена пароля в кабинете обновляет только эти данные.
- Админка меняет уровень доступа в `account_access`. Для чтения персонажей используется `characters.played_time_total`.