Modern L2Mark

Ritsu

Orc
Messages
95
Reaction score
104
1788741594458.png
System/LineageEffect.u - added e_u093_a and e_u093_b classes from Hellbound
SysTextures/LineageEffectsTextures.utx - added Particles.fx_m_t0137, Particles.fx_m_t0143, Etc.fx_m_t0150, Etc.fx_m_t0151, Etc.fx_m_t0152, Etc.fx_m_t0153 and Etc.fx_m_t0154 textures from Hellbound

System/Engine.u
before:
Code:
// interactionmaster class
event bool Process_KeyEvent(array<Interaction> InteractionArray, out EInputKey Key, out EInputAction Action, FLOAT Delta)
{
    local int Index;
    for (Index = 0; Index < InteractionArray.Length; Index++)
    {
        if (InteractionArray[Index].bActive && !InteractionArray[Index].bNativeEvents
            && InteractionArray[Index].KeyEvent(Key, Action, Delta))
            return true;
    }
    return false;
}

// markprojector class
function UpdateMarkProjector()
{
    if (bAttachMark)
    {
        DetachProjector(true);
        SetCollision(false, false, false);
        FOV = 1;
        UpdateDesireLocation();
        SetLocation(DesireLocation);
        SetRotation(Rotator(-OffsetDesireLocation));
        SetDrawScale(0.10);
        AttachProjector();
        SetCollision(true, false, false);
        bAttachMark = false;
        SetTimer(10, false);
    }
}
simulated function Tick(float DeltaTime)
{
    super.Tick(DeltaTime);
    UpdateMarkProjector();
}

after:
Code:
// interactionmaster class
event bool Process_KeyEvent(array<Interaction> InteractionArray, out EInputKey Key, out EInputAction Action, FLOAT Delta)
{
    local int Index;

    if (Key == IK_LeftMouse && Action == IST_Press)
        class'MarkProjector'.default.FOV = 1;

    for (Index = 0; Index < InteractionArray.Length; Index++)
    {
        if (InteractionArray[Index].bActive && !InteractionArray[Index].bNativeEvents
            && InteractionArray[Index].KeyEvent(Key, Action, Delta))
            return true;
    }
    return false;
}

// markprojector class
function UpdateMarkProjector()
{
    if (bAttachMark)
    {
        DetachProjector(true);
        SetCollision(false, false, false);
        FOV = 1;
        UpdateDesireLocation();
        SetLocation(DesireLocation);
        SetRotation(Rotator(-OffsetDesireLocation));
        SetDrawScale(0.001);
        AttachProjector();

        if (ProjectedActor != None)
        {
            ProjectedActor.NDestroy();
            ProjectedActor = None;
        }

        foreach RadiusActors(class'L2Pickup', ProjectedActor, 60, DesireLocation);

        if (ProjectedActor != None)
            ProjectedActor = None;
        else
            ProjectedActor = Spawn(class<Actor>(DynamicLoadObject("LineageEffect.e_u093_a", class'Class')),
                                   None, '', DesireLocation, rot(0,0,0));

        SetCollision(true, false, false);
        bAttachMark = false;
        SetTimer(30, false);
    }
}
simulated function Tick(float DeltaTime)
{
    if (default.FOV > 0)
    {
        default.FOV = 0;
        if (!bAttachMark && ProjectedActor != None)
        {
            UpdateDesireLocation();
            bAttachMark = false;
            if (VSize(DesireLocation - Location) > 50)
            {
                ProjectedActor.NDestroy();
                ProjectedActor = None;
            }
            DesireLocation = Location;
        }
    }

    if (ProjectedActor != None && ProjectedActor.bDeleteMe)
        ProjectedActor = None;

    if (ProjectedActor != None && RenderInfo.Ptr == 0)
    {
        ProjectedActor.NDestroy();
        ProjectedActor = None;
    }

    if (ProjectedActor != None
        && VSize(Level.GetLocalPlayerController().Pawn.Location - DesireLocation) < 30)
    {
        ProjectedActor.NDestroy();
        ProjectedActor = Spawn(class<Actor>(DynamicLoadObject("LineageEffect.e_u093_b", class'Class')),
                               None, '', DesireLocation, rot(0,0,0));
        ProjectedActor = None;
    }

    if (ProjectedActor != None && ProjectedActor.LifeSpan < 29
        && VSize(Level.GetLocalPlayerController().Pawn.Velocity) < 1)
    {
        ProjectedActor.NDestroy();
        ProjectedActor = None;
    }

    super.Tick(DeltaTime);
    UpdateMarkProjector();
}
 
