Skip to content
This repository was archived by the owner on Apr 29, 2020. It is now read-only.
This repository was archived by the owner on Apr 29, 2020. It is now read-only.

Pathing NPCs can (fairly consistently) crash server #6250

@ibm2431

Description

@ibm2431

I have:

  • searched existing issues (http://github.com/darkstarproject/darkstar/issues/) to see if the issue I am posting has already been addressed or opened by another contributor
  • checked the commit log to see if my issue has been resolved since my server was last updated

Client Version (type /ver in game) : 301907xx_x

Source Branch (master/stable) : master

Additional Information (Steps to reproduce/Expected behavior) :

Was working on some addons, and figured I would use Red Ghost in Port Jeuno to test. Problem is he somewhat consistently crashes the server if he's spoken to a couple times after the first (after which his pathing breaks and he stops walking).

I suspect all NPCs set to path could cause this same crashing behavior.

I do use Enternity, so that may (or may not) be involved.

Debugger Output:

DEBUG_BREAK_IF thrown in CAIContainer, Line 160

Call Stack:

  • DSGame-server.exe!CAIContainer::ForceChangeState<CInactiveState,CBaseEntity * &,std::chrono::duration<__int64,std::ratio<1,10000000>> &,bool &>(CBaseEntity * & <args_0>, std::chrono::duration<__int64,std::ratio<1,10000000>> & <args_1>, bool & <args_2>) Line 160
  • DSGame-server.exe!CAIContainer::Inactive(std::chrono::duration<__int64,std::ratio<1,10000000>> _duration, bool canChangeState) Line 165
  • DSGame-server.exe!CLuaBaseEntity::wait(lua_State * L) Line 1945
  • DSGame-server.exe!Lunar::thunk(lua_State * L) Line 173
  • [External Code]
  • lua51.dll![Frames below may be incorrect and/or missing, no symbols loaded for lua51.dll]
  • DSGame-server.exe!parse(char * buff, unsigned int * buffsize, sockaddr_in * from, map_session_data_t * map_session_data) Line 596
  • DSGame-server.exe!do_sockets(fd_set * rfd, std::chrono::duration<__int64,std::ratio<1,10000000>> next) Line 376
  • DSGame-server.exe!main(int argc, char * * argv) Line 270
  • [External Code]

Autos:

  • 1
    • m_stateStack
    • { size=11 }
    • std::stack<std::unique_ptr<CState,std::default_delete> ,std::deque<std::unique_ptr<CState,std::default_delete>,std::allocator<std::unique_ptr<CState,std::default_delete>>>>
  • 2
    • this
    • 0x190955d0 {EventHandler={eventListeners={ size=0 } } TargetFind=empty PathFind=unique_ptr {m_PTarget=0x18c475c8 {m_flags=27 name_prefix=32 ' ' widescan=1 '\x1' } m_points={ size=0 } m_turnPoints=...} ...}
    • CAIContainer *

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions