diff --git a/core/logic_bridge.cpp b/core/logic_bridge.cpp index 8f0b5432..84ab5f3f 100644 --- a/core/logic_bridge.cpp +++ b/core/logic_bridge.cpp @@ -630,11 +630,10 @@ void CoreProviderImpl::InitializeBridge() this->serverFactory = (void *)g_SMAPI->GetServerFactory(false); this->listeners = SMGlobalClass::head; - if (ke::RefPtr mmlib = ke::SharedLib::Open(FORMAT_SOURCE_BIN_NAME("matchmaking_ds"), NULL, 0)) { - this->matchmakingDSFactory = - mmlib->get("CreateInterface"); + if (auto mmlib = ::filesystem->LoadModule("matchmaking_ds" SOURCE_BIN_SUFFIX, "GAMEBIN")) { + this->matchmakingDSFactory = (void*)Sys_GetFactory(mmlib); } - + logic_init_(this, &logicore); // Join logic's SMGlobalClass instances.