Jump to content
Araştır
  • Diğer seçenekler ...
Sonuçları bul ...
Sonuçları bul ...

cacaa

Uzaklaştırılmış
  • İçerik sayısı

    320
  • Katılım

  • Son ziyaret

  • Günün Kazananı

    4
  • Puan

    8,741 [ Bağış Yap ]

İletiler : cacaa


  1. Sourceden çözdüm.

    Çözüm:

    Source içerisinden CTRL+F yapıp Zone1 yazın ve monster stone ile ilgili bölüme gelene kadar aratın. Geldiğiniz yerde monster idleri yazacaktır. 4-5 adet tanımlı monster idsi göreceksiniz. Bunların ismi ve görüntüsü oyunda değişiyor ancak idleri sabit. Bu idlerin droplarını k_monster_item tablosundan değiştirebilirsiniz.


  2. Alıntı
    Kodlar şu şekilde:


    int temp_str = GetStat(STAT_STR), temp_dex = getStatTotal(STAT_DEX);
    // if( temp_str > 255 ) temp_str = 255;
    // if( temp_dex > 255 ) temp_dex = 255;

    uint32 baseAP = 0, ap_stat = 0, additionalAP = 3;
    if (temp_str > 150)
    baseAP = temp_str - 150;

    if (temp_str == 160)
    baseAP--;

    temp_str += GetStatBonusTotal(STAT_STR);


    m_sMaxWeight = ((((GetStatWithItemBonus(STAT_STR) + GetLevel()) * 50) + m_sMaxWeightBonus) * (m_bMaxWeightAmount
    if (isRogue())
    {
    ap_stat = temp_dex;
    }
    else
    {
    ap_stat = temp_str;
    additionalAP += baseAP;
    }
    if (isWarrior() || isPriest() || isKurian())
    {
    m_sTotalHit = (uint16)((0.010f * sItemDamage * (ap_stat + 40)) + (hitcoefficient * sItemDamage * GetLevel() * ap_stat));
    m_sTotalHit = (m_sTotalHit + additionalAP) * (100 + m_byAPBonusAmount) / 100;
    }
    if (isRogue())
    {
    m_sTotalHit = (uint16)((0.007f * sItemDamage * (ap_stat + 40)) + (hitcoefficient * sItemDamage * GetLevel() * ap_stat));
    m_sTotalHit = (m_sTotalHit + additionalAP) * (100 + m_byAPBonusAmount) / 100;
    }
    else if (isMage())
    {
    m_sTotalHit = (uint16)((0.005f * sItemDamage * (ap_stat + 40)) + (hitcoefficient * sItemDamage * GetLevel()));
    m_sTotalHit = (m_sTotalHit + additionalAP) * (100 + m_byAPBonusAmount) / 100;
    }
    m_sTotalHit = (m_sTotalHit + additionalAP) * (100 + m_byAPBonusAmount) / 100;

    m_sTotalAc = (short)(p_TableCoefficient->AC * (GetLevel() + m_sItemAc));
    if (m_sACPercent m_sACPercent = 100;
    m_sTotalAc = m_sTotalAc * m_sACPercent / 100;

    m_fTotalHitrate = ((1 + p_TableCoefficient->Hitrate * GetLevel() * temp_dex) * m_sItemHitrate / 100) * (m_bHitRateAmount / 100);

    m_fTotalEvasionrate = ((1 + p_TableCoefficient->Evasionrate * GetLevel() * temp_dex) * m_sItemEvasionrate / 100) * (m_sAvoidRateAmount / 100);


    Çözüm 2 (Skill açtırınca dex deaktif oluyorsa):

    isRogue() olan kısımların yanına || isRogueNovice() ekleyip kaydedin.

  3. Alıntı
    Evet sorun başlıkta belirtildiği üzere rogue classlarında dex verince attackın değişmemesi, str basınca ise artmasıdır.

    user.cpp içerisinde bulunan temp_dex bölümünden şüpheleniyorum. Nasıl çözüm üretebiliriz?


    Kodlar şu şekilde:


    int temp_str = GetStat(STAT_STR), temp_dex = getStatTotal(STAT_DEX);
    // if( temp_str > 255 ) temp_str = 255;
    // if( temp_dex > 255 ) temp_dex = 255;

    uint32 baseAP = 0, ap_stat = 0, additionalAP = 3;
    if (temp_str > 150)
    baseAP = temp_str - 150;

    if (temp_str == 160)
    baseAP--;

    temp_str += GetStatBonusTotal(STAT_STR);


    m_sMaxWeight = ((((GetStatWithItemBonus(STAT_STR) + GetLevel()) * 50) + m_sMaxWeightBonus) * (m_bMaxWeightAmount
    if (isRogue())
    {
    ap_stat = temp_dex;
    }
    else
    {
    ap_stat = temp_str;
    additionalAP += baseAP;
    }
    if (isWarrior() || isPriest() || isKurian())
    {
    m_sTotalHit = (uint16)((0.010f * sItemDamage * (ap_stat + 40)) + (hitcoefficient * sItemDamage * GetLevel() * ap_stat));
    m_sTotalHit = (m_sTotalHit + additionalAP) * (100 + m_byAPBonusAmount) / 100;
    }
    if (isRogue())
    {
    m_sTotalHit = (uint16)((0.007f * sItemDamage * (ap_stat + 40)) + (hitcoefficient * sItemDamage * GetLevel() * ap_stat));
    m_sTotalHit = (m_sTotalHit + additionalAP) * (100 + m_byAPBonusAmount) / 100;
    }
    else if (isMage())
    {
    m_sTotalHit = (uint16)((0.005f * sItemDamage * (ap_stat + 40)) + (hitcoefficient * sItemDamage * GetLevel()));
    m_sTotalHit = (m_sTotalHit + additionalAP) * (100 + m_byAPBonusAmount) / 100;
    }
    m_sTotalHit = (m_sTotalHit + additionalAP) * (100 + m_byAPBonusAmount) / 100;

    m_sTotalAc = (short)(p_TableCoefficient->AC * (GetLevel() + m_sItemAc));
    if (m_sACPercent m_sACPercent = 100;
    m_sTotalAc = m_sTotalAc * m_sACPercent / 100;

    m_fTotalHitrate = ((1 + p_TableCoefficient->Hitrate * GetLevel() * temp_dex) * m_sItemHitrate / 100) * (m_bHitRateAmount / 100);

    m_fTotalEvasionrate = ((1 + p_TableCoefficient->Evasionrate * GetLevel() * temp_dex) * m_sItemEvasionrate / 100) * (m_sAvoidRateAmount / 100);

  4. Sorun çözülmüştür.

    Aşağıdaki kodları kullanabilirsiniz.


    void CUser::SpeedHackUser()
    {
    if (!isInGame() || isGM())
    return;

    int16 nMaxSpeed = 45;

    if (GetFame() == COMMAND_CAPTAIN || isRogue())
    nMaxSpeed = 92;
    else if (isWarrior() || isMage() || isPriest() || isKurian())
    nMaxSpeed = 69;

    nMaxSpeed = 92;
    if (m_sSpeed > nMaxSpeed || m_sSpeed {
    DateTime time;
    Disconnect();
    g_pMain->SendFormattedNotice("%s is currently disconnect for speed hack.", Nation::ALL, GetName().c_str());
    g_pMain->WriteCheatLogFile(string_format("[ SpeedHack - %d:%d:%d ] %s is Disconnected.
    ", time.GetHour(), time.GetMinute(), time.GetSecond(), GetName().c_str()));
    }
    }

  5. Alıntı
    human ıcın bytype 45 yapıp denermısın


    byType 45 olarak da görünmedi.
    -- mesaja ek olarak --
    Çözüm için neredeyse denemediğim byType değeri kalmadı. NPC'yi silip yeniden ekledim. NPCPOS'u silip yeniden ekledim ama hala aynı anlayamadım.
    -- mesaja ek olarak --
    Alıntı
    byType 45 olarak da görünmedi.
    -- mesaja ek olarak --
    Çözüm için neredeyse denemediğim byType değeri kalmadı. NPC'yi silip yeniden ekledim. NPCPOS'u silip yeniden ekledim ama hala aynı anlayamadım.



    Sorunu çözdüm ne alakası var bilmiyorum ama K_NPC'de bulunan ismindeki " [ " ve "]" işaretlerini kaldırıp ismini Belldan yapınca düzeldi.

  6. Merhabalar, karus için de gözükmüyordu ancak bType değerini 46 yapınca sorun çözüldü fakat human için NPC'nin bType değerini ne yaparsam yapayım düzelmiyor. Bir türlü görünmüyor NPC.

    K_NPC


    14438 [Reserve Knight Captain] Belldan 11610 100 0 0 0 2 7 46 1 0 80 0 1000 100000 0 4051 299 5408 30000 500 2 7 1000 0 0 0 250 250 250 250 250 250 110 7 14 35 0 0 0 0 1 0 0 0 1


    K_NPCPOS


    12 14438 [Reserve Knight Captain] Belldan 2 4 0 0 0 579 557 1 0 0 30 0 0
×
×
  • Yeni Oluştur...