ValiiLucifer 285 Опубликовано 12 января, 2016 Всем доброго времени суток ! Как убрать ограничение на онлайн в source First-team God ? или как поменять лицензию чтоб было на больше онлайн Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
fnat1c 9 Опубликовано 12 января, 2016 Только через исходник (или ломать gameserver.jar) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ValiiLucifer 285 Опубликовано 12 января, 2016 Только через исходник (или ломать gameserver.jar) Исходы есть Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
DaNzel 157 Опубликовано 12 января, 2016 Сборка какая? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ValiiLucifer 285 Опубликовано 12 января, 2016 Вот сами исходы СКАЧАТЬ Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ValiiLucifer 285 Опубликовано 12 января, 2016 без этого файла вообще не запускается license.lic Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
masone 298 Опубликовано 12 января, 2016 (изменено) java\l2ft\gameserver\model\World.java toctrl+g 78 find public static void init() { try { String libname = "l2ftlic"; if(System.getProperty("os.arch").contains("64")) libname+="64"; System.loadLibrary(libname); prepareWorld(); } catch(Error e) { System.exit(0); return; } _log.info("L2World: Creating regions: [" + (REGIONS_X + 1) + "][" + (REGIONS_Y + 1) + "][" + (REGIONS_Z + 1) + "]."); } change to: public static void init() { prepareWorld(); _log.info("L2World: Creating regions: [" + (REGIONS_X + 1) + "][" + (REGIONS_Y + 1) + "][" + (REGIONS_Z + 1) + "]."); } Не тестил,пробуйте Изменено 12 января, 2016 пользователем masone Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
fnat1c 9 Опубликовано 12 января, 2016 (изменено) Обычно привязка стоит тут \java\ISXODNIK\gameserver\GameServer.java java\ISXONIK\gameserver\model\World.java Могу и ошибаться, т.к. не качал твой исходник Изменено 12 января, 2016 пользователем fnat1c Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ValiiLucifer 285 Опубликовано 12 января, 2016 toctrl+g 78 find public static void init() { try { String libname = "l2ftlic"; if(System.getProperty("os.arch").contains("64")) libname+="64"; System.loadLibrary(libname); prepareWorld(); } catch(Error e) { System.exit(0); return; } _log.info("L2World: Creating regions: [" + (REGIONS_X + 1) + "][" + (REGIONS_Y + 1) + "][" + (REGIONS_Z + 1) + "]."); } change to: public static void init() { prepareWorld(); _log.info("L2World: Creating regions: [" + (REGIONS_X + 1) + "][" + (REGIONS_Y + 1) + "][" + (REGIONS_Z + 1) + "]."); } Так заменить ? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
masone 298 Опубликовано 12 января, 2016 toctrl+g 78 find public static void init() { try { String libname = "l2ftlic"; if(System.getProperty("os.arch").contains("64")) libname+="64"; System.loadLibrary(libname); prepareWorld(); } catch(Error e) { System.exit(0); return; } _log.info("L2World: Creating regions: [" + (REGIONS_X + 1) + "][" + (REGIONS_Y + 1) + "][" + (REGIONS_Z + 1) + "]."); } change to: public static void init() { prepareWorld(); _log.info("L2World: Creating regions: [" + (REGIONS_X + 1) + "][" + (REGIONS_Y + 1) + "][" + (REGIONS_Z + 1) + "]."); } Так заменить ? ну да, Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ValiiLucifer 285 Опубликовано 12 января, 2016 ну да, Ошибки выдает Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
masone 298 Опубликовано 12 января, 2016 Ошибки выдает какие? ) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ValiiLucifer 285 Опубликовано 12 января, 2016 какие? ) compile-core.rar Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ValiiLucifer 285 Опубликовано 12 января, 2016 package l2ft; import l2ft.gameserver.model.GameObject; import l2ft.gameserver.model.Player; import l2ft.gameserver.model.PlayersInWorld; import l2ft.gameserver.serverpackets.LeaveWorld; import l2ft.gameserver.model.World; import l2ft.gameserver.network.GameClient; import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class TestLicense implements PlayersInWorld { private static final Logger _log = LoggerFactory.getLogger(TestLicense.class); private Player[] _players = new Player[10000]; public TestLicense() { World._players = this; GameClient.SESSION_OK = true; } @Override public void removePlayer(GameObject player) { for(int i = 0; i < _players.length;i++) if(_players[i]==player) { _players[i] = null; break; } } @Override public void run() { _log.info("================= License Info ===================="); _log.info("License: ................ for Brabusx!"); _log.info("Maximum Online: .............. 10000"); _log.info("Web Developer : ........ www.first-team.ru"); _log.info("==================================================="); } @Override public void storePlayer(GameObject player) { for(int i = 0; i < _players.length;i++) { if(_players[i] == null) { _players[i] = (Player)player; return; } } ((Player)player).getNetConnection().close(LeaveWorld.STATIC); } @Override public Player get(int objId) { for(int i = 0; i < _players.length;i++) { if(_players[i]!=null && _players[i].getObjectId() == objId) return _players[i]; } return null; } } А этот как работает ? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ValiiLucifer 285 Опубликовано 12 января, 2016 Может его куда то нужно закинуть и скомпилировать ? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ValiiLucifer 285 Опубликовано 12 января, 2016 ???????? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
gawric 49 Опубликовано 12 января, 2016 (изменено) public class EchoAnswer extends L2GameServerPacket <---------- кажется вот здесь находится твоя лицензия Зашел в Config нашел там считывающий конфиг и записывающий в переменную USER_NAME, поиском нашел использование в одном месте данной переменной. Config.USER_NAME. Похоже данный скрипт что-то отправляет на эхо сервер. Если конечно я не ошибаюсь Так же видимо продолжение public class EchoRequest extends L2GameClientPacket package l2ft.gameserver.serverpackets; import l2ft.commons.util.Rnd; import l2ft.gameserver.Config; public class EchoAnswer extends L2GameServerPacket { private byte [] _challenge; public EchoAnswer(byte [] challenge) { _challenge = challenge; } @Override protected void writeImpl() { byte b [] = new byte[_challenge.length]; byte [] hash = String.format("%x%x", Config.EXTERNAL_HOSTNAME.hashCode(),Config.USER_NAME.hashCode()).getBytes(); if(_challenge.length != hash.length) Rnd.nextBytes(; else for(int i=0;i<_challenge.length;i++) b[i] = (byte)(hash[i] ^ _challenge[i]); writeB(; } } Изменено 12 января, 2016 пользователем gawric Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ValiiLucifer 285 Опубликовано 12 января, 2016 package l2ft; import l2ft.gameserver.model.GameObject; import l2ft.gameserver.model.Player; import l2ft.gameserver.model.PlayersInWorld; import l2ft.gameserver.serverpackets.LeaveWorld; import l2ft.gameserver.model.World; import l2ft.gameserver.network.GameClient; import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class TestLicense implements PlayersInWorld { private static final Logger _log = LoggerFactory.getLogger(TestLicense.class); private Player[] _players = new Player[10000]; public TestLicense() { World._players = this; GameClient.SESSION_OK = true; } @Override public void removePlayer(GameObject player) { for(int i = 0; i < _players.length;i++) if(_players[i]==player) { _players[i] = null; break; } } @Override public void run() { _log.info("================= License Info ===================="); _log.info("License: ................ for Brabusx!"); _log.info("Maximum Online: .............. 10000"); _log.info("Web Developer : ........ www.first-team.ru"); _log.info("==================================================="); } @Override public void storePlayer(GameObject player) { for(int i = 0; i < _players.length;i++) { if(_players[i] == null) { _players[i] = (Player)player; return; } } ((Player)player).getNetConnection().close(LeaveWorld.STATIC); } @Override public Player get(int objId) { for(int i = 0; i < _players.length;i++) { if(_players[i]!=null && _players[i].getObjectId() == objId) return _players[i]; } return null; } } А этот как работает ? А это что за лицензия ? и для чего она вообще ? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
gawric 49 Опубликовано 12 января, 2016 (изменено) не знаю, я даже в исходниках такого класса не нашел. В Архиве, что скинули в этой теме Изменено 12 января, 2016 пользователем gawric Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ValiiLucifer 285 Опубликовано 12 января, 2016 (изменено) не знаю, я даже в исходниках такого класса не нашел. В Архиве, что скинули в этой теме Там в архиве этот файл был TestLicense.java,а что с ним делать я вообще хз Изменено 12 января, 2016 пользователем avangard Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
gawric 49 Опубликовано 12 января, 2016 нашел данный файл: world.java попробуй закоментировать: public static PlayersInWorld _players = new PlayersInWorld() { public void storePlayer(GameObject player) { System.exit(0); } public void removePlayer(GameObject player) { System.exit(0); } public Player get(int objId) { return null; } @Override public void run() { System.exit(0); } }; public static void prepare() { _players.run(); } и все в классе TestLicense.java и еще 2 класса EchoRequest и EchoAnswer и интерфейс PlayersInWorld. У меня все компилируется, только не могу понять как эту всю дрянь соединить для теста. dist отдельно - gameserver отдельно при запуске ругается на нехватку gameserver Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ValiiLucifer 285 Опубликовано 12 января, 2016 нашел данный файл: world.java попробуй закоментировать: public static PlayersInWorld _players = new PlayersInWorld() { public void storePlayer(GameObject player) { System.exit(0); } public void removePlayer(GameObject player) { System.exit(0); } public Player get(int objId) { return null; } @Override public void run() { System.exit(0); } }; public static void prepare() { _players.run(); } и все в классе TestLicense.java и еще 2 класса EchoRequest и EchoAnswer и интерфейс PlayersInWorld. У меня все компилируется, только не могу понять как эту всю дрянь соединить для теста. dist отдельно - gameserver отдельно при запуске ругается на нехватку gameserver public static void prepare() { _players.run(); } Добавил эти строки,фиг знает почему gameserver.jar не появляется Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ValiiLucifer 285 Опубликовано 12 января, 2016 Без этих все нормально Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ValiiLucifer 285 Опубликовано 12 января, 2016 нашел данный файл: world.java попробуй закоментировать: public static PlayersInWorld _players = new PlayersInWorld() { public void storePlayer(GameObject player) { System.exit(0); } public void removePlayer(GameObject player) { System.exit(0); } public Player get(int objId) { return null; } @Override public void run() { System.exit(0); } }; public static void prepare() { _players.run(); } и все в классе TestLicense.java и еще 2 класса EchoRequest и EchoAnswer и интерфейс PlayersInWorld. У меня все компилируется, только не могу понять как эту всю дрянь соединить для теста. dist отдельно - gameserver отдельно при запуске ругается на нехватку gameserver Может TestLicense.java как типа Crypt использовать нужно ? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ValiiLucifer 285 Опубликовано 13 января, 2016 Не кто не знает как ее отвязать ? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты