Как загрузить файл в мастерскую стим?

Unity, C#, Steamworks.NET и Facepunch.Steamworks Введение Как и большинству разработчиков игр, мне очень хочется выложить мою игру в Steam. Как и большинству инди-разработчиков игр, мне не...

Как загрузить файл в мастерскую стим?

Простая работа со Steamworks

Unity, C#, Steamworks.NET и Facepunch.Steamworks

Введение

Как и большинству разработчиков игр, мне очень хочется выложить мою игру в Steam.

Как и большинству инди-разработчиков игр, мне не хватает доступа к ресурсам/знаниям, которые дали бы мне чётко понять, что же действительно значит «быть в Steam».

Сложно заполнить этот пробел в знаниях, потому что, несмотря на подробную документацию возможностей Steam, трудно понять, с чего начать в этом огромном хранилище документов и как связаны между собой его отдельные части. Кроме того, основные обсуждения платформы Steam проходят в закрытом форуме, доступном только для подтверждённых платформой через Steam Direct или реферальную ссылку Valve разработчиков. То есть для начинающих поиск ответов на простые вопросы может оказаться сложной задачей.

Поэтому я решил написать высокоуровневый обзор для людей, которые только начинают разбираться в том, как заставить Steam работать с их играми. В частности, я подробно рассмотрю Steamworks SDK, программную библиотеку Valve, предоставляющую доступ к таким аспектам, как мастерская (Workshop), таблицы лидеров (Leaderboards), достижения (Achievements) и так далее.

Steamworks хорошо задокументирована компанией Valve, но документация написана с точки зрения человека, использующего нативную библиотеку C++ и уже имеющего представление о том, как все эти функции пересекаются. Если это не ваш случай, то так даже лучше! Ниже представлено объяснение для другого человека, который пишет игру на языке более высокого уровня и просто хочет обеспечить простую интеграцию со Steamworks (а это возможно, я гарантирую!). Конкретнее, этот пост предназначен для людей, использующих в той или иной форме C#, а в идеале — работающих в игровом движке Unity.

Steamworks

Steamworks состоит из двух частей. Во-первых, это портал для разработчиков, предназначенный для управления всем, что связано с существованием игры в Steam, от изменения баннеров игры до управления продажами и списка поддерживаемых контроллеров. Во-вторых, это SDK, предоставляемый Valve для того, чтобы разработчик мог взаимодействовать со всем остальным в Steam, в том числе с мастерской, таблицами лидеров, серверами, достижениями и т.д. Не забывайте об этой системе! SDK «обязателен только для загрузки контента в Steam». Это означает, что можно полностью воздержаться от возни со всеми вышеперечисленными возможностями SDK и сосредоточиться только на том, как загрузить игру в Steam. Однако SDK предоставляет множество других полезных функций, так что давайте настроим его и заставим работать!

Если вы пишете на C++, то можете просто добавить библиотеку к вашей игре, следуя этим инструкциям.

Но если вы разработчик на C#/в Unity, то придётся немного потрудиться. Нативные C++ заголовки/исходники несовместимы с Unity, нужно использовать библиотеку-обёртку, позволяющую интегрировать функции SDK. Такая обёртка позволит нам использовать высокоуровневые функции C# для вызова низкоуровневых функций C++. В прошлом такой библиотекой-обёрткой была Steamworks.NET, которая полностью соответствует своему названию: это Steamworks, реализованный на .NET. Однако это именно то, что она и делает, и ничего больше.

Steamworks.NET обеспечивает взаимно однозначное преобразование функций Steamworks в функции C#, но это значит, что для работы вам потребуется полное понимание Steamworks как библиотеки. Для новичков, желающих отделаться простой работой, этого может оказаться слишком много. Если вы хотите сделать что-то посложнее, для Steamworks.NET придётся написать собственную обёртку поверх её обёртки, что лишает смысла саму идею обёртывания.

Facepunch.Steamworks

Из-за этих ограничений и по другим причинам, Facepunch Studios (известная по играм Rust и Garry’s Mod) захотела написать более удобную библиотеку Steamworks для C#/Unity.

Она избавляет от необходимости писать кучу кода для реализации простых (и сложных) задач в Steamworks, позволяя сосредоточиться на самой «работе» со Steam. Библиотека используется в Rust, то есть её работа тестируется на игре с одним из самых больших сообществ игроков в Steam. Сложные задачи абстрагируются в простые вызовы функций, сама библиотека состоит всего из трёх файлов, то есть не особо раздувает проект. Не могу выразить, насколько она полезна для новичков, это настоящая находка. Создатель Steamworks.NET даже сказал, что Facepunch.Steamworks — это «именно то, что во что я хотел превратить Steamworks.NET дальше» и что «для большинства разработчиков она должна стать выбором по умолчанию». Steamworks.NET по-прежнему доступна для тех, кто хочет реализовать собственную версию Facepunch.Steamworks, но, по-моему, что хорошо для Rust, то достаточно хорошо и для меня. Как же работает библиотека и что в ней особенного? Давайте начнём разбираться.

Начало работы

Во-первых, можно подумать, что для начала работы с Steamworks нужно быть подтверждённым разработчиком Steamworks, но на самом деле, использовать SDK можно сразу, не проходя процесс регистрации. Valve предоставила разработчикам тестовый «AppID» 480, для которого можно программировать.

