NuibieGuid баф с 1 lvl - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Сообщество Календарь
Вернуться   Форум администраторов игровых серверов > MMO > Lineage II > Работа со скриптами

Работа со скриптами Помощь в редактировании и написании квестов к Java серверам, а так же эвентов.

Ответ
Опции темы
Непрочитано 07.09.2016, 17:54   #1
Пользователь

Автор темы (Топик Стартер) NuibieGuid баф с 1 lvl

Не судите строго. только начал ковырять линеевский сервер
Сервер HF LRServ
(сборку даже не знаю где посмотреть)

в общем хотел изменить Нубо бафера чтобы она бафал с 1 лвл. единственный скрипт где я нашел подобное это SuppurtMagic
поменял условия и сделал с 1 по 76 лвл. компильнул, вбросил.
запускаю сервер, коннектюсь. никакой реакции , как бафал с 6 так и бафает. перезапуск не помогает. потом просто чтоб без условий чтонибудь бафнул ... тоже никакой реакции. перерыл ядро поиском по содержимому, SuppurtMagic единственный класс который содержит то что надо, но при изменении реакции никакой, будто гдето в другом месте нужный класс, или закэширован старый код (хотя в яве такого вроде нет).
прилагаю класс
Код:
package services;

import java.util.ArrayList;
import java.util.List;
import l2p.gameserver.model.Player;
import l2p.gameserver.model.base.ClassId;
import l2p.gameserver.model.base.Race;
import l2p.gameserver.model.instances.NpcInstance;
import l2p.gameserver.serverpackets.L2GameServerPacket;
import l2p.gameserver.serverpackets.MagicSkillUse;
import l2p.gameserver.tables.SkillTable;
import l2p.gameserver.templates.PlayerTemplate;

public class SupportMagic extends l2p.gameserver.scripts.Functions
{
  private static final int[][] _mageBuff = { { 1, 76, 4322, 1 }, { 1, 76, 4323, 1 }, { 1, 76, 5637, 1 }, { 1, 76, 4328, 1 }, { 1, 76, 4329, 1 }, { 1, 76, 4330, 1 }, { 1, 76, 4331, 1 }, { 16, 34, 4338, 1 } , { 1, 34, 1323, 1 }, { 1, 76, 5103, 1 }, { 1, 40, 1217, 1 }};
  

  private static final int[][] _warrBuff = { { 1, 76, 4322, 1 }, { 1, 76, 4323, 1 }, { 1, 76, 5637, 1 }, { 1, 76, 4324, 1 }, { 1, 76, 4325, 1 }, { 1, 76, 4326, 1 }, { 1, 39, 4327, 1 }, { 40, 76, 5632, 1 }, { 16, 34, 4338, 1 } , { 1, 34, 1323, 1 }, { 1, 76, 5103, 1 }, { 1, 40, 1217, 1 }};
  
  private static final int[][] _summonBuff = { { 1, 76, 4322, 1 }, { 1, 76, 4323, 1 }, { 1, 76, 5637, 1 }, { 1, 76, 4324, 1 }, { 1, 76, 4325, 1 }, { 1, 76, 4326, 1 }, { 1, 76, 4328, 1 }, { 1, 76, 4329, 1 }, { 1, 76, 4330, 1 }, { 1, 76, 4331, 1 }, { 1, 39, 4327, 1 }, { 40, 76, 5632, 1 } , { 1, 34, 1323, 1 }, { 1, 76, 5103, 1 }, { 1, 40, 1217, 1 }};
  
  private static final int minSupLvl = 1;
  
  private static final int maxSupLvl = 76;
  

  public SupportMagic() {}
  
  public void getSupportMagic()
  {
    Player player = getSelf();
    NpcInstance npc = getNpc();
    
    doSupportMagic(npc, player, false);
  }
  
  public void getSupportServitorMagic() {
    Player player = getSelf();
    NpcInstance npc = getNpc();
    
    doSupportMagic(npc, player, true);
  }
  
  public void getProtectionBlessing() {
    Player player = getSelf();
    NpcInstance npc = getNpc();
    

    if (player.getKarma() > 0) {
      return;
    }
    if ((player.getLevel() > 39) || (player.getClassId().getLevel() >= 3)) {
      show("default/newbie_blessing_no.htm", player, npc, new Object[0]);
      return;
    }
    npc.doCast(SkillTable.getInstance().getInfo(5182, 1), player, true);
  }
  
  public static void doSupportMagic(NpcInstance npc, Player player, boolean servitor)
  {
    if (player.isCursedWeaponEquipped()) {
      return;
    }
	
    int lvl = player.getLevel();
    List<l2p.gameserver.model.Creature> target = new ArrayList();
	
    if ((servitor) && ((player.getPet() == null) || (!player.getPet().isSummon()))) {
      show("default/newbie_nosupport_servitor.htm", player, npc, new Object[0]);
      return;
    }
	
    if (lvl < 1) {
      show("default/newbie_nosupport_min.htm", player, npc, new Object[0]);
	   target.add(player);
	   npc.broadcastPacket(new L2GameServerPacket[] { new MagicSkillUse(npc, player, 1217, 1, 1, 0L) });
       npc.callSkill(SkillTable.getInstance().getInfo(1217, 1), target, true);
      return;
    }
    if (lvl > 76) {
      show("default/newbie_nosupport_max.htm", player, npc, new Object[0]);
      return;
    }
    

    
    
    if (servitor) {
      target.add(player.getPet());
      
      for (int[] buff : _summonBuff) {
        if ((lvl >= buff[0]) && (lvl <= buff[1])) {
          npc.broadcastPacket(new L2GameServerPacket[] { new MagicSkillUse(npc, player.getPet(), buff[2], buff[3], 1, 0L) });
          npc.callSkill(SkillTable.getInstance().getInfo(buff[2], buff[3]), target, true);
        }
      }
    } else {
      target.add(player);
      
      if ((!player.isMageClass()) || (player.getTemplate().race == Race.orc)) {
        for (int[] buff : _warrBuff) {
          if ((lvl >= buff[0]) && (lvl <= buff[1])) {
            npc.broadcastPacket(new L2GameServerPacket[] { new MagicSkillUse(npc, player, buff[2], buff[3], 1, 0L) });
            npc.callSkill(SkillTable.getInstance().getInfo(buff[2], buff[3]), target, true);
          }
        }
      } else {
        for (int[] buff : _mageBuff) {
          if ((lvl >= buff[0]) && (lvl <= buff[1])) {
            npc.broadcastPacket(new L2GameServerPacket[] { new MagicSkillUse(npc, player, buff[2], buff[3], 1, 0L) });
            npc.callSkill(SkillTable.getInstance().getInfo(buff[2], buff[3]), target, true);
          }
        }
      }
    }
  }
}
/* Location:              D:\Server l2 NEXT\LRServ(YourGame.su)\LRServ\L2J\serverslibs\scripts.jar!\services\SupportMagic.class
 * Java compiler version: 7 (51.0)
 * JD-Core Version:       0.7.1
 */
кто подскажет в чем может быть дело?
introzorn вне форума Ответить с цитированием
Непрочитано 07.09.2016, 19:49   #2
Пользователь

По умолчанию Re: NuibieGuid баф с 1 lvl

у вас декомпил, как вы собрались обратно заливать в скрипты?
HiredKiller вне форума Ответить с цитированием
Сказали спасибо:
Непрочитано 08.09.2016, 03:22   #3
Пользователь

Автор темы (Топик Стартер) Re: NuibieGuid баф с 1 lvl

исходники не шли вместе с этой сборкой. смотрел исходники от другой сборки сверял, декомпил коректный. все вроде как в исходнике получился. я конечно не сильно разбираюсь в этом, но изменение этого файла вообще никак не влияют. никаких ошибок ничего.
делал я как гдето было описано в инете. отдекомпиленный клас редактировал, компиллил с помощью jdk. потом открывал jar винраром, удалял старый класс и добавлял новый.
introzorn вне форума Ответить с цитированием
Непрочитано 08.09.2016, 11:11   #4
Пользователь

Автор темы (Топик Стартер) Re: NuibieGuid баф с 1 lvl

