From def6469b822526f140d2ecd82540de720631c22c Mon Sep 17 00:00:00 2001 From: David Markowitz Date: Tue, 17 Dec 2024 16:46:21 -0800 Subject: [PATCH] create resServer if not exist --- README.md | 10 ++++++---- dMasterServer/MasterServer.cpp | 1 + dServer/Server.cpp | 2 +- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index a402a163c..e13fc8d19 100644 --- a/README.md +++ b/README.md @@ -24,11 +24,13 @@ Darkflame Universe is a server emulator and does not distribute any LEGO® Unive Warning: WSL version 1 does NOT support using sqlite as a database due to how it handles filesystem synchronization. You must use Version 2 if you must run the server under WSL. Not doing so will result in save data loss. * Single player installs now no longer require building the server from source or installing development tools. -* Download the [latest release](https://github.com/DarkflameUniverse/DarkflameServer/releases) and extract the files into a folder inside your client. -* You should be able to see the folder with the server executables in the same folder as `legouniverse.exe`. -* Open `sharedconfig.ini` and find the line that says `client_location` and put `..` after it so the line reads `client_location=..`. +* Download the [latest windows release](https://github.com/DarkflameUniverse/DarkflameServer/releases) and extract the files into a folder inside your client. +* You should be able to see the folder with the server files in the same folder as `legouniverse.exe`. +* Feel free to rename the folder with the server files to whatever you want. +* Go into the server files folder and open `sharedconfig.ini`. Find the line that says `client_location` and put `..` after it so the line reads `client_location=..`. * To run the server, double-click `MasterServer.exe`. -* You will be asked to create an account the first time you run the server. +* You will be asked to create an account the first time you run the server. After you have created the account, the server will shutdown and need to be restarted. +* To connect to the server, either delete the file `boot.cfg` which is found in your LEGO Universe client, rename the file `boot.cfg` to something else or follow the steps [here](#allowing-a-user-to-connect-to-your-server) if you wish to keep the file. * When shutting down the server, it is highly recommended to click the `MasterServer.exe` window and hold `ctrl` while pressing `c` to stop the server. * We are working on a way to make it so when you close the game, the server saves automatically alongside when you open the game, the server starts automatically. diff --git a/dMasterServer/MasterServer.cpp b/dMasterServer/MasterServer.cpp index e01ca255b..b764169a4 100644 --- a/dMasterServer/MasterServer.cpp +++ b/dMasterServer/MasterServer.cpp @@ -126,6 +126,7 @@ int main(int argc, char** argv) { MigrationRunner::RunMigrations(); const auto resServerPath = BinaryPathFinder::GetBinaryDir() / "resServer"; + std::filesystem::create_directories(resServerPath); const bool cdServerExists = std::filesystem::exists(resServerPath / "CDServer.sqlite"); const bool oldCDServerExists = std::filesystem::exists(Game::assetManager->GetResPath() / "CDServer.sqlite"); const bool fdbExists = std::filesystem::exists(Game::assetManager->GetResPath() / "cdclient.fdb"); diff --git a/dServer/Server.cpp b/dServer/Server.cpp index cd801a3b3..3b9ba2bb3 100644 --- a/dServer/Server.cpp +++ b/dServer/Server.cpp @@ -13,7 +13,7 @@ void Server::SetupLogger(const std::string_view serviceName) { const auto logsDir = BinaryPathFinder::GetBinaryDir() / "logs"; - if (!std::filesystem::exists(logsDir)) std::filesystem::create_directory(logsDir); + if (!std::filesystem::exists(logsDir)) std::filesystem::create_directories(logsDir); std::string logPath = (logsDir / serviceName).string() + "_" + std::to_string(time(nullptr)) + ".log"; bool logToConsole = false;