AppID

AppID — это уникальный идентификатор игры в Steam (и в Steamworks). Его вы получаете в сразу после регистрации игры. Он «занимает» вам место в Steam/Steamworks и позволяет полностью распоряжаться всем, связанным с этим AppID. AppID 480 соответствует «SpaceWar», демонстрационной игре, созданной Valve. Она имеет открытые исходники и показывает некоторые из возможностей Steamworks (обязательно изучите её!).

Уникальный AppID — это удобно и очевидно необходимо для вашей игры на определённом этапе, тестовый же AppID (480) позволяет вам работать со службами Steam как будто ваша игра уже готова. Когда вы получите реальный AppID, то подставьте его, а пока вполне подойдёт 480. То есть не стоит создавать сервер с названием «Сервер с названием моей игры, ожидающей регистрации в качестве торговой марки».

Скачивание и импорт Facepunch.Steamworks

Итак, давайте скачаем библиотеку Facepunch.Steamworks (далее я буду называть её FP), уже зная, что мы сможем протестировать её с AppID 480. Зайдите в раздел релизов на странице Github (библиотека имеет полностью открытый исходный код и лицензию MIT) и скачайте последний релиз. Распакуйте файл .zip, чтобы получить несколько папок. В README всё подробно расписано, но, в сущности, достаточно просто скопировать небольшой набор этих файлов в ваш проект Unity (подробности зависят от платформы). Файлы Facepunch.Steamworks — это сама библиотека, файлы steam_api и специфичные для платформы файлы, содержащие сам Steamworks SDK. После импорта папка Unity должна выглядеть примерно так (в случае Windows x86/x64):

Файл «steam_appid.txt» — это текстовый файл, в котором есть только ваш AppID, поэтому мы будем использовать текстовый файл с «480» (без кавычек). Файлы «.dll», «.pdb» и «.xml» скопированы из папки Release скачанного файла .zip соответствующей версии «.NET». Для Unity подойдёт 3.5. Если вы начинаете с «чистого листа», Facepunch великодушно предоставляет небольшой тестовый проект, который делает бо́льшую часть работы за вас. С него можно начать ваш проект.

Unity

Скопировав все файлы библиотеки в соответствующие каталоги, вы практически закончили настройку! Единственное, что нам нужно — написать немного кода, чтобы всё интегрировать. Я скопирую тестовый файл из тестового проекта и просто сокращу его для понятности.

И… на этом всё! Если прикрепить этот скрипт к «GameObject» в сцене и перейти в игровой режим, то вы увидите, что в Steam вы играете в «Spacewar», а в консоли выводится базовая информация Steam о вас (если не получилось, проверьте, выполнен ли вход в Steam).

Жизнь с Facepunch.Steamworks

Возможности

После настройки доступ к более глубоким функциям Steam становится довольно простым, потому что библиотека FP обрабатывает и обёртывает почти все части стандартного Steamworks SDK. Однако по-прежнему стоит вопрос: какие же это части? Вот небольшой список с описаниями того, с чем можно работать (в библиотеке FP):

1. Серверы — создание серверов с помощью клиента игрока или запуск «безголового» сервера в любом другом месте. Используется для чувствительных к пингу игр, имеющих высокие требования к сети (таких как Dota 2, Overwatch и т.д.)

2. Лобби — это «места встреч» игроков, используемые для обмена SteamID или другой информацией пользователей.

3. Друзья — вы и ваши друзья-игроки в Steam.

4. Мастерская — загрузка/скачивание контента в мастерскую Steam Workshop и из неё.

5. Таблицы лидеров — создание и хранение глобальных таблиц лидеров для игры.

6. Достижения — создание и выдача достижений.

7. Сеть — отправка P2P-данных клиентам.

8. Steam Cloud — сохранение данных в облако Steam Cloud! Очень полезно для сохранений игр.

9. Голос — взаимодействие с голосовым API Steam для внутриигрового чата.

10. Статистика — задание статистики на стороне Steam для заданного игрока.

Наилучший способ научиться использованию нужных функций — посмотреть, есть ли её рабочий пример в тестовом проекте Facepunch.Steamworks (ПРИМЕЧАНИЕ: это не тестовый проект Unity), и смоделировать её реализацию в своей игре.

Большинство из возможностей задокументировано в wiki библиотеки FP, но на самом деле достаточное описание есть у нескольких классов. Если вы не можете найти пример, изучите код библиотеки и посмотрите, реализована ли функция вообще. Если нет, то посмотрите, насколько далеко вы можете зайти в её реализации со своей стороны или просто отправьте сообщение об ошибке в библиотеку. Обычно разработчики Facepunch очень отзывчивы, они могут вам рассказать, работают ли они над чем-то или нет, и даже могут посодействовать вам в помощи сообществу, если вы решите реализовать что-то самостоятельно.

Подписчики и обратные вызовы