Думаю понял в чем дело. но я не думал что в сервере классы както криво ссылаются по имени.
в папке с либами (jar файлами) я оставлял копию jаr где был этот скрипт
(scripts-копия.jar) в итоге похоже ява сервер загружал именно его. после перемешения копии в другую диру все заработало как надо. глупая трабла прям)))
introzorn вне форума Ответить с цитированием
Непрочитано 08.09.2016, 19:14   #5
Аватар для Gaikotsu
Герой

По умолчанию Re: NuibieGuid баф с 1 lvl

если исходников нет, то лучше меняй сборку, пока не стало мучительно больно за зря потерянное на возню с ней время.
ибо декомпилом/компилом ты разве что только всякую мелочевку в небольших классах выправишь.
а вот когда потребуется что-то править в сложных классах типа Player и т.п. - вот тогда ты взвоешь. Ибо ты уже только самим фактом декомпила можешь внести искажения в класс, которые внешне себя сразу не проявят и обратному компилу мешать не будут, но вполне могут выйти боком при каких нибудь определенных условиях в дальнейшем.

кстати не слышал даже ранее о такой сборке.
почему бы не взять банально тот же чистый оверворлд/лостворлд и не возиться с ним? все исходники есть - что-то поправить в сервере не составит труда, главное иметь голову на плечах.
Gaikotsu вне форума Ответить с цитированием
Сказали спасибо:
Непрочитано 09.09.2016, 06:02   #6
Пользователь

Автор темы (Топик Стартер) Re: NuibieGuid баф с 1 lvl

ну это да. щас сам попробовал Player сбилдить. 39 различных ошибок.
да и декомпиляторы по разному декомпилять. проверил на трех разных. все 3 класса разные.
беда.
блин а как можно посмотреть версию сборки сервера. может куда записывают эту информацию сборщики. чтобы в инете поискать исходники

LRserv как я понял сделан на базе emurt.
lineager.info вот там сборка сервера. тока какая ревизия даже не знаю((
исходников чтото тоже не особо видно хотя сборка уже больше года существует
introzorn вне форума Ответить с цитированием
Непрочитано 09.09.2016, 11:32   #7
Пользователь

По умолчанию Re: NuibieGuid баф с 1 lvl

Можешь взять исходы опен-тим, они тоже не плохие, ну код не плохой.
nn03 вне форума Ответить с цитированием
Сказали спасибо:
Непрочитано 09.09.2016, 15:39   #8
Пользователь

Автор темы (Топик Стартер) Re: NuibieGuid баф с 1 lvl

блин вроде она платная вроде как. по крайней мере я не нашел исходников.
конечно офтоп уже пошел, но не затруднит скинуть ссыль на нормальную сборку, с исходниками. более менее стабильную,
чтоб им нормальный был (с оплатой в рублях а не за всякие коины)
чтоб над ним уже работать можно было. (мне LRserv этим всем и понравился, кроме клиента, в клиенте нубо баферы скрыты были))
господа помогите
introzorn вне форума Ответить с цитированием
Непрочитано 09.09.2016, 16:01   #9
Пользователь

По умолчанию Re: NuibieGuid баф с 1 lvl

LRServ вроде же на сорцах EmuRT стоит, не? EmuRT точно в шаре валяется.
Можно и ОпенТим, тоже нормальные.
Emperor вне форума Ответить с цитированием
Непрочитано 09.09.2016, 19:05   #10
Пользователь

Автор темы (Топик Стартер) Re: NuibieGuid баф с 1 lvl

Да совершенно верно . но хрен знает что конкретно в lRserv подправили в скриптах... исходы от эмурта могут не подойти. да и разные они. щас скачал эмурт. отбилдил. настроил. в итоге клиент висит после выбора персонажа на лоадинг скрине. (точнее игра идет, но поверх всего в интерфейсе эта картинка остается)
в итоге полная попа. (стоят если что interface.u/xdat измененные в клиенте.)
нужно искать исходы какойнибудь сборочки хорошей, лучше с клиентом и патчем
introzorn вне форума Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


© 2007–2024 «Форум администраторов игровых серверов»
Защита сайта от DDoS атак — StormWall
Работает на Булке неизвестной версии с переводом от zCarot
Текущее время: 00:34. Часовой пояс GMT +3.

Вверх