Попросили меня однажды "подпилить" aCis до определённого уровня.
Когда начал вникать в "чистоту" их кода, увы, не просто разочаровался а в некоторых моментах ужаснулся....
Не буду перечислять все "прелести" исхода, но 1-н совет сделаю.
Есть net.sf.l2j.gameserver.instancemanager.AutoSpawnManager
Если мы проследим его работу, то станет ясно, с каждым новым спавном того или иного НПС или моба мы получаем + в размер SpawnTable, а удаление предыдущего НПС или моба просто упущено.... Конечно если проект ре стартует каждый день, чего мой заказчик не хотел, то это можно и упустить, выделив под сервак +500 метров озы, но лучше просто заменить в net.sf.l2j.gameserver.instancemanager.AutoSpawnManager строку 482(npcInst.deleteMe() на
тем самым избавиться от кучи дубляжей в табле спавна.
И ещё куча всякого "кодоляпа" в коде, кому интересно, стучите в скайп, поделюсь фиксами...
Тему буду пополнять, т.к. работу до сих пор веду по данному заказу.
Когда начал вникать в "чистоту" их кода, увы, не просто разочаровался а в некоторых моментах ужаснулся....
Не буду перечислять все "прелести" исхода, но 1-н совет сделаю.
Есть net.sf.l2j.gameserver.instancemanager.AutoSpawnManager
Если мы проследим его работу, то станет ясно, с каждым новым спавном того или иного НПС или моба мы получаем + в размер SpawnTable, а удаление предыдущего НПС или моба просто упущено.... Конечно если проект ре стартует каждый день, чего мой заказчик не хотел, то это можно и упустить, выделив под сервак +500 метров озы, но лучше просто заменить в net.sf.l2j.gameserver.instancemanager.AutoSpawnManager строку 482(npcInst.deleteMe() на
Код:
SpawnTable.getInstance().deleteSpawn(npcInst.getSpawn(), false);
npcInst.deleteMe();
И ещё куча всякого "кодоляпа" в коде, кому интересно, стучите в скайп, поделюсь фиксами...
Тему буду пополнять, т.к. работу до сих пор веду по данному заказу.