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

Редактируем моды от ro0TT под lateam на основании lucera

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

Использую первую ветку lucera, а точнее говоря последняя переделка lasteam на основании последней люцеры от николая :)

В свое время покупал исходники.  :db:

Суть в следующем, хочу установить туда акцион, почту, но так как ничего не нашел в нете, а только Платные моды от Lucera 2 (в файлах)

Хочу переписать немного исходник мода ибо он точно не будет работать, так как в классах код идет следующего вида: 

...
import lasteam.L2DatabaseFactory;
import lasteam.gameserver.datatables.CharNameTable;
...

Сейчас вопрос, как мне грамотно декомпилить ro0tt.jar файл для того, что бы я смог его редактировать и дальше скомпилить...?

Еклипс и т.п понятно что есть, оссновамы программирования владею, но вот это сделать не могу.

Помогите будьте добры. С меня пиво за хелп, как это сделать. Делать не надо, сам хочу!  :help:

Заранее благодарю.

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


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

Супер DJ Java Decompiler, декомпилит классы как надо ! Сейчас вопрос: как грамотно и по быстрому засунуть декомпыльнутий класс обратно в архив джаровский?)))

Вот например пришла идея в голову создать новый проект с нужным мне классом, вытащить с джар архива и впихнуть в нужны мне... сработает или нет? В С#\C++ так нельзя, а ява? Способна на такие чудеса?

Или как это вообще реализовать?)

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

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


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

Ну что ж, нашел мануал в нете, но по сути дела не очень имеет желание декомпиленый файл обратно ставать нормальным классом...

Пытался сделать так в командной строке:

javac -classpath l2jserver.jar -Xlint:unchecked Имя_декомпилированного_класса.java 

Получил жалобы на некоторые строки, почистил их и получил жалобу:

 

 

...
...
  symbol:   class L2ItemInstance
  location: class Auction
Auction.java:471: error: cannot find symbol
                L2ItemInstance item = (L2ItemInstance)temp.get(i);
                ^
  symbol:   class L2ItemInstance
  location: class Auction
Auction.java:471: error: cannot find symbol
                L2ItemInstance item = (L2ItemInstance)temp.get(i);
                                       ^
  symbol:   class L2ItemInstance
  location: class Auction
Auction.java:515: error: cannot find symbol
                rewards = (new StringBuilder()).append(rewards).append(ItemTable
.getInstance().getItemName(id)).toString();
                                                                       ^
  symbol:   variable ItemTable
  location: class Auction
Auction.java:517: error: cannot find symbol
                rewards = (new StringBuilder()).append(rewards).append(";").appe
nd(ItemTable.getInstance().getItemName(id)).toString();

   ^
  symbol:   variable ItemTable
  location: class Auction
Auction.java:561: error: cannot find symbol
                L2Skill skill = item.getAugmentation().getSkill();
                ^
  symbol:   class L2Skill
  location: class Auction
Auction.java:636: error: cannot find symbol
        con = L2DatabaseFactory.getInstance().getConnection();
              ^
  symbol:   variable L2DatabaseFactory
  location: class Auction
Auction.java:704: warning: [unchecked] unchecked call to put(K,V) as a member of
 the raw type ConcurrentHashMap
        _products.put(Integer.valueOf(item.getObjectId()), item);
                     ^
  where K,V are type-variables:
    K extends Object declared in class ConcurrentHashMap
    V extends Object declared in class ConcurrentHashMap
100 errors
2 warnings

 

 

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

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


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

лучше брось это гиблое дело

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

 

З.Ы. DJ Java Decompiler декомпилит не ахти. лучший по идее из доступных ща Fernflower. вот, чисто ради интереса пропустил через него эту самую jar'ку.

З.З.Ы. на Fernflower, который в инете можно так просто найти кстати особо не надейтесь - там есть ошибочка, из-за которой не всегда декомпилятся вложенные классы. но исправление опять же в инете найти не проблема - там всего-то надо им самого себя декомпильнуть (ага, Fernflower сам на яве написан), поправить одну строчку в одном из классов, обратно скомпилить этот класс javac'ом и заменить.

ro0tt.jar.src.zip

Изменено пользователем Gaikotsu
  • Upvote 1

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


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

Печаль... выходит ничего сделать невозможно? только на сновании декомпильнутых классов с 0 писать проект (мод)? :(

Я идеально строение серверов не знаю, но может мне легче переписать имея исходники сборку под данный модуль?)

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

import ru.catssoftware........

на 

import lasteam..........

? Сработает такое банальство если я массово заменю все обратно?))))

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

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


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

корее всего, если сами классы так же называются и все нужные методы в них имеются

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


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

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

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

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

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

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

Войти

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

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

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

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

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