MaxiMuM 11 Опубликовано 18 июля, 2012 Сразу скажу что защиту нужно дорабатывать, в шаре есть "затычка". Защита может не спасать от нубов, а будет только плодить у них вопросы. Поэтому перед установкой её на сервер лучше разберитесь в коде и составьте документацию для пользователей. Это спасёт ваши нервы и душу. В противном случае игроки просто поймают вас в тёмном переулке и продадут в рабство! Сам процесс установки делится на три части. Каждый человеческий индивид сможет установить её, если нет то...... Все необходимые файлы будут доступны для скачивания. Защита без проблем встанет на сборку L2jFrozen и ей подобные. Для того чтобы подружить её с другими сборками нужно немного переписать сервеную часть. Что касается других хроник тут тоже всё просто. Т.к Airin это тот же L2jCore Guard 1.5, тут нет шифрации трафика. Клиент часть просто проверяет ключ из файла gguard.ini + проверяет комп на читы и передаёт данные о железе на сервер. Следовательно переписать её под другие хроники не составит труда. Переделываем серверную часть, и потом компилим клиентскую и с помощью PE Editor'a привязываем клиентские файлы к exe. Или куда вы там их..... Итак первый этап: Начнём мы с серверной части! Сразу скажу, что компилировать её я буду через ANT + CMD. Для того чтобы скомпилировать сборку/защиту подобным образом нужно всего лишь настроить переменные среды и скачать сам ant. Расписывать тут целый гайд по настройке переменных сред я не буду. Вот ссылка. Тут всё подробно описано. ВНИМАНИЕ: при настройке JAVA_HOME нужно указывать пусть к JDK, а не JRE. В редактировании серверной части нет ничего сложного. Нам нужно изменить только один массив в файлике Loader.java Находи строчку: private static String [] _sites = {"http://extreme-la2.xclan.ru/nProtect/npgmup.php", "http://extreme-la2.xclan.ru/nProtect/npgmup.php" }; И меняем в ней адреса сайтов на свои. Не обязательно иметь 2 сайта. Указываем 2 одинаковых. Нужно указать не просто ваш сайт, а путь к веб части (Описание её установки будет ниже). Так допустим у вас веб часть установлена в папку guard, Адрес сайта должен быть таким: http://you-server.ru/guard/npgmup.php Всё После этого закидываем в папку libs, ядро фрозенов. Теперь запускаем от имени администратора ant_build.bat, защита начнёт компилироваться и вдруг запросит у вас какой-то код. Вводим например FFCCAA, или FCAFCA, или CFFCAA, ну вы поняли.... Этот код ЗАПОМИНАЕМ Теперь достаём готовую защиту из папки build и закидываем в папку с сервером. Для того чтобы подключить её к гейму, запускаем setgame.bat (Не пугайтесь что он тут же потух, всё нормально). Если у вас при запуске будут вылетать ошибки по поводу commons-logging-1.1, javolution-5.5.1. Закидываем их в папку lib (libs), вашего гейм сервера. В конфиге защиты вписывайте любое имя пользователя. Оно понадобится нам позже. ------------------------------------------------------------------------------------------------------- Второй этап: Тут мы будем настраивать Web часть защиты. Все файлы вы найдёте в конце поста. В веб части нет ничего сложного. Просто заливаем скрипт на наш хост, в файле config.php (находится в папке config ) настраиваем подключение к базе данных. К БД не сервера, а сайта. После чего выполняем этот запрос: SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; CREATE TABLE `gGuard` ( `index` int(11) NOT NULL, `id` text NOT NULL, `ip` text NOT NULL, `key` text NOT NULL, PRIMARY KEY (`index`), FULLTEXT KEY `key` (`key`) ) ENGINE=MyISAM DEFAULT CHARSET=cp1251; INSERT INTO `gGuard` VALUES(2, 'vados', '*', 'FFCCAA'); INSERT INTO `gGuard` VALUES(2, 'vados', '*', 'FFCCAA'); - эта строка добавляет в таблицу нового пользователя. vados - имя пользователя (Меняем на то, которое у нас указано в конфиге защиты). * - это IP адрес на котором будет работать сервер. Можно оставить * и ограничений по IP не будет. FFCCAA - это как раз тот код, который мы указывали при компилировании. Исправляем запрос и посылаем его в базу. ВНИМАНИЕ: Это не полная настройка web части, мы ещё вернёмся к ней, после настройки клиента. ------------------------------------------------------------------------------------------------------- Третий этап: Клиент часть настраивается сложнее, но тоже легко . Клиентская часть написана на Delphi 7. Соответственно он нам понадобится для компиляции. Качаем в инете и устанавливаем. Пока дельфины качаются, отредактируем привязку в клиенте. Открываем папку ClientPart, а в ней любым текстовым редактором открываем файл ufrmSplash.pas Находим внутри него такие строки: Site:= 'http://localhost/nProtect/'; res:=HTTP.HTTPMethod('Get',Site+'npgmup.php?'+MimeEncodeString(uName)+'&client'); Меняем адрес сайта на свой! Опять же не забываем про директории у вас на сайте. Теперь нам нужно скомпилировать клиентскую часть. Внимание! Перед компиляцией проекта зайдите в папку с ним, найдите такие файлы как gGuard.cfg и gGruard.dof. Вам нужно будет отредактировать в этих файлах пути расположения файлов. Разобраться в этом будет очень легко. Заходим в Delphi 7 -> Открыть новый проект -> идём в папку ClientPart и выбираем там файл gGuard.dpr. Потом переходим в меню Project -> build gGuard. Тем самым мы получаем файл gGuard.dll Если в процессе компиляции появляются ошибки и дельфины указывают на отсутствие различных компонентов, устанавливаем эти компоненты. Н-ти их можно в папке components. О том как их установить читаем в интернете. Теперь заходим в DES_Part, проделываем тоже самое. Только тут не надо ничего редактировать. Просто компилируем. После этого запускаем программу ConfigVis, из папки configurator, вписываем то имя пользователя которое вы используете в web части и в конфиге сервера, нажимаете "Сохранить" и выбираете путь для сохранения. Вот и всё. Клиент часть должна состоять у вас из файлов: L2.exe, gGuard.dll, gg_sys.ini, gameguard/gGuard.des. Если вам необходимо использовать свой L2.exe, просто привязываем файлы защиты PE Editor'ом к эксешнику. ------------------------------------------------------------------------------------------------------- Теперь загружаем ваш gGuard.des в папку gGuard, на сайте. Если этого не сделать клиент просто не запустится и будет вылетать с ошибкой У вас запрещен доступ для приложения l2.exe к интернету по протоколу HTTP.'#13#10'Рекомендуем отключить Фаерволл. ------------------------------------------------------------------------------------------------------- Вот и всё. Защита не идельна, но если её доработать получится очень вкусная конфетка. Для того чтобы её было тяжелее обойти, нужно менять алгоритм шифрования имени клиента в ключ и наоборот, сам ключ лучше хранить в самой защите, можно привязать шифрацию трафика с L2jCore 3.0, так же лучше запретить запуск на ВМ + проверять постоянно контрольные суммы и память клиента. Это прикроет различные отладчики, затычка не будет работать на вас. Это конечно не всё =). Желаю вам удачи в установке. И чуть не забыл. Сервер Клиент Web Вот ссылки на архивы. В них вы найдёте всё что нужно. Может быть кому и пригодится эта статья. 5 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
mrvampir 66 Опубликовано 18 июля, 2012 кулл статья хоть я все так же делал,но всеравно у мя не пашет..(( Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
MaxiMuM 11 Опубликовано 18 июля, 2012 Пиши какие ошибки возникли. Попробую помочь Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
slavik 5 Опубликовано 18 июля, 2012 у меня сборка на исходах ЕОН как подпилить под Еон ??? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
MaxiMuM 11 Опубликовано 18 июля, 2012 (изменено) Разбирай ядро защиты. Смотри какие классы она загружает из ядра сервера и меняй импорты к этим классам, только под ЕОН. Качай исходы L2jCore 1.5, там есть версия под L2base (Структура та же что и у ЕОНа), и по аналогии переделывай. Изменено 18 июля, 2012 пользователем MaxiMuM Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
VoiceAtack 3 Опубликовано 18 июля, 2012 Не компилится ExtCtrls, StdCtrls, ComCtrls,httpsend, jpeg; вот ошибка !! Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
VoiceAtack 3 Опубликовано 18 июля, 2012 Build [Fatal Error] ufrmSplash.pas(7): File not found: 'httpsend.dcu' Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
mrvampir 66 Опубликовано 18 июля, 2012 Пиши какие ошибки возникли. Попробую помочь когда сборку запускаю,выкидует что неможет к сайту приконектится)) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
MaxiMuM 11 Опубликовано 18 июля, 2012 Если в процессе компиляции появляются ошибки и дельфины указывают на отсутствие различных компонентов, устанавливаем эти компоненты. Н-ти их можно в папке components. О том как их установить читаем в интернете. Я писал об этом! Устанавливай httpsend mrvampir, Теперь загружаем ваш gGuard.des в папку gGuard, на сайте. Если этого не сделать клиент просто не запустится и будет вылетать с ошибкой Код У вас запрещен доступ для приложения l2.exe к интернету по протоколу HTTP.'#13#10'Рекомендуем отключить Фаерволл. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
TrueMan 742 Опубликовано 18 июля, 2012 Есть у кого то исходники с4 защиты? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
mrvampir 66 Опубликовано 18 июля, 2012 Я писал об этом! Устанавливай httpsend mrvampir, Теперь загружаем ваш gGuard.des в папку gGuard, на сайте. Если этого не сделать клиент просто не запустится и будет вылетать с ошибкой Код У вас запрещен доступ для приложения l2.exe к интернету по протоколу HTTP.'#13#10'Рекомендуем отключить Фаерволл. у мя клиент часть норм конектится)) у мя трабла с серверной частью)) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
MaxiMuM 11 Опубликовано 18 июля, 2012 Есть у кого то исходники с4 защиты? Эта защита прекрасно подойдёт по С4. Только её надо адаптировать под сборку + немного изменить саму сборку. С клиент частью проблем возникнуть не должно! Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
TrueMan 742 Опубликовано 18 июля, 2012 Знал бе я как.. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
MaxiMuM 11 Опубликовано 18 июля, 2012 Пара фиксов! WEB Новая Web часть. Исправил ошибку подключения к БД. И дополнение качающееся клиент части: В файле ufrmSplash.pas, ищем вот этот код (140 строка) : HttpGetBinary(Site+'sps/gGuard.des',F); И меняем sps/gGuard.des, на gGuard/gGruard.des Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
TrueMan 742 Опубликовано 18 июля, 2012 Не компилится ExtCtrls, StdCtrls, ComCtrls,httpsend, jpeg; вот ошибка !! У меня такое же, помогите разобраться. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
MaxiMuM 11 Опубликовано 19 июля, 2012 У меня такое же, помогите разобраться. Смотри посты выше! Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
TrueMan 742 Опубликовано 22 июля, 2012 Как переделать защиту под festina-project ? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
slavik 5 Опубликовано 23 июля, 2012 Кто поможет сделать ету защиту под ИТ (Сборка на исходах ЕОН) с меня Пивко + Спасибо!!! Мои Контакты: ICQ: 418-108-088 Skype: OmgSuprime vk.com/id157729537 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
TrueMan 742 Опубликовано 23 июля, 2012 Как переделать защиту под festina-project ? Помогите плиз. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
FakeSnake 29 Опубликовано 24 июля, 2012 Автору темы СпасибКО))) Интересный мануал и самое главное нужный ))) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
andran 4 Опубликовано 28 июля, 2012 никогда не работал с исходниками. Кто может качественно сделать эту защиту для меня? С меня 70р. Аська 8224381 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
andran 4 Опубликовано 29 июля, 2012 "После этого закидываем в папку libs, ядро фрозенов." Что имеется ввиду под ядром? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
†DeMoN†™ 156 Опубликовано 30 июля, 2012 "После этого закидываем в папку libs, ядро фрозенов." Что имеется ввиду под ядром? библиотека (*.jar файл) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
andran 4 Опубликовано 30 июля, 2012 "Теперь достаём готовую защиту из папки build и закидываем в папку с сервером" У меня создался только один файл airin.jar Это нормально? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
MaxiMuM 11 Опубликовано 30 июля, 2012 "Теперь достаём готовую защиту из папки build и закидываем в папку с сервером"У меня создался только один файл airin.jar Это нормально? В сервер надо ещё закинуть конфиг защиты и две jar библиотеки. Они лежал в папке lib. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты