Живая панель активности игроков в личном кабинете защиты: HWID, аккаунты, IP и страны в реальном времени, бан и выдача окон в один клик.
В личном кабинете защиты добавлен мониторинг серверов, доступен для тарифов Premium+.
Всего записей, забанено, время последнего отчёта и индикатор Онлайн/Оффлайн — по свежести данных от защиты.
В конфиге защиты можно включить мониторинг, вставить токен и изменить периодичность отправки данных в личный кабинет.
Проверка хешей файлов клиента: Lin2Guard не пустит в игру с изменёнными .exe, .dll или ресурсами. Утилита FileHasher за минуту собирает список проверяемых файлов.
FileHasher — это отдельная утилита, которая сканирует папку клиента, считает контрольные суммы файлов и генерирует files.xml. Guard раздаёт этот список игрокам и при каждом входе сверяет хеши: если хоть один защищённый файл отличается от эталона, клиент не подключится к серверу.
Хеш-проверка закрывает модификации клиента: подменённый l2.exe, сторонние .dll (инжекторы, чит-библиотеки), правки интерфейса и ресурсов (.u, .xdat), изменённые .ini. Даже если бот-программа маскируется под системный файл — несовпадение контрольной суммы мгновенно её выдаёт.
В окне FileHasher укажите корневую папку клиента и нажмите «START GAME SCAN». Программа обойдёт все папки system*, посчитает MD5 для .exe, .dll, .bin, .u, .xdat, .ini и покажет таблицу «файл — хеш». Галочками отметьте, какие файлы обязательны к проверке (нестабильные вроде engine.dll / nwindow.dll исключаются автоматически). При необходимости можно вручную добавить файлы вне system.
Запустите FileHasher.exe и выберите корневую папку игрового клиента.
Нажмите «START GAME SCAN» и дождитесь окончания сканирования.
На вкладке «Files/Hashes» отметьте обязательные файлы, на вкладке «Result» нажмите «Save as files.xml».
Положите files.xml в конфигурацию защиты — Guard начнёт сверять хеши при входе игроков:
<FilesSettings>
<filestocheck>
<file value="system/l2.exe">
<hash value="A1-B2-C3-D4-E5-F6-07-18-29-3A-4B-5C-6D-7E-8F-90" />
</file>
<file value="system/engine.dll" ignore="1">
<hash value="11-22-33-44-55-66-77-88-99-AA-BB-CC-DD-EE-FF-00" />
</file>
</filestocheck>
</FilesSettings>
Хеши считаются по алгоритму MD5 и хранятся на стороне сервера. После обновления клиента просто пересоберите files.xml заново — актуальный список файлов займёт пару минут.
Встроенное автообновление файла защиты l2.exe: при выходе новой версии защиты игрок сам докачивает свежий l2.exe с сервера при входе. Отдельный лаунчер не нужен.
Lite Launcher — это встроенный механизм обновления файла защиты. Когда выходит новая версия Lin2Guard, вам не нужно вручную рассылать игрокам обновлённый l2.exe. После успешной проверки HWID guard отдаёт клиенту ссылки из litelauncher.xml, и клиент автоматически скачивает актуальный l2.exe с сервера, показывая прогресс загрузки. Игроки всегда заходят с последней версией защиты.
Настройка занимает одну строку — заполнить ссылки в litelauncher.xml. Дальше всё автоматически: игрок запускает игру → guard проверяет HWID → при успехе присылает клиенту адрес обновления → клиент докачивает свежий l2.exe защиты и запускает игру уже на новой версии. Так вы обновляете защиту на стороне сервера один раз, а все игроки получают её сами при следующем входе.
Загрузите актуальный l2.exe защиты на свой хостинг/облако и получите прямую ссылку на скачивание.
Впишите её в downloadlink. Для надёжности добавьте зеркало во downloadlinktwo и запасную ссылку во failupdatelink.
Сохраните litelauncher.xml рядом с конфигом защиты и перезапустите guard:
<LiteLauncherSettings>
<downloadlink value="https://cdn.your-server.com/update/l2.exe" />
<downloadlinktwo value="https://mirror.your-server.com/update/l2.exe" />
<failupdatelink value="https://your-server.com/download" />
</LiteLauncherSettings>
downloadlink — основная ссылка на обновлённый l2.exe защиты. downloadlinktwo — запасное зеркало на случай недоступности основного. failupdatelink — ссылка, которую увидит игрок, если автообновление не удалось (например, страница ручной загрузки).
Обновление отправляется клиенту только после успешной проверки HWID. Если все ссылки пустые — Lite Launcher выключен, и клиент запускается без обновления l2.exe. Старые клиенты, не поддерживающие автообновление, просто игнорируют команду — совместимость не ломается.
Разрешает игрокам вставлять текст из буфера обмена (Ctrl+V) в игровой чат. Особенно полезно на хрониках Interlude (IL) — включается одним флагом в конфиге.
На хрониках Interlude (IL) вставка текста в чат часто недоступна — приходится набирать всё вручную. Флаг enablectrlv возвращает привычное поведение: игрок может вставить ссылку, никнейм или заготовленное сообщение сочетанием Ctrl+V. Управляется на стороне сервера — включать и выключать можно в любой момент, без пересборки и перераздачи клиента.
Откройте файл настроек защиты config.xml.
Найдите строку enablectrlv и поставьте значение True (для отключения — False).
Сохраните файл и перезапустите guard — функция применится при следующем входе игроков:
<!-- Ctrl+V paste into the in-game chat -->
<enablectrlv value="True"/>
Особенно актуально для сборок Interlude. По умолчанию функция выключена (False). Старые клиенты, не поддерживающие этот параметр, просто игнорируют его — совместимость не ломается.
Даёт игроку открыть в браузере страницу по ссылке из внутриигрового html — специальным пакетом. Особенно полезно на старых хрониках (IL+), где нет встроенного способа вести игроков на веб-страницы. Включается одним флагом на сервере.
На старых хрониках (Interlude и выше, IL+) нет удобного способа открыть внешнюю страницу прямо из игры. BrowserBypass решает это: даёт игроку возможность открыть в браузере страницу из html — по ссылке из внутриигрового html-окна (диалоги NPC, доска сообщества и т.д.). Сервер отправляет клиенту специальный пакет со ссылкой, и она открывается в браузере. Так можно вести игроков на страницу доната, открывать анонс ивента, промо-акцию или патчноуты — без внешних ссылок в чате. Функция включается на стороне сервера одним флагом в config.xml.
Откройте файл настроек защиты config.xml на сервере.
Найдите строку browserbypass и поставьте значение True (для отключения — False).
Сохраните файл и перезапустите guard — функция заработает при следующем входе игроков:
<!-- Разрешить открывать браузер у игрока по ссылке из html -->
<browserbypass value="True" />
Чтобы открыть браузер, сервер отправляет клиенту пакет с опкодом 0xFF (255):
1 byte — 0xFF (опкод)
1 byte — 0x03 (подтип: открыть браузер)
Unicode string — ссылка (URL для открытия)
Особенно актуально для старых хроник IL+. По умолчанию функция выключена (False). Открывается системный браузер игрока по умолчанию. Старые клиенты, не поддерживающие этот параметр, просто игнорируют пакет — совместимость не ломается.
Игрок может сохранить аккаунт один раз и входить в игру без постоянного ввода логина и пароля.
Плагин добавляет в окно входа блок «Сохраненные аккаунты». Игрок выбирает аккаунт из списка и заходит в игру в пару кликов.
В окне ввода логина и пароля появится отдельный список сохранённых аккаунтов. Можно быстро выбрать нужный аккаунт, войти или добавить новый.
Откройте настройки защиты, файл config.xml:
<saveaccounts value="True" accountsversion="1" />
При первом запуске оставьте accountsversion="1". Если после вайпа или смены данных старые сохранённые аккаунты должны перестать работать, просто увеличьте это число на 1.
Интеграция с Discord помогает привлекать новых игроков: друзья видят, что вы играете на сервере. После запуска игры в статусе Discord отображаются название вашего сервера, картинка, описание и время в игре.
Интеграция с Discord помогает привлекать новых игроков: друзья видят, что вы играете на сервере. После запуска игры в статусе Discord отображаются название вашего сервера, картинка, описание и время в игре.
Войдите в Discord на сайте или создайте аккаунт. Откройте Developer Portal и нажмите «New Application».
Задайте имя вашему проекту.
Заполните основную информацию, загрузите иконку и нажмите «Save Changes». Скопируйте и сохраните APPLICATION ID (в примере: 1000344216532160543).
В меню слева откройте Rich Presence → Art Assets, загрузите картинку и запомните ASSET ID (в примере: lineage_2_logo). Подождите ~10 минут, пока Discord сохранит изображение.
Откройте конфиг защиты config.xml — внутри есть блок Discord. Подставьте свои значения:
<!-- Discord integration -->
<discord enabled="True" appid="1000344216532160543" biglogo="lineage_2_logo"
details="Playing Lineage 2" state="In Game"
biglogotext="" />
enabled="True" — включить интеграцию; appid — ваш APPLICATION ID; biglogo — ваш ASSET ID. Перезапустите сервер lin2guard, и новые настройки применятся.
Значит у файла config.xml неверная кодировка — он должен быть в UTF-8. Пересохраните файл в UTF-8 (например, через Notepad++).
У вас отключён показ активности в Discord. Откройте User Settings (шестерёнка) → Настройки активности → Конфиденциальность активности и включите весь функционал.
Модуль рисует текст и FPS внутри игрового окна.
Выводится заданный вами текст. Опционально можно изменить цвет текста, размер текста, расположение, а также включить или выключить текст или FPS.
Выберите нужные модули сейчас и подключайте остальные по мере роста сервера.