При работе с библиотекой FP (или даже с нативным API), вы заметите, что не всегда просто работать с обычным вызовом чего-то вроде Client.Instance.SteamId . Причина в том, что Steamworks SDK (а значит, и библиотека FP) активно использует асинхронные функции, чтобы игра не «подвисала» каждый раз, когда нужно выполнить нетривиальное взаимодействие со Steam. Без асинхронных вызовов вам пришлось бы ждать ответа основного сервера Steam, прежде чем выполнился бы ваш код, что очевидно стало бы источником ошибок и раздражения в процессе игры. Поэтому для использования библиотеки вам нужно привыкнуть к концепции делегирования и обратных вызовов. Для начинающего это может казаться сложным, но эти концепции легко понять, если уяснить основную идею. Я приведу пример.

Читайте также  Как скопировать файлы с правами администратора?

Если вам нужно получить список всех лобби в игре с помощью библиотеки FP, то вы напишете следующее:

Заметьте, что здесь не выполняется возврат или присваивание. Но в таком случае как нам получить то, что мы запрашиваем? После вызова функции в Steamworks бэкенд Steam подготавливает всё необходимое, а затем отправляет вам данные через «обратный вызов» (callback). Steam почти буквально «вызывает вас», чтобы сообщить: «Эй, твои данные готовы!».

Для получения вызова нам нужно «поднять трубку», или, как это обычно называется, «подписаться» на обратный вызов. Это реализуется определением функции, получаемой передаваемые обратным вызовом данные. Иногда он не передаёт данных, тогда обратный вызов используется в основном как «обработчик» или как способ сообщить, что можно продолжать. Когда вы находитесь внутри обработчика обратного вызова, можно безопасно продолжать работу. Вот пример:

Понимание этого паттерна будет очень полезно при использовании библиотеки. Также очень полезно разобраться в том, что же в действительности делает Steamworks, так что стоит изучить его документацию. Если вы хотите более подробно изучить принцип работы, рекомендую прочитать документацию Valve по этой теме, а также некоторые разделы веб-сайта Steamworks.NET.

Двигаемся дальше

С этого момента вы можете делать всё, что угодно! Valve не ставит никаких требований, но если уж вы попали на платформу, то очевидно, что вам в первую очередь интересно связаться с ней и с её сообществом теми способами, которые предоставила Valve. После регистрации в Steam Direct вам достаточно просто заменить AppID и перенести все функции Steam, которые вы реализовали для тестового AppID.

Загрузка в Steam Workshop

Навигация

Персональные инструменты

Пространства имён

  • Статья
  • Обсуждение

Варианты

Просмотры

  • Читать
  • Просмотр
  • История

Поиск

Загрузка в Steam Workshop
Серия Основы, глава 3
Вернуться в Учебный центр
Предыдущий учебник Следующий учебник

Содержание

  • 1 Обзор
    • 1.1 Процесс загрузки для плагинов
    • 1.2 Процесс загрузки для модов, состоящих только из архива
    • 1.3 Доступ и управление вашими модами в Steam Workshop
  • 2 FAQ
    • 2.1 Мне не нравится то-то, и есть предложения по тому, как это улучшить!
    • 2.2 Как мне обновить Картинку моего мода/Описание моего мода/Теги?
    • 2.3 Как пользователям скачать более старую версию моего мода?
    • 2.4 Почему я не могу использовать свой скриншот как превью?
    • 2.5 Я внес некоторые правки в мой мод(окно загрузки в Steam, Рис. 1), а он заменил старую версию!
    • 2.6 Почему я не могу сбросить мои файлы в manual archive creator? (Рис. 2)
    • 2.7 Мой мод зависит от какого-либо другого мода(ов). Как мне быть увереным, что у геймеров есть все эти необходимые файлы?
    • 2.8 Я работаю над обновлением моего мода, но лаунчер загружает его старую версию!
    • 2.9 Ошибки
      • 2.9.1 Failed to update the mod file on Steam! Steam error 8 при загрузке мода в Steam Workshop
      • 2.9.2 Failed to get details on and uploaded preview image!

Обзор

Bethesda Game Studios и Valve сотрудничают для того, чтобы моды, сделанные игроками для Skyrim увидели свет и появились Steam Workshop для публичного скачивания. Сообщества по моддингу в The Elder Scrolls и Fallout являются большим свидетельством изобретательности и творчества наших геймеров на ПК в течении многих лет, и мы со своей стороны рады предоставить ваши моды широкой публике, как никогда ранее.

Creation Kit предоставляет новый уровень в функциональности, который позволяет моддерам создавать, распространять и обновлять свои моды как можно проще.

Процесс загрузки для плагинов

Процесс загрузки ваших модов в Steam Workshop достаточно простой. Следуйте инструкции ниже:

  1. Убедитесь что вы подключены к интернету и ваш аккаунт в Steam тоже онлайн
  2. В Creation Kit, нажмите Ctrl+S чтобы сохранить плагин. Если это новый файл, вас спросят о сохранении нового плагина. Если плагин уже существует, то при его загрузке в редактор, не забудьте сделать его активным.
  3. Далее, из главного меню редактора, выберите File > Upload Active Plugin and Archive to Steam
  4. Вам будет предложено добавить файлы в Архив вручную, либо использовать существующий архив, при его наличии.
    1. Все файлы, связанные с вашим модом, автоматически появятся в списке файлов для архивации.
    2. Выберите «Cancel» если вы уверены, что вам нужно вручную создать архив и добавить туда файлы. Помните, название архива должно совпадать с названием файла плагина. Так, если плагин называется TESCK.esp, то архив должен иметь название TESCK.bsa. Либо нажмите Pack files для упаковки файлов, перечисленных в окне добавления/удаления файлов в архив(е). Можно просто перетащить туда нужный файл из папки Data игры.
  5. Далее появится диалог загрузки мода в Steam Workshop.
    1. Mod: Имя вашего мода, как он будет отображаться для пользователей. Выберите название, которого будете придерживаться! Можно изменить после в мастерской.
    2. Description: Описание вашего мода, отображаемое в Steam Workshop.
    3. Change: Краткое описание последних изменений в моде, отображается в Мастерской на странице плагина, во вкладке Список изменений.
    4. Tags: Выберите категории, которые связаны с содержимым вашего мода. Это поможет пользователям найти вашу модификацию.
    5. Preview Image: Выберите jpg-изображение для вашего мода (кнопка Select). Лучше всего использовать размер изображения в 512×512 пикселей. Кнопка Remove Preview Image удалит картинку.
  6. Как только вы укажите все эти параметры, нажмите «Upload«.
  7. Заголовок окна загрузки изменится на «Sharing mod with Steam Cloud. «
  8. Теперь нужно будет подождать, время может меняться в зависимости от размера мода, и если загрузка прошла успешно, вы увидите соответствующее сообщение.

Процесс загрузки для модов, состоящих только из архива

Не каждый моддер работает в редакторе. Например моды по ретекстуру используются для простой замены оригинальных файлов на новые. Creation Kit так же позволяет загружать такие моды в Steam Workshop.

Процесс их загрузки точно такой же, как описан для плагина ранее, разница лишь в том, что когда вам предложат добавить файлы в архив вручную, выберите «Yes«.

Появится диалоговое окно Add/remove files to archive, перетащите ваши файлы для мода в это окно. Выберите «Pack Files» когда закончите с выбором файлов, и тоже подождите.

Можно так же вручную создавать архивы без их дальнейшей загрузки. Для этого перейдите в «File > Create Archive» из главной панели инструментов.

Доступ и управление вашими модами в Steam Workshop

Мне не нравится то-то, и есть предложения по тому, как это улучшить!

Steam Workshop существует для того, чтобы помочь соединить моддеров и геймеров — важно то, что сервис старается удовлетворить потребности обоих этих групп, настолько хорошо, насколько это возможно. Если у вас есть какие-то жалобы, предложения или баги, пожалуйста, дайте нам об этом знать на официальном форуме по Creation Kit.

Как мне обновить Картинку моего мода/Описание моего мода/Теги?

Вы можете обновить любое из этих полей при повторной загрузке вашего мода через Creation Kit, даже если сам плагин не изменился.

Как пользователям скачать более старую версию моего мода?

В Workshop храниться только самая последняя версия мода, и она автоматически распространяется по подписчикам. Мудро сохранять бекапы локально на компьютере, так, чтобы было можно сделать откат назад, если вдруг игроки начали подавать жалобы или писать о багах в вашем моде, а так вы можете сделать откат на более раннюю версию.

Почему я не могу использовать свой скриншот как превью?

Картинки для предварительного просмотра мода должны быть в формате .jpg. По-умолчанию Skyrim сохраняет скриншоты в формате .bmp. Вы можете использовать бесплатные графические редакторы, такие как Irfanview или Gimp чтобы конвертировать скриншоты в подходящие изображения для пред. просмотра. Запомните, что картинки с разрешением 512×512 лучше всего смотрятся в Steam Workshop.

Я внес некоторые правки в мой мод(окно загрузки в Steam, Рис. 1), а он заменил старую версию!

При обновлении ранней версии мода, в окне Upload появится строка «Получить сведения об опубликованных файлах…». Как только Creation Kit завершит синхронизацию со Steam Workshop, будет загружена текущая версия мода. Если вы введете изменения до завершения синхронизации то предыдущая версия будет переписана. К счастью этот процесс длиться всего несколько секунд.

Почему я не могу сбросить мои файлы в manual archive creator? (Рис. 2)

Для того, чтобы файлы были заархивированы, они должны быть организованы внутри директории «Skyrim/Data», и иметь соответствующий формат (как например DDS, NIF, WAV, и т.п.), чтобы их понимал Creation Kit. Примечание — для большинства пользователей, директория Data находится в локации, похожей на: C:Program Files (x86)Steamsteamappscommonskyrimdata

Мой мод зависит от какого-либо другого мода(ов). Как мне быть увереным, что у геймеров есть все эти необходимые файлы?

Steam Workshop в данный момент не поддерживает зависимость одних модов от других. Не забудьте указать инструкции по установке мода и необходимые требования для его корректной работы.

Я работаю над обновлением моего мода, но лаунчер загружает его старую версию!

Если вы подписаны на ваш собственный мод на Steam Workshop, то лаунчер Skyrim будет синхронизировать ваш плагин с тем, что находится в онлайне — независимо от того, новее ли ваша версия плагина. Хорошо бы не подписываться на собственные моды, или переодически делать бекапы.

