• You've discovered RedGuides 📕 an EverQuest multi-boxing community 🛡️🧙🗡️. We want you to play several EQ characters at once, come join us and say hello! 👋
  • IS THIS SITE UGLY? Change the look. To dismiss this notice, click the X --->

Problem - Catching lot's of crashes - MQ Crash ID included (1 Viewer)

Status
Not open for further replies.
Joined
May 19, 2023
RedCents
293¢
Good evening! So I have run into some issues in the last week or so. I will randomly get the mq caught a crash error. Attached is the screenshot. Apologies for not copy and pasting it as I read that later. I just had 3 of 6 crash in about a minute time frame. Other three are running fine.
I do not use AV.

Could some fine folk take a look at the id when you have a moment and let me know what I am doing wrong?

Thanks!




1698806603581.png
 
Caught a few more today. Here is the latest ID:

---------------------------
EverQuest Crash Detected
---------------------------
MacroQuest caught a crash:
Version: 3.1.0.1769
Location: eqlib::CXWnd::PostDraw+0 (C:\Program Files (x86)\macroquest\eqlib.dll+0000000000011510)

CrashID: 8c4dc16a-eb38-4f18-9fde-9934c2433254

You can either:
* [RETRY] Continue execution and hope for the best.
* [CANCEL] Write a crash dump and terminate EverQuest.

---------------------------
Retry Cancel
---------------------------
 
Caught a few more today. Here is the latest ID:

---------------------------
EverQuest Crash Detected
---------------------------
MacroQuest caught a crash:
Version: 3.1.0.1769
Location: eqlib::CXWnd::PostDraw+0 (C:\Program Files (x86)\macroquest\eqlib.dll+0000000000011510)

CrashID: 8c4dc16a-eb38-4f18-9fde-9934c2433254

You can either:
* [RETRY] Continue execution and hope for the best.
* [CANCEL] Write a crash dump and terminate EverQuest.

---------------------------
Retry Cancel
---------------------------
Best I can tell the crash occurs when using the Window TLO for a child. It looks to have happened following accessing a bunch of Lua.dll stuff. So best guess is the Lua you're running is crashing somewhere?
What Lua were you running?
 
INI:
     [Inline Frame] eqlib.dll!eqlib::CXWnd::GetXMLData(eqlib::CXMLDataManager *) Line 67    C++
     eqlib.dll!eqlib::RecurseAndFindName(eqlib::CXMLDataManager * dataMgr, eqlib::CXWnd * pWnd, const eqlib::CXStr & Name) Line 88    C++
     MQ2Main.dll!mq::datatypes::MQ2WindowType::GetMember(mq::MQVarPtr VarPtr, const char * Member, char * Index, mq::MQTypeVar & Dest) Line 375    C++
     MQ2Main.dll!mq::EvaluateMacroDataMember(mq::datatypes::MQ2Type * type, mq::MQVarPtr & VarPtr, mq::MQTypeVar & Result, const std::string & Member, char * pIndex, bool checkFirst) Line 300    C++
     MQ2Main.dll!EvaluateMacroDataMember(mq::datatypes::MQ2Type * pType, mq::MQVarPtr VarPtr, mq::MQTypeVar & Result, const char * Member, char * pIndex) Line 504    C++
     mq2lua.DLL!mq::lua::bindings::lua_MQTypeVar::EvaluateMember(const char * index) Line 59    C++
