diff --git a/src/mods/ScriptRunner.cpp b/src/mods/ScriptRunner.cpp index 5b48d148..81917eff 100644 --- a/src/mods/ScriptRunner.cpp +++ b/src/mods/ScriptRunner.cpp @@ -1220,6 +1220,17 @@ void ScriptRunner::reset_scripts() { std::filesystem::create_directories(autorun_path); spdlog::info("[ScriptRunner] Loading scripts..."); + auto path = std::filesystem::path(autorun_path); + auto dir = path.parent_path(); + + std::string old_path = m_main_state->lua()["package"]["path"]; + + std::string package_path = old_path + ";" + dir.string() + "/?.lua"; + package_path = package_path + ";" + dir.string() + "/?/init.lua"; + package_path = package_path + ";" + dir.string() + "/?.dll"; + + m_main_state->lua()["package"]["path"] = package_path; + for (auto&& entry : std::filesystem::directory_iterator{autorun_path}) { auto&& path = entry.path();