xranzei 1
xranzei
Agora Metin2 1
Agora Metin2
Bvural41 1
Bvural41
romegames 1
romegames
noisiv 1
noisiv
Manwe Work 1
Manwe Work
Best Studio 1
Best Studio
Hikaye Ekle
Reklam vermek için turkmmo@gmail.com

Edit İtem Tespit syser

  • Konuyu başlatan Konuyu başlatan anagonda1
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 19
  • Görüntüleme Görüntüleme 2K

ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!

Eklendiği Fonksiyona Bakalım

bool CHARACTER::UseItem

Demek ki itemi kullandığında kontrol sağlıyormuş. gereksiz Olmuş tek te tüm efsunları yazmakla uğraşılmaz şrdakini kullanabilirsin efsunlari item_attr tablosundaki oranlara göre düzenler https://forum.turkmmo.com/konu/3624431-c-edit-item-kontrol-sistemi/
Bu sistem efsunları direk düzeltiyor o yüzden kullanmak istemiyorum bildirse daha iyi
 
Selamın Aleyküm;

Oyun içerisinde herhangi bir şekilde edit item yapıldığında kanallara syser olarak edit item bulunduğuna dair log tutar..
Bu şekilde kimde edit var yok öğrenmiş olursunuz.

örneğin;

if (Type == APPLY_MAX_HP)
{
if (Value > 2000)
{
sys_err("Edit Tespit Edildi. Karakter isim: %s", GetName());
item->ChangeAttribute();
return false;
}
}

Burada Max hp 2000'den büyük herhangi bir değerde edit item olarak algılar syser tutar.

APPLY_MAX_HP buradaki efsunu değiştirebilirsiniz bir kaç örnek var


Tılsım sistemi olmayanlar ITEM_ELEMENT bunu kaldırsınlar. hata alırsınız.

char_item.cpp aç

if (IS_SET(item->GetFlag(), ITEM_FLAG_LOG))

arat

Kod:
if (item->GetType() == ITEM_WEAPON || item->GetType() == ITEM_ARMOR || item->GetType() == ITEM_BELT || item->GetType() == ITEM_ELEMENT)
    {
        for (int i = 0; i < ITEM_ATTRIBUTE_MAX_NUM; ++i)
        {
            BYTE Type = item->GetAttributeType(i);
            short Value = item->GetAttributeValue(i);

            if (Type == APPLY_MAX_HP)
            {
                if (Value > 2000)
                {
                    sys_err("Edit Tespit Edildi. Karakter isim: %s", GetName());
                    item->ChangeAttribute();
                    return false;
                }
            }
            else if (Type == APPLY_MAX_SP)
            {
                if (Value > 80)
                {
                    sys_err("Edit Tespit Edildi. Karakter isim: %s", GetName());
                    item->ChangeAttribute();
                    return false;
                }
            }
            else if (Type == APPLY_CON || Type == APPLY_INT || Type == APPLY_STR || Type == APPLY_DEX)
            {
                if (Value > 12)
                {
                    sys_err("Edit Tespit Edildi. Karakter isim: %s", GetName());
                    item->ChangeAttribute();
                    return false;
                }
            }
            else if (Type == APPLY_CRITICAL_PCT || Type == APPLY_PENETRATE_PCT)
            {
                if (Value > 10)
                {
                    sys_err("Edit Tespit Edildi. Karakter isim: %s", GetName());
                    item->ChangeAttribute();
                    return false;
                }
            }
        }
    }

üstüne ekle
Teşekkürler
 
iç itemleride görüyor mu ve diyelim hilal yüzüklerinde değerler normalden daha yüksek olduğundan onlarıda edit olarak algılıyor mu
@anagonda1
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst