Перейти к содержанию
  • записи
    3
  • комментариев
    0
  • просмотра
    4 202

Steam Workshop и Skyrim


Переустановив Винду очередной раз на компьютере, и захотев сыграть в Скайрим, пропало всякое желание скачивать на компьютер Steam, снова проходить авторизацию и искать, на каком из телефонов сейчас установлен аутентификатор.
Как человек, купивший однажды уже Скайрим, и имеющий в локалке компьютер с уже установленнным и залогиненным Стимом, выкачал Скайрим оттуда и сам вылечил. Но тема сейчас не об этом. Я использую для Скайрима Steam Workshop. Бывают там иногда годные моды, да. Но суть не в этом. Мне хотелось иметь всю свою коллекцию модов из Воркшопа так же на "пиратке". Даже вручную скачанные. На Нексусе искать лень, а я ж программист немного, и когда-то давно писал утилитку для скачивания модов из Воркшопа по ссылке (огромное спасибо Керберу, который помог разобраться и написать тот самый загрузчик, который уже сотню раз переписывался на различных ЯП).
Выдернул перечень ссылок на подписки с ноута, начал кормить программе. А она часть файлов (в частности, выложенных после событий с платными модами) не могла скачать: Стим попросту ссылки не отдавал. А те, что скачивала, хранились в непонятном формате CKM (Creation Kit Mod?).


firefox_BtfBVHsiYw.png
Новый формат! Слава Беседке!

На удивление, какой-либо информации о нём в Сети не нашёл. Или плохо искал... Всё, на что натыкался - скриншоты разных пользователей о том, что лаунчер рапортует о невозможности распаковать CKM. В основном всё на Гитхабе в репозитории Протона (форк Wine для запуска Виндоигр под Линуксом). Как пример.
О том, что из себя представляет этот формат, я напишу чуть позже. Расковырял таки за один вечер. Очень примитивный формат.
Суть этой статьи вот в чём: у всех модов, выпущенных после первого введения платных модов в Воркшопе, напрочь отсутствует прямая ссылка на скачивание в ответе API!


firefox_LXgP1O6Mwi.png
Зато присутствует ID в UGC. Но всё равно, верните ссылку! :(

И даже если сделать запрос к методу, который возвращает ссылки и данные обо всём UGC (User Generated Content), тоже ничего нет: Steam сообщает, что у него такого файла нет.


firefox_2oD26lUctc.png
Код 9 означает, что файла нет, и никогда не было. Заставляет задуматься.

И это странно выглядит. Часть бесплатных файлов можно свободно скачать, имея доступ к Steam Web API, а другую часть - нет.
Если поковыряться дальше, отчасти становится ясно, почему.
Раньше моды бандлились на пользовательский компьютер в виде этого самого CKM-файла, который в дальнейшем распаковывался лаунчером при первом запуске. Теперь они сразу идут несколькими файлами: сам BSA и ESP. Ещё может поставляться превьюшка мода:


explorer_xmxBwN0o13.png
Все файлы, которые качает для Скайрима Steam, хранятся в %STEAMAPPS%/workshop/content/72850

API не может вернуть более одной ссылки, но и "архивами" собственного производства Беседки, почему-то теперь они не поставляются. Потому когда происходит скачивание мода, клиент идёт на свои собственные сервера, откуда качает игры. В моём случае, он всегда ходил на valve520.steamcontent.com.
Я пока ещё не придумал, как качать такие моды, кроме как иметь всегда запущенный где-нибудь инстанс SteamCMD с активной авторизацией в Стиме, и качать через него. Анонимно качать оно не даёт: сразу в лицо кидает Failure. А на выложенных до появления платных модов просто таймаут. А жаль, очень хотелось анонимно...


steamcmd_98fA0dCjRS.png
У Стима есть чудесная команда: workshop_download_item.
Первым в ней указывается AppID (72850 для Скайрима), вторым - идентификатор предмета.
Первый Failure - мод, выложенный/обновлённый ПОСЛЕ появления платных. А там, где таймауты - ДО.

0 Комментариев


Рекомендуемые комментарии

Комментариев нет

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйте новый аккаунт в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
×
×
  • Создать...