Neler yeni

ÇÖZÜLDÜ GENEİYİ NASIL SABIT KALMAMSINI AYARLARIM

QuetrawX

KY Kıdemli Üye
Katılım
16 Nis 2024
Mesajlar
94
Tepki puanı
4
Puanları
8
Çözuldu YNG ABİMİZ SAGOLSUN genie sağ ust koşede duruyo ben bunu haraket etmesını istiyorum
 

Ekli dosyalar

  • HELP.png
    HELP.png
    41.5 KB · Görüntüleme: 5
Son düzenleme:
Çözüm
Merhaba

Genie sabit kaldırmak için yapılması gerekenler.

Hook tarafından düzenlenecek yerler

C++:
*(DWORD*)0xC6F480 = (DWORD)hkGenieSetPos;
void __stdcall SetVisible_Hook
void __stdcall SetUI_Hook(int x, int y)

Böyle düzenleyin
C++:
#if 0
    *(DWORD*)0xC6F480 = (DWORD)hkGenieSetPos;
#endif

void __stdcall SetVisible_Hook(bool isVisible)
{
    DWORD thisPtr;
    __asm
    {
        MOV thisPtr, ECX
    }

    if (g_pMain->varius
        && thisPtr == g_pMain->varius
        && g_pMain->pClientUIState && isVisible)
        g_pMain->pClientUIState->resetPerks();

    if (g_pMain->uiSeedHelperPlug != NULL && thisPtr == g_pMain->uiSeedHelperPlug->group_option_grapic2)
    {...

Melanor21

KY Uzman Üye
KY YardımSever
Katılım
23 Mar 2024
Mesajlar
72
Konu Çözümleri
2
Tepki puanı
45
Puanları
18
çözülen varsa benimle paylaşabilir misi lazım olanlar var.
 

YNG

S.Moderatör
Coder
Teknik Üye
KY YardımSever
Katılım
21 Ağu 2022
Mesajlar
122
Konu Çözümleri
7
Tepki puanı
183
Puanları
73
Yaş
35
Merhaba

Genie sabit kaldırmak için yapılması gerekenler.

Hook tarafından düzenlenecek yerler

C++:
*(DWORD*)0xC6F480 = (DWORD)hkGenieSetPos;
void __stdcall SetVisible_Hook
void __stdcall SetUI_Hook(int x, int y)

Böyle düzenleyin
C++:
#if 0
    *(DWORD*)0xC6F480 = (DWORD)hkGenieSetPos;
#endif

void __stdcall SetVisible_Hook(bool isVisible)
{
    DWORD thisPtr;
    __asm
    {
        MOV thisPtr, ECX
    }

    if (g_pMain->varius
        && thisPtr == g_pMain->varius
        && g_pMain->pClientUIState && isVisible)
        g_pMain->pClientUIState->resetPerks();

    if (g_pMain->uiSeedHelperPlug != NULL && thisPtr == g_pMain->uiSeedHelperPlug->group_option_grapic2)
    {
        g_pMain->SetState(g_pMain->uiSeedHelperPlug->btn_render_objects, isRenderObject ? UI_STATE_BUTTON_DOWN : UI_STATE_BUTTON_NORMAL);
        g_pMain->SetState(g_pMain->uiSeedHelperPlug->btn_hide_player, isHideUser ? UI_STATE_BUTTON_DOWN : UI_STATE_BUTTON_NORMAL);
    }
    if (g_pMain->uiGenieMain != NULL && g_pMain->uiGenieMain->etc == thisPtr && isVisible)
    {
        g_pMain->SetState(g_pMain->uiGenieMain->btn_party_leader_on, isLeaderAttack ? UI_STATE_BUTTON_DOWN : UI_STATE_BUTTON_NORMAL);
        g_pMain->SetState(g_pMain->uiGenieMain->btn_party_leader_off, isLeaderAttack ? UI_STATE_BUTTON_NORMAL : UI_STATE_BUTTON_DOWN);
    }

    //Genie YNG
#if 0
    if (g_pMain->uiGenieSubPlug != NULL)
    {
        if (thisPtr == g_pMain->uiGenieSubPlug->TargetSam || thisPtr == g_pMain->uiGenieSubPlug->TargetTwo)
        {
#if (HOOK_SOURCE_VERSION == 1098 || HOOK_SOURCE_VERSION == 1534)
            POINT pt;
            g_pMain->GetUiPos(g_pMain->hkServerNotice, pt);
            LONG isPost = 63;
            if (thisPtr == g_pMain->uiGenieSubPlug->TargetSam && isVisible)
                isPost = 115;
            else if (thisPtr == g_pMain->uiGenieSubPlug->TargetSam && !isVisible)
            {
                if (g_pMain->IsVisible(thisPtr))
                    isPost = 89;
            }
            else if (thisPtr == g_pMain->uiGenieSubPlug->TargetTwo && !isVisible)
                isPost = 47;
            else if (thisPtr == g_pMain->uiGenieSubPlug->TargetTwo && isVisible)
                isPost = 93;    //1098 genieye göre target two ayarlandı. v2 de kontrol edilecek.
#else
            POINT pt;
            g_pMain->GetUiPos(g_pMain->hkServerNotice, pt);
            LONG isPost = 69;

            if (thisPtr == g_pMain->uiGenieSubPlug->TargetSam && isVisible)
                isPost = 117;
            else if (thisPtr == g_pMain->uiGenieSubPlug->TargetSam && !isVisible)
            {
                if (g_pMain->IsVisible(thisPtr))
                    isPost = 93;
            }
            else if (thisPtr == g_pMain->uiGenieSubPlug->TargetTwo && !isVisible)
                isPost = 47;
            else if (thisPtr == g_pMain->uiGenieSubPlug->TargetTwo && isVisible)
                isPost = 93;    //2369 genieye göre target two ayarlandı. v2 de kontrol edilecek.
#endif
            RECT ASD = g_pMain->GetUiRegion(g_pMain->uiGenieSubPlug->m_dVTableAddr);
            ASD.bottom = isPost;
            g_pMain->SetUiRegion(g_pMain->uiGenieSubPlug->m_dVTableAddr, ASD);

            if (g_pMain->IsVisible(g_pMain->hkCampAdress))
                isPost += 18;

            POINT zs;
            zs.x = pt.x;
            zs.y = isPost;
            g_pMain->SetUIPos(g_pMain->hkServerNotice, zs);
            if (g_pMain->IsVisible(g_pMain->hkCampAdress))
            {
                g_pMain->GetUiPos(g_pMain->hkCampAdress, pt);
                zs.y = LONG(isPost - 22);
                g_pMain->SetUIPos(g_pMain->hkCampAdress, zs);
            }
            POINT z2;
#if (HOOK_SOURCE_VERSION == 1098 || HOOK_SOURCE_VERSION == 1534)
            z2.x = LONG(koScreen.x - 169);
            z2.y = 0;
#else
            z2.x = LONG(koScreen.x - 187);
            z2.y = 0;
#endif
            g_pMain->SetUIPos(g_pMain->uiGenieSubPlug->m_dVTableAddr, z2);
        }
    }
#endif
    _asm
    {
        MOV ECX, thisPtr
        PUSH isVisible
        CALL oSetVisible
    }
}
void __stdcall SetUI_Hook(int x, int y)
{
    DWORD thisPtr;
    
    __asm
    {
        MOV thisPtr, ECX
    }
    //Genie YNG
#if 0
    if (g_pMain->uiGenieSubPlug && g_pMain->uiGenieSubPlug->m_dVTableAddr == thisPtr)
    {
        koScreen = *(POINT*)KO_UI_SCREEN_SIZE;
        POINT pt;
        g_pMain->GetUiPos(thisPtr, pt);


#if (HOOK_SOURCE_VERSION == 1098 || HOOK_SOURCE_VERSION == 1534)
        x = LONG(koScreen.x - 169);
        y = 0;
#else
        x = LONG(koScreen.x - 187);
        y = 0;
#endif
    }
    else
    {

        if (g_pMain->uiGenieSubPlug 
            && g_pMain->m_bGameStart 
            && g_pMain->uiGenieSubPlug->m_dVTableAddr != NULL)
        {

            POINT zs;
#if (HOOK_SOURCE_VERSION == 1098 || HOOK_SOURCE_VERSION == 1534)
            zs.x = LONG(koScreen.x - 169);
            zs.y = 0;
#else
            zs.x = LONG(koScreen.x - 187);
            zs.y = 0;
#endif
            g_pMain->SetUIPos(g_pMain->uiGenieSubPlug->m_dVTableAddr, zs);
        }
    }
#endif
    _asm
    {
        MOV ECX, thisPtr
        PUSH y
        push x
        CALL oSetUIPos
    }
}
 
Çözüm

Lazoqlu

Ko-yardim.com
S.Moderatör
Premium Üye
Kurumsal Üye
Teknik Üye
KY YardımSever
Katılım
22 Ocak 2022
Mesajlar
832
Konu Çözümleri
21
Tepki puanı
570
Puanları
223
Yaş
30
Konum
İstanbul
Ben şimdi İstanbul valiliği ile görüştüm fakat ellerinde yetecek kadar beton yokmuş Çok özürlerini iletiyor abi :D
 

lulu0147

KY Kıdemli Üye
Katılım
4 Ağu 2023
Mesajlar
290
Tepki puanı
22
Puanları
18
Merhaba

Genie sabit kaldırmak için yapılması gerekenler.

Hook tarafından düzenlenecek yerler

C++:
*(DWORD*)0xC6F480 = (DWORD)hkGenieSetPos;
void __stdcall SetVisible_Hook
void __stdcall SetUI_Hook(int x, int y)

Böyle düzenleyin
C++:
#if 0
    *(DWORD*)0xC6F480 = (DWORD)hkGenieSetPos;
#endif

void __stdcall SetVisible_Hook(bool isVisible)
{
    DWORD thisPtr;
    __asm
    {
        MOV thisPtr, ECX
    }

    if (g_pMain->varius
        && thisPtr == g_pMain->varius
        && g_pMain->pClientUIState && isVisible)
        g_pMain->pClientUIState->resetPerks();

    if (g_pMain->uiSeedHelperPlug != NULL && thisPtr == g_pMain->uiSeedHelperPlug->group_option_grapic2)
    {
        g_pMain->SetState(g_pMain->uiSeedHelperPlug->btn_render_objects, isRenderObject ? UI_STATE_BUTTON_DOWN : UI_STATE_BUTTON_NORMAL);
        g_pMain->SetState(g_pMain->uiSeedHelperPlug->btn_hide_player, isHideUser ? UI_STATE_BUTTON_DOWN : UI_STATE_BUTTON_NORMAL);
    }
    if (g_pMain->uiGenieMain != NULL && g_pMain->uiGenieMain->etc == thisPtr && isVisible)
    {
        g_pMain->SetState(g_pMain->uiGenieMain->btn_party_leader_on, isLeaderAttack ? UI_STATE_BUTTON_DOWN : UI_STATE_BUTTON_NORMAL);
        g_pMain->SetState(g_pMain->uiGenieMain->btn_party_leader_off, isLeaderAttack ? UI_STATE_BUTTON_NORMAL : UI_STATE_BUTTON_DOWN);
    }

    //Genie YNG
#if 0
    if (g_pMain->uiGenieSubPlug != NULL)
    {
        if (thisPtr == g_pMain->uiGenieSubPlug->TargetSam || thisPtr == g_pMain->uiGenieSubPlug->TargetTwo)
        {
#if (HOOK_SOURCE_VERSION == 1098 || HOOK_SOURCE_VERSION == 1534)
            POINT pt;
            g_pMain->GetUiPos(g_pMain->hkServerNotice, pt);
            LONG isPost = 63;
            if (thisPtr == g_pMain->uiGenieSubPlug->TargetSam && isVisible)
                isPost = 115;
            else if (thisPtr == g_pMain->uiGenieSubPlug->TargetSam && !isVisible)
            {
                if (g_pMain->IsVisible(thisPtr))
                    isPost = 89;
            }
            else if (thisPtr == g_pMain->uiGenieSubPlug->TargetTwo && !isVisible)
                isPost = 47;
            else if (thisPtr == g_pMain->uiGenieSubPlug->TargetTwo && isVisible)
                isPost = 93;    //1098 genieye göre target two ayarlandı. v2 de kontrol edilecek.
#else
            POINT pt;
            g_pMain->GetUiPos(g_pMain->hkServerNotice, pt);
            LONG isPost = 69;

            if (thisPtr == g_pMain->uiGenieSubPlug->TargetSam && isVisible)
                isPost = 117;
            else if (thisPtr == g_pMain->uiGenieSubPlug->TargetSam && !isVisible)
            {
                if (g_pMain->IsVisible(thisPtr))
                    isPost = 93;
            }
            else if (thisPtr == g_pMain->uiGenieSubPlug->TargetTwo && !isVisible)
                isPost = 47;
            else if (thisPtr == g_pMain->uiGenieSubPlug->TargetTwo && isVisible)
                isPost = 93;    //2369 genieye göre target two ayarlandı. v2 de kontrol edilecek.
#endif
            RECT ASD = g_pMain->GetUiRegion(g_pMain->uiGenieSubPlug->m_dVTableAddr);
            ASD.bottom = isPost;
            g_pMain->SetUiRegion(g_pMain->uiGenieSubPlug->m_dVTableAddr, ASD);

            if (g_pMain->IsVisible(g_pMain->hkCampAdress))
                isPost += 18;

            POINT zs;
            zs.x = pt.x;
            zs.y = isPost;
            g_pMain->SetUIPos(g_pMain->hkServerNotice, zs);
            if (g_pMain->IsVisible(g_pMain->hkCampAdress))
            {
                g_pMain->GetUiPos(g_pMain->hkCampAdress, pt);
                zs.y = LONG(isPost - 22);
                g_pMain->SetUIPos(g_pMain->hkCampAdress, zs);
            }
            POINT z2;
#if (HOOK_SOURCE_VERSION == 1098 || HOOK_SOURCE_VERSION == 1534)
            z2.x = LONG(koScreen.x - 169);
            z2.y = 0;
#else
            z2.x = LONG(koScreen.x - 187);
            z2.y = 0;
#endif
            g_pMain->SetUIPos(g_pMain->uiGenieSubPlug->m_dVTableAddr, z2);
        }
    }
#endif
    _asm
    {
        MOV ECX, thisPtr
        PUSH isVisible
        CALL oSetVisible
    }
}
void __stdcall SetUI_Hook(int x, int y)
{
    DWORD thisPtr;
   
    __asm
    {
        MOV thisPtr, ECX
    }
    //Genie YNG
#if 0
    if (g_pMain->uiGenieSubPlug && g_pMain->uiGenieSubPlug->m_dVTableAddr == thisPtr)
    {
        koScreen = *(POINT*)KO_UI_SCREEN_SIZE;
        POINT pt;
        g_pMain->GetUiPos(thisPtr, pt);


#if (HOOK_SOURCE_VERSION == 1098 || HOOK_SOURCE_VERSION == 1534)
        x = LONG(koScreen.x - 169);
        y = 0;
#else
        x = LONG(koScreen.x - 187);
        y = 0;
#endif
    }
    else
    {

        if (g_pMain->uiGenieSubPlug
            && g_pMain->m_bGameStart
            && g_pMain->uiGenieSubPlug->m_dVTableAddr != NULL)
        {

            POINT zs;
#if (HOOK_SOURCE_VERSION == 1098 || HOOK_SOURCE_VERSION == 1534)
            zs.x = LONG(koScreen.x - 169);
            zs.y = 0;
#else
            zs.x = LONG(koScreen.x - 187);
            zs.y = 0;
#endif
            g_pMain->SetUIPos(g_pMain->uiGenieSubPlug->m_dVTableAddr, zs);
        }
    }
#endif
    _asm
    {
        MOV ECX, thisPtr
        PUSH y
        push x
        CALL oSetUIPos
    }
}
acs ye uymadı knka ıstırap kullanıyorum uyumlu olmadı veya ben hata yapıyorum
 

byfantastiq

KY Kıdemli Üye
Katılım
3 Şub 2024
Mesajlar
201
Konu Çözümleri
1
Tepki puanı
15
Puanları
18
g_pMain bildirimi yapılmamış tanımlayıcı diyor.
Patron pearlengine.h de bi tanımını da paylaşırsan muhteşem olur valla ellerine sağlık👏
 

YNG

S.Moderatör
Coder
Teknik Üye
KY YardımSever
Katılım
21 Ağu 2022
Mesajlar
122
Konu Çözümleri
7
Tepki puanı
183
Puanları
73
Yaş
35
g_pMain yazan yerleri Engine
olarak düzeltiniz.
 

byfantastiq

KY Kıdemli Üye
Katılım
3 Şub 2024
Mesajlar
201
Konu Çözümleri
1
Tepki puanı
15
Puanları
18
extern PearlEngine * g_pMain; ben bu şekilde ekledim ama patron senin koda uyumlu olsun diye pearlengine.h ye ancak bu sefer de iki tane daha hata verdi bizde
&& g_pMain->pClientUIState && isVisible)
g_pMain->pClientUIState->resetPerks();

bu bölümlerdeki pClientUIState paketi eksik malesef

kusura bakma hep sorun ile geliyoruz :)
asdasd.jpg
 
Son düzenleme:

Aakinci

Co-Admin
Premium Üye
KY Saygın Üye
Coder
KY YardımSever
KY Kod Editörü
Katılım
5 Tem 2021
Mesajlar
642
Konu Çözümleri
109
Tepki puanı
350
Puanları
123
Yaş
32
g_pMain bildirimi yapılmamış tanımlayıcı diyor.
Patron pearlengine.h de bi tanımını da paylaşırsan muhteşem olur valla ellerine sağlık👏
g_pMain-> yazan yerleri Engine-> olarak değiştirin
 
Reklam
Üst Alt