Авторизация

Войдите, используя свой логин и пароль:

Форум » Lineage 2 "Java" » Серверная таверна =) » [Help][Core] (Привязка)
Форум » Lineage 2 "Java" » Серверная таверна =) » [Help][Core] (Привязка)
Модератор форума: BlesseNtumble  
Отправлено 19.02.2013 - 16:531
Пользователи
600 сообщений
Мужчина
Статус: Offline
Доброго времени суток smile
Помогите новичку снять привязку, если не трудно. Вроде тут она.



Это мы полностью удаляем? Или же заменяем как-то?






Добавлено (19.02.2013, 16:53)
---------------------------------------------
up

Ставьте +, а то помогать не буду больше...
Профиль Личное сообщение Дом. страница icq
66
Отправлено 21.02.2013 - 14:472
Пользователи
128 сообщений
Мужчина
Статус: Offline
в пакет хендлере еще на свиче авторизации стоит услловие с выводом System.exit(0)

case AUTHED:
if(!client.SESSION_OK) { // Проверяем простановку глобального флага Сессия в порядке
System.exit(0);
return null;
Профиль Личное сообщение Дом. страница icq
12
Отправлено 21.02.2013 - 17:073
Пользователи
600 сообщений
Мужчина
Статус: Offline
van2801, суть в том, что я не могу понять как мне ее переписать. И прошу помочь
Ставьте +, а то помогать не буду больше...
Профиль Личное сообщение Дом. страница icq
66
Отправлено 22.02.2013 - 16:474
Пользователи
128 сообщений
Мужчина
Статус: Offline
по сути именно "привязка" тут только под первым спойлером, остальное - какашки аля слив базы и т.д.

В классе World ты удаляеш импорт PlayersInWorld, то что под первым спойлером, и в методе init() всё кроме строки лога.
также в самом низу метод Prepare или что то такое тоже удаляем.

в пакет хендлере удаляем

if(!client.SESSION_OK) { // Проверяем простановку глобального флага Сессия в порядке
System.exit(0);
return null;

и в GameServer.java удаляем метод checklicense и вызов World.Prepare

Остальное вспоминать надо biggrin не помню уже, давно делал
Профиль Личное сообщение Дом. страница icq
12
Отправлено 22.02.2013 - 17:265
Пользователи
600 сообщений
Мужчина
Статус: Offline
van2801,
Цитата (van2801)
также в самом низу метод Prepare или что то такое тоже удаляем.
— van2801


Так он и есть в методе int().

Я делал так, не проканало =\

Цитата (van2801)
в пакет хендлере удаляем
— van2801


Так хендлеров много, где именно искать-то? smile

Добавлено (22.02.2013, 17:26)
---------------------------------------------

Цитата (van2801)
о сути именно "привязка" тут только под первым спойлером, остальное - какашки аля слив базы и т.д.
— van2801


А это да, прост я думал это беки =(
Ставьте +, а то помогать не буду больше...
Профиль Личное сообщение Дом. страница icq
66
Отправлено 22.02.2013 - 19:096
Пользователи
128 сообщений
Мужчина
Статус: Offline
GamePacketHandler он один, в папке network.

По поводу prepare:
Открываем model/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 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) + "].");
    
  }

Отсюда вырезаем всё кроме _log.info...

Дальше идем в самый низ.

Код
public static void prepare() {
   _players.run();
  }

Убираем!

И ищем где то в середине:
Код
    public static Player getPlayer(int objId)
  {
   return _players.get(objId);
  }


Заменяем на
Код

  public static Player getPlayer(int objId)
  {
   return GameObjectsStorage.getPlayer(objId);
  }


Убираем:
Код
    private static native void prepareWorld();


В World.java вроде всё.
Профиль Личное сообщение Дом. страница icq
12
Отправлено 23.02.2013 - 22:047
Пользователи
600 сообщений
Мужчина
Статус: Offline
van2801,
То ли лыжи не едут, то ли я в армии =\