Last edited:
Спс, но выглядить очень различно. Текстура отсутствует (есть только синий эффект). Тоже, эффект проявляется только на секунду.
 
Спс, но выглядить очень различно. Текстура отсутствует (есть только синий эффект). Тоже, эффект проявляется только на секунду.
а ты точно скопировал папку systextures? без неё так и будет - просто синий эффект всплеска в конце
после полной установки должно быть как на скрине

установка: скопировать Modern L2Mark в patches в корень клиента, где уже лежат другие патчи. и потом включить его в апдейтере
 
Last edited:
У меня, когда щелкаю, появляется синяя вспышка. Метки, как на скрине не появляется. Как правильно установить мод? Я просто закинул в папку patches.
 
Last edited:
Тоже самое,поставил патч,работает,но как-то нестабильно : переодически синяя метка остается и не пропадает,а бывает кликаешь и пропадает.А еще она вместе с меткой из ц1,как будто поверх просто нее,но это видимо так и задумывалось?А так большое спасибо за патч!

1788771443510.png
 
Last edited:
Тоже самое,поставил патч,работает,но как-то нестабильно : переодически синяя метка остается и не пропадает,а бывает кликаешь и пропадает.А еще она вместе с меткой из ц1,как будто поверх просто нее,но это видимо так и задумывалось?А так большое спасибо за патч!

View attachment 25238
у меня оригинальной метки из ц1 не видно совсем, сорян, забыл её удалить :D

а вот то, что метка не всегда пропадает, когда кликаешь в новое место - это ожидаемо. скрипт получает не все события, в оригинале метка ставится и убирается из дллки и там нет таких ограничений
 
у меня оригинальной метки из ц1 не видно совсем, сорян, забыл её удалить :D
Может и не забыл удалить,потому что на разных поверхностях она как-то по-разному работает,типо вот на брусчатке метки из ц1 не видно1788772643307.png

А вот когда на нажимаешь на травичку или дорожку грунтовую - метку видно,ну да ладно,это всё мелочи,я так фидбек даю просто,мало ли полезно будет

1788772822609.png
 
Может и не забыл удалить,потому что на разных поверхностях она как-то по-разному работает,типо вот на брусчатке метки из ц1 не видно
спасибо!

по поводу метки, стандартная ц1 метка в целом нестабильно работает, не везде появляется. но вместе с новой меткой в комплекте она идти не должна. на более поздних клиентах через l2.ini можно даже переключаться между этими метками, или выключить совсем.

обновил патч, теперь должна быть только новая.


У меня, когда щелкаю, появляется синяя вспышка. Метки, как на скрине не появляется. Как правильно установить мод? Я просто закинул в папку patches.
проверь, что файл LineageEffectsTextures.utx в SysTextures берется из патча и не затирается каким-то другим, там все нужные текстурки
 
С новом обнова всегда работает. Спасибо большое! Очень круто!!!
 
спасибо!

по поводу метки, стандартная ц1 метка в целом нестабильно работает, не везде появляется. но вместе с новой меткой в комплекте она идти не должна. на более поздних клиентах через l2.ini можно даже переключаться между этими метками, или выключить совсем.

обновил патч, теперь должна быть только новая.



проверь, что файл LineageEffectsTextures.utx в SysTextures берется из патча и не затирается каким-то другим, там все нужные текстурки
Стандартная метка - это деколь на поверхности. И походу она накладывается на землю и некоторые модели, стоящие на ней. Но иногда проваливается через пол до самой земли. Пол города тому пример. Потому и кажется, что удалил её =)
 
Стандартная метка - это деколь на поверхности. И походу она накладывается на землю и некоторые модели, стоящие на ней. Но иногда проваливается через пол до самой земли. Пол города тому пример. Потому и кажется, что удалил её =)
я через виртуалку играю. не разбирался в чём конкретно дело, но на ней эту 2д метку вообще ни в какой ситуации не видно.
dxwrapper это как-то чинит (разумеется нюансы про которые ты написал остаются, её всё ещё много где не видно). пока тестил потерял его из папки и не заметил
 
а не подскажите почему у меня UE ED при попытке открыть LineageEffectsTextures.utx выдает крит эррор? хотел себе сделать минималистичную версию метки
а стандартный LineageEffectsTextures.utx из клиента открывается? попробуй через UEViewer/umodel
 
а стандартный LineageEffectsTextures.utx из клиента открывается? попробуй через UEViewer/umodel
стандартный кстати да, открывается
 
Back
Top