SteamPipe
SteamPipe - новая система дистрибуции контента Steam , представленная в 2013 году.
Он изменяет способ загрузки, обновления и хранения программ (включая выделенные серверы ).
Преимущества
Для игроков
Преимущества для игроков являются:
- Более быстрая и плавная загрузка
- Более быстрое время загрузки игры и время загрузки карты
- Проще распределение, установка и управление модами
- Плавный переход к распределению выделенных серверов и обновлений
Для администраторов серверов
Вместо проприетарного протокола доставки, 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. К счастью, известны исправления для многих модов Half-Life 2. Эти исправления можно найти здесь.
- Большинство игр на Source 2013 (включая сторонние игры) теперь содержат дубликаты базовых файлов Half-Life 2 (за исключениемв ), что приводит к потере места на диске.
- Предупреждение:Хотя можно указать нескольким играм на один и тот же VPK, не все VPK с одним и тем же именем одинаковы для всех игр! Например, VPK "hl2" отличаются от VPK, реально используемых в , а "hl2" VPK отличаются от других VPK в "hl2".Обходной приём:Есть два варианта:
- Использовать относительные ссылки на VPK (или папки) в gameinfo.txt , чтобы они выглядели примерно так:
game "../Half-Life 2/hl2/hl2_textures.vpk"
- Использовать символические ссылки или жесткую привязку VPK (или папок) используя такие программы, как Link Shell Extension (проще), или через команду
mklink
в Windows; более подробную информацию можно найти здесь.
- Использовать относительные ссылки на VPK (или папки) в gameinfo.txt , чтобы они выглядели примерно так:
Для разработчиков
Source SDK Launcher не поддерживает 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 , а непосредственно в файловую систему.
- Данные, генерируемые до/во время игрового процесса, больше не хранятся в пользовательских подкаталогах SteamApps, вместо этого используется общий подкаталог.
- Выделенные серверы используют SteamCMD (урезанную версию полного клиента Steam).
См. также
- GoldSource_SteamPipe_Directories для списка каталогов, используемых в играх на движке GoldSource
- IFileSystemV009 для интерфейса C++, используемого для доступа к файлам через SteamPipe в GoldSource