Jump to content

Search the Community

Showing results for tags 'Мод'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Russian Section
    • Новости и объявления
    • Пиратия: Документация
    • Пиратия: Релизы
    • Пиратия: Разработка
    • Пиратия: Web
    • Пиратия: Помощь
    • Совместные проекты / набор команды
    • Доска объявлений
    • Программирование
    • Оффтопик
    • Корзина
  • English Section
    • News & Announcements
    • Guides
    • Releases
    • Development
    • Web
    • Questions & Help
    • Shared Projects / Team search
    • Paid services & Requests
    • Programming
    • Offtopic
    • Recycle bin
  • Portuguese Section
    • Dúvidas & Ajuda
  • Spanish Section
    • Preguntas y Ayuda
  • Servers
    • Russian servers
    • English servers

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Found 40 results

  1. [Мод] Панель побежденных персонажей Мод добавляет в игру панель побежденных персонажей, по аналогии с FPS-играми по типу Counter-Strike, Call of Duty, Battlefield и других. Некоторые особенности мода: 1) Панель представляет собой список из записей вида: [Имя персонажа-победителя] [Иконка умения или оружия, которым нанесено поражение] [Имя побежденного персонажа] (см. скриншот выше); 2) Имена персонажей-победителя и побежденного выделяются цветом в зависимости от степени дружественности по отношению к персонажу игрока: зеленый цвет - союзник, красный цвет - враг; 3) Панель можно кастомизировать. Процесс кастомизиации будет рассмотрен далее. Требования Установленный Загрузчик модов для сервера и клиента (PKOdev.NET mod loader). Информация о моде Название: pkodev.mod.defeated; Версия: 1.0; Автор: V3ct0r; Тип: для клиента (Game.exe) и сервера (GameServer.exe); Поддерживаемые исполняемые .exe файлы: GAME_13X_0, GAME_13X_1, GAME_13X_2, GAME_13X_3, GAME_13X_4, GAME_13X_5, GAMESERVER_136 и GAMESERVER_138. Установка 1. Сервер 1.1 Поместите файл DLL-библиотеки мода "pkodev.mod.defeated.server.<VERSION>.dll" для Вашей версии GameServer.exe и файл настроек "pkodev.mod.defeated.json" (v1.0.0-server) в папку "GameServer\mods\pkodev.mod.defeated"; 1.2 Откройте файл настроек мода "GameServer\mods\pkodev.mod.defeated\pkodev.mod.defeated.json" в любом текстовом редакторе и запишите в него список карт (данжей), на которых будет действовать мод: { "maps" : [ "garner", "magicsea", "darkblue" ] } 2. Клиент 2.1 Поместите файл DLL-библиотеки мода "pkodev.mod.defeated.client.13x_<ID>.dll" для Вашей версии Game.exe и файл настроек "pkodev.mod.defeated.json" (v1.0.0-client) в папку "Клиент\mods\pkodev.mod.defeated" игрового клиента; 2.2 Откройте файл настроек мода "Клиент\mods\pkodev.mod.defeated\pkodev.mod.defeated.json" в любом текстовом редакторе и запишите в него требуемые параметры: { "debug":false, "hideTime":5000, "maxItems":5, "itemStep":24, "pos":{ "x":460, "y":8 }, "align": { "x":"right", "y":"top" } } debug - режим отладки. true - включен, false - выключен; hideTime - время в миллисекундах, после которого очередная запись на панели будет скрыта; maxItem - максимальное число записей на панели; itemStep - вертикальный шаг между записями в пикселях; pos - координаты (X, Y) панели; align - параметр задает относительность координат (X, Y) панели. Для X: left - координата будет отсчитываться относительного левого края окна клиента, right - относительно правого края. Для Y: top - координата будет отсчитываться относительно верхнего края окна клиента, bottom - относительно нижнего края. Для настройки положения панели удобно включить режим отладки ("debug":true). В таком случае на заданных координатах (X, Y) появится панель в рамке, отображающей максимальные размеры панели: Скачать 1) Бинарные файлы мода (.dll) и файл настроек (.json) для сервера (GameServer.exe); 2) Бинарные файлы мода (.dll) и файл настроек (.json) для клиента (Game.exe); 3) Исходный код мода для Visual Studio 2022 Community (C++). Если Вы столкнулись с какой-либо проблемой, багом или у Вас возникли вопросы, то пишите в данной теме.
  2. [Мод] Отображение списка предметов, выпадающих с монстров (ресурсов) Мод добавляет в игру форму со списком предметов, которые с определенным шансом выпадают из выбранного монстра, (см. скриншот выше). Монстр выбирается следующим образом: Правая кнопка мыши по монстру -> пункт контекстного меню "List of items". Дополнительно, мод позволяет выводить список предметов при наведении курсора мыши на монстра, либо при зажатии клавиши SHIFT на клавиатуре (данное поведение отключается в настройках игры) : Некоторые особенности мода: 1) Каждый предмет выводится в виде иконки, названия предмета и шанса выпадения в процентах; 2) Список отсортирован по убыванию процента шанса выпадения; 3) Предметы выделяются цветом в зависимости от шанса выпадения: зеленый - высокий шанс выпадения, красный - низкий шанс выпадения. Требования Установленный Загрузчик модов для сервера и клиента (PKOdev.NET mod loader). Информация о моде Название: pkodev.mod.mobdrop; Версия: 1.1; Автор: @V3ct0r. Особая благодарность @Graf за предоставленные скрипты и текстуры для формы со списком предметов; Тип: для клиента (Game.exe); Поддерживаемые исполняемые .exe файлы: GAME_13X_0, GAME_13X_1, GAME_13X_2, GAME_13X_3, GAME_13X_4, GAME_13X_5. Установка 1) Поместите файл DLL-библиотеки мода "pkodev.mod.mobdrop.13x_<ID>.dll" для Вашей версии Game.exe и файл настроек "pkodev.mod.mobdrop.cfg" в папку "mods\pkodev.mod.mobdrop" игрового клиента; 2) В файл настроек "pkodev.mod.mobdrop.cfg" запишите рейты сервера на дроп: 1.0 3) Добавить GUI-скрипты из файла "Add to system.clu.txt" в файл "Клиент\scripts\lua\forms\system.clu"; 4) Добавить GUI-скрипты из файла "Add to player.clu.txt" в файл "Клиент\scripts\lua\forms\player.clu"; 5) При необходимости, перевести GUI-скрипты из п. (3) и (4) на русский язык; 6) По умолчанию отображение списка предметов рядом с монстрами при наведении на них курсора мыши отключено. При необходимости включить данное поведение в настройках игры: Список изменений Скачать 1) Бинарные файлы мода (.dll); 2) Исходный код мода для Visual Studio 2022 Community (C++). Если Вы столкнулись с какой-либо проблемой, багом или у Вас возникли вопросы, то пишите в данной теме.
  3. [Мод] Функция GMNotice() Мод добавляет в LUA-скрипты GameServer.exe функцию GMNotice(), которая позволяет отправлять сообщения игрокам в канал GM-чата (ALT + P): GMNotice("Hello PKOdev.NET! This is a GM message.") Требования Установленный Загрузчик модов для сервера и клиента (PKOdev.NET mod loader) версии не ниже 1.1. Информация о моде Название: pkodev.mod.gmnotice; Версия: 1.0; Автор: V3ct0r; Тип: для сервера (GameServer.exe и GroupServer.exe); Поддерживаемые исполняемые .exe файлы: GAMESERVER_136, GAMESERVER_138 и GROUPSERVER_138. Установка 1) Поместите файл DLL-библиотеки мода "pkodev.mod.gmnotice.server.<VERSION>.dll" для Вашей версии GameServer.exe в папку "GameServer\mods"; 2) Поместите файл DLL-библиотеки мода "pkodev.mod.gmnotice.group.<VERSION>.dll" для Вашей версии GroupServer.exe в папку "GroupServer\mods". Скачать 1) Бинарные файлы мода (.dll); 2) Исходный код мода для Visual Studio 2022 Community (C++). Если Вы столкнулись с какой-либо проблемой, багом или у Вас возникли вопросы, то пишите в данной теме.
  4. [Мод] Улучшение характеристик персонажа зажатием левой кнопки мыши Модификация добавляет в клиент игры возможность автоматической прокачки характеристик персонажа путем зажатия левой кнопки мыши на кнопке "+" рядом с соответствующей характеристикой на форме "Персонаж". Мод по мотивам темы от @Graf'а: Информация о модификации Название: pkodev.mod.statsclicker; Версия: 1.0; Автор: V3ct0r; Тип: для клиента (Game.exe); Поддерживаемые исполняемые .exe файлы: GAME_13X_0, GAME_13X_1, GAME_13X_2, GAME_13X_3, GAME_13X_4 и GAME_13X_5. Установка модификации 1. Установите систему загрузки модов pkodev.mod.loader, если она не была установлена ранее. 2. Поместите файл DLL-библиотеки мода pkodev.mod.statsclicker.client.13x_{ID}.dll для Вашей версии Game.exe в папку mods игрового клиента. 3. Модификация установлена! Скачать 1) Бинарные файлы модификации для клиента (.dll); 2) Репозиторий на GitHub с исходным кодом модификации для Visual Studio 2022 Community на языке C++; 3) Система загрузки модов pkodev.mod.loader. Если Вы столкнулись с какой-либо проблемой, багом или у Вас возникли вопросы, то пишите в данной теме.
  5. [Мод] Расширение GateServer для сервера "оффлайн" ларьков (StallServer) Данная модификация GateServer предназначена для определения IP-адресов клиентов, которые находятся за сервером "оффлайн" ларьков (StallServer). Поскольку StallServer по своей сути является прокси-сервером, через который клиент (Game) подключается к игровому серверу (GateServer), то последний не будет "видеть" реальный IP-адрес клиента, а в логах и базе данных у всех игроков будет одинаковый IP-адрес StallServer (например, 127.0.0.1 если GateServer и StallServer запущены на одной машине). Для решения этой проблемы StallServer дописывает IP-адрес клиента в логин-пакет, что требует модификации GateServer для чтения IP-адреса из пакета и его привязки к клиенту. Требования Установленный Загрузчик модов для сервера и клиента (PKOdev.NET mod loader). Информация о моде Название: pkodev.mod.stallip; Версия: 1.0; Автор: V3ct0r; Тип: для сервера (GateServer.exe); Поддерживаемые исполняемые .exe файлы: GATESERVER_138. Установка Поместите файл DLL-библиотеки мода "pkodev.mod.stallip.gate.138.dll" в папку "mods" GateServer.exe. Скачать 1) Бинарные файлы мода (.dll); 2) Исходный код мода для Visual Studio 2019 Community (C++). Если Вы столкнулись с какой-либо проблемой, багом или у Вас возникли вопросы, то пишите в данной теме.
  6. Система "оффлайн" ларьков Одним из игровых аспектов игры является торговля между персонажами посредством особых ларьков (лавок), которые могут открывать игроки изучив специальное умение. Игрок выставляет свои предметы за определенную цену, а остальные игроки могут покупать их. Однако, для такой торговли игрок должен находиться в игре, то есть быть подключенным к серверу, что вынуждает его оставлять свой компьютер постоянно включенным и держать игровой клиент свернутым. Это очень неудобно, поэтому была придумана система "оффлайн" ларьков, которая позволяет игрокам отключаться от сервера и при этом оставаться торговать в ларьках. Возможно несколько способов реализации такой системы, но наиболее распространена система "оффлайн" ларьков через прокси-сервер: 1) Игровой клиент (Game.exe) подключается к прокси-серверу; 2) Прокси-сервер, в свою очередь, открывает соединение с GateServer.exe; 3) Далее, прокси-сервер передает все пакеты между Game.exe и GateServer.exe, при этом анализируя их; 4) Когда игрок открывает торговый ларек, прокси-сервер фиксирует это (GateServer.exe отправил Game.exe пакет успешного открытия ларька); 5) Если игрок отключается от сервера будучи в торговом ларьке, то прокси-сервер закрывает соединение с Game.exe, но при этом сохраняет соединение с GateServer.exe и начинает имитировать Game.exe. Таким образом, GateServer.exe не подозревает о факте отключения Game.exe и персонаж игрока остается торговать в ларьке на сервере. Game.exe | Game.exe | <---------> pkodev.stallserver.exe <---------> GateServer.exe Game.exe | В данной теме обсуждается разработка такого прокси-сервера - PKOdev.NET Stall Server. Внимание! Сервер находится на стадии разработки и не предназначен для применения в "продакшене". Это означает что приложение полностью не протестировано и может содержать ошибки, баги и критические уязвимости. Возможности 1) Система оффлайн ларьков; 2) Ограничение количества оффлайн ларьков с одного IP-адреса; 3) Ограничение времени торговли в оффлайн-ларьке; 4) Автоматическое отключение аккаунта, торгующего в оффлайн ларьке, при подключении игрока с использованием того же аккаунта; 5) Оповещение игроков в чат о том, что персонаж находится в оффлайн ларьке и в данный момент не в сети (при обращении в ЛС); 6) Исправление SQL-инъекций в пакетах авторизации и создания (смены) секретного кода; 7) Установка максимального числа подключений к серверу с одного IP-адреса и интервала между подключениями. To-do: 1) Перевод комментариев в файлах Server.h and Server.cpp на английский язык; 2) Исправление падения сервера при обработке пакетов от клиента; 3) Исправление падения сервера при запуске, когда локальный порт занят; 4) Исправление зависания моста при блокировке пакета при включенном шифровании (спасибо @small666 за обнаруженный баг); 5) Синхронизация между потоками при обработке пакетов; 6) Закрытие оффлайн ларька, если все предметы проданы; 7) Модификация GateServer.exe для определения IP-адресов клиентов, которые находятся за сервером оффлайн ларьков. В данный момент в логах и базе данных IP-адреса всех клиентов будут записываться как 127.0.0.1 (если GateServer.exe и pkodev.stallserver.exe запущены на одной машине). 8 ) Совместимость с исходным кодом Corsairs Online (CO). Сборка и запуск 1) Выполните клонирование репозитория с проектом сервера к себе на диск (ссылка будет ниже); 2) Откройте файл решения pkodev.stallserver.sln в Visual Studio 2022 Community; 3) Соберите решение. Исполняемые файлы сервера появятся в папке bin; 4) Поместите конфигурационный файл pkodev.stallserver.cfg из папки cfg в одну директорию с исполняемым файлом сервера pkodev.stallserver.exe; 5) Настройте конфигурационный файл pkodev.stallserver.cfg по своему усмотрению (файл хорошо прокомментирован); 6) Для подключения игрового клиента (Game.exe) к серверу оффлайн ларьков нужно установить мод pkodev.mod.stallserver; 7) Для подключения сервера оффлайн ларьков к GateServer.exe, последний должен быть без каких-либо модификаций ("чистым"), например, из сборки PKO 1.38; 8 ) Запустите исполняемый файл сервера оффлайн ларьков pkodev.stallserver.exe. Репозиторий Git https://github.com/V3ct0r1024/pkodev.stallserver
  7. [Новость] Исходные коды модов были перенесены на GitHub Исходные коды всех модов за моим авторством из раздела "Моды для клиента и сервера (PKOdev.NET mod loader)" теперь можно найти в соответствующих репозиториях на GitHub. Там же можно скачать последние бинарные релизы модов в виде .dll-библиотек, а также все необходимые ресурсы для их работы: .cfg-файлы настроек, скрипты, текстуры и другие файлы. Ранее моды хранились в облачном хранилище Google Диск, что не очень удобно для подобного рода проектов.
  8. Идеи для модов В данной теме обсуждаются идеи для создания новых модов, а так же для улучшения уже существующих.
  9. Баги В данной теме публикуются и обсуждаются баги, которые были обнаружены в тех или иных модах по результатам их тестирования и использования. 1. Изменение размера персонажей - Через неопределенное время увеличенная модель персонажа снова становится обычного размера (@Fomin). 2. Отображение времени отката ("кулдауна") умений - При телепортации или перезаходе в игру отображения времени отката умений исчезает (@Fomin). 3. Отображение координат под NPC - Иногда вместо имени персонажа игрока отображения название случайного NPC (@dragontechi). 4. 60 кадров в секунду (60 FPS) - После установки мода частота кадров не изменяется (@dragontechi, @squaller). 5. Отключение проверки пароля при входе во внутриигровой Интернет-магазин - В магазине не отображается количество кристаллов на счете (@Tera). 6. Редактирование лимитов .txt таблиц - При изменении лимита для skillinfo.txt у GameServer.exe появляется неопределенное поведение. Например, у входа в Аргент спавнятся одни Сонные улитки (@Greaux). 7. Отображение уровня предметов на иконках ("умные иконки") - Клиент закрывается с версией мода для Game.exe GAME_13X_1 (@small666). Обновлено 03.03.2022 Благодарю всех за обратную связь и прошу рассказывать о всех найденных багах в этой теме, либо непосредственно в темах с модами. При публикации отчета о баге напишите следующую информацию: 1) Название мода; 2) Описание бага; 3) ID версии Вашего .exe файла (GAME_13X_0 ... GAME_13X_5, GAMESERVER_136, GAMESERVER_138); 4) Есть ли в .exe файле сторонние модификации и патчи? 5) Какие еще моды PKOdev.NET mod loader установлены?
  10. [Мод] Выделение друзей и врагов цветом Данная модификация выделяет на экране дружественных и враждебных игроков: имена персонажей меняют цвет, а под персонажами отображаются цветные круги (см. скриншот выше). Если поблизости с персонажем игрока есть враждебные игроки, то рядом с аватаром персонажа отображается предупреждающая иконка: Персонажи считаются дружественными, если они: 1) Находятся в одном отряде; 2) Находятся в одной гильдии; 3) Находятся в одной фракции. Мод работает только на PvP-картах, которые указаны в настройках. Требования Установленный Загрузчик модов для сервера и клиента (PKOdev.NET mod loader). Информация о моде Название: pkodev.mod.enemy; Версия: 1.0; Автор: V3ct0r; Тип: для клиента (Game.exe); Поддерживаемые исполняемые .exe файлы: GAME_13X_0, GAME_13X_1, GAME_13X_2, GAME_13X_3, GAME_13X_4 и GAME_13X_5. Установка 1) В директории "mods" Вашего клиента создайте папку "pkodev.mod.enemy"; 2) Поместите в неё файл DLL-библиотеки мода "pkodev.mod.enemy.client.13x_<x>.dll" для Вашей версии Game.exe. 3) Поместите в неё файл настроек мода "pkodev.mod.enemy.cfg" и настройте его по своему усмотрению: // pkodev.mod.enemy settings file // (c) V3ct0r from PKOdev.NET // 02/16/2022 [show] main_cha = true // Выделять ли персонажа игрока как дружественного? colored_name = true // Выделять ли имена персонажей цветом? colored_circle = true // Отображать ли цветные круги под персонажами? [color] enemy_color = FFFF0000 // Цвет имени враждебного персонажа (в шестнадцатеричной форме: FFRRGGBB) friend_color = FF00FF00 // Цвет имени дружественного персонажа (в шестнадцатеричной форме: FFRRGGBB) [icon] warning_show = true // Отображать ли предупреждающую иконку когда рядом враги? warning_x = 208 // Координата X иконки на экране warning_y = 16 // Координата Y иконки на экране [map] maps = garner,magicsea,darkblue // Карты на которых работает мод 4) В директории "texture" игрового клиента создайте папку "mods", а в ней подпапку "pkodev.mod.enemy". Поместите в данную подпапку иконку "warning.png" из архива с модом. Вы можете заменить эту иконку на любую другую с тем с же именем, размерами 32 на 32 пикселя и в формате .png. Скачать 1) Бинарные файлы мода (.dll); 2) Исходный код мода для Visual Studio 2019 Community (C++). Если Вы столкнулись с какой-либо проблемой, багом или у Вас возникли вопросы, то пишите в данной теме.
  11. [Мод] Полная карта местности для региона Как известно, полную карту имеют только основные регионы (Аскарон, Магический океан и Великий синий океан). Когда игрок нажимает кнопку "Карта" под миникартой, чтобы открыть полную карту местности, клиент отправляет серверу пакет с соответствующим запросом. Сервер читает этот пакет, решает, имеет ли регион, в котором в данный момент находится игрок, полную карту, и отправляет ответ клиенту. Если ответ "положительный", то клиент открывает игроку большую карту. Если "отрицательный", то игрок получает в систему сообщение "Эта местность не имеет полной карты": Данный мод позволяет добавлять полные карты местности для любого региона: Требования Установленный Загрузчик модов для сервера и клиента (PKOdev.NET mod loader). Информация о моде Название: pkodev.mod.fullmap; Версия: 1.0; Автор: V3ct0r; Тип: для сервера (GameServer.exe); Поддерживаемые исполняемые .exe файлы: GAMESERVER_136, GAMESERVER_138. Установка 1) В директории "mods" Вашего GameServer создайте папку "pkodev.mod.fullmap"; 2) Поместите в неё файл DLL-библиотеки мода "pkodev.mod.fullmap.server.<x>.dll" для Вашей версии Game.exe; 3) Поместите в неё файл настроек мода "pkodev.mod.fullmap.cfg" и запишите в него список названий карт, для которых необходимо добавить полную карту местности. Название каждой карты записывается с новой строки: darkswamp garner2 puzzleworld puzzleworld2 Скачать 1) Бинарные файлы мода (.dll); 2) Исходный код мода для Visual Studio 2019 Community (C++). Если Вы столкнулись с какой-либо проблемой, багом или у Вас возникли вопросы, то пишите в данной теме.
  12. [Мод] Эффект полета для крыльев Данная модификация для клиента позволяет добавлять к любым Крыльям (предметы с типом 44) эффект полета, аналогичный эффекту Крыльев перерождения. Информация о модификации Название: pkodev.mod.wings; Версия: 1.1; Автор: V3ct0r; Тип: для клиента (Game.exe); Поддерживаемые исполняемые .exe файлы: GAME_13X_0, GAME_13X_1, GAME_13X_2, GAME_13X_3, GAME_13X_4 и GAME_13X_5. Установка модификации 1. Установите систему загрузки модов pkodev.mod.loader, если она не была установлена ранее. 2. Поместите файл DLL-библиотеки мода pkodev.mod.wings.client.13x_{ID}.dll для Вашей версии Game.exe и файл настроек мода pkodev.mod.wings.cfg в папку mods\pkodev.mod.wings игрового клиента. 3. Откройте файл настроек мода pkodev.mod.wings.cfg и запишите в него список ID крыльев, к которым необходимо применить эффект полета. Каждый ID записывается с новой строки, например: 935 936 937 В результате эффект полета будет применен к Эльфийским крыльям, Крыльям бабочки и Ангельским крыльям соответственно. 4. Установка модификации завершена! Запустите игровой клиент и убедитесь, что модификация работает. Скачать 1) Бинарные файлы модификации для клиента (.dll); 2) Репозиторий на GitHub с исходным кодом модификации для Visual Studio 2022 Community на языке C++. 3) Система загрузки модов pkodev.mod.loader. Если Вы столкнулись с какой-либо проблемой, багом или у Вас возникли вопросы, то пишите в данной теме.
  13. [Мод] 60 кадров в секунду (60 FPS) Данный мод увеличивает скорость отрисовки графики игровым клиентом с 30 до 60 кадров в секунду. У мода есть несколько проблем: 1) При быстром беге персонажа игрока может отбрасывать назад; 2) При быстром беге могут не успевать прогружаться карта, NPC, монстры и игроки; 3) Анимации персонажей и объектов проигрываются слишком быстро. Требования Установленный Загрузчик модов для сервера и клиента (PKOdev.NET mod loader). Информация о моде Название: pkodev.mod.60fps; Версия: 1.0; Автор: V3ct0r, BotPRO; Тип: для клиента (Game.exe); Поддерживаемые исполняемые .exe файлы: GAME_13X_0, GAME_13X_1, GAME_13X_2, GAME_13X_3, GAME_13X_4, GAME_13X_5. Установка 1) В директории "mods" игрового клиента создайте папку "pkodev.mod.60fps"; 2) Поместите файл DLL-библиотеки мода "pkodev.mod.60fps.client.13x_<ID>.dll" для Вашей версии Game.exe в папку "mods\pkodev.mod.60fps" игрового клиента; 3) Поместите файл DLL-библиотеки мода "pkodev.mod.60fps.impl_<ID>.dll" для Вашей версии Game.exe в папку "mods\pkodev.mod.60fps\impl" игрового клиента. Скачать 1) Бинарные файлы мода (.dll); 2) Исходный код мода для Visual Studio 2019 Community (C++). Если Вы столкнулись с какой-либо проблемой, багом или у Вас возникли вопросы, то пишите в данной теме.
  14. [Мод] Исправление сброса профессии персонажей при переподключении к серверу ("слёт профессии") Некоторые администраторы сталкиваются с проблемой, когда получивший профессию персонаж после перезахода в игру снова становится "Новичком", т.е. происходит так называемый "слет" профессии. Данный мод исправляет этот баг. Требования Установленный Загрузчик модов для сервера и клиента (PKOdev.NET mod loader). Информация о моде Название: pkodev.mod.jobfix; Версия: 1.0; Автор: V3ct0r; Тип: для сервера (GameServer.exe); Поддерживаемые исполняемые .exe файлы: GAMESERVER_136 и GAMESERVER_138. Установка В директории "mods" Вашего GameServer создайте папку "pkodev.mod.jobfix" и поместите в неё файл DLL-библиотеки мода "pkodev.mod.jobfix.server.<x>_<l>.dll" для Вашей версии GameServer.exe, где <x> - версия GameServer.exe (136 или 138), а <l> - язык профессий (rus или eng). Скачать 1) Бинарные файлы мода (.dll); 2) Исходный код мода для Visual Studio 2019 Community (C++). Если Вы столкнулись с какой-либо проблемой, багом или у Вас возникли вопросы, то пишите в данной теме.
  15. [Мод] Очистка чатов Мод позволяет администраторам игрового сервера удалять все сообщения в чатах у игроков (местный, мир, торг, отряд, гильдия, ЛС, лагерь). Для этого на стороне сервера для GameServer реализована LUA-функция ClearChat(role), в которую передается дескриптор персонажа, которым управляет администратор. Таким образом, можно, к примеру, реализовать GM-команду, которая будет очищать чаты (при наличии функций HandleChat() и GetGmLv() в GameServer.exe). function HandleChat(role, msg) if (msg == "&clearchat") then if (GetGmLv(role) == 99) then ClearChat(role) else SystemNotice(role, "Not enough access!") end return 0 end return 1 end Недостатком мода является то, что он удаляет сразу все чаты без возможности указания конкретных каналов. Т.е. вместе с общими каналами (мир, торг, местный) будут так же очищены и каналы с сообщениями в гильдию, отряд, лагерь и ЛС. Так же следует помнить, что игрок может удалить .dll библиотеку мода из клиента и чаты перестанут очищаться по команде от сервера. Требования Установленный Загрузчик модов для сервера и клиента (PKOdev.NET mod loader). Информация о моде Название: pkodev.mod.clearchat; Версия: 1.0; Автор: V3ct0r; Тип: для клиента (Game.exe); Поддерживаемые исполняемые .exe файлы: GAME_13X_0, GAME_13X_1, GAME_13X_2, GAME_13X_3, GAME_13X_4, GAME_13X_5. Установка Клиент: Поместите файл DLL-библиотеки мода "pkodev.mod.clearchat.client.13x_<ID>.dll" для Вашей версии Game.exe в папку "mods" игрового клиента. Сервер: 1) Создайте файл с названием "pkodev.mod.clearchat.lua" в следующей директории сервера: \GameServer\resource\script\calculate\mods 2) Запишите в него следующий код: -- Print a log print("Loading pkodev.mod.clearchat.lua") -- Clear all chats function ClearChat(role) -- Get moderator's name local name = GetChaDefaultName(TurnToCha(role)) -- Send system command Notice("{system:clearchat}") -- Send message to all players Notice(string.format("Chats have been cleared by moderator [%s]!", name)) end 3) Подключите файл "pkodev.mod.clearchat.lua" в начале файла SkillEffect.lua (\GameServer\resource\script\calculate) : dofile(GetResPath("script\\calculate\\mods\\pkodev.mod.clearchat.lua")) 4) Реализуйте сценарий работы функции ClearChat() для очистки чатов по Вашему усмотрению. Скачать 1) Бинарные файлы мода (.dll); 2) Исходный код мода для Visual Studio 2019 Community (C++). Если Вы столкнулись с какой-либо проблемой, багом или у Вас возникли вопросы, то пишите в данной теме.
  16. Цветные GM-сообщения (GM notice) Данный мод позволяет отправлять игрокам цветные GM-сообщения (см. скриншот выше) с помощью поля ввода в игровом клиента (ALT + P), либо с использованием функции GMNotice(). Чтобы сделать текст сообщения цветным, в самом начале сообщения необходимо прописать следующий код: {color:Цвет}Сообщение Цвет сообщения указывается в формате RGB в виде шестнадцатеричного числа (FFRRGGBB). Следующий пример выведет игрокам GM-сообщение "Hello PKOdev.NET" оранжевого цвета: {color:FFFF8000}Hello PKOdev.NET! Так же можно использовать функцию GMNotice(): GMNotice("{color:FFFF8000}Hello PKOdev.NET!") Требования Установленный Загрузчик модов для сервера и клиента (PKOdev.NET mod loader). Информация о моде Название: pkodev.mod.colorgmnotice; Версия: 1.0; Автор: V3ct0r; Тип: для клиента (Game.exe); Поддерживаемые исполняемые .exe файлы: GAME_13X_0, GAME_13X_1, GAME_13X_2, GAME_13X_3, GAME_13X_4, GAME_13X_5. Установка Поместите файл DLL-библиотеки мода "pkodev.mod.colorgmnotice.client.13x_<ID>.dll" для Вашей версии Game.exe в папку "mods" игрового клиента. Скачать 1) Бинарные файлы мода (.dll); 2) Исходный код мода для Visual Studio 2019 Community (C++). Если Вы столкнулись с какой-либо проблемой, багом или у Вас возникли вопросы, то пишите в данной теме.
  17. [Мод] Отключение проверки пароля при входе во внутриигровой Интернет-магазин При входе во внутриигровой Интернет-магазин предметов требуется ввести секретный код от аккаунта игрока. Только при верном секретном коде производится вход в магазин. Некоторые администраторы считают это не очень удобным, поэтому было принято решение разработать модификацию для клиента и сервера, которые позволят отключить проверку секретного кода. Требования Установленный Загрузчик модов для сервера и клиента (PKOdev.NET mod loader). Информация о моде Название: pkodev.mod.noigspwd; Версия: 1.0; Автор: V3ct0r; Тип: для сервера (GameServer.exe) и клиента (Game.exe); Поддерживаемые исполняемые .exe файлы: GAMESERVER_136, GAMESERVER_138, GAME_13X_0, GAME_13X_1, GAME_13X_2, GAME_13X_3, GAME_13X_4, GAME_13X_5. Установка 1) Поместите файл DLL-библиотеки мода "pkodev.mod.noigspwd.client.13x_<ID>.dll" для Вашей версии Game.exe в папку "mods" игрового клиента; 2) Поместите файл DLL-библиотеки мода "pkodev.mod.noigspwd.server.<ID>.dll" для Вашей версии GameServer.exe в папку "mods" GameServer. Скачать 1) Бинарные файлы мода (.dll); 2) Исходный код мода для Visual Studio 2019 Community (C++). Если Вы столкнулись с какой-либо проблемой, багом или у Вас возникли вопросы, то пишите в данной теме.
  18. [Мод] Отключение сообщений об ошибках при компиляции .txt-таблиц (table_bin) Данный мод отключает многочисленный вывод ошибок в диалоговом окне (MessageBox) при отсутствии некоторых .txt-таблиц в процессе их компиляции с помощью параметра запуска клиента table_bin. Требования Установленный Загрузчик модов для сервера и клиента (PKOdev.NET mod loader). Информация о моде Название: pkodev.mod.nomsgbin; Версия: 1.0; Автор: V3ct0r; Тип: для клиента (Game.exe); Поддерживаемые исполняемые .exe файлы: GAME_13X_0, GAME_13X_1, GAME_13X_2, GAME_13X_3, GAME_13X_4, GAME_13X_5. Установка Поместите файл DLL-библиотеки мода "pkodev.mod.nomsgbin.client.13x_<ID>.dll" для Вашей версии Game.exe в папку "mods" игрового клиента. Скачать 1) Бинарные файлы мода (.dll); 2) Исходный код мода для Visual Studio 2019 Community (C++). Если Вы столкнулись с какой-либо проблемой, багом или у Вас возникли вопросы, то пишите в данной теме.
  19. Шаблон проекта мода PKOdev.NET loader для Visual Studio 2019 Community Выкладываю шаблонный проект под Visual Studio 2019 Community, который предназначен для разработки модов для PKOdev.NET mod loader на языке программирования C++. Проект включает в себя 1) Структуру файлов (address.h, pointer.h, hook.h, structure.h, dllmain.cpp); В файл address.h записываются адреса импортируемых функций и объектов из .exe файла. В данном файле также определены пространства имен для соответствующих версий .exe файла, в пределах которых необходимо указать адреса для каждой версии исполняемого файла. Все адреса должны находится в пространстве имен address. namespace address { // Game.exe 2 (1252912474) namespace GAME_13X_2 { // void CHeadSay::Render(D3DXVECTOR3& pos) const unsigned int CHeadSay__Render = 0x00470770; } // Game.exe 4 (1585009030) namespace GAME_13X_4 { // void CHeadSay::Render(D3DXVECTOR3& pos) const unsigned int CHeadSay__Render = 0x004707D0; } } В файле pointer.h находятся указатели на импортируемые функции из .exe файла. Все указатели должны находиться в пространстве имен pointer. namespace pointer { // void CHeadSay::Render(D3DXVECTOR3& pos) typedef void(__thiscall* CHeadSay__Render__Ptr)(void*, D3DXVECTOR3&); CHeadSay__Render__Ptr CHeadSay__Render = (CHeadSay__Render__Ptr)(void*)(address::MOD_EXE_VERSION::CHeadSay__Render); } В файле hook.h находятся определения функций-перехватчиков оригинальных функций из .exe файла. Все перехватчики должны находиться в пространстве имен hook. namespace hook { // void CHeadSay::Render(D3DXVECTOR3& pos) void __fastcall CHeadSay__Render(void* This, void* NotUsed, D3DXVECTOR3& Pos); } В файле structure.h находятся различные структуры данных, необходимые для работы мода. // 3D vector structure struct D3DXVECTOR3 { float x; float y; float z; }; В файле dllmain.cpp находятся точка входа, реализация функций интерфейса загрузчика, реализация функций-перехватчиков и непосредственно код мода. 2) Интерфейс загрузчика модов (loader.h) и его реализацию. 3) Конфигурации сборки для всех поддерживаемых .exe файлов с соответствующими определениями препроцессора. 4) Библиотеку MS Detours для перехвата вызова функций в .exe файлах. DetourAttach(&(PVOID&)pkodev::pointer::CHeadSay__Render, pkodev::hook::CHeadSay__Render); Как настроить проект 1) Переименуйте файлы проекта (pkodev.mod.dummy) на название Вашего мода; 2) Удалите ненужные конфигурации сборки; 3) Для каждой конфигурации сборки укажите название выходной DLL-библиотеки мода (Target Name); 4) Для каждой конфигурации сборки укажите определения препроцессора MOD_NAME, MOD_AUTHOR и MOD_VERSION. Скачать Шаблон проекта мода для Visual Studio 2019 Community (C++).
  20. [Мод] Система контрактов Данная система представляет собой квест типа: "Охота на монстров", целью которого является добыча персонажем игрока некоторого количества определенных монстров. Игроку выдается специальный предмет - "Контракт", в котором указано на какого монстра и в каком количестве игроку предстоит охотиться. По мере охоты, в контракте обновляется текущий прогресс игрока. После добычи необходимого числа монстров контракт считается выполненным, и игрок может получить награду, использовав предмет "Контракта". Система состоит из двух частей: модификация pkodev.mod.loader для игрового клиента (Game.exe) и Lua-скрипт для игрового сервера (GameServer.exe). Модификация клиента необходима для визуализации заданных характеристик предмета в поле-подсказке для предмета "Контракта" при наведении на него курсора мыши. ID монстра-цели, количество добытых монстров и количество монстров, необходимых для завершения "Контракта", записываются в следующие характеристики предмета: ITEMATTR_VAL_STR, ITEMATTR_VAL_DEX и ITEMATTR_VAL_AGI соответственно. Задачей мода является отображение этих характеристик в понятном для игрока виде. Например, если ITEMATTR_VAL_STR = 103, ITEMATTR_VAL_DEX = 5, а ITEMATTR_VAL_AGI = 10, то игрок при наведении мыши на "Контракт" увидит следующую информацию: Охота: 'Лесной дух' x 10 Добыто: 5 / 10 Lua-скрипт для игрового сервера является ядром Системы контрактов, в котором содержатся настройки системы и логика её работы. Например, при добыче очередного монстра, скрипт будет искать в инвентаре персонажа подходящий активный "Контракт", и если такой предмет будет найден, то Система обновит его состояние. Важной настройкой скрипта является функция, которая необходима для выдачи награды после успешного завершения "Контракта" игроком. Некоторые особенности системы: 1) "Контракт" можно подобрать, выбросить, передать другому игроку, положить в банк или продать; 2) Если у игрока в инвентаре несколько "Контрактов" на охоту на одного и того же монстра, то при добыче данного монстра "Контракт" выбирается случайным образом; 3) Для получения награды после завершения "Контракта", игрок должен использовать предмет "Контракта", например, с помощью двойного клика мыши по нему. Если "Контракт" еще не завершен, то игрок увидит соответствующее сообщение в систему; 4) Состав и количество награды определяются администратором в специальной функции скрипта системы; 5) ID и тип предмета для "Контракта" должны быть уникальными и задаются администратором в настройках Системы. Тип предмета по умолчанию равен 99, ID предмета по умолчанию не определен. Информация о модификации Название: pkodev.mod.contract; Версия: 1.1; Автор: V3ct0r; Тип: для игрового клиента (Game.exe); Поддерживаемые исполняемые файлы (.exe): GAME_13X_0, GAME_13X_1, GAME_13X_2, GAME_13X_3, GAME_13X_4 и GAME_13X_5. Установка Системы контрактов Игровой сервер 1. Добавьте в файл GameServer\resource\ItemInfo.txt предмет для "Контракта". Для этого выберите подходящий ID (XXXX) и тип предмета (по умолчанию 99): XXXX Контракт n0184 10130005 0 0 0 0 0 00 99 0 0 0 0 0 1 1 1 1 1 1 0 -1 0 -1 0 0 -1 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0 10,10 0,0 0 0 0 0 0 0 0 0 0 ItemUse_PKOdevContract 0 0 0 0 0 0 После завершения Вы получите награду! где XXXX - любой незанятый ID. 2. Поместите Lua-скрипт pkodev.contract.lua в директорию GameServer\resource\script\calculate\mods (при необходимости создайте каталог mods). Примечание: Скрипт pkodev.contract.lua отправляет игрокам различные сообщения на английском языке. Вероятно, Вам будет необходимо перевести эти сообщения на русский язык. 3. Откройте файл pkodev.contract.lua и настройте его следующим образом: 3.1 В переменную item_id запишите ID предмета из ItemInfo.txt (XXXX): item_id = XXXX, 3.2 В функции CompletionCallback() запишите код, который будет выдавать игроку награду после выполнения "Контракта". По умолчанию функция выдает игроку 1,000 золотых монет, случайный предмет (Очищающий самоцвет x 1, или Самоцвет ярости x 2, или Кекс x 60, или Фея удачи x 1) и запускает фейерверк: CompletionCallback = function(role, item) -- Выдать 1,000 золотых монет AddMoney (role, 0, 1000) -- Список предметов local arr = { {id = 885, count = 1 }, -- Очищающий самоцвет x 1 {id = 863, count = 2 }, -- Самоцвет ярости x 2 {id = 1849, count = 60}, -- Кекс x 60 {id = 231, count = 1 } -- Фея удачи x 1 } -- Выдать случайный предмет local idx = math.random(1, table.getn(arr)) GiveItem(role, 0, arr[idx].id , arr[idx].count, 4) -- Запустить фейерверк PlayEffect(role, 361) end 3.3 Откройте файл GameServer\resource\script\calculate\SkillEffect.lua и в самом начале запишите строку: dofile(GetResPath("script\\calculate\\mods\\pkodev.contract.lua")) 4. Система контрактов была успешно установлена на Ваш сервер. Поздравляю! Также обратите внимание на реализацию скрипта Системы контрактов от @Angelix. Она более гибкая и продвинутая по сравнению с той, что предлагается выше. Описание скрипта и инструкцию по установке можно найти в соответствующей теме: Игровой клиент 1. Добавьте в файл Клиент\scripts\table\ItemInfo.txt предмет для "Контракта" (см. выше "Установка Системы контрактов" > "Игровой сервер" > пункт 1. Скомпилируйте ItemInfo.txt. 2. Добавьте в файл Клиент\scripts\table\StringSet.txt следующие строки, которые увидит игрок при наведении курсора мыши на предмет "Контракта": [1000] "(Выполнен)" [1001] "(Выполняется)" [1002] "Охота: '{0}' x {1}" [1003] "Добыто: {0} / {1}" Примечание 1: Если ID строк 1000 - 1003 уже заняты, то вместо них запишите свободные ID. Примечание 2: После добавления данных строк в файл StringSet.txt, удалите файл StringSet.bin, если он существует, иначе изменения не применятся. Примечание 3: В строке 1002 маркер {0} обозначает название монстра, а {1} - количество монстров, которое необходимо добыть. В строке 1003 маркер {0} обозначает число уже добытых монстров, маркер {1} по значению аналогичен строке 1002. 3. Установите систему загрузки модов pkodev.mod.loader, если она не была установлена ранее. 4. Поместите файл DLL-библиотеки мода pkodev.mod.contract.client.13x_{ID}.dll для Вашей версии Game.exe и файл настроек мода pkodev.mod.contract.json в папку mods\pkodev.mod.contract игрового клиента. 5. Откройте файл настроек мода pkodev.mod.contract.json и запишите в него следующие параметры по Вашему усмотрению: 1. itemType - тип предмета "Контракта", указанный в ItemInfo.txt. По умолчанию 99. 2. colorCompleted - Цвет метки "(Выполнен)" во всплывающей подсказке предмета "Контракта" в формате 0xAARRGGBB. По умолчанию 0xFF00FF00 (Зеленый). 3. colorActive - Цвет метки "(Выполняется)" во всплывающей подсказке предмета "Контракта" в формате 0xAARRGGBB. По умолчанию 0xFFFFA500 (Оранжевый). 4. STRING_001 - ID строки для метки "(Выполнен)" из файла StringSet.txt. По умолчанию 1000. 5. STRING_002 - ID строки для метки "(Выполняется)" из файла StringSet.txt. По умолчанию 1001. 6. STRING_003 - ID строки для метки "Охота: '{0}' x {1}" из файла StringSet.txt. По умолчанию 1002. 7. STRING_004 - ID строки для метки "Добыто: {0} / {1}" из файла StringSet.txt. По умолчанию 1003. Примечание: Данный файл можно не редактировать, если Вы использовали значения по умолчанию в файлах ItemInfo.txt и StringSet.txt. 6. Настройка клиента завершена! Создание "Контрактов" и их выдача игрокам "Контракты" создаются с помощью функции contract.create(), которая в качестве своих аргументов принимает дескриптор персонажа, которому выдается контракт, ID монстра, на которого игроку предстоит охотиться, и количество монстров, которое игрок должен добыть. В результате функция возвращает кортеж из трех элементов: флаг успеха, дескриптор созданного предмета и номер ячейки в инвентаре персонажа. Синтаксис: local <Результат (LUA_TRUE или LUA_FALSE)>, <Дескриптор предмета>, <Ячейка в инвентаре> = contract.create(<Дескриптор персонажа>, <ID монстра>, <Число монстров>) Пример: local ret, item, pos = contract.create(role, 103, 7) Синтаксис: local <Результат LUA_TRUE|LUA_FALSE>, <Дескриптор предмета>, <Ячейка предмета> = contract.create(<Дескриптор персонажа>, <ID монстра>, <Число монстров>) В результате будет создан "Контракт" на охоту на семерых Лесных духов, который появится в инвентаре персонажа role. В случае ошибки функция вернет в переменную ret значение LUA_FALSE и запишет лог в файл pkodev.contract.txt. Примечание: Выдачу "Контрактов" можно организовать, например, через специального NPC или другой предмет. Полезные ссылки 1) Lua-скрипт системы для игрового сервера; 2) ItemInfo.txt с примером предмета "Контракта"; 3) Строки для файла StringSet.txt; 4) Бинарные файлы модификации для клиента (.dll); 5) Файл с настройками модификации для клиента; 6) Репозиторий на GitHub с исходным кодом модификации для Visual Studio 2022 Community на языке C++; 7) Система загрузки модов pkodev.mod.loader. Если Вы столкнулись с какой-либо проблемой, багом или у Вас возникли вопросы, то пишите в данной теме.
  21. [Мод] Отображение времени отклика ("пинг") на форме выбора сервера Рядом с каждым сервером на форме выбора сервера отображается время его отклика ("пинг"). Требования Установленный Загрузчик модов для сервера и клиента (PKOdev.NET mod loader). Информация о моде Название: pkodev.mod.ping; Версия: 1.0; Автор: V3ct0r; Тип: для клиента (Game.exe); Поддерживаемые исполняемые .exe файлы: GAME_13X_0, GAME_13X_1, GAME_13X_2, GAME_13X_3, GAME_13X_4 и GAME_13X_5. Установка Поместите файл DLL-библиотеки мода "pkodev.mod.ping.client.13x_<ID>.dll" для Вашей версии Game.exe в папку "mods" игрового клиента. При необходимости настройте GUI-скрипты формы выбора сервера "frmServer" (файл "\scripts\lua\forms\login.clu"). Скачать 1) Бинарные файлы мода (.dll); 2) Исходный код мода для Visual Studio 2019 Community (C++). Если Вы столкнулись с какой-либо проблемой, багом или у Вас возникли вопросы, то пишите в данной теме.
  22. [Мод] Изменение размера персонажей Данный мод позволяет редактировать масштаб персонажей (см. скриншот выше). Требования Установленный Загрузчик модов для сервера и клиента (PKOdev.NET mod loader). Информация о моде Название: pkodev.mod.mobsize; Версия: 1.0; Авторы: @VItal13, V3ct0r; Тип: для клиента (Game.exe); Поддерживаемые исполняемые .exe файлы: GAME_13X_0, GAME_13X_1, GAME_13X_2, GAME_13X_3, GAME_13X_4 и GAME_13X_5. Установка 1) В директории "mods" Вашего клиента создайте папку "pkodev.mod.mobsize"; 2) Поместите в неё файл DLL-библиотеки мода "pkodev.mod.mobsize.client.13x_<x>.dll" для Вашей версии Game.exe. 3) Поместите в неё файл настроек мода "pkodev.mod.mobsize.cfg" и запишите в него список масштабов* персонажей в следующем формате: <ID монстра>{<Масштаб X>;<Масштаб Y>;<Масштаб Z>} Например, для "Лесного духа" ID 103: 103{2.5;2.5;2.5} * Каждый новый персонаж записывается с новой строки. Скачать 1) Бинарные файлы мода (.dll); 2) Исходный код мода для Visual Studio 2019 Community (C++). Если Вы столкнулись с какой-либо проблемой, багом или у Вас возникли вопросы, то пишите в данной теме.
  23. [Мод] Отображение названия предмета в аппарели В описании предмета-аппарели появляется название экипировки, которая в нем находится. Требования Установленный Загрузчик модов для сервера и клиента (PKOdev.NET mod loader). Информация о моде Название: pkodev.mod.apparel; Версия: 1.0; Автор: V3ct0r; Тип: для клиента (Game.exe); Поддерживаемые исполняемые .exe файлы: GAME_13X_0, GAME_13X_1, GAME_13X_2, GAME_13X_3, GAME_13X_4 и GAME_13X_5. Установка Поместите файл DLL-библиотеки мода "pkodev.mod.apparel.client.13x_<ID>.dll" для Вашей версии Game.exe в папку "mods" игрового клиента. Скачать 1) Бинарные файлы мода (.dll); 2) Исходный код мода для Visual Studio 2019 Community (C++). Если Вы столкнулись с какой-либо проблемой, багом или у Вас возникли вопросы, то пишите в данной теме.
  24. [Мод] Отображение уровня предметов на иконках ("умные иконки") На иконках определенных предметов появляется некоторая информация: 1) Для предметов со вставленными самоцветами отображается уровень "заточки"; 2) Для самоцветов отображается их уровень; 3) Для фей отображается их уровень; 4) Для аппарелей отображается надпись "App" (от англ. "Apparel"); Требования Установленный Загрузчик модов для сервера и клиента (PKOdev.NET mod loader). Информация о моде Название: pkodev.mod.itemlv; Версия: 1.0; Автор: V3ct0r; Тип: для клиента (Game.exe); Поддерживаемые исполняемые .exe файлы: GAME_13X_0, GAME_13X_1, GAME_13X_2, GAME_13X_3, GAME_13X_4 и GAME_13X_5. Установка Поместите файл DLL-библиотеки мода "pkodev.mod.itemlv.client.13x_<ID>.dll" для Вашей версии Game.exe в папку "mods" игрового клиента. Скачать 1) Бинарные файлы мода (.dll); 2) Исходный код мода для Visual Studio 2019 Community (C++). Если Вы столкнулись с какой-либо проблемой, багом или у Вас возникли вопросы, то пишите в данной теме.
  25. [Мод] Антибот Добавляет в игру антибот, который работал на официальных серверах игры. Механизм работы антибота похож на "капчу". В процессе игры, в определенные интервалы времени, игрок должен вводить появляющийся на экране код, состоящий из 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++). Если Вы столкнулись с какой-либо проблемой, багом или у Вас возникли вопросы, то пишите в данной теме.
×
×
  • Create New...