Jump to content

Recommended Posts

[Мод] Антибот

 

screenshot_01.png

 

Добавляет в игру антибот, который работал на официальных серверах игры. 

 

Механизм работы антибота похож на "капчу". В процессе игры, в определенные интервалы времени, игрок должен вводить появляющийся на экране код, состоящий из 4-ех символов. У игрока всего 3 попытки. Если игрок 3 раза подряд ошибется и/или не введет код, то он принудительно отключается от сервера. При правильном ответе игрок может получить "награды" - опыт, восстановление ЖЗ и МН, либо предмет (кекс, билет), а счетчик числа неудачных попыток сбрасывается.

 

Антибот срабатывает при следующих условиях:

1) Персонаж игрока не обладает правами администратора и модератора (GM-уровень равен 0);

2) Персонаж игрока не находится в безопасной зоне;

3) Персонаж игрока не находится в PvP-зоне;

4) Персонаж игрока находится на воде.

 

 

Требования

 

Установленный Загрузчик модов для сервера и клиента (PKOdev.NET mod loader).

 

 

Информация о моде

 

Название: pkodev.mod.antibot;

Версия: 1.0;

Автор: V3ct0r;

Тип: для сервера (GameServer.exe);

Поддерживаемые исполняемые .exe файлы: GAMESERVER_136 и GAMESERVER_138.

 

 

Установка

 

1) В директории "mods" Вашего GameServer создайте папку "pkodev.mod.antibot" и поместите в неё файл DLL-библиотеки мода "pkodev.mod.antibot.server.13<x>.dll" для Вашей версии GameServer.exe;

2) В папку "resource" Вашего GameServer поместите папку "Pic" из приложенного архива с модом;

3) В файл "functions.lua" ("GameServer\resource\script\calculate") добавьте код из соответствующего файла из приложенного архива с модом.

 

 

Интервал срабатывания антибота

 

Мод настроен таким образом, что интервал срабатывания антибота по умолчанию рассчитывается в соответствии с оригинальным алгоритмом, который был реализован разработчиками игры (см. метод DWORD CCharacter::GetCheatInterval(int state) из файла "Character.cpp" исходного кода сервера). Данный алгоритм можно изменить в функции unsigned int __fastcall pkodev::hook::CCharacter__GetCheatInterval(void* This, void* NotUsed, int state) в исходном коде мода (файл "dllmain.cpp"). Данная функция должна возвращать интервал времени в миллисекундах. При state = 1 функция должна вернуть не менее 60 секунд (по умолчанию 65), т.к. при указанном значении этого параметра рассчитывается время, отведенное игроку на ввод 4-ех символьного кода.

 

 

Скачать

 

1) Бинарные файлы мода (.dll);

2) Исходный код мода для Visual Studio 2019 Community (C++).

 

 

Если Вы столкнулись с какой-либо проблемой, багом или у Вас возникли вопросы, то пишите в данной теме.

  • Like 2

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...