Читайте также  Как открыть файл bmp на Андроиде?

Ошибки

Failed to update the mod file on Steam! Steam error 8 при загрузке мода в Steam Workshop

Ошибка появляется, когда в названии или описании мода присутствуют русские символы (кириллица). В качестве решения, можно назвать мод на латинице, а уже потом в Мастерской Steam переименовать его и сменить описание.

Failed to get details on and uploaded preview image!

Появляется при повторной публикации мода, у которого была установлена картинки, и которую Creation Kit по какой-то причине не может найти, возможно из-за русского языка (кириллицы) в пути к файлу.

Что такое «Мастерская» и как создать свои скины

Вне зависимости от того, стоял ли ты у истоков игры, когда все только начиналось, или услышал о CS:GO только вчера, наверняка ты знаешь про одну из самых интересных тем в игре, и это — кастомные скины.

Вполне возможно, что ты и пришел в игру, заглядевшись на знаменитый Dragon Lore, затейливо раскрашенный чуть ли не всеми цветами радуги. Или, как вариант, ты засмотрелся на его ценник — недавно мы писали о том, как предприимчивый фанат продал Dragon Lore с автографом Тайлера «Skadoodle» Лэтхема за три с половиной миллиона рублей. При этом тот скин, который он продал за $61 000, пользователь Drone купил за $35 000. Неплохо?

На рынке скинов разворачиваются фантастические баталии — схватились Ауговые магнаты , HODLеры, торговцы-перекупщики, и сами изготовители скинов, которые в оригнале, если что, называют weapons finishes. О последней категории-то, собственно, и речь. Ведь кто-то создавал эти скины, спохватишься ты! И скин для Dragon Lore тоже кто-то создавал! Так ведь можно создать красивый скин, который оценит сообщество и сделать на этом целое состояние!

Мы должны сразу же предупредить, что старая поговорка очень верна: если что-то выглядит подозрительно легко — это подозрительно. Это правда, что иногда тем, кто торгует на рынке, прилетает невиданная удача, как в случае, например, с биткоинами.

Тем не менеее такие случаи — это стремящаяся к нулю величина, на которую рассчитывать не стоит. Практически всегда создание стоящего немалых денег скина — работа кропотливая, сложная, и требующая немалой подготовки плюс бывает, что и выслуги лет. Хоть на этом, да, можно отлично заработать. Но то же самое можно сказать и обо всем остальном в жизни, верно? Чтобы стать хорошим игроком, нужно основательно потрудиться, чтобы стать успешным, нужно попахать, а чтобы были кубики пресса…эх, ладно, не будем о грустном.

В общем, мы должны сразу тебя предупредить, что создать скин не легко и не просто — но это осуществимо. Создав свой скин, в теории можно сделать денег на его продаже, получая отчисления за его распространение, да и еще войти в историю. Скины в CS:GО (и не только) могут быть ну очень запоминающимися. Например, представь, как обидно будет, если тебя замочат вот из такого пистолета?

Или, думаешь, когда-то изобразительное искусство дойдет до такого уровня, что за винтовку будет страшно браться — ведь она плавится утебя прямо на глазах? Или можно будет подбросить такую штуку противнику, чтобы его расплавило.


При этом вот реальные истории реальных создателей скинов, если тебе еще нужна дополнительная мотивация (с mashable.com):

“Дизайнер скинов Counter-Strike: Global Offensive рассказал, сколько зарабатывают создатели, когда Valve принимает один из их скинов: «намного больше», чем 40 000 долларов за штуку.

Дизайнер Крис «CLeGFX» Ле заявил во время прямой трансляции, что когда в старые времена Valve принимали скины оружия для CS:GO и добавляли их в игру ( в версии CS:GO 2012 года), создатели зарабатывали около 40 000 долларов. В настоящее время Ле сказал: «Вы получаете намного, намного, намного, намного, намного больше.” С 2015 года у Ле было пять различных скинов, которые добавили в ящики CS:GO, что принесло ему не менее 200 000 долларов всего за два года.

Другой дизайнер, Coridium, делает скины оружия для CS:GO с конца 2013 года. Из 50 представленных им скинов целых 17 были приняты. Это составляет не менее 680 000 долларов, заработанных им с 2013 года, хотя, вероятно, реальный размер платежа намного больше, учитывая, что это самые популярные скины в игре — наприрмер, бело-оранжевые пушки AK-47 Azimov.”

Что такое мастерская в CS:GO и как создавать свои скины?

Лучше всего мастерскую описали, конечно, сами Steam — и заодно вот и адрес , где она:

“В мастерской Steam собраны все модификации, созданные игроками, — здесь вы можете искать, загружать и добавлять собственные модификации для ваших игр.”

Если помнишь, Dota создавалась путем многочисленных модификаций карты для Starcraft Aeon of Strife. Вот уж дейтсвительно вечности раздоров — сколько пришлось просидеть над картой создателям, уму непостижимо. Если составить вместе все переработанные и отброшенные карты, после которых Дота стала Дотой, можно обернуть их три раза вокруг Луны. И после всего этого труда это одна из самых знаменитых игр в мире. Мастерская в CS:GO дает возможность в какой-то мере эмулировать процесс и создать что-то свое, чтобы навеки остаться в анналах истории (мы знаем, что ты прочитал это слово верно — с двумя Н).

