Перейти к содержанию

Voicemange

Заблокирован
  • Публикаций

    177
  • Зарегистрирован

  • Посещение

  • Отзывы

    0%

Весь контент Voicemange

  1. Грубовато) Отпишись в ICQ пожалуйста, сделаем тебе. ICQ - 685668803
  2. Сегодня мы с вами научимся декомпилировать и собирать(компилировать обратно) привычные для нас ядра различных сборок. Много криков слышится о том что без исходных кодов работать с компилированным ядром ява сервера - не возможно. Это абсолютно не верная информация и абсолютно не правильная. Сегодня, мы с вами ознакомимся с 1 из методов работы с подобным видом продуктов. Что нам понадобится? Естественно, любой свободный декомпилятор Java среды. Любой версии Java JDK платформы (Developer kit). Итак, для начала - выбираем нашу любимую жертву, над которой будем усердно работать. Не знаю, для какой цели вам нужен кусок исходных кодов - но дело ваше. Для эксперемента, жертвой были выбран скомпилированный код команды l2jfozen, чтоб обидно не было никому. Первым нашим шагом будет декомпиляция собственно нужного нам класса. Много ума здесь совсем не нужно. Поэтому - задействуем ранее скачанный декомпилятор(я буду вести пример на основе jd gui decompiller). Открываем jar архив с нужным нам классом: Декомпилируем нужный нам класс в исходные коды (java): Теперь, настал момент истины и их нужно обратно собрать. Делать мы это будем ровно в 1 клик. Для сбора мы создадим папочку: D:\compile\, в которую поместим декомпилированный нами ранее класс (скрин №2) и сам .jar архив который мы декомпилировали. Теперь - осталось не много не мало - скомпилировать наш класс. Для этого, мы используем консоль нашей OS (у виндузятников - cmd, линупсоиды - думаю подсказывать не нужно где консоль). Для начала, проверим - доступен ли нам компилятор (javac) в исконном виде. Введем в консоль: javac Если после введения команды нам высветило большой манаул - все в порядке. Если же результатом исполнения стало: "javac" не является внутренней или внешней командой то беда пришла за нами. Дело - копеечное, решается ровно в 4 клика. Если возникло двигаем: Мой компьюетр->свойства->дополнительно->переменные среды и ищем там переменную "Path". Выбираем - редактирование, и дописываем путь к бинарникам нашей Jdk (/путь до jdk/bin), к примеру это будет выглядеть так: C:\program files\java\jdk6.10.1\bin и добавляем (через ; к переменной). Сохраняем, и открываем консоль снова. Если при исполнении javac все в порядке - воуля, проблема устранена. Теперь - непосредственно компилируем ранее декомпилированный нами класс. Заходим туда, где лежит наш класс: D: && cd compile Компилируем сам класс: D:\compile>javac -classpath l2jfrozen-core.jar -Xlint:unchecked Имя_декомпилированного_класса.java как пример - компиляция Config.java: D:\compile>javac -classpath l2jfrozen-core.jar -Xlint:unchecked GameServer.java Что ж, на выходе (в той же папке) мы получили: наш_класс.class. Дело сделано, все довольны. Осталось - мелочи. Открываем декомплируемое нами ядро (l2jfrozen-core.jar) простым архиватором (winzip, winrar, 7z) и доходим до уровня, где лежит старый класс. Удаляем старый класс, жмем "ADD" и запихиваем сюда класс, который мы скомпилировали выше. Вот собственно и все, мы проделали операцию нужную вам. После декомпилирования класса вы можете внести свои поправки в исходный код и успешно скомпилировать его и всунуть куда нужно. Автор: zenn, © 2010 by l2server.org special.
  3. Ищем пакет CharacterCreate.java Он находится в папке net/sf/l2j/gameserver/clientpackets В CharacterCreate ищем вот этот код: else if ((_name.length() < 3) || (_name.length() > 16) || !isAlphaNumeric(_name) || !isValidName(_name)) { if (Config.DEBUG) _log.fine("charname: " + _name + " is invalid. creation failed."); CharCreateFail ccf = new CharCreateFail(CharCreateFail.REASON_16_ENG_CHARS); sendPacket(ccf); return; } Изменяем на числа свои: ((_name.length() < 3) || (_name.length() > 16) < 3 - Минимальное количество > 16 - Максимальное количество
  4. Идём в папку: net/sf/l2j/gameserver/clientpackets/ и открываем файл UseItem.java Ищем там: if (Config.DEBUG) _log.finest(activeChar.getObjectId() + ": use item " + _objectId); if (item.isEquipable()) После чего вставляем данный код: if(!activeChar.isGM()) { if(item.getItem().getType2() == L2Item.TYPE2_WEAPON && item.getEnchantLevel() > Config.ENCHANT_WEAPON_MAX) { activeChar.setAccountAccesslevel(-999); activeChar.sendMessage("You have been banned for using an item wich is over enchanted!!"); activeChar.closeNetConnection(); return; } if(item.getItem().getType2() == L2Item.TYPE2_SHIELD_ARMOR && item.getEnchantLevel() > Config.ENCHANT_ARMOR_MAX) { activeChar.setAccountAccesslevel(-999); activeChar.sendMessage("You have been banned for using an item wich is over enchanted!!"); activeChar.closeNetConnection(); return; } if(item.getItem().getType2() == L2Item.TYPE2_ACCESSORY && item.getEnchantLevel() > Config.ENCHANT_JEWELRY_MAX) { activeChar.setAccountAccesslevel(-999); activeChar.sendMessage("You have been banned for using an item wich is over enchanted!"); activeChar.closeNetConnection(); return; } } Автор: la2vampir
  5. Voicemange

    Баф В Люцере

    В Люцере стандартный баффер как мне известно скрипт в ядре если ты в ядре добавил покажи код
  6. Voicemange

    Ошибка В Гс

    Ну и не парься тогда)
  7. пв конечно же, если с дополнениями. а если просто эвенты, скрипты и т.д. бери сборку заточенную под классику
  8. Voicemange

    Ошибка В Гс

    На работу сборки влияет?
  9. Voicemange

    Ipb 3.2.3

    В настройках групп, выстави права на использование аватарки
  10. laen2505 мой метод пробывал?
  11. Voicemange

    Проблема С Ipb

    Да только через хост И через админку ты не сможешь ни как бекап сделать) ибо там нету такой функции
  12. Может быть в XML проблема. Посмотри там, какие соски требует. Хотя там же статы То что в БД написано это значит, лвл при котором чар сможет одеть пуху. Ты можешь сюда выложить, SQL структуру Пушек. Я гляну
  13. Я написал так как человек отписал! Если ему надо будет, он сам подправит. Я ему дал ответ, теперь только ждать, поможет ли ему это или нет.
  14. Voicemange

    Проблема С Ipb

    Не пробовал) Но поновой поставить лучше. Главное бекап сделай и всё. Данные же сохраняться
  15. 9525 Farm Coen -1 0 0 0 0 Вот правильный!
  16. Voicemange

    Проблема С Ipb

    Бекап сделай БД, и поставь заного IPB
  17. Voicemange

    Обьясните Нубу

    Либо неправильно вводишь, либо не залил SQL базу проверь в Бд точно там точно этот айтем есть?
  18. Нет, номер карточки сразу вводится при регистрации! Если бы на карте не было денег, он бы ошибку дал! А ТС качал платные приложения, и покупал игровую валюту за реальную. Мне вот не верится, как это возможно: На 50 000 Руб. Закупиться??? mega_shok
  19. Вы так человека не пугайте) Придумает, что нибудь) На крайняк в ипотеку возмёт, или в покер выиграет =)
  20. А вы ему просто не говорите и все)
  21. Voicemange

    Помогите Пожалуйста, ++

    ICQ - 685668803 пиши знаю как и что
  22. У меня iPhone 4, стоит JailBreak, я скачиваю игры с кодами разработчика и всё ок. Только редко играю) И в основном только в 1 игру это Temple Run
  23. Censored выясни всю сумму и начинай отдавать.
  24. Voicemange

    Для Чего Datapack

    Datapack Отвечает за серверную часть сборки В него входят: Квесты, Скрипты, XML, Статы, ХТМЛ и тому подобное а Game Server отвечает за корень сборки. В нём находится само ядро. Если доходчиво объяснил, поставь
  25. Voicemange

    Помогите Плиз (Sw)

    Zend Optimizer присутствует? Попроси у Stress Web нормальный index.php
×
×
  • Создать...