Hikayeler

Reklam vermek için turkmmo@gmail.com

N2PLAY – Complete Files by Sasori [Merry Christmas 2025]🎁 protobuflu

Metin2 EP, Valorant VP dahil tüm oyun ürünlerini en uygun fiyatlarla bulabilir, Item ve Karakterlerinizi hızlıca satabilirsiniz. HEMEN TIKLA!

skilleri seçince direk p versin.

game
char_skill.cpp

Kod:
void CHARACTER::SetSkillGroup(uint8_t bSkillGroup)
{
    // Grup 1 veya 2 değilse (veya geçersizse) işlem yapma
    if (bSkillGroup == 0 || bSkillGroup > 2)
        return;

    if (GetLevel() < 5)
        return;

    m_points.skill_group = bSkillGroup;

    // --- Skilleri Otomatik 50 (P) Yapma Bloğu ---
    for (uint32_t dwVnum = 1; dwVnum < SKILL_MAX_NUM; ++dwVnum)
    {
        // Eğer beceri oyuncunun seçtiği yeni gruba uygunsa ve öğrenilebilir ise
        if (IsLearnableSkill(dwVnum) && CanUseSkill(dwVnum))
        {
            SetSkillLevel(dwVnum, 50); // Direkt Perfect Master seviyesi
        }
    }
    // --------------------------------------------

    // Değişikliği istemciye (client) bildir
    TPacketGCChangeSkillGroup p;
    p.skill_group = m_points.skill_group;

    if (GetDesc())
        GetDesc()->Send(HEADER_GC_SKILL_GROUP, p);

    // Puanları ve paketleri yenile
    ComputePoints();
    SkillLevelPacket();
}

Kod:
void CHARACTER::SkillLevelUp(uint32_t dwVnum, uint8_t bMethod)
{
    if (nullptr == m_pSkillLevels)
        return;

    if (gConfig.disableSkills)
        return;

    if (IsPolymorphed()) {
        SendI18nChatPacket(this, CHAT_TYPE_INFO, "둔갑 중에는 능력을 올릴 수 없습니다.");
        return;
    }

    // 7. ve 8. Pasif yeteneklerin başlangıç kontrolü
    if (SKILL_7_A_ANTI_TANHWAN <= dwVnum && dwVnum <= SKILL_8_D_ANTI_BYEURAK) {
        if (0 == GetSkillLevel(dwVnum))
            return;
    }

#ifdef ENABLE_678TH_SKILL
    if (SKILL_7_A_ANTI_TANHWAN_2015 <= dwVnum && dwVnum <= SKILL_7_D_ANTI_SALPOONG_2015) {
        if (0 == GetSkillLevel(dwVnum)) return;
    }
    if (SKILL_8_A_POWER_TANHWAN_2015 <= dwVnum && dwVnum <= SKILL_8_D_POWER_SALPOONG_2015) {
        if (0 == GetSkillLevel(dwVnum)) return;
    }
#endif

    auto* pkSk = CSkillManager::instance().Get(dwVnum);
    if (!pkSk || pkSk->dwVnum >= SKILL_MAX_NUM) {
        SPDLOG_ERROR("Skill Error (vnum {})", dwVnum);
        return;
    }

    if (!IsLearnableSkill(dwVnum))
        return;

    // Seviye sınırı kontrolü
    if (GetLevel() < pkSk->bLevelLimit)
        return;

    if (!CheckSkillRequirements(pkSk))
        return;

    if (!GetSkillGroup())
        return;

    // Puan harcama işlemi
    if (bMethod == SKILL_UP_BY_POINT) {
        int idx;
        switch (pkSk->dwType) {
            case SKILL_TYPE_SECONDARY: idx = POINT_SUB_SKILL; break;
            case SKILL_TYPE_HORSE: idx = POINT_HORSE_SKILL; break;
            case SKILL_TYPE_SKILLTREE: idx = POINT_SKILLTREE_POINTS; break;
            default: idx = POINT_SKILL; break;
        }

        const float k = 1.0f * GetSkillPower(pkSk->dwVnum) / 100.0f;
        pkSk->levelStep.SetVar("k", k);

        if (GetPoint(idx) < int32_t(pkSk->levelStep.Eval()))
            return;

        PointChange(idx, -int32_t(pkSk->levelStep.Eval()));
    }

    // --- SEVİYE SETLEME MANTIĞI ---
    int SkillPointBefore = GetSkillLevel(pkSk->dwVnum);

    // Eğer ana yetenek ise direkt 40 yap (Grand Master)
    if (pkSk->dwType != SKILL_TYPE_SECONDARY && pkSk->dwType != SKILL_TYPE_SKILLTREE) {
        SetSkillLevel(pkSk->dwVnum, 50);
    } else {
        // Yan beceriler normal artsın
        SetSkillLevel(pkSk->dwVnum, m_pSkillLevels[pkSk->dwVnum].bLevel + 1);
    }
    // ------------------------------

    auto szSkillUp = fmt::sprintf(
        "SkillUp: %s %u %d %d[Before:%d] type %u", GetName(), pkSk->dwVnum,
        m_pSkillLevels[pkSk->dwVnum].bMasterType,
        m_pSkillLevels[pkSk->dwVnum].bLevel, SkillPointBefore, pkSk->dwType);

    SPDLOG_DEBUG("{}", szSkillUp);
    LogManager::instance().CharLog(this, pkSk->dwVnum, "SKILLUP", szSkillUp.c_str());
    Save();

    // Puanların (HP, Atak vb.) yeniden hesaplanması
    if ((pkSk->dwVnum == SKILL_ADD_HP || pkSk->dwVnum == SKILL_ADD_MONSTER || pkSk->dwVnum == SKILL_RESIST_PENETRATE) ||
        (pkSk->dwVnum >= SKILL_7_A_ANTI_TANHWAN_2015 && pkSk->dwVnum <= SKILL_8_D_POWER_SALPOONG_2015) ||
        pkSk->dwType == SKILL_TYPE_SKILLTREE) {
        ComputePoints();
        ComputeMountPoints();
    }

    SkillLevelPacket();
}
 
diyelim trden .gr2leri modelleri alıp bu clientin içine aticaksınız.
normal olarak yaparsanız .gr2ler gözükmez yada bozulmuş bir şekilde gözükür

oyunda dar boğaz olmaması için 64 bite yüskeltmeniz gerekiyor ve uyumlu olması için

python3 ile çalışır.

start.bat bununla calsitirmadan önce .bat içini açıp bu dosyaayı nereye attıysanız ona göre dosya yolunu düzenleemniz gerekmekte.


ATTENTION: This script processes ALL subfolders recursively!
------------------------------------------------------------
Are you sure you want to execute the updater? [Y/n] y
Enter the path to convert: D:\hd ve normal client kopya olan hd\data\source\NPC
sonra y


1770741539568.png
 

Ekli dosyalar

  • tools.7z
    20.1 MB · Görüntüleme: 0
diyelim trden .gr2leri modelleri alıp bu clientin içine aticaksınız.
normal olarak yaparsanız .gr2ler gözükmez yada bozulmuş bir şekilde gözükür

oyunda dar boğaz olmaması için 64 bite yüskeltmeniz gerekiyor ve uyumlu olması için

python3 ile çalışır.

start.bat bununla calsitirmadan önce .bat içini açıp bu dosyaayı nereye attıysanız ona göre dosya yolunu düzenleemniz gerekmekte.


ATTENTION: This script processes ALL subfolders recursively!
------------------------------------------------------------
Are you sure you want to execute the updater? [Y/n] y
Enter the path to convert: D:\hd ve normal client kopya olan hd\data\source\NPC
sonra y


Ekli dosyayı görüntüle 167284
Hi, I waited all day yesterday but I didn’t see you come back online.
 
Hi, I waited all day yesterday but I didn’t see you come back online.
VPNs are banned in Türkiye, so I need to use one. When I use a VPN, my internet slows down, and Gemini, DeepSpeek, Copilot, Turkmmo, and other forums constantly require verification.
 
[hunter ** INTERNAL **] Configure project failed.

[hunter ** INTERNAL **] To reproduce the error run: C:/Program Files/CMake/bin/cmake.exe -HC:/.hunter/_Base/Download/Hunter/0.24.0/a3d7f43 -BC:/.hunter/_Base/Download/Hunter/0.24.0/a3d7f43/Build -GVisual Studio 18 2026 -DCMAKE_TOOLCHAIN_FILE=

[hunter ** INTERNAL **] In directory C:/.hunter/_Base/Download/Hunter/0.24.0/a3d7f43

[hunter ** INTERNAL **] [Directory:D:/N2 - Projekt x64 bit by Sasori/source_SERVER_BIN/source]



------------------------------ ERROR ------------------------------



-------------------------------------------------------------------



CMake Error at buildtool/cmake/HunterGate.cmake:87 (message):
Call Stack (most recent call first):
buildtool/cmake/HunterGate.cmake:97 (hunter_gate_error_page)
buildtool/cmake/HunterGate.cmake:321 (hunter_gate_internal_error)
buildtool/cmake/HunterGate.cmake:499 (hunter_gate_download)
CMakeLists.txt:37 (HunterGate)

Configuring incomplete, errors occurred!









---------------------------------------------
Can someone help ?


#fixed with Hunter Update : https://forum.turkmmo.com/konu/3939...sasori-merry-christmas-2025-protobuflu/page-8
 
Son düzenleme:

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

Geri
Üst