Jump to content

Recommended Posts

Hey,

Today i will show you how you can fix easy the invisibility effect bug and the AFFECT_EUNHYEONG = sealth ninja skill from 17.5 Official update.

InstanceBase.cpp (Is hiding the ninja from the minimap)

Spoiler

Search for:

Spoiler

BOOL CInstanceBase::IsInvisibility()

{

    if (IsAffect(AFFECT_INVISIBILITY))
        return true;

    return false;

}

 

Replace with:

Spoiler

BOOL CInstanceBase::IsInvisibility()
{
    if (IsAffect(AFFECT_INVISIBILITY) || IsAffect(AFFECT_EUNHYEONG))
        return true;

    return false;
}

 

Search for:

Spoiler

void CInstanceBase::Render()
{

Inside the function search for:

 m_GraphicThingInstance.Render();

Add bellow:

  1.     CPythonCharacterManager & rkChrMgr = CPythonCharacterManager::Instance();
  2.  
  3.     for (auto ptr = rkChrMgr.CharacterInstanceBegin(); ptr != rkChrMgr.CharacterInstanceEnd(); ++ptr)
  4.     {
  5.         CInstanceBase * pkInstEach = *ptr;
  6.  
  7.         if (pkInstEach)
  8.         {
  9.             if (pkInstEach->IsAffect(AFFECT_EUNHYEONG) || pkInstEach->IsAffect(AFFECT_INVISIBILITY))
  10.             {
  11.                 if (CPythonPlayer::Instance().IsMainCharacterIndex(pkInstEach->GetVirtualID()))
  12.                     continue;
  13.  
  14.                 pkInstEach->m_GraphicThingInstance.HideAllAttachingEffect();
  15.             }
  16.         }
  17.     }

 

InstanceBaseEffect.cpp

Search for:

Spoiler

void CInstanceBase::__SetAffect(UINT eAffect, bool isVisible)
{

Inside the function search:

        case AFFECT_INVISIBILITY:
            if (isVisible)
            {
                m_GraphicThingInstance.ClearAttachingEffect();
                __EffectContainer_Destroy();
                DetachTextTail();
            }
            else
            {
                m_GraphicThingInstance.BlendAlphaValue(1.0f, 1.0f);
                AttachTextTail();
                RefreshTextTail();
            }
            return;
            break;

}

Replace with:

Spoiler

        case AFFECT_INVISIBILITY:
            if (isVisible)
            {
                // m_GraphicThingInstance.ClearAttachingEffect();
                // __EffectContainer_Destroy();
                // DetachTextTail();
                m_GraphicThingInstance.HideAllAttachingEffect();
            }
            else
            {
                m_GraphicThingInstance.BlendAlphaValue(1.0f, 1.0f);
                m_GraphicThingInstance.ShowAllAttachingEffect();

                // AttachTextTail();
                // RefreshTextTail();
            }
            return;
            break;

 

  • Metin2 Dev 4
  • Love 19
Link to comment
https://metin2.dev/topic/18922-fix-invisibility-and-skill-affect-eunhyeong/
Share on other sites

  • 2 weeks later...
  • Active Member

Thank you for this release, but it has a small bug. Make your GM character invisible, then zoom in your chatracter. You will se your character all it effects like GM logo, and skill effects. Then use Ninja hiding skill, and make this camera movement again with another character next to the ninja char. You will see the armor effects on the ninja :)

 

  • Love 2

thx for sharing this fix 

but there is still one bug with m_GraphicThingInstance.HideAllAttachingEffect(); that when any player zoom to gm he can see his gm logo

 https://metin2.download/picture/uq37GLp9hzMK0vWbvUmAojq9YZWtntLe/.png

 

hopefully you can fix it

 

Edited by Metin2 Dev
Core X - External 2 Internal
  • Metin2 Dev 1
  • Good 3
  • Love 3
  • 3 months later...
  • 1 month later...
  • Honorable Member

One problem in the instancebase.cpp file. Other players do not see the visualization of skills. Is anyone able to fix it?

giphy.webp

Edited by Metin2 Dev
Core X - External 2 Internal
  • Love 2

GhwYizE.gif

  • 2 weeks later...
On 11/21/2018 at 5:59 PM, Tatsumaru said:

One problem in the instancebase.cpp file. Other players do not see the visualization of skills. Is anyone able to fix it?

giphy.webp

That problem is exist in official too, when i got some more time i will check more to find a solution, but atm idk.

Edited by Metin2 Dev
Core X - External 2 Internal
  • Love 5
  • 3 weeks later...
En 21/11/2018 a las 12:59, Tatsumaru dijo:

One problem in the instancebase.cpp file. Other players do not see the visualization of skills. Is anyone able to fix it?

giphy.webp

This is what you want?

2mu7KQx.gif

(the delay is because I've tested in a online sv and my conection is bad)

Edited by Metin2 Dev
Core X - External 2 Internal
  • Honorable Member
20 minut temu, xUniverse napisał:

This is what you want?

2mu7KQx.gif

(the delay is because I've tested in a online sv and my conection is bad)

will the ninja disappear from the radar of the shaman?

Edited by Metin2 Dev
Core X - External 2 Internal

GhwYizE.gif

  • 1 month later...
  • Active+ Member
On 12/20/2018 at 11:12 AM, xUniverse said:

This is what you want?

2mu7KQx.gif

(the delay is because I've tested in a online sv and my conection is bad)

Anyone has this fix?

Edited by Metin2 Dev
Core X - External 2 Internal
  • 2 weeks later...
En 3/2/2019 a las 1:22, Mind Rapist dijo:

Anyone has this fix?

I've modified the CInstanceBase::__Assassin_SetEunhyeongAffect(bool isVisible) in InstanceBaseEffect.cpp.

1. If the player have the affect: the function destroys (with __EffectContainer_Destroy) all effects.
2. If the affect ends: I've created two new functions (RefreshRefinedEffect and RefreshAffectEffect) that "reload" the attached effects again.

For the moment the only bug I found is: if you login with the affect, all effects will be shown again...

Does anyone have another idea?

  • Active+ Member
On 2/17/2019 at 11:05 AM, xUniverse said:

I've modified the CInstanceBase::__Assassin_SetEunhyeongAffect(bool isVisible) in InstanceBaseEffect.cpp.

1. If the player have the affect: the function destroys (with __EffectContainer_Destroy) all effects.
2. If the affect ends: I've created two new functions (RefreshRefinedEffect and RefreshAffectEffect) that "reload" the attached effects again.

For the moment the only bug I found is: if you login with the affect, all effects will be shown again...

Does anyone have another idea?

That gives me an idea! If someone knows the name of the colored effect that fires on skill activation (not the skill's affect itself) just the effect around the player, we can exclude it from being executed during __EffectContainer_Destroy.

  • 4 weeks later...

Thanks for the code, I used a bit.
Fix is not correct, because it's just hiding effects and the player(and GM) from another kingdom sees on the minimap of the opponent.
But I respect and appreciate!
So far, I managed to do it for now:
https://youtu.be/wvN5Io_tXL8
But I do not have time to refine the code, I will definitely do it and share it someday!

  • Metin2 Dev 1
  • Good 1
  • Love 1
  • 10 months later...
  • 4 weeks later...

Don't use any images from : imgur, turkmmop, freakgamers, inforge, hizliresim... Or your content will be deleted without notice...
Use : https://metin2.download/media/add/

Please use https://metin2.download/ when uploading files smaller than 100MB, otherwise the approval will take longer due to manual upload.

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.