Вместо скачивания при соединении дополнительных ресурсов (карт, моделей, звуков и т.д.) напрямую с игрового сервера, в Half-Life теперь поддерживается скачивание с HTTP-сервера (т.е. с веб-сервера).
Преимущества
Скачивание через HTTP имеет три важных преимущества:
Что будут видеть игроки, соединяющиеся с сервером, имеющим дополнительные или недостающие у игрока ресурсы.
Когда игрок соединяется с сервером, имеющим дополнительные ресурсы, произойдет одно из двух:
1) Создайте список всех нестандартных файлов (bsp, wav, mdl, etc), использующихся на вашем сервере
2) Скопируйте эти файлы на веб-сервер, сохраняя структуру каталогов
3) Необязательно: Для показа баннера игрокам, закачивающим дополнительные ресурсы, положите рисунок в формате GIF (340x56) в директорию путь которой:
4) Установите серверную переменную sv_downloadurl в
"http://yourserver/custom_content_directory/"
Пример:
Ваш сервер использует нестандартную карту "cs_mansion_bftw_day", которая требует наличия следующих файлов:
Предположим, у вас есть место на веб-сервере с адресом: https://megaboom.pro/~dir, которое вы хотите использовать для хостинга ваших дополнительных ресурсов.
Чтобы сделать это, закачайте файлы, требующиеся для карты cs_mansion_bftw_day на ваш веб-сервер, в созданную директорию cs16, сохраняя структуру подкаталогов.
Теперь на вашем веб-сервере вы имеете следующие файлы:
Теперь игроки, соединяющиеся с вашим сервером, автоматически скачают карту cs_mansion_bftw_day и требующиеся для нее дополнительные файлы с вашего веб-сервера (конечно, если только они еще не имеют этой карты и необходимых файлов)
Также рекомендуется сжимать файлы с помощью архиватора bZip2 который можно скачать по ссылке: http://www.bzip.org
Это намного увеличит скорость скачивания, что безусловно будет приятно игрокам и облегчит нагрузку на ваш сервер.
Технические детали
В переменную sv_downloadurl можно добавить только один адрес, но имеются возможности делать редиректы с этого адреса если правильно настроить веб-сервер, что существенно снизит нагрузку путем балансировки по нескольким веб-серверам.
Если вам это интересно ознакомьтесь со следующими статьями содержащими примеры:
Преимущества
Скачивание через HTTP имеет три важных преимущества:
- Скачивание дополнительных ресурсов не оказывает влияния на игровой сервер, так как передачу файлов осуществляет отдельный веб-сервер с дополнительными ресурсами
- Игроки будут закачивать дополнительные ресурсы на максимально возможной для них скорости, что существенно ускорит процесс закачки
- Игроки, закачивающие дополнительные ресурсы, не занимают слот на сервере
Что будут видеть игроки, соединяющиеся с сервером, имеющим дополнительные или недостающие у игрока ресурсы.
Когда игрок соединяется с сервером, имеющим дополнительные ресурсы, произойдет одно из двух:
- Если сервер не сконфигурирован на скачивание через HTTP, будет использоваться обычный метод скачивания "струйкой" ;
- Если сервер сконфигурирован на скачивание через HTTP, игрок увидит расширенный диалог закачки, и получит гораздо более быстрое скачивание. Пока идет закачка, игрок не соединен с игровым сервером. Как только закачка завершена, игрок автоматически пересоединяется с сервером и может играть.
1) Создайте список всех нестандартных файлов (bsp, wav, mdl, etc), использующихся на вашем сервере
2) Скопируйте эти файлы на веб-сервер, сохраняя структуру каталогов
3) Необязательно: Для показа баннера игрокам, закачивающим дополнительные ресурсы, положите рисунок в формате GIF (340x56) в директорию путь которой:
Код:
<custom content directory>/gfx/banner.gif
"http://yourserver/custom_content_directory/"
Пример:
Ваш сервер использует нестандартную карту "cs_mansion_bftw_day", которая требует наличия следующих файлов:
Код:
C:\Steam\Valve\cstrike\maps\cs_mansion_bftw_day.map
C:\Steam\Valve\cstrike\cs_mansion_bftw_day.wad
C:\Steam\Valve\cstrike\sound\ambience\cs_mansion_bftw_day_a.wav
C:\Steam\Valve\cstrike\sound\ambience\cs_mansion_bftw_day_b.wav
C:\Steam\Valve\cstrike\sound\ambience\cs_mansion_bftw_day_c.wav
Чтобы сделать это, закачайте файлы, требующиеся для карты cs_mansion_bftw_day на ваш веб-сервер, в созданную директорию cs16, сохраняя структуру подкаталогов.
Теперь на вашем веб-сервере вы имеете следующие файлы:
Теперь игроки, соединяющиеся с вашим сервером, автоматически скачают карту cs_mansion_bftw_day и требующиеся для нее дополнительные файлы с вашего веб-сервера (конечно, если только они еще не имеют этой карты и необходимых файлов)
Также рекомендуется сжимать файлы с помощью архиватора bZip2 который можно скачать по ссылке: http://www.bzip.org
Это намного увеличит скорость скачивания, что безусловно будет приятно игрокам и облегчит нагрузку на ваш сервер.
Технические детали
- Максимальная длина значения переменной sv_downloadurl - 127 символов
- Имеется возможность указать имя и пароль для доступа к веб-серверу, в значении переменной sv_downloadurl
- http://username:[email protected]/
- username - имя пользователя
- password - пароль
- Замечание - последние заплатки для IE могут отключить эту функциональность
- Если соединяющийся игрок имеет файл с тем же именем, этот файл не будет переписан, скачивание этого файла будет пропущено
- Некоторые критические и/или опасные файлы не могут быть скачаны (например: *.exe, *.vbs, etc)
В переменную sv_downloadurl можно добавить только один адрес, но имеются возможности делать редиректы с этого адреса если правильно настроить веб-сервер, что существенно снизит нагрузку путем балансировки по нескольким веб-серверам.
Если вам это интересно ознакомьтесь со следующими статьями содержащими примеры:
- Для HLDS сервера плагин: Multi FastDownload
- [SNIPPET] Multiple Fast Download URLs