MantisBT - VCMI
View Issue Details
0001314VCMIOtherpublic2013-06-10 14:242023-11-21 17:54
nicoly 
 
normalminorunable to reproduce
closedunable to reproduce 
amd64DebianJessie
0.93 
 
0001314: Hanged occasionaly.
After somewhat long playing game hanged while battle w/ AI.

In terminal i had:

$ int3 CGameInfoCallback::guardingCreaturePosition(int3) const: Tile is not visible!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
Warning: an orphaned child!
int3 CGameInfoCallback::guardingCreaturePosition(int3) const: Tile is not visible!
Saving lib part of game...
        Saving header
        Saving options
        Saving handlers
        Saving gamestate
System message: Game has been saved as Saves/Autosave_3
Saving lib part of game...
        Saving header
        Saving options
        Saving handlers
        Saving gamestate
System message: Game has been saved as Saves/Autosave_4
int3 CGameInfoCallback::guardingCreaturePosition(int3) const: Tile is not visible!
Saving lib part of game...
        Saving header
        Saving options
        Saving handlers
        Saving gamestate
System message: Game has been saved as Saves/Autosave_4
int3 CGameInfoCallback::guardingCreaturePosition(int3) const: Tile is not visible!
Saving lib part of game...
        Saving header
        Saving options
        Saving handlers
        Saving gamestate
System message: Game has been saved as Saves/Autosave_5
Unrecognized trigger effect type 3019
Unrecognized trigger effect type 3019
Warning: an orphaned child!
Saving lib part of game...
        Saving header
        Saving options
        Saving handlers
        Saving gamestate
System message: Game has been saved as Saves/Autosave_5
int3 CGameInfoCallback::guardingCreaturePosition(int3) const: Tile is not visible!
Error: accessing unavailable frame 0:2 in CAnimation!
Error: accessing unavailable frame 0:2 in CAnimation!
Error: accessing unavailable frame 0:2 in CAnimation!
Saving lib part of game...
        Saving header
        Saving options
        Saving handlers
        Saving gamestate
System message: Game has been saved as Saves/Autosave_1
int3 CGameInfoCallback::guardingCreaturePosition(int3) const: Tile is not visible!
int3 CGameInfoCallback::guardingCreaturePosition(int3) const: Tile is not visible!
Saving lib part of game...
        Saving header
        Saving options
        Saving handlers
        Saving gamestate
System message: Game has been saved as Saves/Autosave_1
Saving lib part of game...
        Saving header
        Saving options
        Saving handlers
        Saving gamestate
System message: Game has been saved as Saves/Autosave_2
int3 CGameInfoCallback::guardingCreaturePosition(int3) const: Tile is not visible!
Saving lib part of game...
        Saving header
        Saving options
        Saving handlers
        Saving gamestate
System message: Game has been saved as Saves/Autosave_2
Saving lib part of game...
        Saving header
        Saving options
        Saving handlers
        Saving gamestate
System message: Game has been saved as Saves/Autosave_3
Saving lib part of game...
        Saving header
        Saving options
        Saving handlers
        Saving gamestate
System message: Game has been saved as Saves/Autosave_3
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
battleGetStackByPos called when no battle!
Warning: an orphaned child!
battleGetAllStacks called when no battle!
battleGetAllObstacles called when no battle!
battleGetAllObstacles called when no battle!
int3 CGameInfoCallback::guardingCreaturePosition(int3) const: Tile is not visible!
Warning: an orphaned child!

$ killall vcmiclient
$ killall -9 vcmiclient
R1
txt VCMI_Client_log.txt (4,178,512) 2013-06-10 14:24
https://bugs.vcmi.eu/file_download.php?file_id=1365&type=bug
txt VCMI_Server_log.txt (3,120,966) 2013-06-10 14:25
https://bugs.vcmi.eu/file_download.php?file_id=1366&type=bug
txt server_log.txt (37,524) 2013-06-10 14:26
https://bugs.vcmi.eu/file_download.php?file_id=1367&type=bug
Issue History
2013-06-10 14:24nicolyNew Issue
2013-06-10 14:24nicolyFile Added: VCMI_Client_log.txt
2013-06-10 14:25nicolyFile Added: VCMI_Server_log.txt
2013-06-10 14:26nicolyFile Added: server_log.txt
2018-04-02 08:27hkoehlerNote Added: 0007556
2018-04-02 08:30hkoehlerNote Edited: 0007556bug_revision_view_page.php?bugnote_id=7556#r3490
2022-03-22 17:41PovelitelTag Attached: R1
2023-11-21 17:54PovelitelNote Added: 0008863
2023-11-21 17:54PovelitelStatusnew => closed
2023-11-21 17:54PovelitelResolutionopen => unable to reproduce

Notes
(0007556)
hkoehler   
2018-04-02 08:27   
(edited on: 2018-04-02 08:30)
Experienced similar bug message (Unrecognized trigger effect type 5) and occasional hang-up. Bug message (but not hang-up) seems easy to reproduce by just skipping a couple of turns.

Stack trace:
#0 0x00007f3166410d06 in BattleTriggerEffect::applyGs (this=0x7f315ff159d0, gs=0x336f3a0) at /home/hkoehler/dev/vcmi/vcmi/lib/NetPacksLib.cpp:1311
#1 0x00007f31663142f0 in CApplyOnGS<BattleTriggerEffect>::applyOnGS (this=0x21509a0, gs=0x336f3a0, pack=0x7f315ff159d0) at /home/hkoehler/dev/vcmi/vcmi/lib/CGameState.cpp:63
0000002 0x00007f31662de8a5 in CGameState::apply (this=0x336f3a0, pack=0x7f315ff159d0) at /home/hkoehler/dev/vcmi/vcmi/lib/CGameState.cpp:1958
0000003 0x00000000005228d8 in CGameHandler::sendAndApply (this=0x32fe4d8, info=0x7f315ff159d0) at /home/hkoehler/dev/vcmi/vcmi/server/CGameHandler.cpp:2792
0000004 0x000000000053e3af in CGameHandler::runBattle (this=0x32fe4d8) at /home/hkoehler/dev/vcmi/vcmi/server/CGameHandler.cpp:6306

where the request code ending in line 6306 in CGameHandler.cpp is:

BattleTriggerEffect bte;
bte.stackID = next->ID;
bte.effect = Bonus::MORALE;
bte.val = 1;
bte.additionalInfo = 0;
sendAndApply(&bte); //play animation

Eventually this is handled here:

DLL_LINKAGE void BattleTriggerEffect::applyGs(CGameState *gs)
{
    CStack * st = gs->curB->getStack(stackID);
    assert(st);
    switch(effect)
    {
    case Bonus::HP_REGENERATION:
    {
        int64_t toHeal = val;
        st->heal(toHeal, EHealLevel::HEAL, EHealPower::PERMANENT);
        break;
    }
    case Bonus::MANA_DRAIN:
    {
        CGHeroInstance * h = gs->getHero(ObjectInstanceID(additionalInfo));
        st->drainedMana = true;
        h->mana -= val;
        vstd::amax(h->mana, 0);
        break;
    }
    case Bonus::POISON:
    {
        auto b = st->getBonusLocalFirst(Selector::source(Bonus::SPELL_EFFECT, SpellID::POISON)
                .And(Selector::type(Bonus::STACK_HEALTH)));
        if (b)
            b->val = val;
        break;
    }
    case Bonus::ENCHANTER:
        break;
    case Bonus::FEAR:
        st->fear = true;
        break;
    default:
        logNetwork->error("Unrecognized trigger effect type %d", effect);
    }
}

(0008863)
Povelitel   
2023-11-21 17:54   
Using NullkillerAI by default is no longer relevant.
Try the latest release if you suddenly see this message