#1 Инструменты

  1. Для первого шага нужен будет холст. Без холста художнику никак. В роли холста у нас будут модели оружия из игры. При этом редактировать их (то есть красить) нужно с помощью Photoshop.
  2. Для того, чтобы создавать скины, Valve пользуется форматом файлом Valve Texture Format (сокращенно VTF, в среде новых пользователей часто называемых WTF). Photoshop с ними прямо не работает, так что, предварительно скачав Photoshop CS5 Extended, обзаводимся программой VTFEdit, которая поможет конвертировать файлы, с которыми мы будем работать в VTF, то есть в такие, которые игра примет.
  3. Еще нужна будет программа CS GO –SDK (библиотека Steam — инструменты).

Совет! Лучше всего работать в одной папке, потому что, если не следить за количеством контента, скоро в файлах будет весь рабочий стол, так что создаем отдельную папку для мастерской — и отдельную папку для каждого дизайна. Мы будем работать с снайперской винтовкой. Просто потому что это кульно.

Оу! Продвинутые юзеры могут кликнуть вот сюда.

#2 — Модели

Ты будешь самым востребованным ловеласом во всем городе — каждый день новая модель. Качаем материалы , с которыми будем работать.

В этой папке есть два типа файлов — .obj и .tga. Это соответственно 3D-модели и сами текстуры. Открываем файл .tga в Фотошопе. Вообще в Фотошопе можно использовать любой тип файла, который он поддерживает, а затем конвертировать в tga. Для этого нужно выбрать меню “Файл” и открыть путь к папке, которую ты скачал в определенную директорию.

Файл открыт в Фотошопе. После этого ты пользуешься всей широтой возможностей Фотошопа, чтобы внести изменения в скин. Для того, чтобы узнать,как пользоваться Фотошопом, тебе нужен будет, ты угадал, гид по Фотошопу — или можно воспользоваться интуицией, т.к. это не так-то сложно. Можно вот так:

  • Берёшь любую картинку
  • Основным фоном делаешь оружие
  • Всё остальное делаешь невидимым
  • Таскаешь картинку по оружию, пока тебе не надоест (здесь процесс заканчивается…You died, and the hopes of Red Faction died with you) или не попадётся красивый кадр
  • Сохраняешь
  • Profit.

Далее — с помощью VTFEdit открываем получившийся файл, который ты сохранил — как .tga — и конвертируем в приемлемый для Valve формат, а это, как ты помнишь — VTF. Cохраняем файл VTF в корневую директорию игры.

Теперь у тебя должно быть два файла — vtf и tga.

Для того, чтобы включить консоль, идем следующим путем: Help & Options -> Game Settings -> Enable developer console. Теперь консоль можно будет включать в игре.

Потом открываем саму игру и плавным взмахом руки нажимаем тильду (слева от клавиши “1”, похожа на плавающую соплю морского конька, лежащего на боку). В конcоли пишешь workshop_workbench. Далее открывается окно, в котором выбираешь Custom Paint Job и далее Choose Pattern. Потом выбираешь vtf-файл.

Делаешь все как здесь (значения на минимум) и сохраняешь файл как txt.

Стартуешь CS GO –SDK. Далее weapon finish publisher – add. Здесь заполняешь все соответствующие графы и три файла — txt, tga, и vtf. Прнимаешь условия соглашения, отсылаешь, и — тада! — ты становишься знаменитым на весь мир и безумно богатым.

Только замолви за нас пару слов, когда СМИ всего мира, пихаясь и стуча друг друга по голове микрофонами, будут драться за право задать тебе вопрос про то, как началась твоя дорога к мировому доминированию.

Мастерская Steam не работает в 2021 году: как это исправить

Будучи одной из самых популярных услуг распределения видео игры онлайн, Steam используется большинством игроков ежедневно загрузки, управлять и обновлять свои игры. Если вы один из них, вы должны знать, что Steam содержит много ошибок, и сегодня мы поговорим об одной из этих ошибок, с которыми люди столкнулись.

Что такое Мастерская Steam?

Steam workshop является частью сообщества Steam, который является дискуссионным форумом по Steam, в котором игроки могут написать свои отзывы и комментарии о последних новостях об играх и других вещах.

Мастерская Steam – отличное место для изучения новых модов, предметов и карт, созданных сообществом для различных игр.

Ошибка с мастерской Steam приводит к тому, что он не загружает моды. Эта ошибка возникает по множеству причин.

  • Во-первых, если кеш загрузки содержит битые файлы.
  • Проблема с повреждением при установке Steam
  • Устаревшее приложение Steam
  • Используется неправильный регион загрузки, т. Е. Ваш реальный физический регион находится далеко от выбранного региона загрузки.
  • Если вы приняли участие в программе бета-обновлений Steam.
Читайте также  Как узнать есть ли скрытые файлы на телефоне?

Прежде чем пытаться исправить какое-либо из исправлений, мы рекомендуем сначала перезагрузить компьютер, поскольку он обновляет операционную систему и удаляет все поврежденные данные, которые могут вызывать проблему.

Первое исправление: используйте режим большого изображения

