1 +4

Тема: FreeZone Project

FreeZone Server Gen2

Описание:
Утилита предназначена для создания серверов игры S.T.A.L.K.E.R. Clear Sky, которые входили бы в мастер-лист системы FreeZone, а также для упрощения администрирования.

Возможности утилиты включают в себя:

  • Поддержка мастер-сервера FreeZone (на случай выхода из строя мастер-сервера GameSpy)

  • Отсутствие необходимости ввода ключа у клиентов

  • Поддержка системы GameSpy: можно включить отображение сервера в основном мастер-листе

  • GUI для настройки всех основных параметров запуска сервера

  • Поддержка утилиты S.T.A.L.K.E.R Controller (тестировалось на версии v3.JET FR)

  • Возможность активации авто-рестарта сервера после падения с сохранением основных параметров (режим, карта, ...), которые были на сервере до падения

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

  • Возможность включения "алиасов" имен карт позволяет отображать у клиентов нормальные русские названия вместо кодовых имен нестандартных карт (например, у клиента будет написано "Юпитер" вместо mp_jupiter)

  • Поддержка всех версий игры S.T.A.L.K.E.R. Clear Sky

Особенности новой версии:

  • Автоматический инсталятор

  • Поддержка ТОЛЬКО версии игры 1.5.10

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

http://img13.imageshost.ru/img/2012/07/07/image_4ff7feac3abc1_small.png

СКАЧАТЬ

+ История версий

102 1 / 5

Re: FreeZone Project

Antares пишет:

И очень хорошо, а то маскарад какой то начнётся, карты старые (разброс хабара не в счёт), а названия кому что вздумается.

А вот это вот меня зацепило. За державу блин обидно. У нас в Киеве сейчас война идёт. Безоружные воюют с вооружёнными. С палками и кирпичами против снайперок, дробовиков и гранат на смерть идут. И конешно проиграют.Обречённая война.  Украина,Россия и Северная Корея- почти единственные страны где населению запрещено иметь оружие. Потому что рабам оружие не дают. А то они освободятся от рабства. Аргументируют запрет так: если людям оружие дать - то они друг друга поубивают. Очень выгодно для власти, у неё ведь есть оружие.
Так и тут: если дать возможность менять названия карт- то начнётся маскарад. И будут писать что попало. Таже песня.  Сами то меняете названия  . Если например карта "Деревня новичков" на  Кордоне будет называться "Деревня новичков" а не "Кордон" - так что в этом плохого? Или тунель в Рыжем лесу- будет называться "Тунель". Там когда играешь Рыжим лесом и непахнет. Разнообразие дает популяризацию игры. Не консервируйте сталкер. Он и так умирает

103

Re: FreeZone Project

Где скачать то?

Pauk93

104

Re: FreeZone Project

У автора спрашивать.
Ты с контролёром уже разобрался? Если да, то отписался бы - что было, как решил.

Сервер: Знаменск АХ
"Docendo discimus"

105

Re: FreeZone Project

я автору темы в лч написал.

Pauk93

106

Re: FreeZone Project

14.10.15
-Исправлен баг при вводе команды голосования на бан игрока с неправильным ником; при успехе вело к выполнению команды предыдущего голосования или потенциальному крешу сервера
-Исправлена проверка на существование нового ника на сервере; теперь английские символы сначала приводятся к нижнему регистру и только потом производится сравнение
-Защита от stalkazz
-Добавлен транслятор строк голосований и имен карт
-[Revo] Подмена числа игроков
-Возможность задавать в конфиге произвольное имя сервера
-Изменена цветовая схема чата: общие сообщения транслируются белым, командные - синим\зеленым

13.10.15
-Исправлена работа голосований на бан и кик игрока - игрока с английскими заглавными символами в нике было невозможно выбросить
-Добавлена фильтрация строк голосования
-Добавлены новые маски sv_vote_enabled для голосований: для fraglimit 256, для timelimit 512
-Добавлена возможность отправить игрока за античитом через голосование (если контролер сервера такую функцию поддерживает), синтаксис команды: cl_votestart ban PlayerName onlysace

12.10.15
-добавлен расширитель голосований, доступны команды fraglimit и timelimit
-исправлен подсчет результатов в голосованиях
-добавлена возможность включения досрочного прекращения голосования; используются параметры конфига allow_early_success_in_vote и allow_early_fail_in_vote
-защита на длину имени игрока (до 50 символов) и длину строки голосования (до 256 символов)

