mannaxxx 1
mannaxxx
Bvural41 1
Bvural41
Agora Metin2 1
Agora Metin2
berkmenoo 1
berkmenoo
farkmt2official 1
farkmt2official
kralhakan2009 1
kralhakan2009
Vahsi Uzman 1
Vahsi Uzman
Hikaye Ekle

Cevaplanmadı Debug modda iken gelen hata

  • Konuyu başlatan Konuyu başlatan Nida2
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 7
  • Görüntüleme Görüntüleme 183
Merhabalar Release ile build ettiğimde sıkıntısız oyuna giriş yaparken clienti debug build alıp oyuna girmeye çalıştığımda loading ekranına geldiğimde böyle bir hata veriyor. Hata nerede olabilir?


Ekran görüntüsü 2025-09-19 093411.png


Eterlib - Textfileloader.cpp

C++:
BOOL CTextFileLoader::SetChildNode(DWORD dwIndex)
{
    if (!m_pcurNode)
    {
        assert(!"Node to access has not set!");
        return FALSE;
    }

    if (dwIndex >= m_pcurNode->ChildNodeVector.size())
    {
        assert(!"Node index to set is too large to access!");      ////// 371.satır
        return FALSE;
    }

    m_pcurNode = m_pcurNode->ChildNodeVector[dwIndex];

    return TRUE;
}
 
Son düzenleme:
Bu kodu TextFileLoader.cpp içinde 371. satıra koyabilirsin

Kod:
BOOL CTextFileLoader::SetChildNode(DWORD dwIndex)
{
    if (!m_pcurNode)
    {
        MessageBoxA(NULL, "Node to access has not set!", "TextFileLoader Debug", MB_OK | MB_ICONERROR);
        return FALSE;
    }

    if (dwIndex >= m_pcurNode->ChildNodeVector.size())
    {
        char szBuf[512];
        _snprintf(szBuf, sizeof(szBuf),
            "Node index out of range!\n\n"
            "Tried Index : %u\n"
            "Max Allowed : %u\n\n"
            "File : %s\n"
            "Line : %d",
            dwIndex,
            (DWORD)m_pcurNode->ChildNodeVector.size(),
            __FILE__,
            __LINE__);

        MessageBoxA(NULL, szBuf, "TextFileLoader Debug", MB_OK | MB_ICONERROR);

        return FALSE; // assert yerine sadece FALSE döndür
    }

    m_pcurNode = m_pcurNode->ChildNodeVector[dwIndex];
    return TRUE;
}

Assert patlatmak yerine sana bir MessageBox çıkarır

O kutuda erişmeye çalıştığı index ve mevcut node sayısı yazar

Böylece hangi dosyada eksiklik/uyumsuzluk olduğunu bulabilirsin

Client çökmeden devam eder hatalı dosyayı hızlı tespit edersin
 
Son düzenleme:
Bu kodu TextFileLoader.cpp içinde 371. satıra koyabilirsin

Kod:
BOOL CTextFileLoader::SetChildNode(DWORD dwIndex)
{
    if (!m_pcurNode)
    {
        MessageBoxA(NULL, "Node to access has not set!", "TextFileLoader Debug", MB_OK | MB_ICONERROR);
        return FALSE;
    }

    if (dwIndex >= m_pcurNode->ChildNodeVector.size())
    {
        char szBuf[512];
        _snprintf(szBuf, sizeof(szBuf),
            "Node index out of range!\n\n"
            "Tried Index : %u\n"
            "Max Allowed : %u\n\n"
            "File : %s\n"
            "Line : %d",
            dwIndex,
            (DWORD)m_pcurNode->ChildNodeVector.size(),
            __FILE__,
            __LINE__);

        MessageBoxA(NULL, szBuf, "TextFileLoader Debug", MB_OK | MB_ICONERROR);

        return FALSE; // assert yerine sadece FALSE döndür
    }

    m_pcurNode = m_pcurNode->ChildNodeVector[dwIndex];
    return TRUE;
}

Assert patlatmak yerine sana bir MessageBox çıkarır

O kutuda erişmeye çalıştığı index ve mevcut node sayısı yazar

Böylece hangi dosyada eksiklik/uyumsuzluk olduğunu bulabilirsin

Client çökmeden devam eder hatalı dosyayı hızlı tespit edersin
Ekran görüntüsü 2025-09-19 101051.png

Ekran görüntüsü 2025-09-19 101141.png


bu şekilde hata verdi
 
Kod:
BOOL CTextFileLoader::SetChildNode(DWORD dwIndex)
{
    if (!m_pcurNode)
    {
        MessageBoxA(NULL, "Node to access has not set!", "TextFileLoader Debug", MB_OK | MB_ICONERROR);
        return FALSE;
    }

    if (dwIndex >= m_pcurNode->ChildNodeVector.size())
    {
        char szBuf[512];
        _snprintf(szBuf, sizeof(szBuf),
            "Node index out of range!\n\n"
            "Tried Index : %u\n"
            "Max Allowed : %u\n\n"
            "File : %s\n"
            "Line : %d",
            dwIndex,
            (DWORD)m_pcurNode->ChildNodeVector.size(),
            __FILE__,
            __LINE__);

        MessageBoxA(NULL, szBuf, "TextFileLoader Debug", MB_OK | MB_ICONERROR);

        return FALSE; // assert yerine sadece FALSE döndür
    }

    m_pcurNode = m_pcurNode->ChildNodeVector[dwIndex];
    return TRUE;
}
 

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

Geri
Üst