В некоторых случаях прогресс загрузки отображается в режиме большой картинки только после обновления модов до последней версии. Чтобы использовать режим большого изображения:

  • Откройте клиент Steam, и в правом верхнем углу вы увидите значок режима с большим изображением слева от кнопки свертывания. Щелкните по нему, чтобы войти в режим большого изображения.
  • Проверьте, загружаются ли моды в очереди в режиме большой картинки.

Второе исправление: изменить регион загрузки

Иногда, если ваш регион загрузки находится далеко от вашего IP. Он может заблокировать загрузку модов. Чтобы изменить регион загрузки:

  • Откройте клиент Steam и нажмите кнопку Steam в верхнем левом углу.
  • В меню Steam нажмите «Настройка».
  • Затем нажмите «скачать».
  • При загрузке вы увидите, что регион загрузки изменится на ваше физическое местоположение, а затем нажмите ОК.
  • Попробуйте загрузить моды еще раз и посмотрите, возникнет ли ошибка.

Третье исправление: очистить кеш загрузок Steam

Эта ошибка может возникнуть, если в кеше загрузки клиента Steam хранится много данных. Чтобы очистить кеш загрузок:

  • Откройте клиент Steam от имени администратора.
  • В меню загрузки клиента Steam. Вы увидите кнопку «Очистить кеш загрузки» внизу экрана, нажмите на нее и нажмите «Да» в ответ на запрос подтверждения. (Чтобы открыть меню загрузки, вы можете обратиться ко второму исправлению.)
  • Перезапустите Steam, войдите в свою учетную запись и проверьте, скачиваются ли моды.

Четвертое исправление: отказ от участия в бета-программах Steam

Некоторые пользователи сообщили, что отказ от бета-программы помогает решить проблему. Сделать это:

  • Откройте клиент Steam и откройте настройку с помощью кнопки Steam в левом верхнем углу.
  • В настройках нажмите «учетная запись».
  • В аккаунте вы увидите кнопку «Изменить» при участии в бета-тестировании.
  • Нажмите на эту кнопку и выберите «Нет – отказаться от всех бета-программ», а затем нажмите «ОК».

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

Не загружаются моды из мастерской Steam – что делать?

Иногда могут возникнуть проблемы с загрузкой модов, поскольку пользователям не удается подписаться на них в мастерской Steam. Во многих случаях моды просто не регистрируются или отсутствуют в очереди для скачивания.

Почему не удается загрузить моды из мастерской в Steam?

Пользователи могут столкнуться с этой неполадкой по нескольким причинам:

  1. Повреждены файлы в папке Workshop, которые препятствуют скачиванию новых модов. В этом случае нужно удалить поврежденные моды и запустить проверку целостности игры.
  2. Строка состояния загрузки отображается только в режиме Big Picture. После обновления Steam может изменить настройку по умолчанию, в результате не сможете отслеживать процесс при обычном входе в клиента, который происходит в фоновом режиме. Чтобы проверить, переключитесь в режим Big Picture.
  3. В кэше загрузки содержится много ожидающих файлов, некоторые из них могут оказаться нерабочими.
  4. В аккаунте включена функция «Бета-тестирования», которая может вызвать проблему.
  5. Неправильно установлен регион загрузки.
  6. Повреждена установка Steam.

Отображается ли строка загрузки в режиме Big Picture?

В некоторых случаях проблема только с отображением строки загрузки. Вполне возможно, что моды из мастерской загружаются после нажатия на кнопку, но интерфейс Steam по умолчанию не отображает индикатор.

Чтобы проверить, нужно войти в режим Big Picture. Для этого нажмите на соответствующий значок в правом верхнем углу экрана. Теперь проверьте, отображается ли строка загрузки.

Удаление поврежденных модов

Если проблема возникает в одной игре, возможно, некоторые из ее файлов повреждены. В этом случае Стим будет отказываться загружать какие-либо новые моды для этой игры, пока не удалите поврежденные файлы из скрытой папки !Workshop.

Полностью закройте Steam, затем проверьте в Диспетчере задач (Ctrl + Shift + Esc), нет ли запущенных фоновых процессов клиента.

Откройте проводник и перейдите на вкладу «Вид». Отметьте флажком опцию «Скрытые элементы».

Теперь перейдите в следующую локацию:
C:Program Files (x86)SteamsteamappscommonНазвание игры!Workshop

Дважды щелкните по каждому моду в отдельности и проверьте, какой вызывает ошибку. Если один или несколько модов не запускаются, то неполадка вызвана их повреждением. В этом случаю нужно удалить все неисправные файлы.

Затем откройте Стим и перейдите в папку Библиотека. Щелкните правой кнопкой мыши на игре и выберите «Свойства». На вкладке Локальные файлы запустите проверку целостности файлов игры.

После завершения проверки попробуйте загрузить новый мод и посмотрите, успешно ли завершится операция.

Очистка кэша загрузки

Еще одной распространенной причиной сбоя, который может возникнуть в ситуации, когда в очереди для скачивания накопилось много ожидающих файлов. Вполне возможно, что загрузчик дал сбой и отказывается скачивать новые компоненты. Попробуйте очистить кэш и посмотрите, решит ли это проблему.

В верхнем меню откройте вкладку Steam, затем выберите пункт «Настройки».

На вкладке Загрузки перейдите на правую панель и нажмите на кнопку «Очистить кэш загрузки». В строке подтверждения нажмите на кнопку «Да», чтобы очистить сохраненный кэш.

После завершения операции войдите в свою учетную запись и попытайтесь загрузить моды из мастерской.

Отключение бета-тестирования

Иногда удается решить проблему, отказавшись то бета-тестирования и повторно подписавшись на моды, которые не загружаются.

В игровом клиенте снова разверните вкладку Настройки. На вкладке Аккаунт кликните на «Сменить» в разделе Участие в бета-тестировании, из выпадающего меню выберите опцию «Отказаться – выход из всех бета-программ».

Перезапустите Steam и повторно подпишитесь на моды, которые не удавалось загрузить.

Проверка региона

Еще одна причина в установленном регионе, который находится далеко от фактического IP-адреса. В этом случае приложение заблокирует скачивание новых файлов. Для устранения ошибки измените регион на страну проживания.

Перейдите в меню Настройки – Загрузки. Затем на правой панели измените регион на соответствующую страну.

Сохраните изменения на «ОК», после попытайтесь загрузить моды из мастерской при следующем запуске приложения.

Установка карт из Workshop

Workshop (Мастерская Steam) — это сервис Steam, позволяющий разработчикам загружать свои карты, модели и прочие ресурсы для общего пользования.
Пример будет рассмотрен на установке карт из Workshop на сервер Counter-Strike: Global Offensive.

Шаг 1. Создание ключа к Steam WebAPI.

Первым делом нужно получить собственный ключ к Steam WebAPI. Для этого перейдите по данной ссылке: http://steamcommunity.com/dev/apikey
На открывшейся странице, войдите в свою учетную запись Steam.

В окне регистрации нового ключа, в поле Домен введите свой адрес электронной почты и поставьте галочку, подтверждая свое согласие с правилами пользования.
Нажмите Зарегистрировать.

На новой странице Вы увидите свою ключ от WebAPI, его нужно скопировать.

Зайдите в панель управления игровым сервером, в разделе Конфиги откройте редактирование файла webapi_authkey.txt
Вставьте в него свой WebAPI ключ и сохраните файл.

Шаг 2. Настройка коллекции карт в Мастерской.

В Мастерской найдите или создайте нужную вам группу карт (на забудьте опубликовать созданную вами коллекцию карт, для проверки зайдите с анонимной вкладки вашего браузера по ссылке на вашу коллекцию, если её видно — значит опубликована, если ошибка, значит не опубликована). Зайдите в нее и скопируйте ее номер из адресной строки браузера. Этот номер будет использоваться для параметра host_workshop_collection.
Для примера рассмотрим популярный набор _se карт.

Далее нужно скопировать номер карты, которая будет выставлена на сервере как стартовая. В выбранной или созданной коллекции в Мастерской, откройте нужную вам карту и скопируйте номер карты из адресной строки браузера. Этот номер будет использоваться для параметра workshop_start_map.

В панели управления игрового сервера в разделе Конфиги откройте файл autoexec.cfg и впишите в него полученные параметры:

host_workshop_collection 125499590
workshop_start_map 125488374

Соответственно, цифры в параметрах у вас должны быть свои, которые вы скопировали ранее.
Чтобы запретить игрокам ставить любые карты из Мастерской впишите следующий параметр:
sv_workshop_allow_other_maps 0

Сохраните файл, перезапустите игровой сервер.

После перезапуска, сервер автоматически скачает новые карты из Мастерской и поставит стартовой карту ту, номер которой вы указали в параметре workshop_start_map. Игрокам при входе на Ваш сервер будет автоматически закачана карта в папку с игрой, поэтому не нужно заботиться о создании собственного контент-хостинга для быстрого скачивания.

Шаг 3. Настройка ротации карт на сервере.

Для того, чтобы отключить встроенное в игру голосование за новую карту и использовать голосование от SourceMod, в дополнительные параметры в разделе Конфиг впишите mp_endmatch_votenextmap 0
Теперь настроим ротацию карт. В разделе Конфиги откройте файл mapcycle.txt, для использования карт из Мастерской, в данный файл нужно вписывать карты в формате: workshop/номер карты/название карты
Для приведенного выше примера с группой _se карт, данный файл будет выглядеть так:

workshop/125488374/de_dust2_se
workshop/125498231/de_train_se
workshop/125499116/de_inferno_se
workshop/125498553/de_nuke_se

Список карт, который будет отображаться в меню администратора нужно настраивать аналогичным образом.
Сохраните настройки, выключите игровой сервер.
После чего можете включить игровой сервер, он скачает карты из Мастерской и запустит их.

Борис Аладышкин/ автор статьи

Приветствую! Я являюсь руководителем данного проекта и занимаюсь его наполнением. Здесь я стараюсь собирать и публиковать максимально полный и интересный контент на темы связанные с современными технологиями и программным обеспечением. Уверен вы найдете для себя немало полезной информации. С уважением, Борис Аладышкин.

Понравилась статья? Поделиться с друзьями:
Itsovet61.ru
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: