Hi there!
First of all, very nice work of you guys. But sadly I'm experiencing crashes with the bot. I'm running my server with this config:
Core: 7894
SD2: 1106
UDB: 380
ACID: 0.1.0
Extra branches: git://github.com/Gigelf/mangos.git auctionhouse, git://github.com/playerbot/mangos.git
OS: Linux
The crash isn't that easy to reproduce, but occures sometimes, when I'm running with 4 bots in a group through some mobs and run away, while the bots attack them. So, here's the dump:
Program received signal SIGSEGV, Segmentation fault.
[switching to Thread 0xb3bd3b90 (LWP 6527)]
std::_Rb_tree<std::Pair<unsigned int, unsigned char>, std::Pair<std::Pair<unsigned int, unsigned char> const, Aura*>, std::_Select1st<std::Pair<std::Pair<unsigned int, unsigned char> const, Aura*> >, std::less<std::Pair<unsigned int, unsigned char> >, std::allocator<std::Pair<std::Pair<unsigned int, unsigned char> const, Aura*> > >::find (this=0x198, __k=@0xb3bd3074)
at /usr/include/c++/4.2/bits/stl_tree.h:481
481 (this->_M_impl._M_header._M_parent);
CRASH ON Sa 6. Jun 10:13:34 CEST 2009
Using the running image of child Thread 0xb3bd3b90 (LWP 6527).
Program stopped at 0x813dd7c.
It stopped with signal SIGSEGV, Segmentation fault.
Type "info stack" or "info registers" for more information.
BACKTRACE
#0 std::_Rb_tree<std::Pair<unsigned int, unsigned char>, std::Pair<std::Pair<unsigned int, unsigned char> const, Aura*>, std::_Select1st<std::Pair<std::Pair<unsigned int, unsigned char> const, Aura*> >, std::less<std::Pair<unsigned int, unsigned char> >, std::allocator<std::Pair<std::Pair<unsigned int, unsigned char> const, Aura*> > >::find (this=0x198, __k=@0xb3bd3074)
at /usr/include/c++/4.2/bits/stl_tree.h:481
#1 0x083c4169 in Unit::HasAura (this=0x0, spellId=3)
at /usr/include/c++/4.2/bits/stl_multimap.h:494
#2 0x083443fb in PlayerbotRogueAI::DoNextCombatManeuver (this=0x12742d70,
pTarget=0x12629c38) at ../../../src/game/PlayerbotRogueAI.cpp:66
#3 0x0832d7c4 in PlayerbotAI::DoNextCombatManeuver (this=0x127436f8)
at ../../../src/game/PlayerbotAI.cpp:1210
#4 0x0832f2b7 in PlayerbotAI::UpdateAI (this=0x127436f8, p_time=101)
at ../../../src/game/PlayerbotAI.cpp:1582
#5 0x0831e19a in Player::Update (this=0x12783888, p_time=101)
at ../../../src/game/Player.cpp:1125
#6 0x0826693a in ObjectAccessor::UpdatePlayers (this=0xbd43750, diff=101)
at ../../../src/game/ObjectAccessor.cpp:408
#7 0x0825b90b in MapManager::Update (this=0x935f4e0, diff=101)
at ../../../src/game/MapManager.cpp:248
#8 0x083fe261 in World::Update (this=0x86479d8, diff=101)
at ../../../src/game/World.cpp:1558
#9 0x08134d2a in WorldRunnable::run (this=0x121cb358)
at ../../../src/mangosd/WorldRunnable.cpp:65
#10 0x084ba771 in ACE_Based::Thread::ThreadTask (param=0x121cb358)
at ../../../src/shared/Threading.cpp:159
#11 0xb7c040b7 in ACE_OS_Thread_Adapter::invoke (this=0x121d1040)
at ../../../../dep/ACE_wrappers/ace/OS_Thread_Adapter.cpp:90
#12 0xb7baf8f1 in ace_thread_adapter (args=0x121d1040)
at ../../../../dep/ACE_wrappers/ace/Base_Thread_Adapter.cpp:124
#13 0xb78824fb in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
#14 0xb76e0e5e in clone () from /lib/tls/i686/cmov/libc.so.6
Should be this code line:
if (pTarget->getVictim()->HasAura(SPELL_AURA_PERIODIC_DAMAGE)) {
Hope, this helps
greetz
walkofdoom