>    mq2lua.DLL!mq::lua::bindings::lua_MQTypeVar::Call(std::string index, sol::this_state L) Line 87    C++
     [Inline Frame] mq2lua.DLL!sol::member_function_wrapper<sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(std::string,sol::this_state)const ,sol::basic_object<sol::basic_reference<0>>,mq::lua::bindings::lua_MQTypeVar,std::string,sol::this_state>::call(sol::basic_object<sol::basic_reference<0>>(const mq::lua::bindings::lua_MQTypeVar::*)(std::string, sol::this_state) &) Line 16278    C++
     [Inline Frame] mq2lua.DLL!sol::member_function_wrapper<sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(std::string,sol::this_state)const ,sol::basic_object<sol::basic_reference<0>>,mq::lua::bindings::lua_MQTypeVar,std::string,sol::this_state>::caller::operator()(sol::basic_object<sol::basic_reference<0>>(const mq::lua::bindings::lua_MQTypeVar::*)(std::string, sol::this_state) &) Line 16284    C++
     [Inline Frame] mq2lua.DLL!sol::stack::stack_detail::eval(sol::types<>) Line 15028    C++
     [Inline Frame] mq2lua.DLL!sol::stack::stack_detail::eval(sol::types<sol::this_state>) Line 15034    C++
     [Inline Frame] mq2lua.DLL!sol::stack::stack_detail::eval(sol::types<std::string,sol::this_state>) Line 15034    C++
     [Inline Frame] mq2lua.DLL!sol::stack::stack_detail::call(sol::types<sol::basic_object<sol::basic_reference<0>>>) Line 15058    C++
     [Inline Frame] mq2lua.DLL!sol::stack::call(sol::types<sol::basic_object<sol::basic_reference<0>>>) Line 15076    C++
     [Inline Frame] mq2lua.DLL!sol::stack::call_into_lua(sol::types<sol::basic_object<sol::basic_reference<0>>>) Line 15124    C++
     [Inline Frame] mq2lua.DLL!sol::call_detail::lua_call_wrapper<mq::lua::bindings::lua_MQTypeVar,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(std::string,sol::this_state)const ,0,0,0,0,1,void>::call(lua_State *) Line 17027    C++
     [Inline Frame] mq2lua.DLL!sol::call_detail::lua_call_wrapper<mq::lua::bindings::lua_MQTypeVar,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(std::string,sol::this_state)const ,0,0,0,0,1,void>::call(lua_State *) Line 17020    C++
     [Inline Frame] mq2lua.DLL!sol::call_detail::lua_call_wrapper<mq::lua::bindings::lua_MQTypeVar,sol::overload_set<sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(std::string,sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(int,sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(sol::this_state,sol::variadic_args)const>,0,0,0,0,1,void>::on_match::operator()(sol::types<sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(std::string,sol::this_state)const>) Line 17254    C++
     mq2lua.DLL!sol::call_detail::overload_detail::overload_match_arity_single<sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(std::string,sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(int,sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(sol::this_state,sol::variadic_args)const ,0,1,2,3,sol::call_detail::lua_call_wrapper<mq::lua::bindings::lua_MQTypeVar,sol::overload_set<sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(std::string,sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(int,sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(sol::this_state,sol::variadic_args)const>,0,0,0,0,1,void>::on_match,sol::overload_set<sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(std::string,sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(int,sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(sol::this_state,sol::variadic_args)const> &>(sol::types<sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(std::string,sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(int,sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(sol::this_state,sol::variadic_args)const> __formal, std::integer_sequence<unsigned __int64,0,1,2,3> __formal, std::integer_sequence<unsigned __int64> __formal, sol::call_detail::lua_call_wrapper<mq::lua::bindings::lua_MQTypeVar,sol::overload_set<sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(std::string,sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(int,sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(sol::this_state,sol::variadic_args)const>,0,0,0,0,1,void>::on_match && matchfx, lua_State * L, int fxarity, int start, sol::overload_set<sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(std::string,sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(int,sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(sol::this_state,sol::variadic_args)const> & <args_0>) Line 16819    C++
     [Inline Frame] mq2lua.DLL!sol::call_detail::overload_match_arity(sol::call_detail::lua_call_wrapper<mq::lua::bindings::lua_MQTypeVar,sol::overload_set<sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(std::string,sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(int,sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(sol::this_state,sol::variadic_args)const>,0,0,0,0,1,void>::on_match && fxarity, lua_State *) Line 16826    C++
     [Inline Frame] mq2lua.DLL!sol::call_detail::lua_call_wrapper<mq::lua::bindings::lua_MQTypeVar,sol::overload_set<sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(std::string,sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(int,sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(sol::this_state,sol::variadic_args)const>,0,0,0,0,1,void>::call(lua_State *) Line 17259    C++
     [Inline Frame] mq2lua.DLL!sol::call_detail::call_wrapped(lua_State *) Line 17418    C++
     [Inline Frame] mq2lua.DLL!sol::u_detail::binding<enum sol::meta_function,sol::overload_set<sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(std::string,sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(int,sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(sol::this_state,sol::variadic_args)const>,mq::lua::bindings::lua_MQTypeVar>::call_with_(lua_State *) Line 21772    C++
     [Inline Frame] mq2lua.DLL!sol::u_detail::binding<enum sol::meta_function,sol::overload_set<sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(std::string,sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(int,sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(sol::this_state,sol::variadic_args)const>,mq::lua::bindings::lua_MQTypeVar>::call_(lua_State *) Line 21778    C++
     [Inline Frame] mq2lua.DLL!sol::detail::lua_cfunction_trampoline(lua_State *) Line 7983    C++
     [Inline Frame] mq2lua.DLL!sol::detail::static_trampoline(lua_State *) Line 8012    C++
     [Inline Frame] mq2lua.DLL!sol::detail::typed_static_trampoline(lua_State *) Line 8072    C++
     mq2lua.DLL!sol::u_detail::binding<enum sol::meta_function,sol::overload_set<sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(std::string,sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(int,sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(sol::this_state)const ,sol::basic_object<sol::basic_reference<0>> (__cdecl mq::lua::bindings::lua_MQTypeVar::*)(sol::this_state,sol::variadic_args)const>,mq::lua::bindings::lua_MQTypeVar>::call<0,0>(lua_State * L) Line 21790    C++
     [External Code]   
     [Inline Frame] mq2lua.DLL!sol::basic_coroutine<sol::basic_reference<0>>::luacall(__int64) Line 26063    C++
     [Inline Frame] mq2lua.DLL!sol::basic_coroutine<sol::basic_reference<0>>::invoke(sol::types<>) Line 26086    C++
     mq2lua.DLL!sol::basic_coroutine<sol::basic_reference<0>>::call<,sol::as_args_t<std::vector<std::string,std::allocator<std::string>> const &>>(sol::as_args_t<std::vector<std::string,std::allocator<std::string>> const &> && <args_0>) Line 26246    C++
     [Inline Frame] mq2lua.DLL!sol::basic_coroutine<sol::basic_reference<0>>::operator()(sol::as_args_t<std::vector<std::string,std::allocator<std::string>> const &> &&) Line 26230    C++
     mq2lua.DLL!mq::lua::LuaCoroutine::RunCoroutine(const std::vector<std::string,std::allocator<std::string>> & args) Line 28    C++
     mq2lua.DLL!mq::lua::LuaThread::RunOnce() Line 467    C++
     mq2lua.DLL!mq::lua::LuaThread::Run() Line 377    C++
     [External Code]   
     mq2lua.DLL!OnPulse() Line 1604    C++
     [Inline Frame] MQ2Main.dll!mq::PulsePlugins::__l2::<lambda_a217ec3e1c331260423598460e2bc207>::operator()(const mq::MQPlugin *) Line 713    C++
     [Inline Frame] MQ2Main.dll!mq::ForEachPlugin(mq::PulsePlugins::__l2::<lambda_a217ec3e1c331260423598460e2bc207> &&) Line 637    C++
     MQ2Main.dll!mq::PulsePlugins() Line 710    C++
     MQ2Main.dll!mq::Heartbeat() Line 640    C++
     MQ2Main.dll!mq::DoGameEventsPulse(int(*)() pEventFunc) Line 699    C++
     MQ2Main.dll!mq::Detour_ProcessGameEvents() Line 741    C++
     [Frames may be missing, no binary loaded for eqgame.exe]   
     [External Code]
 
Best I can tell the crash occurs when using the Window TLO for a child. It looks to have happened following accessing a bunch of Lua.dll stuff. So best guess is the Lua you're running is crashing somewhere?
What Lua were you running?
Really appreciate you looking into it. My Lua's are guildclicky, Overseer. buttonmaster, yalm(sometimes) and TCN on demand. I _think_ this may be tcn related as I just had another crash with TCN loaded. I will start pruning the Lua's and see if I see an improvement.
 
If it does end up being TCN you'll want to post to the discussion thread for it. You'll also want to be pretty specific about what it was doing at the time of the crash.
I just checked and there is apparently 70 instances of .Child( in that Lua.
 
If it does end up being TCN you'll want to post to the discussion thread for it. You'll also want to be pretty specific about what it was doing at the time of the crash.
I just checked and there is apparently 70 instances of .Child( in that Lua.
I am going to better pay attention to what Lua's I have running when it crashes. This time it was just zoning when it crashed. _Usually_ when I have crashes I am either standing around playing guess that smell or AFK. Though a few have happened during combat. I appreciate have a direction to look in at least.
 
I am going to better pay attention to what Lua's I have running when it crashes. This time it was just zoning when it crashed. _Usually_ when I have crashes I am either standing around playing guess that smell or AFK. Though a few have happened during combat. I appreciate have a direction to look in at least.
It's likely to happen more frequently when you zone. The dump doesn't contain the information on which Lua script you were running at the time -- the state has been garbage collected. But the issue is you have a Lua script that is storing a reference to a window that has been destroyed. It then tries to call a child window from that and things blow up (when the window pointer still exists, but points to garbage).
 
It's likely to happen more frequently when you zone. The dump doesn't contain the information on which Lua script you were running at the time -- the state has been garbage collected. But the issue is you have a Lua script that is storing a reference to a window that has been destroyed. It then tries to call a child window from that and things blow up (when the window pointer still exists, but points to garbage).
So what this means is that say a Lua is referencing/using the bazaar window and that window closes but the Lua continues that's what causing it?

Thanks more great info to use. I'll pay attention to what windows have closed recently.

Thanks!
 
Not closed, destroyed, but otherwise yes. Closing a window in EQ generally just hides it and references to it might still be valid.

In this case, the reference is garbage.
 
i have been having this crash problem also . I just updated my launcher and luas and plugins and i keep getting this error on both computers
 

Attachments

  • Screenshot 2023-11-08 160124.png
    Screenshot 2023-11-08 160124.png
    19.6 KB · Views: 3
i have been having this crash problem also . I just updated my launcher and luas and plugins and i keep getting this error on both computers
you already posted you're having a crash, please don't bump unrelated threads.

you need to delete the lfs.dll in your Lua folder
 
Problem - Catching lot's of crashes - MQ Crash ID included
Status
Not open for further replies.

Users who are viewing this thread

Back
Top