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

Engineer000

Пользователи
  • Публикаций

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

  • Посещение

  • Отзывы

    0%

Сообщения, опубликованные Engineer000


  1. В 31.08.2022 в 04:10, Beliano сказал:

    Cовет не начинать изучение Java со сборки L2  )

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


  2. В 29.08.2022 в 00:25, Beliano сказал:

    Заметил особенность на этом форуме любят сборки 10 летней давности. Вон возьмите хоть Firsteam-Interlude хоть и тоже старо но там много чего есть. Да и при возможности можно с оверов тянуть многое.

    javarush ,там открывать нужно уровни что бы что то толковое было или покупать на год обучение.Подскажите ресурсы ,статьи как лучше учить java, а по поводу сборки тут на ней столько ошибок что можно учиться на ней


  3. 16 часов назад, Beliano сказал:

    Нужны исходники.

    Если импортировать с похожей сборки по структуре то зачастую просто переписать импорты.

    Если с другой то врядли вы это сделаете без знаний.

     

    Исходы есть,если это они,вырезал через jd-gui все в java файлы, ниже скину ссылку,только когда хочу скомпилить через javac то не все компилиться,выбивает ошибки .Использовал команду и в той же папке находится файл Acp.java:

    javac -classpath l2jfrozen-core.jar  Acp.java

    package com.l2jfrozen.gameserver.handler;
    
    import com.l2jfrozen.gameserver.handler.IItemHandler;
    import com.l2jfrozen.gameserver.handler.IVoicedCommandHandler;
    import com.l2jfrozen.gameserver.handler.ItemHandler;
    import com.l2jfrozen.gameserver.handler.VoicedCommandHandler;
    import com.l2jfrozen.gameserver.model.L2ItemInstance;
    import com.l2jfrozen.gameserver.model.actor.instance.L2PcInstance;
    import com.l2jfrozen.util.object.L2ObjectHashMap;
    
    public class Acp implements IVoicedCommandHandler {
    
        private static String[] commands = {"acpon", "acpoff"};
        //    *********************** ИД Банок
        private static int ID_HEAL_CP = 5592;
        private static int ID_HEAL_MP = 6036;
        private static int ID_HEAL_HP = 1539;
        //    *********************** USE FULL
    //    Включить / Выключить
        private static boolean ACP_ON = true;
        //    Минимальный уровень, с которого можно использовать ACP
        private static int ACP_MIN_LVL = 0;
        //    Указываеться в % уровень, с которого начинаем регенить
        private static int ACP_HP_LVL = 70;
        private static int ACP_CP_LVL = 70;
        private static int ACP_MP_LVL = 70;
        private static int ACP_MILI_SECONDS_FOR_LOOP = 1000;
        //    Только для премиумов?
        private static boolean ACP_PREMIUM = false;
        //    Что именно автоматически регеним
        private static boolean ACP_CP = true;
        private static boolean ACP_MP = true;
        private static boolean ACP_HP = true;
        private static L2ObjectHashMap<String, Thread> userAcpMap = new L2ObjectHashMap<String, Thread>();
    //    private volatile boolean acpUserOn = false;

    На  private static L2ObjectHashMap<String, Thread> userAcpMap = new L2ObjectHashMap<String, Thread>();
    дает ошибку:

    Acp.java:34: error: reached end of file while parsing
        private static L2ObjectHashMap<String, Thread> userAcpMap = new L2ObjectHash
    Map<String, Thread>();

     

    Ссылка на исходники

     

    Может кто то глянуть через демонстрацию экрана если есть желание? 


  4. В 25.08.2022 в 19:20, Beliano сказал:

    Или сесть изучать Java или выкинуть эту бредовую мысль и делать как 90% разрабов копипастой со сборок других разрабов.

    А как добавить его в ядро,мне говорили что вообще через скрипт на java должно работать


  5. Доброго времени суток,подскажите как мне написать ACP На java. Или мне его нужно делать через ядро ,какие для этого нужно знать библиотеки и какие вообще знания в java должны быть. 

    Если это скрипт то как его подключить?

    Если это ядро тогда нужно создовать отдельный класс или нужно дописывать в существующем и если это существующий класс - что в нем должно подключаться?Как мне понять что отвечает за что?

    Можете обьяснить с примерами что я должен знать об этом что бы это сделать?


  6. В 21.05.2022 в 02:07, FatkhievER сказал:

    А для заточек нужно смотреть RequesEnchantItem.java? Можешь подсказать где там подправить, чтобы вся стопка заточек не исчезала? 

    Это для Frozen , для других может где то быть отличие:

    Сервер(База данных)

    1.Заходишь в базу Mysql ;

    2.Выбераешь  столбик etcitem ;

    3.Ищешь к примеру по id или по названию заточку,например id 729 ,в столбике consume_type пишешь вместо normal > stackable(Сохраняешь).

    Клиент (файл etcitemgrp.dat)

    1.Заходишь в Клиент игры , папка system ищешь файл  etcitemgrp.dat , открываешь его через L2FileEdit (можно выделить все ctrl+a , скопирывать и для удобства переместить все это в exel таблицу).Можно и в FileEdit но не так удобно так как нет нормальной табуляции.

    2.В таблице  там где колонка Stackable (AD, это последние 3 столбика в файле, справа) вместо 0 ставишь значение 2 ,затем с первой ячейки выделяешь всю таблицу и копируешь, заменяешь содержимое в etcitemgrp.dat которую ты открыл через FileEdit и сохраняешь в 413 кодировке (Она по умолчанию).Предложит заменить файл , заменяешь.


  7. Подскажите как найти id бафера который в ядре находиться и он имеет только html оболочку ? Его путь: gameserver\data\html\buffer   

    \buffer-0.htm 

    buffer-1.htm 

    buffer-2.htm 

    buffer-3.htm 

    menu.htm 

    sthememenu.htm 

    При вызове стандартного 50019 он не работает и есть кнопка quest, он же тот который в config/pawerpak но когда меняешь там id ничего не происходит.

    Если кто то знает ,подскажите пожалуйста.


  8. Решено: 

    Идем суда : gameserver\head-src\com\l2jfrozen\gameserver\network\clientpackets\RequestRefine.java

    Меняем:

    consume the life stone  if(!player.destroyItem("RequestRefine", refinerItem, null, false))

    На:

    consume the life stone  if (!player.destroyItem("RequestRefine", refinerItem.getObjectId(), 1, null, false))
     
     
     

  9. Люди подскажите как реализовать ацп на фрозене ,пробовал по мануалу этой темы,некторые файл UseItem.java не компилятся из за

    _CtrlClick = readD(); 

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


  10. РЕШЕНО : Вообщем нашел : Дело в том что я менял значение в id скила 3219 но на самом деле это айди исполюзует тригер с id: 

    Target: Self (TARGET_SELF)
    Skill Type: BUFF
    Operate Type: Passive (OP_PASSIVE)
    Chance Type: ON_ATTACKED
    Triggered Skill Id: 5159

    А вот как выглядит тригер скила magic barrier :

    <skill id="5159" levels="10" name="Magic Barrier">
    <!-- Description(s):
           Lvl 1-10 - Active: Increases M. Def. temporarily.
    -->
      <table name="#rate">1.1 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.18 1.19</table>
      <table name="#magicLvl">46 49 52 55 58 61 64 67 70 76</table>
      <set name="magicLvl" val="#magicLvl"/>
      <set name="target" val="TARGET_SELF"/>
      <set name="skillType" val="BUFF"/>
      <set name="operateType" val="OP_ACTIVE"/>
      <set name="castRange" val="-1"/>
      <set name="effectRange" val="-1"/>
      <set name="isMagic" val="true"/>
      <set name="bestowed" val="true"/>
      <set name="hitTime" val="4000"/>
      <for>
     	<effect name="Buff" time="1200" count="1" val="0">
    	  <mul order="0x30" stat="mDef" val="#rate"/>
     	</effect>
      </for>
    </skill>

     

    • Upvote 1

  11. 2 минуты назад, Kameo сказал:

    Не знаю какая у тебя сборка, но в моей это в altsettings.properties
    # Модификатор времени баффов.


    попробуй в этих настройках поискать

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


  12. Доброго времени суток.Может кто то подсказать как изменить время действия шансового скила ,на пример этого.На данный момент время 15с:

    <skill id="3219" levels="10" name="Item Skill: Magic Barrier">
      <table name="#chance">2 2 2 3 3 3 4 4 5 5</table>
      <table name="#triggeredLevel">1 2 3 4 5 6 7 8 9 10</table>
      <set name="triggeredId" val="5159"/>
      <set name="triggeredLevel" val="#triggeredLevel"/>
      <set name="target" val="TARGET_SELF"/>
      <set name="skillType" val="BUFF"/>
      <set name="operateType" val="OP_CHANCE"/>
      <set name="chanceType" val="ON_ATTACKED"/>
      <set name="activationChance" val="#chance"/>
      <set name="castRange" val="-1"/>
      <set name="effectRange" val="-1"/>
    </skill>

     


  13. 1 час назад, ForceUnleashed сказал:

    Я же Выше написал, что my bad, потом увидел что они в самом начале только.

    Не получилось.Я заменил frozen-core.jar в сборке и выбило ошибку при запуске гейм сервера

    ItemHandler: Loaded 2046 handlers.
    SkillHandler: Loaded 76 handlers.
    Exception in thread "main" java.lang.UnsupportedClassVersionError: com/l2jfrozen/gameserver/handler/AdminCommandHandler has been compiled by a more recent version of the Java Runtime (class file version 60.0), this version of the Java Runtime only recognizes class file versions up to 52.0
            at java.lang.ClassLoader.defineClass1(Native Method)
            at java.lang.ClassLoader.defineClass(Unknown Source)
            at java.security.SecureClassLoader.defineClass(Unknown Source)
            at java.net.URLClassLoader.defineClass(Unknown Source)
            at java.net.URLClassLoader.access$100(Unknown Source)
            at java.net.URLClassLoader$1.run(Unknown Source)
            at java.net.URLClassLoader$1.run(Unknown Source)
            at java.security.AccessController.doPrivileged(Native Method)
            at java.net.URLClassLoader.findClass(Unknown Source)
            at java.lang.ClassLoader.loadClass(Unknown Source)
            at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
            at java.lang.ClassLoader.loadClass(Unknown Source)
            at com.l2jfrozen.gameserver.GameServer.main(GameServer.java:424)

    Я так понял что я скомпилил с другой версией java? 


  14. закинул папку javolution в l2jfrozen-core.jar  и появился class и предупреждение ,вопрос  - это нормально скомпилированный файл?

    E:\decompile>javac -classpath l2jfrozen-core.jar -Xlint:unchecked AdminCommandHa
    ndler.java
    AdminCommandHandler.java:91: warning: [unchecked] unchecked conversion
         this._datatable = new FastMap();
                           ^
      required: FastMap<String,IAdminCommandHandler>
      found:    FastMap
    1 warning

     

    вот файл class:

    https://ibb.co/6wr6xSP

     


  15. 3 минуты назад, ForceUnleashed сказал:

    image.png.c6e12a727417db86680758362ef5be68.png это удали)

    тогда та же ошибка

    E:\decompile>javac -classpath l2jfrozen-core.jar -Xlint:unchecked AdminCommandHa
    ndler.java
    AdminCommandHandler.java:75: error: package javolution.util does not exist
     import javolution.util.FastMap;
                           ^
    AdminCommandHandler.java:82: error: cannot find symbol
      private FastMap<String, IAdminCommandHandler> _datatable;
              ^
      symbol:   class FastMap
      location: class AdminCommandHandler
    AdminCommandHandler.java:91: error: cannot find symbol
         this._datatable = new FastMap();
                               ^
      symbol:   class FastMap
      location: class AdminCommandHandler
    3 errors

     

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