Первый инстанс Орков Кхаши

  • Автор темы Автор темы Gigi
  • Дата начала Дата начала
Статус
В этой теме нельзя размещать новые ответы.

Gigi

Прославленный
Проверенный
Легенда Истоков
Старожил I степени
Сообщения
473
Розыгрыши
0
Решения
3
Репутация
219
Реакции
135
Баллы
1 438
Хроники
  1. Master Class
Сборка
Mobius (507 протокол)
Никто не вкурсе как эту кучу мусора собрать? это не статик-меш так как после уничтожения в комнате всех монстров, он исчезает. Исходя из этого это или нпц с каким то дисплей эффектом (или визуальным скилом) или ивент тригер зоны (Геоквадрат 20_14)

12.webp
Заранее спасибо за подсказку ;)
 
это может быть дверь+эмиттер с евент ид, как на острове хб,фафурион,т.п.
попробуй через л2пе посмотреть евент ид эмттеров, а в статикобжект двери с началом ид 2014***
 
Скорее всего реально дверь с эвентом.

Скинь файл сектора - дам в ответ декриптнутую версию, а там уже найдешь что надо.
 
Там по две двери в каждом проходе, они по дефолту закриты

Код:
door_begin    [Instant_du02_s.penetration.Instant_du02_em_02]    type = normal_type    static_object_id = 20140200    open_method = by_skill    pos={20522;-109933;-3330}    range={{20640;-110106;-3334};{20668;-110079;-3334};{20407;-109761;-3334};{20376;-109788;-3334}}    hp=    physical_defence=    magical_defence=    level=    close_time=    door_end
door_begin    [Instant_du02_s.penetration.Instant_du02_em_02]    type = normal_type    static_object_id = 20140202    open_method = by_skill    pos={19874;-110914;-3270}    range={{20153;-110940;-3274};{20154;-110893;-3274};{19597;-110890;-3274};{19596;-110939;-3274}}    hp=    physical_defence=    magical_defence=    level=    close_time=    door_end
door_begin    [Instant_du02_s.penetration.Instant_du02_em_02]    type = normal_type    static_object_id = 20140204    open_method = by_skill    pos={20014;-113970;-3266}    range={{20293;-113996;-3270};{20294;-113949;-3270};{19737;-113946;-3270};{19736;-113995;-3270}}    hp=    physical_defence=    magical_defence=    level=    close_time=    door_end
door_begin    [Instant_du02_s.penetration.Instant_du02_em_02]    type = normal_type    static_object_id = 20140206    open_method = by_skill    pos={20212;-114460;-3330}    range={{20466;-114329;-3334};{20425;-114266;-3335};{19961;-114587;-3334};{19996;-114641;-3334}}    hp=    physical_defence=    magical_defence=    level=    close_time=    door_end
door_begin    [Instant_du02_s.penetration.Instant_du02_em_02]    type = normal_type    static_object_id = 20140208    open_method = by_skill    pos={21861;-116753;-3329}    range={{22140;-116784;-3333};{22143;-116726;-3334};{21575;-116720;-3333};{21573;-116783;-3333}}    hp=    physical_defence=    magical_defence=    level=    close_time=    door_end
door_begin    [Instant_du02_s.penetration.Instant_du02_em_02]    type = normal_type    static_object_id = 20140210    open_method = by_skill    pos={22316;-119307;-3329}    range={{22595;-119338;-3333};{22598;-119280;-3334};{22030;-119273;-3333};{22028;-119336;-3333}}    hp=    physical_defence=    magical_defence=    level=    close_time=    door_end
door_begin    [Instant_du02_s.penetration.Instant_du02_em_02]    type = normal_type    static_object_id = 20140212    open_method = by_skill    pos={23344;-119307;-3329}    range={{23623;-119338;-3333};{23626;-119280;-3334};{23058;-119273;-3333};{23056;-119336;-3333}}    hp=    physical_defence=    magical_defence=    level=    close_time=    door_end

вот сама карта
 

Вложения

  • 20_14.zip
    20_14.zip
    1,9 МБ · Просмотры: 7
Вот, в архиве полностью карта и отдельно двери.
Есть как минимум один эвент, но почему-то странно пронумерованный - 14240003.
 

Вложения

  • 20_14.zip
    20_14.zip
    909 КБ · Просмотры: 8
