Seltender Error :o ?

08/28/2012 19:07 Mognakor#16
Ich nehme an das die Models alle in einer bestimmten und gleichen Reihenfolge eingelesen werden, also könnte man doch mitloggen lassen welche Models funktionieren und dann bei dem das nach dem letzten funktionierendem kommt nach Fehlern gucken bzw. probeweise auskommentieren.
08/29/2012 14:05 -Illusion-#17
Hmmm hat wär evtl noch mehr Infos für Ultimate.
Will endlich wieder zocken ._.
08/29/2012 15:37 Aspectus#18
Ihr vergesst, das Objekte auch Mover sein können. ( Monster etc. Aber auch Items. )
Diese Funktion löscht einfach die Object Array's wenn etwas aus der Welt verschwindet, so wie Items nach 3 Minuten auf dem Boden, oder auch Monster die Tot sind.

Also wäre ich du, würde ich das ganze mal Loggen lassen, undzwar so:

PHP Code:
void CWorld::RemoveObjArrayCObjpObj )
{
#ifdef __WORLDSERVER
 // loggen der ID und Obj Array ID ( Fals Crash, sollte es angezeigt werden welche ID das Monster/Item hat. Wenn nicht dann ist das Objekt sehr verbuggt.
    
FILEOUT("LOG_OBJ_REMOVEARRAY.txt""[Remove Object]: ID %d, m_dwObjAryIdx %d"pObj->GetProp()->dwIDpObj->m_dwObjAryIdx ); 

    if( 
pObj->m_dwObjAryIdx == 0xffffffff )
    {
        
WriteError"RemoveObjArray  pObj->m_dwObjAryIdx == 0xffffffff " );
        return;
    }

    if( 
m_apObject[pObj->m_dwObjAryIdx] == pObj )
    {
        
m_ObjStack.PushpObj->m_dwObjAryIdx );
        
m_apObject[pObj->m_dwObjAryIdx]        = NULL;
    }
    else
    {
        
WriteError"RemoveObjArray m_apObject[pObj->m_dwObjAryIdx] != pObj " );
    }
    
m_cbRunnableObject--;
#else    // __WORLDSERVER
    
CLandscapepLandscape    GetLandscapepObj );

    if( 
NULL != pLandscape 
    {
        
pLandscape->RemoveObjArraypObj );
    }
    
/*
    else 
    {
        char szMessage[260]    = { 0, };
        sprintf( szMessage, "ROA error with landscape unloaded - g_pPlayer = %f, %f\t//pObj = %f, %f",
            g_pPlayer->GetPos().x, g_pPlayer->GetPos().z, pObj->GetPos().x, pObj->GetPos().z );
        DEBUGOUT2( szMessage );
    }
    */
#endif    // __WORLDSERVER

09/02/2012 02:27 Ultimate™#19
Danke dir Aspectus jedoch finde ich ein kleinen haken daran :/

Quote:
[Remove Object]: ID 18180, m_dwObjAryIdx 2989
[Remove Object]: ID 18171, m_dwObjAryIdx 2922
[Remove Object]: ID 18182, m_dwObjAryIdx 2921
[Remove Object]: ID 18183, m_dwObjAryIdx 2920
[Remove Object]: ID 18181, m_dwObjAryIdx 152
[Remove Object]: ID 18127, m_dwObjAryIdx 2918
[Remove Object]: ID 18127, m_dwObjAryIdx 2919
[Remove Object]: ID 7030, m_dwObjAryIdx 2917
das kommt permanent wenn ich z.B von Flaris nach Darkon gehe, also der loggt anscheinend einige objekte und server crasht nicht und wenn ich z.B von Darkon nach Flaris gehe loggt er wieder einige IDs die aber normale Quest Items oder sonstiges sind.
09/03/2012 15:28 Aspectus#20
Der letzte Error der ausgegeben wird, vor dem Crash, ist das verbuggte Item/Mop/what ever. ( bzw das ist das letzte Item das removed wurde. )
09/03/2012 16:09 Ultimate™#21
hab es bisschen anders gemacht und habe auch was rausgefunden :)
danke :-p