А что сейчас происходит в L2JSF ?

Теги:
 

wZp

новичок
Для чего они там вставили Java Evolution и весь код перелопачивают?
Багов кучу наплодили.
Кто знает?
 

Murkt

Pythoneer

для "ускорения" :)
[team Їжачки - сумні падлюки]  

wZp

новичок
Для ускорения чего?
Тормозов? :)
 
+
-
edit
 

Balancer

администратор
★★★★★
Зуд в том месте, на котором сидят.

Javolution FastList перед ArrayList раза в два медленнее при добавлении элемента, но в полтора раза быстрее при итеративном проходе.

Не знаю, зачем им эта замена шила на мыло.

Я сейчас мучаюсь с кардинальной переработкой кода взаимной видимости итемов.

Вы знаете, что в L2J.SF каждый двигающийся NPC раз в секунду выполняет updateKnownObjects();

А эта функция два раза перебирает ВСЕ объекты региона и ВСЕХ (т.е. 1+8) регионов его окружающих?

Я пока не смог отказаться от полного перебора объектов вообще, это будет хорошая площадка для оптимизации, но, думается, в несколько раз число ненужных проходов снизил. Да и регион только текущий запрашивать нужно (информация об объектах соседних регионов теперь в каждом регионе хранится).

Правда, вчера ночью код сломался в том месте, которое не трогал - падает при инициализации SpawnTable. При чём без вской диагностики... Пытаюсь понять, что там такое.

code text
  1. ...
  2. HennaTreeTable: Loaded 3816 Henna Tree Templates.
  3. TeleportLocationTable: Loaded 220 Teleport Location Templates.
  4. LevelUpData: Loaded 58 Character Level Up Templates.
  5. Exception in thread "main" java.lang.NoClassDefFoundError
  6.         at net.sf.l2j.gameserver.GameServer.<init>(GameServer.java:280)
  7.         at net.sf.l2j.Server.main(Server.java:70)
  8.  
  9. Server terminated abnormaly
  10.  
  11.  
  12. server terminated
  13.  
  14. Для продолжения нажмите любую клавишу . . .


Вообще, кто-нибудь в курсе, из-за какого фига на Java получается нечто навроде "параллельной" инициализации классов? В выводе диагностика по их загрузке перемешана, сообщение о процессе работы инициализации предыдущего класса может появится уже после аналогичного последующего. Вполне м.б. что проблема вылезает где-то тут.
… чтобы понять рекурсию, нужно сперва понять рекурсию …  

kuta

разработчик l2j-сервера
Я так понял для бысрого перебора кучи объектов :)
Помоему ефективнее передумать алгоритмы требующие перебора


Бал может смогу помочь ?
 
+
-
edit
 

Balancer

администратор
★★★★★
То, что я сейчас делаю, немножко эффективнее, но - не очень :D Главное, мой метод позволит оставлять меньше возможностей для утечек памяти.

Основные задачи такие:

1. Сервер должен уметь быстро выдать процессу список объектов, окружающих заданный объект в заданном круге.

2. Сервер должен при добавлении/удалении объекта уметь сообщать об этом окружающим объектам.
… чтобы понять рекурсию, нужно сперва понять рекурсию …  

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru