Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Catalog · How the catalog works

Random project

freezone

S.T.A.L.K.E.R. Multiplayer Engine Extension

View on GitHub

Anyone may press Interesting, signed in or not. It helps others find this project.

Member rating

No ratings yet.

Sign in to rate this project.

README

Описание: FreeZone 3.0 это расширение для выделенного сервера игры S.T.A.L.K.E.R. - Clear Sky, исправляющее недочеты оригинальной игры, усовершенствующее игровой процесс и вносящее новые возможности.

Установка: Для установки на сервер требуется:

  1. Установить игру с патчем версии 1.5.10 (последним официально выпущенным).
  2. Сделать резервную копию папки bin в установочной директории игры.
  3. Скопировать в поддиректорию игры bin\dedicated следующие файлы из директории репозитория release\cs_1510\bins:
    • xrEngine.exe - модифицированная версия оригинального файла игры с инжектором DLL, копируется с заменой
    • freezone.dll - основной модуль FreeZone
    • sysmsgs.dll - модуль, обеспечивающий работу клиентского (client-side) функционала FreeZone
  4. Скопировать в поддиректорию игры bin\ следующие конфигурационные файлы из release\cs_1510\sample_configs:
    • fz_config.ini - основной конфигурационный файл FreeZone
    • fz_translations.ini - параметры транслятора строк
    • fz_censored.ini - шаблоны автоматического цензора чата
    • fz_download_links.ini - конфигурация ссылок на файлы для загрузчика карт
    • banned_networks.ini - список заблокированных подсетей После выполнения вышеуказанных действий можно пытаться запустить сервер. Сигналом успешной инициализации служит появление в логе желтых строк, начинающихся с FZ.

Сборка: В случае необходимости, главный модуль freezone.dll может быть с легкостью модифицирован и собран вручную. Для этого требуется выполнить следующие шаги:

  1. Установить бесплатную IDE Lazarus. ВАЖНО! Так как движок сталкера 32-разрядный, то требуется именно 32-разрядная редакция Lazarus!
  2. После установки Lazarus открываем в нем файл проекта projects\cs\fz_srv_1510\freezone.lpr
  3. Переходим в пункт меню: "Параметры проекта" -> "Параметры компилятора" -> "Пути".
  4. В случае необходимости, задать в поле "Имя исполнимого файла" полный путь и имя (без расширения) до места расположения DLL, например: "c:\stalker\bin\dedicated\freezone"
  5. Наверху этого же окна в пункте "Режимы сборки" выбираем "Release".
  6. В нижней части окна нажимаем кнопку "ОК".
  7. Все готово к сборке! Выбираем в меню "Запуск" -> "Компилировать".
  8. Проверяем успешность сборки: в окне "Сообщения" должна появиться зеленая строка с сообщением об успешной компиляции. Из этой же зеленой строки можно узнать о местоположении скомпилированного файла (оно должно совпадать с указанным в пункте (4)).

Отладка: Для удобства редактирования основного модуля и проверки работоспособности внесенных изменений возможно запустить сервер прямо из IDE с использованием ее собственного отладчика. В этом режиме возможно устанавливать в коде точки останова, трассировать выполнение программы и пользоваться всеми остальными удобствами, предоставляемыми средой Lazarus. Для запуска под отладчиком выполните следующие шаги:

  1. Выполните установку и настройку игрового сервера с FreeZone последней версии, как указано в разделе установки. Убедитесь, что сервер успешно запускается, а сама FreeZone инициализируется и работает. ВАЖНО! Не забудьте обновить модуль sysmsgs.dll, если этого не сделать - FreeZone может работать нестабильно или при запуске сервера выдавать ошибку "Точка входа в процедуру ххх не найдена".
  2. Откройте файл проекта projects\cs\fz_srv_1510\freezone.lpr.
  3. Перейдите в пункт меню: "Параметры проекта" -> "Параметры компилятора" -> "Пути".
  4. В поле "Имя исполнимого файла" задайте путь до файла freezone.dll, расположенного в папке bin\dedicated вашего сервера с установленной в пункте (1) FreeZone. Не дописывайте к имени файла расширение ".dll"!
  5. Выберите в списке режимов сборки "Debug" для использования отладочной конфигурации сборки. Это позволит использовать все доступные в IDE средства отладки.
  6. Нажмите кнопку "ОК" для применения настроек сборки.
  7. Выбираем в меню "Запуск" -> "Компилировать" и пытаемся выполнить компиляцию. Убеждаемся в появлении зеленой строки с сообщением об успехе компиляции. Также проверяем, что путь и имя выходного файла, указанные в этой строке, совпадают с заданными в пункте (4).
  8. Запускаем (обычным образом) сервер и убеждаемся, что файл freezone.dll действительно успешно был пересобран (об этом будет свидетельствовать дата сборки в строке инициализации FreeZone, выводимой в лог).
  9. Теперь необходимо настроить запуск сервера под отладчиком (собственно для удобства отладки). Для этого переходим в пункт меню "Запуск" -> "Параметры запуска".
  10. В поле "Главное приложение" указываем путь до движка выделенного сервера (ваша_установочная_папка_игры\bin\dedicated\xrEngine.exe).
  11. В поле "Рабочий каталог" указываем путь до папки bin вашей игры (ваша_установочная_папка_игры\bin).
  12. В поле "Параметры командной строки" можно указать опции запуска сервера (такие же, как в bat-файле запуска). По-умолчанию, там уже установлены некоторые стандартные значения, можно их не трогать на данном этапе.
  13. ВАЖНО! Отладка из-под IDE несовместима с одновременным запуском "Stalker Controller"! Не дописывайте в строку запуска никаких параметров Контролера (включая /wait)!
  14. Идем в меню "Запуск" -> "Запустить". Если все было сделано правильно - сервер запустится под отладкой из IDE! Если этого не произошло - ищите ошибку на шаге 10. Например, если игра жалуется на невозможность открыть fsgame.ltx - значит, скорее всего, неправильно указан рабочий каталог.