Difference between revisions of "Servers/ru"
(Created page with '{{DISPLAYTITLE:Сервер}} {{translate}} Как и для всех прочих многопользовательских игр, созданных на движке Source,…') |
|||
(29 intermediate revisions by 20 users not shown) | |||
Line 1: | Line 1: | ||
{{DISPLAYTITLE:Сервер}} | {{DISPLAYTITLE:Сервер}} | ||
− | + | Как и для всех прочих многопользовательских игр, созданных на движке [[Source Engine/ru|Source]], [[Team Fortress 2/ru|Team Fortress 2]] работает по принципу взаимодействия между клиентом и сервером. Под «клиентом», в данном случае, подразумевается сама игра, запущенная на компьютере игрока, а под «сервером» — программное обеспечение, к которому выполняются подсоединения клиентов. На данный момент существует несколько тысяч серверов Team Fortress 2, расположенных по всему миру. | |
− | Как и для всех прочих многопользовательских игр, созданных на движке Source, Team Fortress 2 работает по принципу взаимодействия между клиентом и сервером. Под | ||
− | + | Игровой '''сервер''' имеет влияние на множество аспектов игры. Он отвечает на действия игроков, постоянно обновляя его местоположение и состояние, такие как стрельба из оружия, потом выбирает нужное событие, такое как нанесение урона, а затем выводит результат в игровой мир, нанося и отображая высчитанный урон. Серверы также отвечают за неконтролируемые игроками процессы, вроде времени до окончания карты или поведения [[Sentry Gun/ru|турелей]]. | |
− | == | + | == Преимущества == |
− | + | Вместо присоединения к существующим серверам, у игроков есть возможность создать свой сервер. Это позволит создающему игроку задавать порядок [[Map/ru|карт]], определяя собственный список играемых карт и [[List of game modes/ru|режимов]]. Более того, создающему дается управление над прочими параметрами, такими как гравитация, ограничения по классам, [[List of game modes/ru#Горец|режим «Горец»]] и так далее. Также можно устанавливать сторонние [[Mods/ru|модификации]], способные разнообразить игровой процесс. | |
− | + | == Виды серверов == | |
− | + | Существует два типа серверов, которые могут быть запущены на движке [[Source Engine/ru|Source]]. | |
− | |||
− | |||
− | |||
− | |||
− | == | + | === Локальный сервер === |
− | + | ''Локальный сервер'' является стандартным сервером, находящимся внутри клиента [[Team Fortress 2/ru|Team Fortress 2]]. Его можно создать, просто нажав на кнопку «Создать сервер» в главном меню. Другие игроки смогут подключиться к такому серверу, но на компьютер игрока, на котором был запущен этот сервер, будет довольно большая нагрузка. Этот тип сервера в основном подходит для каких то определенных событий внутри вашей сети. | |
+ | |||
+ | === {{Anchor|Dedicated}} Выделенный сервер === | ||
+ | ''См. также [[Dedicated server configuration/ru|Настройка выделенного сервера]].'' | ||
+ | |||
+ | ''Выделенный сервер'' является самостоятельным сервером, не требующим запуска клиента [[Steam/ru|Steam]]. Такие серверы предпочтительнее локальных из-за низкой нагрузки на компьютер создающего игрока. Более того, множество выделенных серверов запускается на отдельных, сверхмощных компьютерах, подключенных к высокоскоростному интернету, что гарантирует клиентам низкий уровень задержки, а так же быстрое и стабильное подключение. | ||
+ | |||
+ | == Системные требования == | ||
+ | Хоть поставщики игровых серверов и используют самое современное оборудование для поддержания большого количества серверов, для запуска одного сервера требуется компьютер со следующими характеристиками: | ||
− | === Локальный | + | === Локальный сервер === |
− | + | * '''Mac OS X''' 10.5.8 или 10.6.3 и выше, с оборудованием, отвечающим требованиям игры. | |
+ | * '''Windows''' XP и выше, с оборудованием, отвечающим требованиям игры. | ||
=== Выделенный сервер === | === Выделенный сервер === | ||
− | В | + | * '''Linux''' (x86 или amd64), имеющий GLIBC 2.3.2 и выше. |
+ | * '''FreeBSD''' (x86 или amd64), имеющий режим совместимости с Linux и свежую версию системы Linux. | ||
+ | * '''Windows''' 2000 и выше. | ||
+ | |||
+ | == Предыдущие изменения == | ||
+ | {{update history|1= | ||
+ | '''{{patch name|9|20|2007}}''' | ||
+ | * Выпущена бета-версия выделенного сервера на Linux. | ||
+ | |||
+ | '''{{patch name|9|26|2007}}''' | ||
+ | * Родственность (affinity) главного потока больше не устанавливается для выделенного сервера. Это позволяет правильно распределять нагрузку при нескольких одновременно запущенных выделенных серверов на мультипроцессорной системе. Родственность всё также установлена на первый процессор для клиентов и локальных серверов (listen servers). | ||
+ | * С серверов убрана переменная {{code|mp_friendlyfire}}». В некоторых случаях Team Fortress 2 мог неверно работать, если она присутствовала. | ||
+ | |||
+ | '''{{patch name|9|28|2007}}''' | ||
+ | * Исправлено редкое падение сервера, вызванное повреждением сетевых данных. | ||
+ | |||
+ | '''{{patch name|10|2|2007}}''' | ||
+ | * Исправлено падение сервера, связанное с жучком шпиона. | ||
+ | * Добавлена возможность «Создания сервера» в меню игры. | ||
+ | |||
+ | '''{{patch name|10|9|2007}}''' | ||
+ | * Улучшена первоначальная инициализация сети, чтобы перехватывать всплывающий в фоне серверный брэндмауэр. | ||
+ | |||
+ | '''{{patch name|10|25|2007}}''' | ||
+ | * Исправлены ошибки на [[Dustbowl/ru|Dustbowl]] и [[Hydro/ru|Hydro]], которые проявлялись когда сервер становился пустым в середине раунда. | ||
+ | * Исправлены ошибки, связанные с Honeypot серверами. | ||
+ | |||
+ | '''{{patch name|11|20|2007}}''' | ||
+ | * На сервер добавлена переменная {{code|sv_pure}}, по умолчанию выключенная. Наберите {{code|sv_pure}} в консоли для полного описания. | ||
+ | * В серверный лог добавлены записи для: {{code|Round_Start, Round_Setup_Begin, Round_Setup_End, Round_Overtime, Round_SuddenDeath, Round_Stalemate, Round_Win, Round_Length, Mini_Round_Selected, Mini_Round_Start, Mini_Round_Win и Mini_Round_Length.}} | ||
+ | * Записи серверного лога для {{code|Round_Win}} и смены уровня теперь содержат данные о командном счёте и количестве игроков. | ||
+ | * Обновлены записи захвата флага серверного лога для отображения количества захватов и {{code|tf_flag_caps_per_round value}}. | ||
+ | * Исправлена ошибка, при которой выделенный сервер под Windows, запущенный в режиме {{code|-console}}, отображал своё окно на переднем плане, вместо заднего при старте. | ||
+ | * Исправлена ошибка в выделенном сервере под Windows (в режиме {{code|-console}}), при которой набор текста в консольном окне был очень медленным и трудоёмким. | ||
+ | * Исправлена ошибка с обновлением имени 32-го игрока на сервере. | ||
+ | |||
+ | '''{{patch name|12|20|2007}}''' | ||
+ | * Режим мгновенной смерти теперь является серверной настройкой (консольной переменной) и по умолчанию выключен. | ||
+ | * Исправлена консольная команда {{code|rcon}}, которая могла вызвать падение сервера. | ||
+ | * Исправлено редкое падение, которое могло проявляться, когда пациент медика внезапно покидал сервер. | ||
+ | * Добавлена возможность серверам загружать собственные {{code|.cfg}} карты в папке cfg. | ||
+ | |||
+ | '''{{patch name|12|31|2007}}''' | ||
+ | * Добавлена информация о позиции игрока для учета событий сервером {{code|(player_death, player_builtobject, teamplay_flag_event, object_destroyed, teamplay_point_captured, teamplay_capture_blocked)}}. | ||
+ | |||
+ | '''{{patch name|1|14|2008}}''' | ||
+ | * Добавлена команда {{code|nextlevel}}. Если она установлена во время игры на карте, то сервер сервер сменит карту во время следующей смены уровня. | ||
+ | |||
+ | '''{{patch name|2|14|2008}}''' | ||
+ | * Теперь, когда инженер уничтожает свои сооружения, это записывается в серверный лог. | ||
+ | |||
+ | '''{{patch name|2|15|2008}}''' | ||
+ | * Игровой сервер теперь будет пытаться последовательно запускаться на 32-х портах, если они запущены на одной машине. Ранее сервер останавливался после перебора 10 портов. | ||
+ | * Исправлено падение сервера при {{code|mp_forcecamera}} установленной в «1» (откат к прежнему поведению переменной). | ||
+ | |||
+ | '''{{patch name|2|28|2008}}''' | ||
+ | * Игроки могут использовать фильтр тэгов для поиска серверов с различными собственными правилами. | ||
+ | * Добавлены опции для серверов, позволяющее им устанавливать свои правила: отключение критических выстрелов {{code|tf_weapon_criticals}}, мгновенное возрождение {{code|(mp_disable_respawn_times)}}, и увеличение количества игроков больше 24. | ||
+ | |||
+ | '''{{patch name|3|6|2008}}''' | ||
+ | * {{code|sv_alltalk}} убрана из консольных переменных, которые являлись серверными тэгами. | ||
+ | * Исправлена ошибка, при которой серверы с SourceTV и максимальным количеством игроков меньше 24 использовали тэг {{code|«increased_maxplayers»}}. | ||
+ | |||
+ | '''{{patch name|3|13|2008}}''' | ||
+ | * Исправлены проблемы с загрузками карт на Linux-серверах, использующие процессоры Athlon. | ||
+ | |||
+ | '''{{patch name|3|20|2008}}''' | ||
+ | * Исправлена ошибка, при которой консольные переменные {{code|FCVAR_REPLICATED}} и {{code|FCVAR_NOTIFY}} некорректно работали под Linux. | ||
+ | * Исправлена уязвимость, при которой сервер мог отправлять код выполнения клиенту. | ||
+ | * Добавлена консольная переменная {{code|mp_stalemate_at_timelimit}}, чтобы можно было включить режим мгновенной смерти при истечении {{code|mp_timelimit}} на картах не от Valve. | ||
+ | |||
+ | '''{{patch name|4|1|2008}}''' | ||
+ | * Исправлена ошибка, из-за которой некоторые выделенные серверы не загружали игровую статистику. | ||
+ | |||
+ | '''{{patch name|4|2|2008}}''' | ||
+ | * Исправлено падение выделенного Linux-сервера при смене карты. | ||
+ | |||
+ | '''{{patch name|4|30|2008}}''' | ||
+ | * Исправлены случаи, когда игроки могли запускать на сервере команду {{code|sv_soundscape_printdebuginfo}}. | ||
+ | * Исправлена потенциальная уязвимость «nuke» на подсистеме {{code|rcon}}. | ||
+ | |||
+ | '''{{patch name|8|4|2008}}''' | ||
+ | * Исправлена ошибка, при которой команда {{code|_resetgamestats}} вызывала падение сервера. | ||
+ | |||
+ | '''{{patch name|7|14|2009}}''' | ||
+ | * Улучшена логика подключений, чтобы помочь серверам, которые автоматически не переподключаются к Steam. | ||
+ | * Исправлена уязвимость {{code|«setinfo»}}, которая позволяла использовать запрещённые консольные команды при подключении к серверу. | ||
+ | * Исправлена ошибка, при которой консольная переменная {{code|sensitivity}} могла вызвать падение сервера. | ||
+ | |||
+ | '''{{patch name|5|27|2010}}''' | ||
+ | * Добавлена проверка версии клиента/сервера при подключении клиента. | ||
+ | |||
+ | '''{{patch name|6|11|2010}}''' | ||
+ | * Исправлено зависание сервера на этапе создания [[Bots/ru|ботов]]. | ||
+ | |||
+ | '''{{patch name|2|14|2011}}''' | ||
+ | * Улучшена версия сообщения об ошибке несовпадения, получаемая при подключении к серверу с отличной от вашего клиента версией. | ||
+ | |||
+ | '''{{patch name|2|22|2011}}''' | ||
+ | * Исправлена уязвимость падения сервера, вызванная испорченными сетевыми пакетами. | ||
+ | |||
+ | '''{{patch name|2|24|2011}}''' ({{update link|Community Map Pack Update}}) | ||
+ | * Исправлена ещё одна [[Exploits/ru|уязвимость]] падения сервера, вызванная испорченными сетевыми пакетами | ||
+ | * {{Undocumented}} Исправлен случай, при котором после успешной торговли на сервере показывало только один из всех купленных предметов. | ||
+ | |||
+ | '''{{patch name|3|10|2011}}''' ({{update link|Shogun Pack}}) | ||
+ | * Добавлена проверка максимального количества игроков (оно не должно быть равно 1). | ||
+ | * Исправлена уязвимость, когда игроки могли использоваться заменённые эффекты частиц на серверах с {{code|sv_pure}}. | ||
+ | |||
+ | '''{{patch name|3|15|2011}}''' | ||
+ | * Исправлено падение сервера, вызванное ударами Полудзатоити по кому-нибудь, не держа оружие. | ||
+ | |||
+ | '''{{patch name|4|15|2011}}''' | ||
+ | * Исправлено падение сервера, вызываемое голосованием за следующую карту. | ||
+ | |||
+ | '''{{patch name|4|18|2011}}''' | ||
+ | * Устранено падение сервера, вызываемое использованием [[Bots/ru|ботов]] во время смены карты. | ||
+ | |||
+ | '''{{patch name|5|9|2011}}''' | ||
+ | * Система [[Replay/ru|записей]] будет пытаться переименовывать файл при сохранении записей на жестком диске самого сервера. Если переименовывание не удастся, то система скопирует файл с новым именем и удалит старый. | ||
+ | * Устранены проблемы с многоядерными процессорами на Linux-серверах, вызывавшие серьезные тормоза в игре. | ||
+ | * Исправлена очистка данных о записях в конце раунда. Если [[servers/ru|сервер]] желает сам выполнить очистку, то в его консоли нужно ввести команду {{code|replay_docleanup}}. | ||
+ | |||
+ | '''{{patch name|5|10|2011}}''' | ||
+ | * [[Replay/ru|Система записей]]: Исправлена блокировка сервера во время очистки информации о записях. | ||
+ | |||
+ | '''{{patch name|5|13|2011}}''' | ||
+ | * Исправлена блокировка сервера во время очистки информации о записях. | ||
+ | |||
+ | '''{{patch name|5|25|2011}}''' | ||
+ | * Исправлены несколько случаев падения сервера, связанных с системой записей. | ||
+ | * Исправлено падение сервера, вызываемое системой голосования. | ||
+ | |||
+ | '''{{patch name|6|17|2011}}''' | ||
+ | * Исправлено падение сервера, связанное с системой записей. | ||
+ | * Исправлено падение сервера, вызванное [[disguise/ru|маскировкой]] [[Spy/ru|шпионов]]. | ||
+ | * Исправлено падение сервера, при вводе информации в [[console/ru|консоль]]. | ||
+ | * Устранено падение сервера, связанное с очисткой системы частиц. | ||
+ | |||
+ | '''{{patch name|6|27|2011}}''' | ||
+ | * Добавлено серверное сообщение при подключении игрока с помощью системы распределения. | ||
+ | |||
+ | '''{{patch name|7|28|2011}}''' | ||
+ | * Исправлен расчет урона от [[Mantreads/ru|Людодавов]] на Linux-сервере, который мог привести к падению физического движка. | ||
+ | |||
+ | '''{{patch name|9|2|2011}}''' | ||
+ | * Исправлено падение сервера, связанное с неверным радиусом обзора игрока. | ||
+ | |||
+ | '''{{patch name|10|17|2011}}''' | ||
+ | * Исправлено падение сервера, когда одновременно включены [[SourceTV/ru|SourceTV]] и возможность вести запись. | ||
− | + | '''{{patch name|10|18|2011}}''' | |
− | + | * Исправлена частая ошибка, приводящая к вылету сервера, связанная с файлами формата {{code|Valve Pack File}}. | |
+ | * '''<nowiki>[Обновление 2]</nowiki>''' Исправлена ошибка сервера, связанная с не подгруженными моделями. | ||
− | + | '''{{patch name|2|2|2012}}''' | |
− | + | * Отрегулированы сообщения об ошибках на серверах, когда игроки покидали сервер из-за неудачной идентификации в [[Steam/ru|Steam]], так, чтобы они были более информативными. | |
+ | * Дополнительные важные серверные сообщения теперь показываются и в логе сервера, а не только в консоли. | ||
+ | * Исправлено падение сервера, происходившее из-за [[critical hit/ru|критических атак]] [[Holiday Punch/ru|Праздничным ударом]] по физическим объектам. | ||
+ | |||
+ | '''{{patch name|2|23|2012}}''' | ||
+ | * Исправлена команда {{code|+randommap}}, которая неверно работала при запуске сервера. | ||
+ | * Исправлен поток сообщений в консоль выделенного сервера, вызываемый [[replay/ru|ботом записи]] и углами обзора. | ||
+ | |||
+ | '''{{patch name|3|8|2012}}''' | ||
+ | * Исправлено падение клиента, которое случалось, когда сервер использовал переменную {{code|SetCustomModel}} для изменения модели игрока. | ||
+ | |||
+ | '''{{patch name|4|18|2012}}''' | ||
+ | * Исправлено падение сервера, связанное с [[Loch-n-Load/ru|Подкидышем]]. | ||
+ | |||
+ | '''{{patch name|6|27|2012}}''' ({{update link|Pyromania Update}}) | ||
+ | * Исправлены сообщения, вызываемые картой, которые не работали на выделенных серверах. | ||
+ | * Голосования, созданные выделенным сервером, больше не вызывают ожидание от проваленного голосования. | ||
+ | * Теперь игроки на сервере оповещаются при использовании [[name Tag/ru|Именного ярлыка]]. | ||
+ | |||
+ | '''{{Patch name|7|2|2012}}''' | ||
+ | * Исправлена проблема, которая позволила подделать адрес IP для соединения с игровым сервером. | ||
+ | |||
+ | '''{{Patch name|7|10|2012}}''' | ||
+ | * Исправлено самопроизвольное завершение процесса клиента/сервера при переподключении к серверу предметов. | ||
+ | |||
+ | '''{{Patch name|7|20|2012}} #1''' | ||
+ | * Добавлена команда <code>sv_namechange_cooldown_seconds</code>, запрещающая клиенту быстро менять имена. (20 секунд между сменами по умолчанию). | ||
+ | * Добавлена команда <code>sv_netspike_on_reliable_snapshot_overflow</code> для выборочного включения автоматического дампа файла сетевых ошибок, если клиент отключился из-за ошибки «reliable snapshot overflow» (по-умолчанию 0, что отключает отладку). | ||
+ | * Добавлена проверка имени игрока на содержание цветовых кодов. | ||
+ | * Исправлена ошибка, из-за которой игровые серверы неправильно получали информацию о рюкзаке клиента (частая причина сообщения «Сервер, на котором вы играете, потерял связь с сервером предметов»). | ||
+ | |||
+ | '''{{Patch name|7|23|2012}}''' | ||
+ | * Исправлена ошибка, при которой выделенные серверы не могли задавать параметр <code>sv_region</code>. | ||
+ | |||
+ | '''{{Patch name|8|3|2012}}''' | ||
+ | * Исправлена ошибка, приводящая к падению сервера: задание консольной команды tf_mm_servermode до консольной команды map. | ||
+ | |||
+ | '''{{Patch name|8|17|2012}} #1''' | ||
+ | * Сервер теперь автоматически выключается, если он стартовал в режиме Манн против машин при значении <code>sv_maxplayers</code> меньше, чем 32. | ||
+ | * Исправлено неправильное сбрасывание значения <code>mp_timelimit</code> в режиме МпМ, если защитники проиграли. | ||
+ | * Обновлена переменная <code>tf_mm_strict</code>. | ||
+ | ** Значение 2 скроет сервер в браузере серверов, но разрешит прямое подключение. | ||
+ | |||
+ | '''Обновление от 17 августа 2012 #2''' | ||
+ | * Исправлена ошибка, при которой отключившиеся игроки оставляли «призрака», который занимал слот на сервере. | ||
+ | |||
+ | '''{{Patch name|8|21|2012}}''' | ||
+ | * Исправлено редкое падение сервера во время стрельбы из оружия с [[Hitscan/ru|мгновенным попаданием]]. | ||
+ | |||
+ | '''{{Patch name|8|23|2012}}''' | ||
+ | * Добавлена новая команда <code>kickall</code>, которая отключает все клиенты, кроме записей, HLTV и хоста, управляющего сервером, если это возможно. | ||
+ | |||
+ | '''{{Patch name|9|10|2012}}''' | ||
+ | * Исправлена ошибка, позволявшая вредоносным серверам выполнять ограниченные консольные команды на игроках. | ||
+ | * Исправлена ошибка, позволявшая вредоносным серверам препятствовать игрокам выполнять консольные команды. | ||
+ | |||
+ | '''{{Patch name|9|21|2012}} #1''' | ||
+ | * Исправлено падение сервера, вызываемое ИИ [[bot/ru|бота]]-[[Demoman/ru|подрывника]]. | ||
+ | * По просьбам сообщества: | ||
+ | ** Добавлена новая серверная переменная <code>tf_avoidteammates_pushaway</code> для управления сдвигом друг друга союзников, если они занимают одно и то же место. | ||
+ | ** Добавлена новая серверная переменная <code>tf_arena_override_team_size</code>, позволяющая задать максимальное число игроков в команде в режиме [[arena/ru|Арены]]. | ||
+ | |||
+ | '''Обновление от 21 сентября 2012 #2''' | ||
+ | * Исправлена ошибка, из-за которой серверы сообщали системе поиска матчей, что они заполнены. | ||
+ | |||
+ | '''{{Patch name|10|9|2012}}''' | ||
+ | * * Исправлено падение [[server/ru|сервера]], которое могло произойти, если [[Spy/ru|шпион]] был замаскирован как инженер с [[Gunslinger/ru|Оружейником]] | ||
+ | |||
+ | '''{{Patch name|10|27|2012}}''' | ||
+ | * Исправлено падение выделенного сервера на Linux, связанное с режимом [[Mann vs. Machine (game mode)/ru|Манн против машин]]. | ||
+ | |||
+ | '''{{Patch name|11|21|2012}}''' | ||
+ | * Исправлено отображение ботов на выделенном сервере в списке серверов. | ||
+ | |||
+ | '''{{Patch name|3|19|2013}}''' | ||
+ | * Исправлено падение сервера, связанное с игровой статистикой. | ||
+ | |||
+ | '''{{Patch name|4|3|2013}}''' | ||
+ | * Не допускаются игровые серверы, открывающиеся от панели MOTD более одного раза, если игрок подключается к игре через Поиск матчей или Быструю игру. | ||
+ | * Улучшена производительность для двоичных файлов выделенного сервера ОС Linux. | ||
+ | |||
+ | '''{{Patch name|4|18|2013}}''' | ||
+ | * Отключены дополнения, которые позволяли игрокам подсоединяться к безопасным игровым серверам, даже если в командной строке указано {{code|-insecure}}. | ||
+ | * Добавлена переменная {{code|sv_motd_unload_on_dismissal}}, дающая серверным операндам контроль над поведением (по умолчанию) их Сообщения Дня. | ||
+ | |||
+ | '''{{Patch name|4|19|2014}}''' | ||
+ | * {{undocumented}} Исправлены проблемы сервера, клиента и движка. | ||
+ | |||
+ | '''{{Patch name|1|9|2015}}''' | ||
+ | * Исправлено падение выделенного сервера, связанное с недействительными командами клиента. | ||
+ | }} | ||
− | == См также == | + | == См. также == |
* [[Linux dedicated server/ru|Выделенный сервер под Linux]] | * [[Linux dedicated server/ru|Выделенный сервер под Linux]] | ||
* [[Windows dedicated server/ru|Выделенный сервер под Windows]] | * [[Windows dedicated server/ru|Выделенный сервер под Windows]] | ||
+ | * [[List of useful console commands/ru|Список полезных консольных команд]] | ||
== Ссылки == | == Ссылки == | ||
− | * {{vdc|Source Dedicated Server}} | + | * {{vdc|Source Dedicated Server|Установка выделенного сервера}} {{Lang icon|en}} |
− | * [https://support.steampowered.com/kb_article.php?ref=7017-UJBN-6785 | + | * [https://support.steampowered.com/kb_article.php?ref=7017-UJBN-6785 Настройка выделенного сервера] на сайте поддержки Steam {{Lang icon|en}} |
− | [[Category:Servers/ru ]] | + | [[Category:Servers/ru]] |
Latest revision as of 17:55, 4 November 2018
Как и для всех прочих многопользовательских игр, созданных на движке Source, Team Fortress 2 работает по принципу взаимодействия между клиентом и сервером. Под «клиентом», в данном случае, подразумевается сама игра, запущенная на компьютере игрока, а под «сервером» — программное обеспечение, к которому выполняются подсоединения клиентов. На данный момент существует несколько тысяч серверов Team Fortress 2, расположенных по всему миру.
Игровой сервер имеет влияние на множество аспектов игры. Он отвечает на действия игроков, постоянно обновляя его местоположение и состояние, такие как стрельба из оружия, потом выбирает нужное событие, такое как нанесение урона, а затем выводит результат в игровой мир, нанося и отображая высчитанный урон. Серверы также отвечают за неконтролируемые игроками процессы, вроде времени до окончания карты или поведения турелей.
Содержание
Преимущества
Вместо присоединения к существующим серверам, у игроков есть возможность создать свой сервер. Это позволит создающему игроку задавать порядок карт, определяя собственный список играемых карт и режимов. Более того, создающему дается управление над прочими параметрами, такими как гравитация, ограничения по классам, режим «Горец» и так далее. Также можно устанавливать сторонние модификации, способные разнообразить игровой процесс.
Виды серверов
Существует два типа серверов, которые могут быть запущены на движке Source.
Локальный сервер
Локальный сервер является стандартным сервером, находящимся внутри клиента Team Fortress 2. Его можно создать, просто нажав на кнопку «Создать сервер» в главном меню. Другие игроки смогут подключиться к такому серверу, но на компьютер игрока, на котором был запущен этот сервер, будет довольно большая нагрузка. Этот тип сервера в основном подходит для каких то определенных событий внутри вашей сети.
Выделенный сервер
См. также Настройка выделенного сервера.
Выделенный сервер является самостоятельным сервером, не требующим запуска клиента Steam. Такие серверы предпочтительнее локальных из-за низкой нагрузки на компьютер создающего игрока. Более того, множество выделенных серверов запускается на отдельных, сверхмощных компьютерах, подключенных к высокоскоростному интернету, что гарантирует клиентам низкий уровень задержки, а так же быстрое и стабильное подключение.
Системные требования
Хоть поставщики игровых серверов и используют самое современное оборудование для поддержания большого количества серверов, для запуска одного сервера требуется компьютер со следующими характеристиками:
Локальный сервер
- Mac OS X 10.5.8 или 10.6.3 и выше, с оборудованием, отвечающим требованиям игры.
- Windows XP и выше, с оборудованием, отвечающим требованиям игры.
Выделенный сервер
- Linux (x86 или amd64), имеющий GLIBC 2.3.2 и выше.
- FreeBSD (x86 или amd64), имеющий режим совместимости с Linux и свежую версию системы Linux.
- Windows 2000 и выше.
Предыдущие изменения
- Выпущена бета-версия выделенного сервера на Linux.
Обновление от 26 сентября 2007
- Родственность (affinity) главного потока больше не устанавливается для выделенного сервера. Это позволяет правильно распределять нагрузку при нескольких одновременно запущенных выделенных серверов на мультипроцессорной системе. Родственность всё также установлена на первый процессор для клиентов и локальных серверов (listen servers).
- С серверов убрана переменная
mp_friendlyfire
». В некоторых случаях Team Fortress 2 мог неверно работать, если она присутствовала.
Обновление от 28 сентября 2007
- Исправлено редкое падение сервера, вызванное повреждением сетевых данных.
- Исправлено падение сервера, связанное с жучком шпиона.
- Добавлена возможность «Создания сервера» в меню игры.
- Улучшена первоначальная инициализация сети, чтобы перехватывать всплывающий в фоне серверный брэндмауэр.
- Исправлены ошибки на Dustbowl и Hydro, которые проявлялись когда сервер становился пустым в середине раунда.
- Исправлены ошибки, связанные с Honeypot серверами.
- На сервер добавлена переменная
sv_pure
, по умолчанию выключенная. Наберитеsv_pure
в консоли для полного описания. - В серверный лог добавлены записи для:
Round_Start, Round_Setup_Begin, Round_Setup_End, Round_Overtime, Round_SuddenDeath, Round_Stalemate, Round_Win, Round_Length, Mini_Round_Selected, Mini_Round_Start, Mini_Round_Win и Mini_Round_Length.
- Записи серверного лога для
Round_Win
и смены уровня теперь содержат данные о командном счёте и количестве игроков. - Обновлены записи захвата флага серверного лога для отображения количества захватов и
tf_flag_caps_per_round value
. - Исправлена ошибка, при которой выделенный сервер под Windows, запущенный в режиме
-console
, отображал своё окно на переднем плане, вместо заднего при старте. - Исправлена ошибка в выделенном сервере под Windows (в режиме
-console
), при которой набор текста в консольном окне был очень медленным и трудоёмким. - Исправлена ошибка с обновлением имени 32-го игрока на сервере.
- Режим мгновенной смерти теперь является серверной настройкой (консольной переменной) и по умолчанию выключен.
- Исправлена консольная команда
rcon
, которая могла вызвать падение сервера. - Исправлено редкое падение, которое могло проявляться, когда пациент медика внезапно покидал сервер.
- Добавлена возможность серверам загружать собственные
.cfg
карты в папке cfg.
- Добавлена информация о позиции игрока для учета событий сервером
(player_death, player_builtobject, teamplay_flag_event, object_destroyed, teamplay_point_captured, teamplay_capture_blocked)
.
- Добавлена команда
nextlevel
. Если она установлена во время игры на карте, то сервер сервер сменит карту во время следующей смены уровня.
- Теперь, когда инженер уничтожает свои сооружения, это записывается в серверный лог.
- Игровой сервер теперь будет пытаться последовательно запускаться на 32-х портах, если они запущены на одной машине. Ранее сервер останавливался после перебора 10 портов.
- Исправлено падение сервера при
mp_forcecamera
установленной в «1» (откат к прежнему поведению переменной).
- Игроки могут использовать фильтр тэгов для поиска серверов с различными собственными правилами.
- Добавлены опции для серверов, позволяющее им устанавливать свои правила: отключение критических выстрелов
tf_weapon_criticals
, мгновенное возрождение(mp_disable_respawn_times)
, и увеличение количества игроков больше 24.
sv_alltalk
убрана из консольных переменных, которые являлись серверными тэгами.- Исправлена ошибка, при которой серверы с SourceTV и максимальным количеством игроков меньше 24 использовали тэг
«increased_maxplayers»
.
- Исправлены проблемы с загрузками карт на Linux-серверах, использующие процессоры Athlon.
- Исправлена ошибка, при которой консольные переменные
FCVAR_REPLICATED
иFCVAR_NOTIFY
некорректно работали под Linux. - Исправлена уязвимость, при которой сервер мог отправлять код выполнения клиенту.
- Добавлена консольная переменная
mp_stalemate_at_timelimit
, чтобы можно было включить режим мгновенной смерти при истеченииmp_timelimit
на картах не от Valve.
- Исправлена ошибка, из-за которой некоторые выделенные серверы не загружали игровую статистику.
- Исправлено падение выделенного Linux-сервера при смене карты.
- Исправлены случаи, когда игроки могли запускать на сервере команду
sv_soundscape_printdebuginfo
. - Исправлена потенциальная уязвимость «nuke» на подсистеме
rcon
.
- Исправлена ошибка, при которой команда
_resetgamestats
вызывала падение сервера.
- Улучшена логика подключений, чтобы помочь серверам, которые автоматически не переподключаются к Steam.
- Исправлена уязвимость
«setinfo»
, которая позволяла использовать запрещённые консольные команды при подключении к серверу. - Исправлена ошибка, при которой консольная переменная
sensitivity
могла вызвать падение сервера.
- Добавлена проверка версии клиента/сервера при подключении клиента.
- Исправлено зависание сервера на этапе создания ботов.
- Улучшена версия сообщения об ошибке несовпадения, получаемая при подключении к серверу с отличной от вашего клиента версией.
- Исправлена уязвимость падения сервера, вызванная испорченными сетевыми пакетами.
Обновление от 24 февраля 2011 (Набор карт сообщества)
- Исправлена ещё одна уязвимость падения сервера, вызванная испорченными сетевыми пакетами
- [Недокументированное] Исправлен случай, при котором после успешной торговли на сервере показывало только один из всех купленных предметов.
Обновление от 10 марта 2011 (Набор «Сёгун»)
- Добавлена проверка максимального количества игроков (оно не должно быть равно 1).
- Исправлена уязвимость, когда игроки могли использоваться заменённые эффекты частиц на серверах с
sv_pure
.
- Исправлено падение сервера, вызванное ударами Полудзатоити по кому-нибудь, не держа оружие.
- Исправлено падение сервера, вызываемое голосованием за следующую карту.
- Устранено падение сервера, вызываемое использованием ботов во время смены карты.
- Система записей будет пытаться переименовывать файл при сохранении записей на жестком диске самого сервера. Если переименовывание не удастся, то система скопирует файл с новым именем и удалит старый.
- Устранены проблемы с многоядерными процессорами на Linux-серверах, вызывавшие серьезные тормоза в игре.
- Исправлена очистка данных о записях в конце раунда. Если сервер желает сам выполнить очистку, то в его консоли нужно ввести команду
replay_docleanup
.
- Система записей: Исправлена блокировка сервера во время очистки информации о записях.
- Исправлена блокировка сервера во время очистки информации о записях.
- Исправлены несколько случаев падения сервера, связанных с системой записей.
- Исправлено падение сервера, вызываемое системой голосования.
- Исправлено падение сервера, связанное с системой записей.
- Исправлено падение сервера, вызванное маскировкой шпионов.
- Исправлено падение сервера, при вводе информации в консоль.
- Устранено падение сервера, связанное с очисткой системы частиц.
- Добавлено серверное сообщение при подключении игрока с помощью системы распределения.
- Исправлен расчет урона от Людодавов на Linux-сервере, который мог привести к падению физического движка.
- Исправлено падение сервера, связанное с неверным радиусом обзора игрока.
- Исправлено падение сервера, когда одновременно включены SourceTV и возможность вести запись.
- Исправлена частая ошибка, приводящая к вылету сервера, связанная с файлами формата
Valve Pack File
. - [Обновление 2] Исправлена ошибка сервера, связанная с не подгруженными моделями.
- Отрегулированы сообщения об ошибках на серверах, когда игроки покидали сервер из-за неудачной идентификации в Steam, так, чтобы они были более информативными.
- Дополнительные важные серверные сообщения теперь показываются и в логе сервера, а не только в консоли.
- Исправлено падение сервера, происходившее из-за критических атак Праздничным ударом по физическим объектам.
- Исправлена команда
+randommap
, которая неверно работала при запуске сервера. - Исправлен поток сообщений в консоль выделенного сервера, вызываемый ботом записи и углами обзора.
- Исправлено падение клиента, которое случалось, когда сервер использовал переменную
SetCustomModel
для изменения модели игрока.
- Исправлено падение сервера, связанное с Подкидышем.
Обновление от 27 июня 2012 (Обновление «Пиромания»)
- Исправлены сообщения, вызываемые картой, которые не работали на выделенных серверах.
- Голосования, созданные выделенным сервером, больше не вызывают ожидание от проваленного голосования.
- Теперь игроки на сервере оповещаются при использовании Именного ярлыка.
- Исправлена проблема, которая позволила подделать адрес IP для соединения с игровым сервером.
- Исправлено самопроизвольное завершение процесса клиента/сервера при переподключении к серверу предметов.
- Добавлена команда
sv_namechange_cooldown_seconds
, запрещающая клиенту быстро менять имена. (20 секунд между сменами по умолчанию). - Добавлена команда
sv_netspike_on_reliable_snapshot_overflow
для выборочного включения автоматического дампа файла сетевых ошибок, если клиент отключился из-за ошибки «reliable snapshot overflow» (по-умолчанию 0, что отключает отладку). - Добавлена проверка имени игрока на содержание цветовых кодов.
- Исправлена ошибка, из-за которой игровые серверы неправильно получали информацию о рюкзаке клиента (частая причина сообщения «Сервер, на котором вы играете, потерял связь с сервером предметов»).
- Исправлена ошибка, при которой выделенные серверы не могли задавать параметр
sv_region
.
- Исправлена ошибка, приводящая к падению сервера: задание консольной команды tf_mm_servermode до консольной команды map.
Обновление от 17 августа 2012 #1
- Сервер теперь автоматически выключается, если он стартовал в режиме Манн против машин при значении
sv_maxplayers
меньше, чем 32. - Исправлено неправильное сбрасывание значения
mp_timelimit
в режиме МпМ, если защитники проиграли. - Обновлена переменная
tf_mm_strict
.- Значение 2 скроет сервер в браузере серверов, но разрешит прямое подключение.
Обновление от 17 августа 2012 #2
- Исправлена ошибка, при которой отключившиеся игроки оставляли «призрака», который занимал слот на сервере.
- Исправлено редкое падение сервера во время стрельбы из оружия с мгновенным попаданием.
- Добавлена новая команда
kickall
, которая отключает все клиенты, кроме записей, HLTV и хоста, управляющего сервером, если это возможно.
Обновление от 10 сентября 2012
- Исправлена ошибка, позволявшая вредоносным серверам выполнять ограниченные консольные команды на игроках.
- Исправлена ошибка, позволявшая вредоносным серверам препятствовать игрокам выполнять консольные команды.
Обновление от 21 сентября 2012 #1
- Исправлено падение сервера, вызываемое ИИ бота-подрывника.
- По просьбам сообщества:
- Добавлена новая серверная переменная
tf_avoidteammates_pushaway
для управления сдвигом друг друга союзников, если они занимают одно и то же место. - Добавлена новая серверная переменная
tf_arena_override_team_size
, позволяющая задать максимальное число игроков в команде в режиме Арены.
- Добавлена новая серверная переменная
Обновление от 21 сентября 2012 #2
- Исправлена ошибка, из-за которой серверы сообщали системе поиска матчей, что они заполнены.
- * Исправлено падение сервера, которое могло произойти, если шпион был замаскирован как инженер с Оружейником
- Исправлено падение выделенного сервера на Linux, связанное с режимом Манн против машин.
- Исправлено отображение ботов на выделенном сервере в списке серверов.
- Исправлено падение сервера, связанное с игровой статистикой.
- Не допускаются игровые серверы, открывающиеся от панели MOTD более одного раза, если игрок подключается к игре через Поиск матчей или Быструю игру.
- Улучшена производительность для двоичных файлов выделенного сервера ОС Linux.
- Отключены дополнения, которые позволяли игрокам подсоединяться к безопасным игровым серверам, даже если в командной строке указано
-insecure
. - Добавлена переменная
sv_motd_unload_on_dismissal
, дающая серверным операндам контроль над поведением (по умолчанию) их Сообщения Дня.
- [Недокументированное] Исправлены проблемы сервера, клиента и движка.
- Исправлено падение выделенного сервера, связанное с недействительными командами клиента.
См. также
Ссылки
- Установка выделенного сервера в Сообществе разработчиков Valve (английский)
- Настройка выделенного сервера на сайте поддержки Steam (английский)