• Новые темы в этом разделе публикуются автоматически при добавлении файла в менеджер ресурсов.
    Ручное создание новых тем невозможно.
[Essence 464] High Elves [Char Creation / Enter World]

[Essence 464] High Elves [Char Creation / Enter World] 2024-04-28

Нет прав для скачивания

thank you for your attention
 
MrKirill1232 добавил(а) новый ресурс:

[Essence 464] High Elves [Char Creation / Enter World] - Поднятые с шары сурсы на базе l2jmobius с 447 до 464 протокола



Узнать больше об этом ресурсе...
Подскажи плез, призыв дерева(16013) у духа через саммон+аи как на мейне у альгизов? я сделал так,но на дереве нет абнормала+при спавне просадка на 1-2 сек до 1 фпс
 
Подскажи плез, призыв дерева(16013) у духа через саммон+аи как на мейне у альгизов? я сделал так,но на дереве нет абнормала+при спавне просадка на 1-2 сек до 1 фпс
Не знаю. Знаю только что там 3 деревца.
С парса ОФА, на дереве было:
- summoned animation - 2
- АВЕ - 951
Ну, а больше я ничего не скажу, ибо не знаю, а узнать:
* нет надобности
* нет времени
* нет смысла
(никто не просил, никто за это по головке не погладит, никто не компенсирует потраченое время) :Freezing:

УПД - 05.19.2024

Пока мы тут молчим, бразильцы сделали ре-шару ресурса и пилят его в 4 человека )0)
1716120448148.png
 
Последнее редактирование:
I'm working on this adaptation.
There's a lot to do! But I believe that if we come together we will be able to make this work.
1716133410951.png
 
  • Попкорн
Реакции: V11
только вот зачем тут мапа и в ней Integer который уйдет в минус для хп боссов.
в копилку как можно сделать нормально.
Java:
    private final Collection<IAttribute> _attributes;

    public interface IAttribute {
        void write(ByteBuffer buf);
    }

    public void addAttribute(CharParamType id, int value) {
        _attributes.add(new Attribute(id, value));
    }

    public void addAttribute64(CharParamType id, long value) {
        _attributes.add(new Attribute64(id, value));
    }

    @Override
    protected void writeImpl(GameClient client, ByteBuffer buf) {
        writeD(buf, _objectId);
        writeD(buf, _attackObjectId);
        writeC(buf, _visible.ordinal());
        writeC(buf, _attributes.size());
        for (IAttribute temp : _attributes)
            temp.write(buf);
    }

    record Attribute(CharParamType id, int value) implements IAttribute {
        public void write(ByteBuffer buf) {
            writeC(buf, id.ordinal());
            writeD(buf, value);
        }
    }

    record Attribute64(CharParamType id, long value) implements IAttribute {
        public void write(ByteBuffer buf) {
            writeC(buf, id.ordinal());
            writeQ(buf, value);
        }
    }
number вместо инта решил бы ситуацию с итерацией мапы инт/лонг.
сейчас бы рекорды на каждый шаг итерации создавать, еще и в таком интенсивном обмене как этот пакет
 
number вместо инта решил бы ситуацию с итерацией мапы инт/лонг.
сейчас бы рекорды на каждый шаг итерации создавать, еще и в таком интенсивном обмене как этот пакет
record не чем не отличается от класса. Мапа для хранения создает их больше ( класс Map.Entry на каждый ключ/ значение + объект
Long/Integer + хеш + связанность ). Что по скорости что по памяти обычная мапа будет хуже.
 
Была проблема с Логин Сервером, а именно писало проблему что какой-то класс не существует (в данном случае ClassId из GameServer).
Java:
--- java/org/l2jmobius/Config.java    Sun Mar 17 13:15:49 2024
+++ java/org/l2jmobius/Config.java    Sat May 11 14:36:20 2024
@@ -1217,50 +1217,65 @@
     public static int NAME_COLOR_FOR_PVP_AMOUNT5;
     public static String TITLE_FOR_PVP_AMOUNT1;
     public static String TITLE_FOR_PVP_AMOUNT2;
     public static String TITLE_FOR_PVP_AMOUNT3;
     public static String TITLE_FOR_PVP_AMOUNT4;
     public static String TITLE_FOR_PVP_AMOUNT5;
     public static boolean CHAT_ADMIN;
-    public static float[] PVE_MAGICAL_SKILL_DAMAGE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVP_MAGICAL_SKILL_DAMAGE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVE_MAGICAL_SKILL_DEFENCE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVP_MAGICAL_SKILL_DEFENCE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVE_MAGICAL_SKILL_CRITICAL_CHANCE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVP_MAGICAL_SKILL_CRITICAL_CHANCE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVE_MAGICAL_SKILL_CRITICAL_DAMAGE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVP_MAGICAL_SKILL_CRITICAL_DAMAGE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVE_PHYSICAL_SKILL_DAMAGE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVP_PHYSICAL_SKILL_DAMAGE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVE_PHYSICAL_SKILL_DEFENCE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVP_PHYSICAL_SKILL_DEFENCE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVE_PHYSICAL_SKILL_CRITICAL_CHANCE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVP_PHYSICAL_SKILL_CRITICAL_CHANCE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVE_PHYSICAL_SKILL_CRITICAL_DAMAGE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVP_PHYSICAL_SKILL_CRITICAL_DAMAGE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVE_PHYSICAL_ATTACK_DAMAGE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVP_PHYSICAL_ATTACK_DAMAGE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVE_PHYSICAL_ATTACK_DEFENCE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVP_PHYSICAL_ATTACK_DEFENCE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVE_PHYSICAL_ATTACK_CRITICAL_CHANCE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVP_PHYSICAL_ATTACK_CRITICAL_CHANCE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVE_PHYSICAL_ATTACK_CRITICAL_DAMAGE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVP_PHYSICAL_ATTACK_CRITICAL_DAMAGE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVE_BLOW_SKILL_DAMAGE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVP_BLOW_SKILL_DAMAGE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVE_BLOW_SKILL_DEFENCE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVP_BLOW_SKILL_DEFENCE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVE_ENERGY_SKILL_DAMAGE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVP_ENERGY_SKILL_DAMAGE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVE_ENERGY_SKILL_DEFENCE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PVP_ENERGY_SKILL_DEFENCE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] PLAYER_HEALING_SKILL_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] SKILL_MASTERY_CHANCE_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] EXP_AMOUNT_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
-    public static float[] SP_AMOUNT_MULTIPLIERS = new float[ClassId.MAX_CLASS_ID + 1];
+    private static int CLASS_ID_MAX_CLASS;
+
+    static
+    {
+        try
+        {
+            Class.forName("org.l2jmobius.gameserver.enums.ClassId");
+            CLASS_ID_MAX_CLASS = ClassId.MAX_CLASS_ID + 1;
+        }
+        catch (ClassNotFoundException e)
+        {
+            CLASS_ID_MAX_CLASS = 0;
+        }
+    }
+
+    public static float[] PVE_MAGICAL_SKILL_DAMAGE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVP_MAGICAL_SKILL_DAMAGE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVE_MAGICAL_SKILL_DEFENCE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVP_MAGICAL_SKILL_DEFENCE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVE_MAGICAL_SKILL_CRITICAL_CHANCE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVP_MAGICAL_SKILL_CRITICAL_CHANCE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVE_MAGICAL_SKILL_CRITICAL_DAMAGE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVP_MAGICAL_SKILL_CRITICAL_DAMAGE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVE_PHYSICAL_SKILL_DAMAGE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVP_PHYSICAL_SKILL_DAMAGE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVE_PHYSICAL_SKILL_DEFENCE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVP_PHYSICAL_SKILL_DEFENCE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVE_PHYSICAL_SKILL_CRITICAL_CHANCE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVP_PHYSICAL_SKILL_CRITICAL_CHANCE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVE_PHYSICAL_SKILL_CRITICAL_DAMAGE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVP_PHYSICAL_SKILL_CRITICAL_DAMAGE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVE_PHYSICAL_ATTACK_DAMAGE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVP_PHYSICAL_ATTACK_DAMAGE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVE_PHYSICAL_ATTACK_DEFENCE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVP_PHYSICAL_ATTACK_DEFENCE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVE_PHYSICAL_ATTACK_CRITICAL_CHANCE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVP_PHYSICAL_ATTACK_CRITICAL_CHANCE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVE_PHYSICAL_ATTACK_CRITICAL_DAMAGE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVP_PHYSICAL_ATTACK_CRITICAL_DAMAGE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVE_BLOW_SKILL_DAMAGE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVP_BLOW_SKILL_DAMAGE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVE_BLOW_SKILL_DEFENCE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVP_BLOW_SKILL_DEFENCE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVE_ENERGY_SKILL_DAMAGE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVP_ENERGY_SKILL_DAMAGE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVE_ENERGY_SKILL_DEFENCE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PVP_ENERGY_SKILL_DEFENCE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] PLAYER_HEALING_SKILL_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] SKILL_MASTERY_CHANCE_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] EXP_AMOUNT_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
+    public static float[] SP_AMOUNT_MULTIPLIERS = new float[CLASS_ID_MAX_CLASS];
     public static boolean MULTILANG_ENABLE;
     public static List<String> MULTILANG_ALLOWED = new ArrayList<>();
     public static String MULTILANG_DEFAULT;
     public static boolean MULTILANG_VOICED_ALLOW;
     public static boolean NOBLESS_MASTER_ENABLED;
     public static int NOBLESS_MASTER_NPCID;
     public static int NOBLESS_MASTER_LEVEL_REQUIREMENT;
 

Вложения

  • Config.zip
    39,4 КБ · Просмотры: 5
Товарищи, я пришел сообщить вам не очень хорошие новости. К сожалению, над этой версией Essence невозможно работать, нам остаётся только дождаться официальной публикации от Высших Эльфов.

На изображении выше — официальный обзор L2J Mobius Essence 8.1 High Elves.
 
Товарищи, я пришел сообщить вам не очень хорошие новости. К сожалению, над этой версией Essence невозможно работать, нам остаётся только дождаться официальной публикации от Высших Эльфов.

На изображении выше — официальный обзор L2J Mobius Essence 8.1 High Elves.

what I did with this Mrkiriill pack, the entire city of high elves(mini map ok), job skills 1 and 2, spots, NPCs, celestial tower instance (I need the event icon in TimeZoneData_ClassicAden-e.dat I don't have it yet), high elf rank buffs, Gracia sustentation , Wasteland Oasis, water temple,
Blessing of Water event
.

bugs that I can't solve...
high elf quests level 1 to 20, job transfer from class 1, 2 and 3, adding Power of Combat Stats and some Divine Templar skills.

If anyone can help me put together what I need, I'll share everything I did to help the forum.
 
1717009514889.png
1717009569167.png
1717009610323.png
1717009710738.png
1717009805772.png
1717009835913.png
1717009878644.png
1717009919515.png
1717010112330.png
some prints of everything I've done so far
 
  • Вау
Реакции: MrKirill1232

    MrKirill1232

    Баллов: 28
    Ешкин ты кот. Это зашло слишком далеко )
А ребятам - респект, главное: что бы все это не было, как принято у Мобиуса.
 
Назад
Сверху Снизу