From de123125ce740ea103ae898ff16dd1b67e08cd82 Mon Sep 17 00:00:00 2001 From: Mrchiantos <51173452+Mrchiantos@users.noreply.github.com> Date: Mon, 22 Jul 2019 00:28:43 +0200 Subject: [PATCH] Fix --- CMakeLists.txt | 7 ++++--- build/android/Makefile | 2 +- doc/client_lua_api.md | 6 +++--- doc/lua_api.txt | 10 +++++----- misc/winresource.rc | 2 +- src/client.cpp | 4 ++-- src/client/clientlauncher.cpp | 2 +- src/config.h | 4 ++-- src/debug.cpp | 2 +- src/game.cpp | 2 +- src/guiEngine.cpp | 2 +- src/main.cpp | 14 +++++++------- src/mods.cpp | 6 +++--- src/porting.cpp | 27 ++++++++++++++------------- src/porting.h | 1 + src/porting_android.cpp | 8 ++++---- src/porting_ios.cpp | 3 ++- src/script/lua_api/l_mainmenu.cpp | 12 ++++++------ src/server.cpp | 2 +- src/serverlist.cpp | 6 +++--- src/subgame.cpp | 8 ++++---- 21 files changed, 67 insertions(+), 63 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 2f298f910..15c04c360 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -13,8 +13,8 @@ set(PROJECT_NAME_CAPITALIZED "BlockColor") set(CMAKE_CXX_STANDARD 11) # Also remember to set PROTOCOL_VERSION in network/networkprotocol.h when releasing -set(VERSION_MAJOR 1) -set(VERSION_MINOR 3) +set(VERSION_MAJOR 2) +set(VERSION_MINOR 0) set(VERSION_PATCH 0) set(VERSION_EXTRA "" CACHE STRING "Stuff to append to version string") @@ -157,6 +157,7 @@ endif() install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/builtin" DESTINATION "${SHAREDIR}") +install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/worlds" DESTINATION "${SHAREDIR}") install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/client" DESTINATION "${SHAREDIR}") install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/clientmods" DESTINATION "${SHAREDIR}") install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/games" DESTINATION "${SHAREDIR}" PATTERN ".git*" EXCLUDE) @@ -172,7 +173,7 @@ install(FILES "doc/lua_api.txt" DESTINATION "${DOCDIR}") install(FILES "doc/menu_lua_api.txt" DESTINATION "${DOCDIR}") install(FILES "doc/texture_packs.txt" DESTINATION "${DOCDIR}") install(FILES "doc/world_format.txt" DESTINATION "${DOCDIR}") -install(FILES "blockcolor.conf.example" DESTINATION "${EXAMPLE_CONF_DIR}") +install(FILES "blockcolor.conf" DESTINATION "${EXAMPLE_CONF_DIR}") if(UNIX AND NOT APPLE) install(FILES "doc/BlockColor.6" "doc/BlockColorServer.6" DESTINATION "${MANDIR}/man6") diff --git a/build/android/Makefile b/build/android/Makefile index 67c0946f6..c426d94b5 100644 --- a/build/android/Makefile +++ b/build/android/Makefile @@ -598,7 +598,7 @@ $(ASSETS_TIMESTAMP) : $(IRRLICHT_LIB) touch ${IRRLICHT_DIR}/media/timestamp; \ touch ${ASSETS_TIMESTAMP}; \ fi; \ - if [ ${PROJ_ROOT}/blockcolor.conf.example -nt ${ASSETS_TIMESTAMP} ] ; then \ + if [ ${PROJ_ROOT}/blockcolor.conf -nt ${ASSETS_TIMESTAMP} ] ; then \ echo "conf changed"; \ touch ${ASSETS_TIMESTAMP}; \ fi; \ diff --git a/doc/client_lua_api.md b/doc/client_lua_api.md index 4e081e595..8ef3bfb2e 100644 --- a/doc/client_lua_api.md +++ b/doc/client_lua_api.md @@ -33,7 +33,7 @@ the `init.lua` scripts in a shared environment. Paths ----- * `RUN_IN_PLACE=1` (Windows release, local build) - * `$path_share`: + * `$path_user`: * Linux: `` * Windows: `` * `$path_share` @@ -43,7 +43,7 @@ Paths * `$path_share` * Linux: `/usr/share/minetest` * Windows: `/minetest-0.4.x` - * `$path_share`: + * `$path_user`: * Linux: `$HOME/.minetest` * Windows: `C:/users//AppData/minetest` (maybe) @@ -52,7 +52,7 @@ Mod load path Generic: * `$path_share/clientmods/` -* `$path_share/clientmods/` (User-installed mods) +* `$path_user/clientmods/` (User-installed mods) In a run-in-place version (e.g. the distributed windows version): diff --git a/doc/lua_api.txt b/doc/lua_api.txt index 09b23ecbe..c4991ee0b 100644 --- a/doc/lua_api.txt +++ b/doc/lua_api.txt @@ -31,7 +31,7 @@ the `init.lua` scripts in a shared environment. Paths ----- * `RUN_IN_PLACE=1` (Windows release, local build) - * `$path_share`: + * `$path_user`: * Linux: `` * Windows: `` * `$path_share` @@ -41,7 +41,7 @@ Paths * `$path_share` * Linux: `/usr/share/minetest` * Windows: `/minetest-0.4.x` - * `$path_share`: + * `$path_user`: * Linux: `$HOME/.minetest` * Windows: `C:/users//AppData/minetest` (maybe) @@ -50,7 +50,7 @@ Games Games are looked up from: * `$path_share/games/gameid/` -* `$path_share/games/gameid/` +* `$path_user/games/gameid/` where `gameid` is unique to each game. @@ -86,8 +86,8 @@ Generic: * `$path_share/games/gameid/mods/` * `$path_share/mods/` -* `$path_share/games/gameid/mods/` -* `$path_share/mods/` (User-installed mods) +* `$path_user/games/gameid/mods/` +* `$path_user/mods/` (User-installed mods) * `$worldpath/worldmods/` In a run-in-place version (e.g. the distributed windows version): diff --git a/misc/winresource.rc b/misc/winresource.rc index 382d08bc5..90f6519d9 100644 --- a/misc/winresource.rc +++ b/misc/winresource.rc @@ -8,7 +8,7 @@ #if RUN_IN_PLACE #define BUILDMODE "RUN_IN_PLACE=1" #else - #define BUILDMODE "RUN_IN_PLACE=0" + #define BUILDMODE "RUN_IN_PLACE=1" #endif LANGUAGE 0, SUBLANG_NEUTRAL diff --git a/src/client.cpp b/src/client.cpp index f3a0c3636..298cfe50c 100644 --- a/src/client.cpp +++ b/src/client.cpp @@ -773,7 +773,7 @@ void Client::initLocalMapSaving(const Address &address, } #ifdef _WIN32 - const std::string world_path = porting::path_share + const std::string world_path = porting::path_user + DIR_DELIM + "worlds" + DIR_DELIM + "server_" + hostname + "_" + std::to_string(address.getPort()); @@ -1981,5 +1981,5 @@ void Client::unregisterModStorage(const std::string &name) std::string Client::getModStoragePath() const { - return porting::path_share + DIR_DELIM + "client" + DIR_DELIM + "mod_storage"; + return porting::path_user + DIR_DELIM + "client" + DIR_DELIM + "mod_storage"; } diff --git a/src/client/clientlauncher.cpp b/src/client/clientlauncher.cpp index 9369ff214..1299f93f9 100644 --- a/src/client/clientlauncher.cpp +++ b/src/client/clientlauncher.cpp @@ -598,7 +598,7 @@ bool ClientLauncher::create_engine_device() params.ZBufferBits = 24; #ifdef __ANDROID__ params.PrivateData = porting::app_global; - params.OGLES2ShaderPath = std::string(porting::path_share + DIR_DELIM + + params.OGLES2ShaderPath = std::string(porting::path_user + DIR_DELIM + "media" + DIR_DELIM + "Shaders" + DIR_DELIM).c_str(); #endif diff --git a/src/config.h b/src/config.h index 55a52c483..799fdd12a 100644 --- a/src/config.h +++ b/src/config.h @@ -16,8 +16,8 @@ #define PROJECT_NAME "BlockColor" #define PROJECT_NAME_C "BlockColor" #define STATIC_SHAREDIR "" - #define VERSION_MAJOR 1 - #define VERSION_MINOR 3 + #define VERSION_MAJOR 2 + #define VERSION_MINOR 0 #define VERSION_PATCH 0 #define VERSION_STRING STR(VERSION_MAJOR) "." STR(VERSION_MINOR) "." STR(VERSION_PATCH) #endif diff --git a/src/debug.cpp b/src/debug.cpp index a5758a379..8498697bc 100644 --- a/src/debug.cpp +++ b/src/debug.cpp @@ -294,7 +294,7 @@ long WINAPI Win32ExceptionHandler(struct _EXCEPTION_POINTERS *pExceptInfo) MINIDUMP_USER_STREAM mdus; bool minidump_created = false; - std::string dumpfile = porting::path_share + DIR_DELIM PROJECT_NAME ".dmp"; + std::string dumpfile = porting::path_user + DIR_DELIM PROJECT_NAME ".dmp"; std::string version_str(PROJECT_NAME " "); version_str += g_version_hash; diff --git a/src/game.cpp b/src/game.cpp index f5e2bb616..7daaecceb 100644 --- a/src/game.cpp +++ b/src/game.cpp @@ -607,7 +607,7 @@ public: m_fetched.insert(name); paths_insert(dst_paths, porting::path_share, name); - paths_insert(dst_paths, porting::path_share, name); + paths_insert(dst_paths, porting::path_user, name); } }; diff --git a/src/guiEngine.cpp b/src/guiEngine.cpp index d091ea002..7c87cbbe5 100644 --- a/src/guiEngine.cpp +++ b/src/guiEngine.cpp @@ -128,7 +128,7 @@ void MenuMusicFetcher::fetchSounds(const std::string &name, int i; for(i=0; i<10; i++) dst_paths.insert(base + DIR_DELIM + name + "."+itos(i)+".ogg"); - base = porting::path_share + DIR_DELIM + "sounds"; + base = porting::path_user + DIR_DELIM + "sounds"; dst_paths.insert(base + DIR_DELIM + name + ".ogg"); for(i=0; i<10; i++) dst_paths.insert(base + DIR_DELIM + name + "."+itos(i)+".ogg"); diff --git a/src/main.cpp b/src/main.cpp index 303aa4246..93536398e 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -420,11 +420,11 @@ static void setup_log_params(const Settings &cmd_args) static bool create_userdata_path() { #if defined(__ANDROID__) || defined(__IOS__) - if (fs::PathExists(porting::path_share)) + if (fs::PathExists(porting::path_user)) return true; #endif // Create user data directory - return fs::CreateDir(porting::path_share); + return fs::CreateDir(porting::path_user); } static bool init_common(const Settings &cmd_args, int argc, char *argv[]) @@ -477,15 +477,15 @@ static bool read_config_file(const Settings &cmd_args) g_settings_path = cmd_args.get("config"); } else { std::vector filenames; - filenames.push_back(porting::path_share + DIR_DELIM + "blockcolor.conf"); + filenames.push_back(porting::path_user + DIR_DELIM + "blockcolor.conf"); // Legacy configuration file location - filenames.push_back(porting::path_share + + filenames.push_back(porting::path_user + DIR_DELIM + ".." + DIR_DELIM + "blockcolor.conf"); #if RUN_IN_PLACE // Try also from a lower level (to aid having the same configuration // for many RUN_IN_PLACE installs) - filenames.push_back(porting::path_share + + filenames.push_back(porting::path_user + DIR_DELIM + ".." + DIR_DELIM + ".." + DIR_DELIM + "blockcolor.conf"); #endif @@ -510,7 +510,7 @@ static void init_log_streams(const Settings &cmd_args) #if RUN_IN_PLACE std::string log_filename = DEBUGFILE; #else - std::string log_filename = porting::path_share + DIR_DELIM + DEBUGFILE; + std::string log_filename = porting::path_user + DIR_DELIM + DEBUGFILE; #endif if (cmd_args.exists("logfile")) log_filename = cmd_args.get("logfile"); @@ -667,7 +667,7 @@ static bool auto_select_world(GameParams *game_params) // If there are no worlds, automatically create a new one } else { // This is the ultimate default world path - world_path = porting::path_share + DIR_DELIM + "worlds" + + world_path = porting::path_user + DIR_DELIM + "worlds" + DIR_DELIM + "world"; infostream << "Creating default world at [" << world_path << "]" << std::endl; diff --git a/src/mods.cpp b/src/mods.cpp index 3ca8cc24e..b1029b6a8 100644 --- a/src/mods.cpp +++ b/src/mods.cpp @@ -355,11 +355,11 @@ ClientModConfiguration::ClientModConfiguration(const std::string &path): ModConfiguration(path) { std::set paths; - std::string path_share = porting::path_share + DIR_DELIM + "clientmods"; + std::string path_user = porting::path_user + DIR_DELIM + "clientmods"; paths.insert(path); - paths.insert(path_share); + paths.insert(path_user); - std::string settings_path = path_share + DIR_DELIM + "mods.conf"; + std::string settings_path = path_user + DIR_DELIM + "mods.conf"; addModsFormConfig(settings_path, paths); } #endif diff --git a/src/porting.cpp b/src/porting.cpp index 826868312..24a251bcb 100644 --- a/src/porting.cpp +++ b/src/porting.cpp @@ -145,8 +145,9 @@ void signal_handler_init(void) // Default to RUN_IN_PLACE style relative paths std::string path_share = ".."; +std::string path_user = ".."; std::string path_locale = path_share + DIR_DELIM + "locale"; -std::string path_cache = path_share + DIR_DELIM + "cache"; +std::string path_cache = path_user + DIR_DELIM + "cache"; std::string getDataPath(const char *subpath) @@ -378,7 +379,7 @@ bool setSystemPaths() DWORD len = GetEnvironmentVariable("APPDATA", buf, sizeof(buf)); FATAL_ERROR_IF(len == 0 || len > sizeof(buf), "Failed to get APPDATA"); - path_share = std::string(buf) + DIR_DELIM + PROJECT_NAME; + path_user = std::string(buf) + DIR_DELIM + PROJECT_NAME; return true; } @@ -414,7 +415,7 @@ bool setSystemPaths() trylist.push_back(bindir + DIR_DELIM ".."); #ifdef __ANDROID__ - trylist.push_back(path_share); + trylist.push_back(path_user); #endif for (std::list::const_iterator @@ -438,7 +439,7 @@ bool setSystemPaths() } #ifndef __ANDROID__ - path_share = std::string(getenv("HOME")) + DIR_DELIM "." + path_user = std::string(getenv("HOME")) + DIR_DELIM "." + PROJECT_NAME; #endif @@ -462,7 +463,7 @@ bool setSystemPaths() } CFRelease(resources_url); - path_share = std::string(getenv("HOME")) + path_user = std::string(getenv("HOME")) + "/Library/Application Support/" + PROJECT_NAME; return true; @@ -474,7 +475,7 @@ bool setSystemPaths() bool setSystemPaths() { path_share = STATIC_SHAREDIR; - path_share = std::string(getenv("HOME")) + DIR_DELIM "." + path_user = std::string(getenv("HOME")) + DIR_DELIM "." + lowercase(PROJECT_NAME); return true; } @@ -498,11 +499,11 @@ void initializePaths() std::string execpath(buf); path_share = execpath + DIR_DELIM ".."; - path_share = execpath + DIR_DELIM ".."; + path_user = execpath + DIR_DELIM ".."; if (detectMSVCBuildDir(execpath)) { path_share += DIR_DELIM ".."; - path_share += DIR_DELIM ".."; + path_user += DIR_DELIM ".."; } } else { errorstream << "Failed to get paths by executable location, " @@ -523,9 +524,9 @@ void initializePaths() std::string execpath(buf); path_share = execpath; - path_share = execpath; + path_user = execpath; } - path_cache = path_share + DIR_DELIM + "cache"; + path_cache = path_user + DIR_DELIM + "cache"; #else infostream << "Using system-wide paths (NOT RUN_IN_PLACE)" << std::endl; @@ -543,13 +544,13 @@ void initializePaths() path_cache = std::string(home_dir) + DIR_DELIM + ".cache" + DIR_DELIM + PROJECT_NAME; } else { - // If neither works, use $path_share/cache - path_cache = path_share + DIR_DELIM + "cache"; + // If neither works, use $PATH_USER/cache + path_cache = path_user + DIR_DELIM + "cache"; } #endif infostream << "Detected share path: " << path_share << std::endl; - infostream << "Detected user path: " << path_share << std::endl; + infostream << "Detected user path: " << path_user << std::endl; infostream << "Detected cache path: " << path_cache << std::endl; #ifdef USE_GETTEXT diff --git a/src/porting.h b/src/porting.h index aee8e3297..9fab9af10 100644 --- a/src/porting.h +++ b/src/porting.h @@ -144,6 +144,7 @@ extern std::string path_share; Linux: "~/." Mac: "~/Library/Application Support/" */ +extern std::string path_user; /* Path to gettext locale files diff --git a/src/porting_android.cpp b/src/porting_android.cpp index 27545c52a..7dbb9827f 100644 --- a/src/porting_android.cpp +++ b/src/porting_android.cpp @@ -145,7 +145,7 @@ void cleanupAndroid() #ifdef GPROF errorstream << "Shutting down GPROF profiler" << std::endl; - setenv("CPUPROFILE", (path_share + DIR_DELIM + "gmon.out").c_str(), 1); + setenv("CPUPROFILE", (path_user + DIR_DELIM + "gmon.out").c_str(), 1); moncleanup(); #endif @@ -206,9 +206,9 @@ void initializePathsAndroid() cls_File, mt_getAbsPath, "getCacheDir"); path_storage = getAndroidPath(cls_Env, NULL, cls_File, mt_getAbsPath, "getExternalStorageDirectory"); - path_share = path_storage + DIR_DELIM + "Android/data/net.blockcolor.game/files"; - path_share = path_share; - path_locale = path_share + DIR_DELIM + "locale"; + path_user = path_storage + DIR_DELIM + "Android/data/net.blockcolor.game/files"; + path_share = path_user; + path_locale = path_user + DIR_DELIM + "locale"; } void showInputDialog(const std::string& acceptButton, const std::string& hint, diff --git a/src/porting_ios.cpp b/src/porting_ios.cpp index d2a2dbc2a..94b5dee09 100644 --- a/src/porting_ios.cpp +++ b/src/porting_ios.cpp @@ -32,8 +32,9 @@ namespace porting { char buf[128]; ioswrap_paths(PATH_DOCUMENTS, buf, sizeof(buf)); - path_share = std::string(buf); + path_user = std::string(buf); ioswrap_paths(PATH_LIBRARY_SUPPORT, buf, sizeof(buf)); + path_share = std::string(buf); path_locale = std::string(buf) + "/locale"; ioswrap_paths(PATH_LIBRARY_CACHE, buf, sizeof(buf)); path_cache = std::string(buf); diff --git a/src/script/lua_api/l_mainmenu.cpp b/src/script/lua_api/l_mainmenu.cpp index 51741a35e..588046412 100644 --- a/src/script/lua_api/l_mainmenu.cpp +++ b/src/script/lua_api/l_mainmenu.cpp @@ -667,7 +667,7 @@ int ModApiMainMenu::l_create_world(lua_State *L) const char *name = luaL_checkstring(L, 1); int gameidx = luaL_checkinteger(L,2) -1; - std::string path = porting::path_share + DIR_DELIM + std::string path = porting::path_user + DIR_DELIM "worlds" + DIR_DELIM + name; @@ -753,7 +753,7 @@ int ModApiMainMenu::l_get_mapgen_names(lua_State *L) int ModApiMainMenu::l_get_modpath(lua_State *L) { std::string modpath = fs::RemoveRelativePathComponents( - porting::path_share + DIR_DELIM + "mods" + DIR_DELIM); + porting::path_user + DIR_DELIM + "mods" + DIR_DELIM); lua_pushstring(L, modpath.c_str()); return 1; } @@ -762,7 +762,7 @@ int ModApiMainMenu::l_get_modpath(lua_State *L) int ModApiMainMenu::l_get_gamepath(lua_State *L) { std::string gamepath = fs::RemoveRelativePathComponents( - porting::path_share + DIR_DELIM + "games" + DIR_DELIM); + porting::path_user + DIR_DELIM + "games" + DIR_DELIM); lua_pushstring(L, gamepath.c_str()); return 1; } @@ -771,7 +771,7 @@ int ModApiMainMenu::l_get_gamepath(lua_State *L) int ModApiMainMenu::l_get_texturepath(lua_State *L) { std::string gamepath = fs::RemoveRelativePathComponents( - porting::path_share + DIR_DELIM + "textures"); + porting::path_user + DIR_DELIM + "textures"); lua_pushstring(L, gamepath.c_str()); return 1; } @@ -953,11 +953,11 @@ bool ModApiMainMenu::isMinetestPath(std::string path) return true; /* mods */ - if (fs::PathStartsWith(path,fs::RemoveRelativePathComponents(porting::path_share + DIR_DELIM + "files"))) + if (fs::PathStartsWith(path,fs::RemoveRelativePathComponents(porting::path_user + DIR_DELIM + "files"))) return true; /* worlds */ - if (fs::PathStartsWith(path,fs::RemoveRelativePathComponents(porting::path_share + DIR_DELIM + "worlds"))) + if (fs::PathStartsWith(path,fs::RemoveRelativePathComponents(porting::path_user + DIR_DELIM + "worlds"))) return true; diff --git a/src/server.cpp b/src/server.cpp index 1cbbfd4ec..97d4a1efd 100644 --- a/src/server.cpp +++ b/src/server.cpp @@ -2371,7 +2371,7 @@ void Server::fillMediaCache() paths.push_back(mod.path + DIR_DELIM + "media"); paths.push_back(mod.path + DIR_DELIM + "models"); } - paths.push_back(porting::path_share + DIR_DELIM + "textures" + DIR_DELIM + "server"); + paths.push_back(porting::path_user + DIR_DELIM + "textures" + DIR_DELIM + "server"); // Collect media file information from paths into cache for(std::vector::iterator i = paths.begin(); diff --git a/src/serverlist.cpp b/src/serverlist.cpp index b2ea07d44..74c3ef923 100644 --- a/src/serverlist.cpp +++ b/src/serverlist.cpp @@ -42,9 +42,9 @@ std::string getFilePath() std::string serverlist_file = g_settings->get("serverlist_file"); std::string dir_path = "client" DIR_DELIM "serverlist" DIR_DELIM; - fs::CreateDir(porting::path_share + DIR_DELIM "client"); - fs::CreateDir(porting::path_share + DIR_DELIM + dir_path); - return porting::path_share + DIR_DELIM + dir_path + serverlist_file; + fs::CreateDir(porting::path_user + DIR_DELIM "client"); + fs::CreateDir(porting::path_user + DIR_DELIM + dir_path); + return porting::path_user + DIR_DELIM + dir_path + serverlist_file; } diff --git a/src/subgame.cpp b/src/subgame.cpp index 3333cbca5..e5b1ae977 100644 --- a/src/subgame.cpp +++ b/src/subgame.cpp @@ -74,7 +74,7 @@ SubgameSpec findSubgame(const std::string &id) if(id == "") return SubgameSpec(); std::string share = porting::path_share; - std::string user = porting::path_share; + std::string user = porting::path_user; std::vector find_paths; Strfnd search_paths(getSubgamePathEnv()); @@ -149,7 +149,7 @@ std::set getAvailableGameIds() std::set gameids; std::set gamespaths; gamespaths.insert(porting::path_share + DIR_DELIM + "games"); - gamespaths.insert(porting::path_share + DIR_DELIM + "games"); + gamespaths.insert(porting::path_user + DIR_DELIM + "games"); Strfnd search_paths(getSubgamePathEnv()); @@ -233,7 +233,7 @@ std::vector getAvailableWorlds() while (!search_paths.at_end()) worldspaths.insert(search_paths.next(PATH_DELIM)); - worldspaths.insert(porting::path_share + DIR_DELIM + "worlds"); + worldspaths.insert(porting::path_user + DIR_DELIM + "worlds"); infostream << "Searching worlds..." << std::endl; for (std::set::const_iterator i = worldspaths.begin(); i != worldspaths.end(); ++i) { @@ -259,7 +259,7 @@ std::vector getAvailableWorlds() } // Check old world location do{ - std::string fullpath = porting::path_share + DIR_DELIM + "world"; + std::string fullpath = porting::path_user + DIR_DELIM + "world"; if(!fs::PathExists(fullpath)) break; std::string name = "Old World";