Перейти к содержанию
Авторизация  
Mapho

Ядро.jar(Как изменить классы)

Рекомендуемые сообщения

Проблема такая - нужно изменить выдачу награды за ивент(предмет, вы падающий со всех мобов), да и не только его(Нету ни в конфигах, ни в дропе, только в ядре).

Вопрос такой - этот класс можно декомпилировать в java файл(ну текстовый), изменить на нужное.

Но вот незадача, как же вернуть его обратно? 

Сборка - компил, но я так понимаю почти все уже есть, неужели нельзя запихнуть обратно измененный файлик?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

выложи класс где прописан ИД и сам ИД, и на какой нужно изменить

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

выложи класс где прописан ИД и сам ИД, и на какой нужно изменить

Мне нужен способ как это делать, ведь могут возникать и другие ошибки :help:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Исправляете, компилите в класс, мануал есть на макси 100%, (на сайте), пихаете обратно в ядро, с учетом того что нет обфускации

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Исправляете, компилите в класс, мануал есть на макси 100%, (на сайте), пихаете обратно в ядро, с учетом того что нет обфускации

Исправил, запихнул - не заработал дроп(теперь совсем не падает). Может быть из-за того, что в DJ Decimpiler`e теперь не указывается путь path?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

в чём проблема изменить визуализацию итема? и его юзабельность в датпаке? на нужным нам предмет, чем делать столь сложные комбинации ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Запихнул через WinRar, заработало. Всем спасибо, получилось ;)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

в чём проблема изменить визуализацию итема? и его юзабельность в датпаке? на нужным нам предмет, чем делать столь сложные комбинации ?

Так предмет падает со всех монстров, люди будут спрашивать зачем он падает. 

А то что вы предложили делал я, для другого, но делал. Еще помню у американцев что ль, норм л2едитор просил(не открывалить группы скиллов)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Теперь возник такой вопрос, в классах, где есть оператор выбора switch вылетает ошибка "error: case, default, or '}' expected". Что делать!?

Может быть можно как-то через элипс сделать те же действия, как тут : http://l2maxi.ru/java/faq/2489-dekompil-sborki.html

Изменено пользователем Mapho

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Проблема такая - нужно изменить выдачу награды за ивент(предмет, вы падающий со всех мобов), да и не только его(Нету ни в конфигах, ни в дропе, только в ядре).

Вопрос такой - этот класс можно декомпилировать в java файл(ну текстовый), изменить на нужное.

Но вот незадача, как же вернуть его обратно? 

Сборка - компил, но я так понимаю почти все уже есть, неужели нельзя запихнуть обратно измененный файлик?

Ээмм, а не проще унаследовать этот класс из ядра в датапак, и в датапаке переписать пару функций отвечающих за дроп и прочее ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ээмм, а не проще унаследовать этот класс из ядра в датапак, и в датапаке переписать пару функций отвечающих за дроп и прочее ?

Мне не нужно проще, я хочу именно научиться изменяя классы возвращать их обратно

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Теперь возник такой вопрос, в классах, где есть оператор выбора switch вылетает ошибка "error: case, default, or '}' expected". Что делать!?

Может быть можно как-то через элипс сделать те же действия, как тут : http://l2maxi.ru/java/faq/2489-dekompil-sborki.html

Кстати, забыл, тут скорее всего ошибка возникла из-за

d:\Compile>javac -classpath core.jar -Xlint:unchecked AttackSpeedAndMiss.java

AttackSpeedAndMiss.java:44: error: illegal '.'
код свитча : if(attacker.getActiveWeaponItem() != null && !attacker.isTransformed())
            switch(_cls1..SwitchMap.lineage2.gameserver.model.items.base.type.L2WeaponType[attacker.getActiveWeaponItem().getItemType().ordinal()])
            {
            case 1: 
                isBow = true;
                break;
 
            case 2: 
            case 3: 
                isBow = true;
                break;
            }
 
P.S. Что самое интересное, любой класс, в котором есть свитч, не компилиться обратно

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

Кстати, забыл, тут скорее всего ошибка возникла из-за

d:\Compile>javac -classpath core.jar -Xlint:unchecked AttackSpeedAndMiss.java

AttackSpeedAndMiss.java:44: error: illegal '.'
код свитча : if(attacker.getActiveWeaponItem() != null && !attacker.isTransformed())
            switch(_cls1..SwitchMap.lineage2.gameserver.model.items.base.type.L2WeaponType[attacker.getActiveWeaponItem().getItemType().ordinal()])
            {
            case 1: 
                isBow = true;
                break;
 
            case 2: 
            case 3: 
                isBow = true;
                break;
            }
 
P.S. Что самое интересное, любой класс, в котором есть свитч, не компилиться обратно

 

В таком виде свич не юзабелен в принципе. Изучайте принцип работы оператора и синтаксис, тогда поймёте суть ошибки.

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

И чуть не забыл: при декомпиле теряется значительная часть кода, которую нужно восстанавливать. :)

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

И чуть не забыл: при декомпиле теряется значительная часть кода, которую нужно восстанавливать. :)

Эх)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...