Платформа: ЧН 1.5.10 Разработчик: FreeZone Team Дата выхода: TBD, беты выходят по мере создания.
S.T.A.L.K.E.R. - одна из игр, которые живут на протяжении уже многих лет. Во многом (если не полностью) таким долгожительством игра обязана широкими возможностями по модифицированию и сравнительно большим модмейкерским коммьюнити. Не одна сотня модов увидела свет с момента выхода игры. Кажется, что все ее составляющие уже изучены модмейкерами вдоль и поперек. Однако, в игре осталась одна область, которая за все время существования игры так и соталась недооцененной. Мультиплеер. По сранению с синглплеерной составляющей, мультиплеерная многим могла показаться ущербной. Отсутствие ИИ, множество багов, нестабильность сервера, читеры... Но все равно, когда-то давно, в начале этого десятилетия, сетевая в сталкере, как ни странно, была достаточно популярной. Сервера не стояли пустыми. Но время шло, а игра оставалась прежней. Игрокам надоедало играть в одно и то же, неизменное на протяжении многих лет. В то же время, игра оказалась без поддержки своих разработчиков. Синглплеерная составляющая продолжала держаться на плаву за счет модмейкеров, но в мультиплеерной этого не происходило. Хотя МП сталкера также можно было модифицировать, но немногочисленные попытки создания мультиплеерных модов останавливались на распространении контента. Установить мод (да даже и обычную мультиплеерную карту) можно было только скачав вручную. Установка более-менее серьезного мода одновременно с этим лишила бы игрока возможности заходить на другие сервера (с перспективой получить бан). Для этого бы мод потребовалось снова удалить самостоятельно. Понятно, что такие процедуры мало кому могли показаться приятными. Попытки создания подобных модов были обречены на провал.
Именно на таком безрадостном фоне и произошло появление проекта FreeZone.
FreeZone представляет собой достаточно серьезную переделку движка выделенного сервера игры. Основной (и единственной на данный момент) платформой является ЧН версии 1.5.10. Почему именно ЧН, возникнет вопрос, ведь это самая непопулярная у модмейкеров часть игры? Дело в том, что с точки зрения модифицирования мультиплеера именно эта часть является наилучшей. В ней было исправлено достаточно много багов по сравнению с ТЧ, появилась возможность проверки игроков на читерство. Стабильность самого сервера была также повышена. Но тогда почему не ЗП, ведь там это все есть так же, плюс внесены другие улучшения? Этому есть несколько причин. Во-первых, в ЗП были вырезаны некоторые интересные классы, позволяющие создавать скриптовые режимы игры. Во-вторых, ЗП оказался почти похоронен после закрытия GameSpy. Да, игроки там сейчас есть... Но их меньше, чем в остальных частях.
Итак, с этим разобрались. Но что ждет нас внутри самого FreeZone? В этом плане, проект движется по пути исправления ошибок оригинального движка и расширения его возможностей. Большая их часть направлена на удобство администрирования, однако есть две немаловажные именно для модмейкеров особенности. Во-первых, это автоматическая загрузка карт клиенту. В это может быть сложно поверить, но это так. Игроку достаточно иметь только сам свежеустановленный ЧН версии 1.5.10, не требуется никаких дополнительных надстроек. Он просто присоединяется к серверу - и начинаются скачивание и установка карты. Да, это именно то, что не хватало игре все время ее существования. А во-вторых - как многие уже наверно догадались, это возможность загрузки на клиента модов. Да, на данный момент есть некоторые ограничения в возможности их создания, плюс, некоторые моменты в создании модов для FreeZone специфичны... Но оно есть и оно работает. При этом, каждый сервер может иметь собственный мод. При соединении клиент загрузит (предварительно скачав, если требуется) именно тот мод, который установлен на сервере, к которому игрок присоединяется.
Любой желающий теперь может начать создание своей своей Зоны отчуждения, сделать удовлетворяющий его самого мод и запустить с ним свой сервер. Присоединяйтесь!
Не особо представляю, какие именно скриншоты можно приложить, исходников, разве что Но раз требуется... Покажу админскую панель управления
А вот так выглядит экран игрока в процессе загрузки мода:
Вы можете увидеть описанные возможности FreeZone в работе, установив ЧН 1.5.10 и зайдя на сервер [setitagila.ru]Free. Вы увидите, как сначала будет скачана карта, затем мод... А затем вы попадете на сервер. Да, изменений в моде на данный момент не так много - но это просто демонстрация. Демонстрация того, что подобное в принципе возможно.
Вы можете скачать бета-версию FreeZone по ссылке ниже: https://yadi.sk/d/IpTRnJlOuXSXt При создании мода не забудьте прочитать в прилагаемом описании требования. Без их учета мод может работать некорректно!
Если вдруг что-то идет не так, как планировалось, вылетает, глючит - сохраняйте спокойствие и оставляйте сообщения в теме. От вас требуется описание проблемы, лог вылета, дамп и freezone.dll, с которой произошел вылет.
Сообщение отредактировал Angry - Воскресенье, 25.09.2016, 11:15
Указатель на данные, которые надо отправить клиенту вызовом SendTo_LL; len - длина этих данных.
Цитатаdrksnc ()
давать указатель
Да. Только прототип не совсем соответствует требуемому. Во-первых, соглашение о вызове stdcall. Во-вторых, колбэк не должен быть членом класса (или быть статическим членом, если очень хочется). В третьих - странно выглядит FZSysMsgSendCallbackData* userdata, тут достаточно xrServer* же передать.
drksnc, что-то не так значит. Вот тебе наколеночный пример, который не вылетает и что-то пытается отправлять, дергая колбэк. Адаптируй ко своим реалиям.
Думаю да, почему нет. Через FZ можно скачивать карты, моды. Этого достаточно. Создаешь модецкий с кооперативом, и запускаешь сервер с этим модом, предварительно настроив и всё сделав в FZ. После запуска сервера игроки заходят на сервер и у них скачивается мод и стоящая карта на сервере.
Сообщение отредактировал Hardtmuth - Вторник, 21.11.2017, 21:51
Вышло обновление с возвращением поддержки загрузки контента в GoG и Steam версиях ЧН. У кого есть оные - просьба потестить работу загрузки карт и модов.
Jargon, на неправильную версию естественно будет ругаться . Соль в том, что: 1) В принципе удается относительно малой кровью прикручивать к sysmsgs поддержку движка ЗП -пока что сделано для загрузчика карт. Отличия от ЧН есть, но они не столь существенны. 2) Решение получается кроссплатформенным - либу можно будет использовать с обоими движками. Собственно, на скрине показано, что при подключении клиента ЗП к ЧНовскому серверу (прямой IP никто не отменял) модуль исправно отрабатывает и стартует загрузку на клиенте ЗП.
Добавлено (01.05.2018, 16:54) --------------------------------------------- Итак, выложен новый релиз FreeZone. Из вкусностей: -Модули генератора системных сообщений (sysmsgs.dll) и загрузчика модов (fz_mod_loader.dll) теперь стали по-настоящему кроссплатформенными - поддерживается работа на ТЧ 1.0006, ЧН 1.5.10, ЗП 1.6.02. Благодаря этому автоматическую загрузку модов можно с легкостью реализовать в модах на всех 3х играх серии. Пример использования и класс-обертку можно найти в коде FreeZone, а также в проекте sysmsgs_cpp_wrap. -Упрощена настройка сервера для работы с зарегистрированными в мастер-списке модами - теперь достаточно указать только желаемый mod_name и адрес/порт сервера в mod_params -Анализ закупа игроков - использовать шопхаки теперь достаточно проблематично (особенно при включенной опции оповещения радминов) -Исправление множества новых багов и глюков