11.10.15
-патч для входа без ключа: в конфиге можно либо совсем отключить запрос сервером валидации ключа у мастера (is_cdkeys_enabled, несовместимо с контролером!), либо игнорировать результат проверки ключа мастером (is_cdkeys_always_verified)

10.10.15
-патч контролера для более стабильной работы с клиентами, зашедшими без ключа

08.10.15
-введена функция подтверждения SACE для совместной работы с последним контролером

+ развернуть

http://s7.uploads.ru/d/pbtwC.jpg

+ развернуть

http://s6.uploads.ru/d/lCknT.jpg

+ развернуть

http://s7.uploads.ru/d/PeBsA.jpg

#The Sibir=38#

http://www.youtube.com/channel/UC_ssSGnpsBwbQtOEjYWOH-g/videosR

107

Re: FreeZone Project

Новость из разряда: "Посмотрите что у меня есть!"?

Сервер: Знаменск АХ
"Docendo discimus"

108

Re: FreeZone Project

Монах пишет:

"Посмотрите что у меня есть!"?

Это обновления  FreeZone, а не то что у меня есть !

#The Sibir=38#

http://www.youtube.com/channel/UC_ssSGnpsBwbQtOEjYWOH-g/videosR

109

Re: FreeZone Project

А что это меняет?  Кнопки "Скачать" всё равно не появилось.

Сервер: Знаменск АХ
"Docendo discimus"

110 Отредактировано BOSS (28-10-2015 19:50:38)

Re: FreeZone Project

Монах пишет:

Кнопки "Скачать" всё равно не появилось.

   

Antares пишет:
И очень хорошо, а то маскарад какой то начнётся, карты старые (разброс хабара не в счёт), а названия кому что вздумается.

Если есть у кого желания использовать, скину в ЛС

#The Sibir=38#

http://www.youtube.com/channel/UC_ssSGnpsBwbQtOEjYWOH-g/videosR

111

Re: FreeZone Project

-[Revo] Подмена числа игроков

Зачем? И пинг тож, я видел, подменяли..

серверы
-[setitagila.ru]-
[strikearena.ru]

112 Отредактировано BOSS (27-04-2016 15:25:02)

Re: FreeZone Project

Vojlok пишет:

-[Revo] Подмена числа игроков

Это просто, якобы есть игроки на сервере.

--------------------------------------------------------------------------------------------------


С разрешения автора программы , выкладываю FreeZone WatchDog 1.0

Trial-версия ограничена 60 минутами работы!

Возможности:
- Автоматическое отслеживание состояния сервера
- Автоматический перезапуск сервера при крэше или зависании
- Запоминание текущей карты и режима для перезапуска сервера
- Борьба с ошибкой контролера 0xc0000005
- Возможность автоматического присоединения к уже запущенному процессу сервера
- Возможность автоматической перезагрузки машины при многократных неудачных запусках сервера

https://yadi.sk/d/U98uirogrKycs

По всем вопросам обращаться  к автору.

#The Sibir=38#

http://www.youtube.com/channel/UC_ssSGnpsBwbQtOEjYWOH-g/videosR

113 +3

Re: FreeZone Project

Доброго времени суток всем.
Со времени создания темы прошло достаточно много времени. Возможно, что вы думаете, что проект мертв. Это не совсем так. Он развивается, но достаточно неравномерно во времени. Основными направлениями развития являются повышение комфорта игроков на сервере, исправление ошибок оригинала и введение в игру новых возможностей.
На сегодняшний день, все желающие могут принять участие в тестировании имеющихся наработок. Наиболее заметными и важными изменениями в бета-версии являются:
- Исправление ошибок оригинальной системы голосований
- Антифлуд и антимат системы
- Команды чата
Ссылка на скачивание:
https://yadi.sk/d/eEVz0Hr9tWKUW

114

Re: FreeZone Project

Нормик. Файл fz_censored.ini - кладезь сталкерского чата  smile

серверы
-[setitagila.ru]-
[strikearena.ru]

115

Re: FreeZone Project

fz_censored.ini - в состоянии перманентного наполнения, ибо способности к словообразованию у игроков зачастую превосходят все возможные и невозможные регэкспы smile . Кстати, если у кого есть идеи по фичам - можете говорить, подумаем.

116

Re: FreeZone Project

Поставил на сервер setitagila.ru - полет нормальный :-)
А на счет фич.. их уже столько, что и придумать-то вроде бы уж нечего.
Можно, например, оттолкнуться от "контрстрайк" когда от сервера клиенту качаются какие либо моды, будь то измененные звуки персонажей или же мп_карты.

серверы
-[setitagila.ru]-
[strikearena.ru]

117 +2

Re: FreeZone Project

Итак, прошло больше недели, а значит - время для обновления. Самое важное, чем эта сборка отличается от предыдущей - это наличие уникального механизма, позволяющего при подключении к серверу "на лету" загружать карты клиентам с "чистой" игрой без античита. Кроме того, были произведены некоторые мелкие правки (например, расширен список цензора) и добавлено описание, подробнее смотрим в нём. Ссылка: https://yadi.sk/d/xM4aqSxDtnz6T

118

Re: FreeZone Project

Sin! пишет:

клиентам с "чистой" игрой без античита.

Это как?

Назвался Сталкером - полезай в Зону!
[chel]zapasnik админ сервера Chel sibir

119

Re: FreeZone Project

kostawa пишет:

Это как?

Заходит на сервер клиент со свежеустановленной игрой 10го патча. Карты нет. Клиента отключают от сервера, показывают сообщение о том, что идет загрузка карты. Как только загрузка завершается - клиент автоматом реконнектится на сервер. Схему можно видеть в действии на серверах [gamepolis].

120

Re: FreeZone Project

Продублирую описание тут:

+ О проекте

О проекте
Разработка FreeZone 3.0 была начата в конце 2015го года в связи с невозможностью исправить проблемы версии 2.0 без переписывания большей части кода. Платформой для FreeZone 3.0 традиционно стала версия игры S.T.A.L.K.E.R. - Чистое Небо 1.5.10, как игра с самым популярным мультиплеером.
Основными целями проекта являются:
- Повышение комфорта игры на сервере для игроков
- Исправление оригинальных ошибок и недочетов игры
- Введение в игру нового функционала.
Следует отметить, что, несмотря на возможное сходство задач со связкой CCS/SACE, они во многом различны.
Во-первых, FreeZone на данный момент - чисто серверное решение, не требующее никаких изменений на стороне клиента.
Во-вторых, FreeZone исправляет ошибки путем патчинга непосредственно по месту их нахождения в коде игры. Вынесение функциональности FreeZone в отдельную DLL дает гибкость в выборе механизма подключения этой DLL к серверу.
Важно отметить, что использование FreeZone не может заменить использование CCS, равно как и наоборот. Использовать их лучше всего в связке, они взаимодополняют друг друга.
Далее следует описание ключевых особенностей FreeZone 3.0.


1.Система голосований.
Одним из первых исправлений игры была переделка системы голосований в игре. Наверняка многие игроки помнят многочисленные ее проблемы, среди которых:
- Некорректный подсчет числа голосов: проваленное голосование могло быть признано сервером успешным
- Не срабатывающие голосования на бан и кик: даже после успешного результата голосования читер при правильно сформированном нике мог безнаказанно играть дальше.
- Не работала опция sv_vote_participants, заставляющая учитывать при подсчете голосов только явно проголосовавших игроков.
- Злоупотребление строковым транслятором игры позволяло создать ситуацию, когда игрока в принципе невозможно было поставить на голосование стандартными средствами игры.
После изучения исходников стало ясно, что ситуация с голосованиями даже печальнее, чем можно было подумать. Было выяснено, что игрок мог подменить действие, выполняющееся по итогом голосования (например, игроки видят, что идет голсование о смене погоды, а при успешном завершении оказывалось, что произошел бан игрока) либо даже при удачном стечении обстоятельств устроить обвал сервера. Усугубляло ситуацию то, что CCS ровным счетом никак не противодействовал найденным проблемам и уязвимостям.
Описанные проблемы были исправлены во FreeZone, но этим дело не ограничилось.
Во-первых, некоторые игроки часто злоупотребляли возможностью неограниченное число раз менять свое решение при голосовании. В результате такого частого изменения мнений, область событий на экране полностью забивалась сообщениями о том, что игрок решил проголосовать по-другому. Теперь подобный флуд автоматически блокируется.
Во-вторых, добавлен механизм досрочного прекращения голосования. Например, если процент проголосовавших против настолько велик, что все остальные не проголосовавшие игроки не смогут повлиять на реузльтат голосования, то продолжать его не имеет смысла. Теперь оно в подобной ситуации завершается автоматически.
В-третьих, введен минимальный интервал между началом голосований игроком. В игре были нередки случаи, когда игрок без перерыва спамил однотипными голосованиями, не давая другим игрокам начать свои. Теперь же, после начала голосования игроком все его попытки начать еще одно голосование автоматически пресекаются в течение указанного в конфиге времени.
В-четвертых, добавлены новые голосования: на лимит времени (512 в маске голсований) и лимит фрагов (256 в маске голсований)

2. Ники игроков.
Следует отметить, что FreeZone запрещает брать ники, содержащие не-латинские символы. Подобные ники автоматически транслитерируются при подключении игрока. Сделано это по следующим соображениям:
1) Спецсимволы в нике могут приводить к изменению цвета в консоли сервера. Мелочь, а неприятно.
2) Проблемы с голосованиями при особым образом сформированныъ никах. Хотя непосредственно эта правка и не направлена на исправление голосования, но она способствует уорректному функционированию игры
3) Защита от игроков, "маскирующихся" под других играющих на сервере путем изменения символа одной раскладки на визуально эквивалентный символ из другой. Например, английская с может быть заменена читером на русскую, что гарантированно вызовет путаницу среди игроков и, возможно, администраторов.

3. Чат.
Следующей подвергшейся реформированию подсистемой стала подсистема голосований. Первым делом, было решено, что текущая цветовая схема нелогична. Новая цветовая схема выглядит так:
- Ники в сообщениях игроков, отправляемые в общий чат, имеют белый цвет независимо от команды
- Ники в сообщениях игроков, отправляемых в командный чат, имеют синий цвет для чата "наемников" и зеленый для чата "свободы". Таким образом, свободовцы будут видеть сообщения в своем командном чате зелеными, а наемники - синими. Исключение в данном случае - радмины. Так как радмин имеет право видет сообщения во всех чатах сразу (общем, своем командном и чужом командном), то цвета командных сообщений своей и чужой команды будут различаться.
- Ник администратора сервера всегда отображается красным для большей заметности.
Далее, нам показалось достаточно спорным то, что сообщения мертвых игроков могут видеть только такие же мертвые и наблюдатели. С одной стороны, это может быть оправдано тем, что наблюдатель может "сливать" местоположение противников живым своим товарищам, но с другой нередкой является ситуация, когда игрок набирает сообщение, а его в это время убивают.
Так как одним из направлений является повышение комфорта игры на сервере, то было решено ввести опцию общего чата для живых и мертвых: теперь игра не делает никаких различий между ними, считая всех игроков "живыми". Как и практически все остальное, эта опция может быть отключена в конфиге.
Следующим шагом к усовершенствованию чата игры стало введение для игрока нового вида наказаний, называемого mute (отключение чата), так как в игре встречаются достаточно экспрессивные игроки, которые любят обругать кого-нибудь, начать перепалку в чате и т.п. Раньше такое решалось киком или баном игрока на усмотрение администратора. Мы посчитали, что это как-то слишком жестко, и ввели возможность просто отключить игроку возможность чата. При попытке таким игроком написать сообщение ему будет выдаваться предупреждение о том, что писать в чат он не может. Сообщение, которое написал игрок с отключенным чатом, сможет увидеть только администратор сервера.
Mute назначается через консоль (командой fz_muteplayer) или через GUI Панели управления FreeZone. Кроме того, дабы снять с администратора сервера лишнюю нагрузку, mute чата может назначаться автоматически. Условиями автоматического назначения во FreeZone 3.0 являются флуд (большое количество часто повторяющихся бессмысленных сообщений) и нецензурная ругань. Для распознавания матов FreeZone 3.0 обладает встроенным автоматическим цензором, через который проходит каждое сообщение каждого игрока (исключение - сообщения администратора сервера, цензуре они не подлежат). Цензор построен на основе обработчика регулярных выражений. Список регулярных выражений хранится в файле fz_censored.ini. В случае необходимости файл может быть отредактирован в любое время. После редактирования для перезагрузки списка необходимо выполнить команду fz_reload_banned_words в консоли сервера.
Правильность работы цензора можно проверить в любое время из Панели управления FreeZone. Для этого в опциях необходимо выбрать Check censor, в верхнее поле ввести проверяемую фразу, нажать ОК. В нижнем появится результат: true, если фраза признана нецензурной, и false в противном случае.

4.Рация
Ранее было неоднократно замечено, что некоторые несознательные игроки злоупотребляли использованием голосовых сообщений (рации). Злоупотребление выражалось в бесконечном потоке однотипных сообщений, отправляемых игроком в чат и забивающих эфир. Мало того, что это просто действовало на нервы и снижало комфорт от игры, так подобные действия еще и позволяли врагам на слух вычислять положение противников, в команде которых начался приступ флуда. Теперь подобное поведение блокируется сервером. Параметры блокировки настраиваются в основном конфиге FreeZone:
speech_series_for_mute– задает высказываний в «серии», при превышении которого считается, что игрок начал флудить.
vote_mute_interval – задает интервал времени (в миллисекундах) между двумя сообщениями в рацию, меньше которого будет считаться, что они относятся к одной «серии». Если два соседних сообщения в рацию отправлены с интервалом времени больше указанного – считается, что они относятся к разным «сериям».
speech_mute_time – время блокировки рации для игрока (в миллисекундах) при обнаружении серии флуда.

5.Команды чата
Еще одной особенностью FreeZone является введение в игру системы команд чата. Все команды чата начинаются с символа /. Для того, чтобы увидеть список всех поддерживаемых сервером команд, нужно ввести в чат команду /help.
На момент написания этого руководства, поддерживаются следующие команды чата:
/sace – отобразить список игроков, у которых подтверждено наличие античита SACE3
/updrate – отобразить текущую частоту обновления игрока. При вызове с числовым аргументом – задать новую частоту обновления. Частота обновления определяет, как часто сервер отсылает игроку апдейт-пакеты. Чем выше частота – тем плавне идет игра у игрока, но тем выше нагрузка на интернет-канал. При слабом (плохом, низкоскоростном) соединении высокая частота обновления может быть причиной лагов и фризов.

6.Загрузка карт клиенту
Одной из немаловажных возможностей, которые становятся доступны администратору игрового сервера при установке FreeZone, является автоматическая загрузка текущей карты игроку. В отличие от античита SACE3, в который встроена аналогичная функция, для загрузки карты через FreeZone клиенту не требуется устанавливать абсолютно НИКАКОГО дополнительного программного обеспечения. Все, что необходимо для успешной загрузки и установки карты – запущенная игра и немного свободного времени.
ВАЖНО! При наличии у клиента античита SACE3 возможности по загрузке карт FreeZone работать не будут. SACE3 самостоятельно загрузит текущую карту из своего хранилища, если она в нем окажется доступна. Если же текущая нестандартная карта отсутствует в хранилище, то игрок не сможет присоединиться к текущей игровой сессии на сервере. Это особенность самого античита SACE3, который не позволяет игрокам использовать карты со сторонних ресурсов. Для присоединения к игре в таком случае игроку следует запустить игру без SACE3 (ключ –wosace в ярлыке) и воспользоваться возможностями, предоставляемыми FreeZone.
С точки зрения игрока, процесс скачки карты выглядит следующим образом:
1) Он выбирает в мастерлисте сервер и пытается присоединиться к нему
2) Сервер его отключает, выводя сообщение об отсутствии карты. В нижней части экрана игрока появляется полоса, отражающая ход загрузки карты
3) После завершения загрузки карты, игра автоматически заново присоединяется к игровому серверу.
Для активирования функции автоматической загрузки карты необходимо:
1) В основном конфиге FreeZone включить (выставить в true) опцию enable_map_downloader
2) Там же, в параметре reconnect_string ввести строку вида start -client(%ip%/port=%port%), где на место ip подставить ВНЕШНИЙ ip-адрес сервера, а на месте %port% - ВНЕШНИЙ порт. Это необходимо для того, чтобы клиент знал, куда ему подключаться после загрузки карты.
3) Теперь необходимо настроить ссылки, по которым клиент может качать карты. Это делается в файле fz_download_links.ini. Для каждой нестандартной карты, существующей на сервере, в этот файл необходимо прописать строку вида %mapname%=%link%, например:
mp_pool_new = http://mysite.com/map.db
ВАЖНО! Необходимо указывать ПРЯМУЮ ссылку на файл, являющийся несжатым db-архивом с картой! В случае некорректно указанной ссылки возможно зависание клиента при попытке скачивания!
Для удобства игрока скачанная карта может быть использована повторно, без необходимости повторной её загрузки. Чтобы использовать эту возможность, необходимо в файле fz_download_links.ini указать строку с CRC32 архива с картой. Это делается следующим образом (пример):
%crc32_mp_industrial_1.0% = 6E74c5d4
То есть, сначала указывается префикс %crc32, затем через символ нижнего подчеркивания – название карты, ее версия, затем завершающий символ %, знак равенства и значение CRC32.
Для интересующихся: когда FreeZone распознает этот параметр, производится проверка наличия уже скачанного файла на клиенте и расчет его контрольной суммы. Если контрольная сумма этого файла совпадает с указанной в конфиге – считается, что карты одинаковы, и происходит монтирование этого архива и дальнейшая загрузка игры. Если же контрольная сумма не указана или не совпадает с имеющейся, то загрузка карты будет произведена заново.
Отметим еще один момент касательно загрузки карт. Зачастую при загрузке требуется указать описание карты на разных языках в отдельных XMLах. Чтобы эти описания успешно прогрузились клиентом, в fz_download_links.ini для каждой карты с описанием в XMLах следует прописать название XMLа, в котором это описание находится. Делается это таким образом (пример для «Пожарной станции 2012»):
%xml_mp_2012cs_1.0%=mp_2012cs.xml
Но если XML-файл совершенно новый и не заменяет ни одного из оригинальных, возникает другая проблема. Если предполагается игра на сервере игроков с лозными локалями игры (например, rus и eng), то для КАЖДОЙ из этих локалей должен существовать файл с таким названием, в противном случае игра просто вылетит. Возможный обход проблемы – размещать новые строки в уже существующем XMLе и указывать в fz_download_links именно его. В таком случае этот XML будет просто перезагружен с добавлением новых строк в транслятор игры при их наличии. Если же их не окажется там – ничего страшного не произойдет.
Дополнение: описанный механизм позволяет успешно загружать клиенту в архиве с картой и другой контент (моды). Данная особенность не является штатным использованием технологии и потому тщательно не тестировалась. Используйте на свой страх и риск!

7.Другие особенности.
Во-первых, была предпринята попытка исправления бага с пролетом мимо магазина. Баг возникает из-за того, что команды на переход в наблюдателя после смерти и спавн из режима наблюдателя имеют одинаковый код в пакете. Из-за этого, когда игрок после смерти быстро совершает несколько кликов (необязательно преднамеренно, например, он в момент смерти мог стрелять из пистолета и после нее рефлекторно сделать еще пару выстрелов), на каждый клик отправляется такой пакет. По задумке разрабов, после получения первого пакета сервер переводит игрока в режим наблюдателя и отправляет ему пакет с подтверждением этого режима. Когда игрок в режиме наблюдателя, то отправка пакетов по нажатию клавиши стрельбы не происходит, такой пакет отправляется только при спавне игрока. Но теперь представим, что у игрока пинг в 200мс. Что происходит:
1) Игрок получает уведомление о смерти, но продолжает стрелять. После первого выстрела в мертвом состоянии клиент отправляется пакет о переводе игрока в режим наблюдателя. Но игрок кликает на мышь повторно. Клиент еще не получил сообщение о переходе в наблюдателя, и отправляет серверу… второй пакет для перевода клиента в режим наблюдателя (который идентичен пакету спавна).
2) Сервер получает первый пакет, переводит игрока в режим наблюдателя и отправляет последнему подтверждение этого. Но вслед за этим ему тут же приходит второй такой же пакет! Сервер видит, что игрок уже в режиме наблюдателя, и думает, что игрок хочет заспавниться. При этом по понятным причинам пакета на формирование закупки серверу не приходило, потому игрок спавнится с предметами по умолчанию (то есть голым). Сервер спавнит игрока и отправляет клиенту пакет.
3) Клиент скопом получает два пакета: первый о переходе в наблюдателя, второй – о спавне с пустым рюкзаком. Имеем баг.
Собственно, исходя из описанного механизма, следует и решение этой проблемы: после перевода игрока в режим наблюдателя блокировать на некоторое время (оптимально пингу, умноженному на 2) спавн игрока, игнорируя второй и последующий пакеты. Тогда пакет о переходе в режим наблюдателя гарантированно достигнет клиента и пролета мимо магазина не произойдет. Именно так защита от этого и реализована во FreeZone. Время блокировки респавна задается параметром конфига player_ready_signal_interval.

Следующая особенность – это сброс числа сообщений о высоком пинге. Если пинг у игрока в целом небольшой, но изредка прыгает выше лимита, то мы считаем, что отключать его через 5 предупреждений будет не очень правильно. Потому в параметре ping_warnings_max_interval задается время после получения последнего предупреждения о превышении пинга, через которое происходит обнуление счетчика превышений.
Кроме того, для внеcения разнообразия в игру были придуманы опции подмены  визуалов и предметов игроков. Для их включения в основной конфиг FreeZone надо прописать, соответственно:
use_skins_change = true
use_item_change = true
После этого необходимо задать, какие визуалы и предметы на какие менять. Для визуалов игроков параметры будут иметь вид:
team_%idteam%_skin_%idskin%
Где на месте  %idteam% стоит число, обозначающее номер команды, а на месте %idskin% - число, обозначающее номер скина. Номера скинов изменяются от 0 до 5, а номера команд – от 0 до 2. 0 – это игроки в дезматче, 1 – свобода, 2 – наемники. В значении параметра указывается путь в геймдате до ogf-файла со скином.
Указанные параметры не действуют на игроков в броне, так как визуал таких игроков определяется параметрами самой брони!
Аналогичным образом меняются и покупаемые предметы. Для этого используются параметры вида team_%idteam%_item_%oldsection%, где %oldsection% - имя заменяемой секции. Значение параметра – имя секции, на которую будет заменен этот предмет.

пс
Помится, Юстас обожает спам рации другими...   tongue

серверы
-[setitagila.ru]-
[strikearena.ru]

121

Re: FreeZone Project

Vojlok пишет:

speech_mute_time – время блокировки рации для игрока (в миллисекундах) при обнаружении серии флуда.


Супер супер ГУД!!! big_smile

Хватит

122 Отредактировано ШУРАВИ (27-08-2016 10:50:33)

Re: FreeZone Project

Огромное спасибо автору FreeZone За проделанную работу.
За разжеванный мануал ) все предельно ясно и понятно. СПАСИБО!

Sin! пишет:

Кстати, если у кого есть идеи по фичам - можете говорить, подумаем.

Некоторые не удобства все же есть они не значительны, проверки игроков
командой /sace необходимо сделать 13 кликов.
Если можно назначить свободную кнопку было бы не плохо.
Я вышел из положения за биндил макросную кнопку на клавиатуре одним кликом работает. Еще раз СПАСИБО!

https://youtu.be/6sIYZ_F53Cs     FreeZone + 5JET_CCS_13003

-= S.T.A.L.K.E.R. 61 RU. =-
www.youtube.com/channel/UCs_m75I … XsA/videos
Я вам не нравлюсь? Как жаль, что мне пофиг.

123 +2

Re: FreeZone Project

Итак. Сегодня 27 августа, а значит, что вчера должен был начаться бета-тест проекта Ray of Hope. Судя по тому обилию информации, которое мы сейчас видим в сети, нам становится понятно, что с этим проектом всё не понятно чуть менее, чем полностью. А раз так - пора помогать товарищам и строить свою Зону. Free Zone. smile
Начиная с этой версии, в FreeZone добавлена поддержка закачки на клиентов модов. Теперь администраторы сервером смогут сами кастомизировать и изменять на своем сервере всё, до чего у них только дойдут руки. Каждый сервер может теперь иметь свой, уникальный мод, который будет автоматически скачиваться клиентом при попытке присоединения к соответствующему серверу. Работу этой технологии вы можете наблюдать на серверах [setitagila.ru]Free и [gamepolis.ru]Modz.
Уверен, что сейчас многих из вас мучает вопрос: а что с ботами, мутантами, что с алайфом? Возможно ли уже сделать это? Ответ: нет. Пока нет. Для достижения этой цели требуется развивать технологию дальше, обеспечив возможность ставить на клиента не только геймдатные, но и движковые моды.

https://yadi.sk/d/IpTRnJlOuXSXt