По идее этот триггер должен зажигать огни во всех комнатах пещеры судя по эмитерам , но и этого не делает :(, и странная нумерация ....
А вообще что отвечает в клиенте на тот или иной триггер, что отвечает на саму анимацию? к примеру где это - Tag=1424_Effect_part03 в конкретном случае
 
Прошло много времени, и мой разум немножка приблизился к корейскому
так вот в LevelAmbience.dat есть указания на эти квадраты

Код:
level_ambience_begin    id=519    map_x=20    map_y=14    default_state=0    state=4    level_ambience_end
level_ambience_begin    id=520    map_x=20    map_y=14    default_state=0    state=5    level_ambience_end

ну я их срочно добавил в ExChangeClientEffectInfo, ну к примеру так

Код:
public static final ExChangeClientEffectInfo ABANDONED_CAVE_OF_TRIALS_CLOSE = new ExChangeClientEffectInfo(0, 0, 4);
public static final ExChangeClientEffectInfo ABANDONED_CAVE_OF_TRIALS_OPEN = new ExChangeClientEffectInfo(0, 0, 5);

нашёл пример вызова ExChangeClientEffectInfo в замке фреии (ну где там стены рушатся)
ну всё думал кончились мой мучения, визиваю его при спавне в первую комнату (двери пока все закрыты)

Java:
player.broadcastPacket(ExChangeClientEffectInfo.ABANDONED_CAVE_OF_TRIALS_CLOSE);
player.sendPacket(new OnEventTrigger(14240003, true)); // Map event trigger

Нечего не помогает не true/false не смена ExChangeClientEffectInfo :ROFLMAO: не хочет осёл и всё тут. Даже спортивный интерес появился.

Есть идеи что опять не так?
 
как вариант еще и id задействован, т.е. к примеру

Java:
public static final ExChangeClientEffectInfo ABANDONED_CAVE_OF_TRIALS_CLOSE = new ExChangeClientEffectInfo(0, 519, 4);
public static final ExChangeClientEffectInfo ABANDONED_CAVE_OF_TRIALS_OPEN = new ExChangeClientEffectInfo(0, 520, 5);
 
Нет, просто корейцы сделали отдельный пакет для этой датки, о котором мобиус не знает видимо.
Java:
/**
 * @author Index
 * @version Heart Of Volcano | p474 | 12/12/2024
 * interface definition _S_EX_LEVELAMBIENCE_CHANGEDINFO
 * @implNote levelAmbienceId takes from `LevelAmbience.dat` | do not miss this value with map state
 */
public class ExLevelAmbienceChangedInfo implements IClientOutgoingPacket
{
    private final int _packetType;
    private final int[] _levelAmbienceIdArray;

    public ExLevelAmbienceChangedInfo(int packetType, int... levelAmbienceId)
    {
        _packetType = packetType;
        _levelAmbienceIdArray = levelAmbienceId == null ? DefaultVariables.EMPTY_INTEGER_PRIMITIVE_ARRAY : levelAmbienceId;
    }

    // Model: Codex-GPT5.1 | Date: 2025-11-18 04:18:53 | Generated by agent | Task: map packet opcodes
    @Override
    public IServerPacketOpCode getPacketOpCode()
    {
        return ExServerPacketsOpCodes.S_EX_LEVELAMBIENCE_CHANGEDINFO;
    }
    // Model: Codex-GPT5.1 | Date: 2025-11-18 04:18:53 | Generated by agent | Task: map packet opcodes

    @Override
    public boolean write(PacketWriter packetWriter)
    {
        packetWriter.writeD(_packetType);
        packetWriter.writeDD(_levelAmbienceIdArray, true);
        return true;
    }
}
 
там они налепили зоне стейтов 4 и 5 насколько понятно из названий, R1, R2, R3, R4 скорее всего комнаты
1768125550742.webp
двери с эмиттером там тоже есть
1768126183375.webp
1768125309068.webp 1768125396989.webp
 

Вложения

Последнее редактирование:
Нет, просто корейцы сделали отдельный пакет для этой датки, о котором мобиус не знает видимо.
Java:
/**
 * @author Index
 * @version Heart Of Volcano | p474 | 12/12/2024
 * interface definition _S_EX_LEVELAMBIENCE_CHANGEDINFO
 * @implNote levelAmbienceId takes from `LevelAmbience.dat` | do not miss this value with map state
 */
public class ExLevelAmbienceChangedInfo implements IClientOutgoingPacket
{
    private final int _packetType;
    private final int[] _levelAmbienceIdArray;

    public ExLevelAmbienceChangedInfo(int packetType, int... levelAmbienceId)
    {
        _packetType = packetType;
        _levelAmbienceIdArray = levelAmbienceId == null ? DefaultVariables.EMPTY_INTEGER_PRIMITIVE_ARRAY : levelAmbienceId;
    }

    // Model: Codex-GPT5.1 | Date: 2025-11-18 04:18:53 | Generated by agent | Task: map packet opcodes
    @Override
    public IServerPacketOpCode getPacketOpCode()
    {
        return ExServerPacketsOpCodes.S_EX_LEVELAMBIENCE_CHANGEDINFO;
    }
    // Model: Codex-GPT5.1 | Date: 2025-11-18 04:18:53 | Generated by agent | Task: map packet opcodes

    @Override
    public boolean write(PacketWriter packetWriter)
    {
        packetWriter.writeD(_packetType);
        packetWriter.writeDD(_levelAmbienceIdArray, true);
        return true;
    }
}
Ну если этот пакет перенесли в ExLevelAmbienceChangedInfo то как тогда в гиране показывет эффект через ExChangeClientEffectInfo :unsure: (осень, зима, цветы ....)
 
Ну если этот пакет перенесли в ExLevelAmbienceChangedInfo то как тогда в гиране показывет эффект через ExChangeClientEffectInfo :unsure: (осень, зима, цветы ....)
потому-что этот пакет вызывает смену стейтов карты, которые прописаны по ИД в отдельной датке.
 
Ну если этот пакет перенесли в ExLevelAmbienceChangedInfo то как тогда в гиране показывет эффект через ExChangeClientEffectInfo :unsure: (осень, зима, цветы ....)
ExLevelAmbienceChangedInfo так же меняет погоду в гиране.
И еще в зоне где босс атрус меняет обстановку

По факту в этой пещере используется 519 и 520 id.

При входе - 519.
После освобождения пленника - 520.
После освобождения второго пленника - 519.

и так до конца, 519 и 520 чередуются
Гиран
501 - обычный
502 - зима
503 - весна
504 - фонтаны
505 - осень

level_ambience_begin id=501 map_x=22 map_y=22 default_state=1 state=2 level_ambience_end
level_ambience_begin id=502 map_x=22 map_y=22 default_state=1 state=3 level_ambience_end
level_ambience_begin id=503 map_x=22 map_y=22 default_state=1 state=4 level_ambience_end
level_ambience_begin id=504 map_x=22 map_y=22 default_state=1 state=5 level_ambience_end
level_ambience_begin id=505 map_x=22 map_y=22 default_state=1 state=6 level_ambience_end
level_ambience_begin id=506 map_x=24 map_y=18 default_state=1 state=2 level_ambience_end
level_ambience_begin id=507 map_x=24 map_y=18 default_state=1 state=3 level_ambience_end
level_ambience_begin id=508 map_x=24 map_y=18 default_state=1 state=4 level_ambience_end
level_ambience_begin id=509 map_x=24 map_y=18 default_state=1 state=5 level_ambience_end
level_ambience_begin id=510 map_x=24 map_y=18 default_state=1 state=6 level_ambience_end
level_ambience_begin id=511 map_x=22 map_y=22 default_state=1 state=7 level_ambience_end
level_ambience_begin id=512 map_x=22 map_y=14 default_state=0 state=1 level_ambience_end
level_ambience_begin id=513 map_x=22 map_y=14 default_state=0 state=2 level_ambience_end
level_ambience_begin id=514 map_x=19 map_y=14 default_state=0 state=1 level_ambience_end
level_ambience_begin id=515 map_x=19 map_y=14 default_state=0 state=2 level_ambience_end
level_ambience_begin id=516 map_x=19 map_y=13 default_state=0 state=1 level_ambience_end
level_ambience_begin id=517 map_x=19 map_y=13 default_state=0 state=2 level_ambience_end
level_ambience_begin id=518 map_x=18 map_y=14 default_state=0 state=1 level_ambience_end
level_ambience_begin id=519 map_x=20 map_y=14 default_state=0 state=4 level_ambience_end
level_ambience_begin id=520 map_x=20 map_y=14 default_state=0 state=5 level_ambience_end
level_ambience_begin id=521 map_x=20 map_y=14 default_state=0 state=1 level_ambience_end
level_ambience_begin id=522 map_x=20 map_y=14 default_state=0 state=2 level_ambience_end
level_ambience_begin id=523 map_x=20 map_y=14 default_state=0 state=3 level_ambience_end
 
Последнее редактирование:
Всё поучилось, спасибо всем кто помогал
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху Снизу