cmangos / issues

This repository is used as a centralized point for all issues regarding CMaNGOS.
180 stars 47 forks source link

🐛 [Bug Report] SendNextWayPointPath() crash on empty m_currentWaypointNode #2289

Closed Valkirie closed 3 years ago

Valkirie commented 4 years ago

🐛 Bugreport

Server will crash when SendNextWayPointPath() is called with a null m_currentWaypointNode (???).

Expected behavior

Get nextNode value and keep up.

Version & Environment

Steps to reproduce

  1. Return quest https://www.wowhead.com/quest=9180/journey-to-undercity.
  2. Wait for crash after Highborns (21628) are summoned.

Crashlog

    std::_Tree_const_iterator<std::_Tree_val<std::_Tree_simple_types<std::pair<unsigned int const ,WaypointNode>>>>::operator*() Ligne 181  C++
    std::_Tree_const_iterator<std::_Tree_val<std::_Tree_simple_types<std::pair<unsigned int const ,WaypointNode>>>>::operator->() Ligne 189 C++
>   WaypointMovementGenerator<Creature>::SendNextWayPointPath(Creature & creature) Ligne 399    C++
    WaypointMovementGenerator<Creature>::Reset(Creature & creature) Ligne 156   C++
    MovementGeneratorMedium<Creature,WaypointMovementGenerator<Creature>>::Reset(Unit & u) Ligne 90 C++
    MotionMaster::DirectExpire(bool reset) Ligne 199    C++
AnonXS commented 4 years ago
.quest add 9180
.go c id 10181

WaypointMovementGenerator::LoadPath: Creature (Entry: 21628 Guid: 10060136) doesn't have waypoint path 0
void WaypointMovementGenerator<Creature>::InitializeWaypointPath> unable to intialize path for Creature (Entry: 21628 Guid: 10060136)
WaypointMovementGenerator::LoadPath: Creature (Entry: 21628 Guid: 10060137) doesn't have waypoint path 0
void WaypointMovementGenerator<Creature>::InitializeWaypointPath> unable to intialize path for Creature (Entry: 21628 Guid: 10060137)
WaypointMovementGenerator::LoadPath: Creature (Entry: 21628 Guid: 10060138) doesn't have waypoint path 0
void WaypointMovementGenerator<Creature>::InitializeWaypointPath> unable to intialize path for Creature (Entry: 21628 Guid: 10060138)
WaypointMovementGenerator::LoadPath: Creature (Entry: 21628 Guid: 10060139) doesn't have waypoint path 0
void WaypointMovementGenerator<Creature>::InitializeWaypointPath> unable to intialize path for Creature (Entry: 21628 Guid: 10060139)

maybe try UPDATE `creature_template` SET `MovementType` = 0 WHERE `entry` = 21628; as they dont really use waypoint movement but are forced to move.

prolly scripted wrong anyways when looking at this video https://www.youtube.com/watch?v=ipQBFDb_SFI

Grz3s commented 4 years ago

all you need is to backport wotlk fixes for path = 0 .. and errors like this will disapear [2855] [2856] for this one - https://github.com/cmangos/wotlk-db/commit/85aa46fad40afbe4d3a4b5bf661c009b7459934e

AnonXS commented 4 years ago

so it didnt crash for me, he says its crashing for him, should be investigated then. but yea i didnt see anything unusual either exept these errors.

Valkirie commented 4 years ago

all you need is to backport wotlk fixes for path = 0 .. and errors like this will disapear [2855] [2856] for this one - cmangos/wotlk-db@85aa46f

This: UPDATE creature_template SET MovementType = 0 WHERE entry = 21628; Plus: summon->GetMotionMaster()->MovePoint(1, fX, fY, fZ + 5.0f);

Fixed it.

Lillecarl commented 4 years ago

"Duplicate" of #2244 (Same crash)

jimmybrancaccio commented 3 years ago

Closing as duplicate of #2244.