SteamPipe

From Valve Developer Community
Jump to: navigation, search
English (en)Español (es)Nederlands (nl)Polski (pl)Português do Brasil (pt-br)Русский (ru)中文 (zh)

Неполная

Эта статья(раздел) является наброском. Вы можете помочь, дополнив её.

SteamPipe - новая система дистрибуции контента Steam(en), представленная в 2013 году.

Он изменяет способ загрузки, обновления и хранения программ (включая выделенные серверы(en)).

Преимущества

Для игроков

Преимущества для игроков являются:

  • Более быстрая и плавная загрузка
  • Более быстрое время загрузки игры и время загрузки карты
  • Проще распределение, установка и управление модами
  • Плавный переход к распределению выделенных серверов и обновлений

Для администраторов серверов

Вместо проприетарного протокола доставки, SteamPipe использует HTTP, который позволяет ЦОДам, принимающим несколько серверов, настроить кэширование HTTP-прокси, что требует только одной загрузки обновления с серверов Valve.

Для разработчиков игр

Разработчики игр, использующие SteamPipe, могут самостоятельно выпускать обновления; предыдущая система требовала ручного вмешательства Valve при публикации обновления.

Кэширование локальной сети

Так как SteamPipe теперь использует HTTP, он позволяет не только ЦОДу с несколькими серверами для настройки кэширования, но и очень полезно для локальной сети. Настройка кэширования прокси-сервера может значительно уменьшить пропускную способность, необходимую для нескольких клиентов или серверов для выполнения обновлений.

LANcache – Dynamically Caching Game Installs at LAN’s using Nginx является примером того, как настроить кэширование прокси для SteamPipe, как это используется в Инсомнии игрового фестиваля Multiplay. steam-squid - образ Docker, содержащее оптимизированную до Steam версию прокси кэширования Squid для простоты установки.

Недостатки

Для игроков

  • Многие Source SDK моды, использующие содержимое Half-Life 2 Half-Life 2 (и/или его эпизодов), которое не перешло в обновление, сломаны, это также включает некоторые (но не все) моды для Half-Life Half-Life. К счастью, известны исправления для многих модов Half-Life 2. Эти исправления можно найти здесь.
  • Большинство игр на Source 2013 Source 2013 (включая сторонние игры) теперь содержат дубликаты базовых файлов Half-Life 2 Half-Life 2 (за исключениемв Half-Life 2Half-Life 2: Episode One Half-Life 2: Episode Two Half-Life 2: Lost Coast Half-Life: Source), что приводит к потере места на диске.
Warning.pngПредупреждение:Хотя можно указать нескольким играм на один и тот же VPK, не все VPK с одним и тем же именем одинаковы для всех игр! Например, VPK Source 2013 Multiplayer "hl2" отличаются от VPK, реально используемых в Half-Life 2, а Team Fortress 2 "hl2" VPK отличаются от других VPK в Source 2013 Multiplayer "hl2".
PlacementTip.pngОбходной приём: Есть два варианта:

Для разработчиков

Source SDK Launcher не поддерживает Source 2013 Source 2013 игры. Инструменты для игр, которые были в Source SDK Launcher теперь должны быть запущены, перейдя в "C:\Program Files (x86)\Steam\SteamApps\common\[название игры]\bin" (см. пример пути ниже) а затем запускать .bat-файлы (пример: Hammer.bat для запуска Valve Hammer Editor).

Пример пути к SDK: 🖿C:\Program Files (x86)\Steam\SteamApps\common\Half Life 2\bin

Изменения

  • Загрузка осуществляется по протоколу HTTP, а не по проприетарному протоколу.
  • Файлы данных больше не размещаются в GCF(en), а непосредственно в файловую систему.
    • Чтобы компенсировать проблемы с производительностью при доступе к большому количеству мелких файлов (что и послужило причиной использования GCF), Source(en)-игры, распространяемые через SteamPipe, теперь хранят свои активы в VPK(en)-архивах.
  • Данные, генерируемые до/во время игрового процесса, больше не хранятся в пользовательских подкаталогах SteamApps, вместо этого используется общий подкаталог.
  • Выделенные серверы используют SteamCMD(en) (урезанную версию полного клиента Steam).

См. также

  • GoldSource_SteamPipe_Directories(en) для списка каталогов, используемых в играх на движке GoldSource
  • IFileSystemV009(en) для интерфейса C++, используемого для доступа к файлам через SteamPipe в GoldSource

Внешние ссылки