CalypsoToolz 451 Опубликовано 31 июля, 2013 (изменено) Брал недавно сборку лыжи и решил прикрутить выдачу бонусов за голос на топе, нашел на форуме готовый патч для ядра, но, видимо из-за каких либо изменений на л2топе, он у меня не работал. Делюсь рабочим л2топменеджером для l2jfreya (думаю и на остальных хрониках будет работать). \java\com\l2jserver\gameserver\GameServer.java Добавить импорт import com.l2jserver.gameserver.instancemanager.vote.L2TopManager; далее после AuctionManager.getInstance(); добавить строки printSection("L2Top"); L2TopManager.getInstance(); \java\com\l2jserver\Config.java после public static final String L2JMOD_CONFIG_FILE = "./config/l2jmods.properties"; добавить строку public static final String L2TOP_CONFIG_FILE = "./config/L2Top.properties"; далее после настроек фортов (Fortress) //-------------------------------------------------- // L2Top rewards system //-------------------------------------------------- public static boolean L2TOP_SERVICE_ENABLED; public static int L2TOP_INTERVAL; public static int L2TOP_CLEAN_DAY; public static int L2_TOP_REWARD_ID; public static int L2_TOP_REWARD_COUNT; public static String L2TOP_WEB_ADRESS; public static String L2TOP_SMS_ADRESS; public static String L2_TOP_SERVER_ADRES; public static String L2_TOP_SERVER_NAME; далее, например перед подобной строкой: // Load L2J Server Version L2Properties file (if exists) //L2Top try { L2Properties L2jL2TopSettings = new L2Properties(); is = new FileInputStream(new File(L2TOP_CONFIG_FILE)); L2jL2TopSettings.load(is); L2TOP_SERVICE_ENABLED = Boolean.parseBoolean(L2jL2TopSettings.getProperty("L2TopServiceEnable", "false")); L2TOP_INTERVAL = Integer.parseInt(L2jL2TopSettings.getProperty("L2TopInterval", "300000")); L2TOP_CLEAN_DAY = Integer.parseInt(L2jL2TopSettings.getProperty("L2TopCleanDays", "30")); L2_TOP_REWARD_ID = Integer.parseInt(L2jL2TopSettings.getProperty("L2TopRewardId", "57")); L2_TOP_REWARD_COUNT = Integer.parseInt(L2jL2TopSettings.getProperty("L2TopRewardCount", "1000")); L2TOP_WEB_ADRESS = L2jL2TopSettings.getProperty("L2TopWebAddress", ""); L2TOP_SMS_ADRESS = L2jL2TopSettings.getProperty("L2TopSmsAddress", ""); L2_TOP_SERVER_ADRES = L2jL2TopSettings.getProperty("L2TopServerAddress", ""); L2_TOP_SERVER_NAME = L2jL2TopSettings.getProperty("L2TopServerName", "Freya Project"); } catch (Exception e) { e.printStackTrace(); throw new Error("Failed to Load " + L2TOP_CONFIG_FILE + " File."); } Теперь нужно создать конфиг L2Top.properties и скопировать туда вот этот текст: #===============================================================# # L2Top: Автоматическая выдача награды за голосование # #===============================================================# # # Конектится к топу, получает список, # заносит в бд, выдает награду онлайн, без всяких нпсов, кнопок на сайте # без необходимости выходить\заходить чару. # Поддерживает русские ники. # Вкл/выкл сервис. # По умолчанию: True L2TopServiceEnable = True # Интервал коннекта к топу и обновления бд # По умолчанию: 5 минут L2TopInterval = 5 # ID награды выдаваемой за голосование L2TopRewardId = 4356 # Количество выдаваемой награды L2TopRewardCount = 1 # Дней до очистки списка проголосовавших # По умолчанию: 30 L2TopCleanDays = 30 # Адрес Вашего сервера (без http://) L2TopServerAddress = domen.ru # Список последних проголосовавших через web интерфейс L2TopWebAddress = http://l2top.ru/edit...stVotes&uid=Ваш ID_web&key=Ваш ключ # Список последних проголосовавших через sms # http://l2top.ru/edit...stVotes&uid=Ваш ID_sms&key=ключ L2TopSmsAddress = http://l2top.ru/edit...stVotes&uid=Ваш ID_sms&key=Ваш ключ # Название сервера (для уведомления игрока при получении бонуса) L2TopServerName = Имя сервера Сделаем запрос в базу сервера: CREATE TABLE `character_vote` (`date` bigint(14) NOT NULL DEFAULT '0',`id` int(10) NOT NULL DEFAULT '0',`nick` varchar(255) NOT NULL DEFAULT '''''',`multipler` int(9) NOT NULL DEFAULT '0',`has_reward` int(1) NOT NULL DEFAULT '0',PRIMARY KEY (`date`,`id`,`nick`,`multipler`)) ENGINE=MyISAM DEFAULT CHARSET=utf8; После выше описанного, по пути \java\com\l2jserver\gameserver\instancemanager\ создать папку vote и закинуть туда этот файл (полный путь получится таким \java\com\l2jserver\gameserver\instancemanager\vote\L2TopManager.java) Вроде бы ничего не пропустил) Кому нужно - заберет. PS. патч не сделал т.к. юзаю текстовый редактор) Изменено 31 июля, 2013 пользователем BymerOK 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты