Dumper-7 SDK ile UE4 kodlama yardım

Üye
Katılım
27 Nis 2019
Mesajlar
3
Tepki puanı
0
Ödüller
5
Yaş
28
7 HİZMET YILI
Merhabalar, bu tür işlerde yeniyim. Bir oyun için bot yazmayı amaçlıyorum(Mobile2, Metin2 gibi bir oyun). Oyun UE4 kullanıyor. Dumper-7 kullanarak tüm SDK'yi dumpladım. Elimde cpp ve header dosyaları var ama ben bu oyuna nasıl bot yazacağım anlamadım. Dumper-7 Github sayfasında SDK kullanımına baktım ama pek bir şey anlamadım (ingilizcem var). İstediğim spesifik özelliklere nasıl ulaşacağımı ve manipüle edeceğimi bilmiyorum yardımcı olursanız sevinirim. Örnek olarak karakterin HP'sini nasıl SDK'den çekip console'a yazdırabilirim?
 
Üye
Katılım
27 Nis 2019
Mesajlar
3
Tepki puanı
0
Ödüller
5
Yaş
28
7 HİZMET YILI
@KusursuzHacker bu konuda bilginiz var gibi yardımcı olursanız çok sevinirim. Aradığım bilgiler Mobile2mmo class'ının içinde ALoader sınıfındaki CharData struct'ının içerisinde (HP, XP gibi bilgiler) ama Loader'a erişemiyorum.
 
Üye
Katılım
27 Nis 2019
Mesajlar
3
Tepki puanı
0
Ödüller
5
Yaş
28
7 HİZMET YILI
Yardıma gerek kalmadı sorunu çözdüm. Çözümü merak edenler için:
UWorld içerisinde PersistentLevel->Actors'den hepsini tek tek iterate ettim. Eğer Actor Loader classına sahip ise çektim. Tabii bu farklı bir yaklaşım, benim istediğim Loader'a sahip class içerisinden Loader'a ulaşmaktı böylece tüm Actorleri çekmeye gerek kalmayacak direkt ulaşacaktım ama bu da iş görür.

Kod:
C++:
void FindLoader(SDK::UWorld* World)
{
    if (!World) return;

    //Iterating through world actors
    auto& Actors = World->PersistentLevel->Actors;
    for (int i = 0; i < Actors.Num(); i++)
    {
        SDK::AActor* Actor = Actors[i];
        if (Actor && Actor->IsA(SDK::ALoader::StaticClass()))
        {
            SDK::ALoader* Loader = static_cast<SDK::ALoader*>(Actor);
            std::cout << "Found Loader: " << Loader << std::endl;

            std::cout << "Hp: " << Loader->CharData.HP << std::endl;

            if (Loader->Game)
            {
                std::cout << "Found Game instance through Loader" << std::endl;
            }
        }
    }
}
 
Üst