Это же ошибка ИП?!



В пакете утилс, в GetIP, ничего не нужно изобретать?
Да и вообще в пакете утилс какие-то изменения должны же быть?

Вроде даже все ошибки исправил(ну он не мог найти методы, которые были удалены из World), но блин, такие дела =(
Ставьте +, а то помогать не буду больше...
Профиль Личное сообщение Дом. страница icq
66
Отправлено 23.02.2013 - 22:378
Пользователи
128 сообщений
Мужчина
Статус: Offline
В Gameserver.java удалить надо только метод CheckLicense и вызов World.prepare()

Добавлено (23.02.2013, 22:37)
---------------------------------------------
В ютилз вроде ничего. А по ошибке, возможно из за того что у тебя 2 ГСа

Профиль Личное сообщение Дом. страница icq
12
Отправлено 23.02.2013 - 22:569
Пользователи
600 сообщений
Мужчина
Статус: Offline
van2801, но в в Gameserver.java нету такого метода.
Ставьте +, а то помогать не буду больше...
Профиль Личное сообщение Дом. страница icq
66
Отправлено 23.02.2013 - 23:0710
Пользователи
128 сообщений
Мужчина
Статус: Offline
а да чек лиценз нет
Код

   for(int i = 0; i < Config.PORTS_GAME.length; i++)
   {
    _selectorThreads[i] = new SelectorThread<GameClient>(Config.SELECTOR_CONFIG, gph, gph, gph, null);
    _selectorThreads[i].openServerSocket(serverAddr, Config.PORTS_GAME[i]);
    _selectorThreads[i].start();
   }
   World.prepare();

   AuthServerCommunication.getInstance().start();
}


Вот отсюда World.prepare(); удалить
Профиль Личное сообщение Дом. страница icq
12
Отправлено 23.02.2013 - 23:0911
Пользователи
600 сообщений
Мужчина
Статус: Offline
van2801, Эт я сделал)
Но все-равно та ошибка вылетает
Ставьте +, а то помогать не буду больше...
Профиль Личное сообщение Дом. страница icq
66
Отправлено 23.02.2013 - 23:1112
Пользователи
128 сообщений
Мужчина
Статус: Offline
попробуй запускать с 1 зареганным ГСом
Профиль Личное сообщение Дом. страница icq
12
Отправлено 23.02.2013 - 23:2113
Пользователи
600 сообщений
Мужчина
Статус: Offline
van2801, тоже самое. Только я заметил что он их в БД не заносит
Ставьте +, а то помогать не буду больше...
Профиль Личное сообщение Дом. страница icq
66
Отправлено 23.02.2013 - 23:2314
Пользователи
128 сообщений
Мужчина
Статус: Offline
таблицу gameserver сначала empty потом заного 1 сервер зарегать и попробовать вкл
Профиль Личное сообщение Дом. страница icq
12
Отправлено 24.02.2013 - 15:2115
Пользователи
600 сообщений
Мужчина
Статус: Offline
Пле)
Не в ту бд смотрел)
Регает норм, но все-равно эта ошибка =\

Добавлено (24.02.2013, 15:20)
---------------------------------------------
van2801, во, получилось, все норм запустилось.
Но, теперь новая приколюха, когда я захожу в игру, то стоит мне сделать какое-либо действие, меня дисконнектит, а ГС ругается на то, что я отправляю слишком много неизвестных пакетов =\

Код

[18:18:30]  WARN Too many client unknown packets, connection closed : IN_GAME IP
: 91.228.31.115 Account: keni3111 Player : sad[268477072]

Добавлено (24.02.2013, 15:21)
---------------------------------------------
с меня пиво smile

Ставьте +, а то помогать не буду больше...
Профиль Личное сообщение Дом. страница icq
66
Форум » Lineage 2 "Java" » Серверная таверна =) » [Help][Core] (Привязка)
Поиск: