You will need to find and download an unpacked LEGO Universe client (this guide will work for packed and unpacked clients). Make sure that its hash matches the ones mentioned in the repo README
This tutorial was done in Windows 11. The way some things are accessed might be different in older versions of Windows
You will need to install the following software
-
Make sure, if asked, to add the program to the system PATH
-
MUST KEEP THE DEFAULT PORT AT
3306!! will not work if it is changedSet the root password as root However, if you plan on making your server accessible outside your network, set this to a strong password instead
- Navigate to your
Documentsfolder - Right click in this folder and select
Show More Options > Git Bash HereIf you are on Windows 10, you can skip the
Show More Optionsoption - In the terminal window that popped up run
git clone --recursive https://github.com/DarkflameUniverse/DarkflameServer
-
Navigate to the
DarkflameServerfolder -
Right click in this folder and select
Show More Options > Git Bash HereIf you are on Windows 10, you can skip the
Show More Optionsoption -
Run
./build.sh
While the server is building we will prepare the client files
- Navigate to where you downloaded the client and move it to your
Documentsfolder - Right click the .rar client file and select
7-Zip > Extract files...Keep the default settings (this will take some time)If your client is already extracted, move the folder to
Documents - You should now have a folder called something like
LEGO Universe (unpacked)orLEGO Universe - Delete the .rar file
- Rename the client folder to
clientRight click the folder, go to
Show more options>Rename
- In the Start Menu start typing
mariadband open the program that is calledCommand Prompt (MariaDB XXX (x64))(where XXX is the version number) - In the terminal that just came up, log into the root user by running the following
mysql -u root -pthe password when prompted will be
root - Once logged in, run
CREATE OR REPLACE USER 'darkflame'@'localhost' IDENTIFIED BY 'password';darkflameis the database username. Replacepasswordwith a password of your choice. This will be the database password - Then run
CREATE OR REPLACE DATABASE darkflame;darkflameis again the name of the database - Then run
GRANT ALL PRIVILEGES ON darkflame.* TO 'darkflame'@'localhost'; - Then run
FLUSH PRIVILEGES; - Then exit by running
EXIT; - You can now close the terminal
Navigate to the DarkflameServer/build folder.
If you dont have the build folder and/or the following .ini files, your build failed
In the sharedconfig.ini file, add the database IP (localhost) to mysql_host=, the database name (darkflame) to mysql_database=, database username (darkflame) to mysql_username=, and the database password to mysql_password=
The end result should look like this
# MySQL connection info:
mysql_host=localhost
mysql_database=darkflame
mysql_username=darkflame
mysql_password=XXXYYYZZZ
Where
XXXYYYZZZis the password you chose earlier
Next, in the same file, add the server IP (localhost) to external_ip=
Should look like
external_ip=localhost
Still in the sharedconfig.ini file, add the following to client_location=
..\..\client
The end result should look like this
# The location of the client
# Either the folder with /res or with /client and /versions
client_location=..\..\LEGO_Universe
- As of 10/25/2022 the mysql migrations are now done automatically when you start the server
- As of 10/30/2022 the sqlite migrations are now done automatically when you start the server
-
Open a terminal in the
buildfolder of the server and run./MasterServer.exe -aIF that gives you issues, try
./MasterServer -aIt might hang for a minute or two, just wait.
-
Enter a username
-
Enter a password
-
These credentials are what you are going to use to login to the game with REMEMBER THEM
- Open you client folder and open the boot.cfg file in a text editor
If you had a packed client, the
boot.cfgfile will be in theclientfolder - If it isn't already, set
AUTHSERVERIP=0:tolocalhost - Change
UGCUSE3DSERVICES=7:1toUGCUSE3DSERVICES=7:0
The file should look like this
.
. [unchanged lines here]
.
AUTHSERVERIP=0:localhost,
.
. [unchanged lines here]
.
UGCUSE3DSERVICES=7:0
.
. [unchanged lines here]
.
- Save and close the file
- Open a terminal in the build folder of the server and run
./MasterServer.exeIF that gives you issues, try
./MasterServer - A bunch of terminal windows should popup, this is normal
If you get a bunch of firewall requests, close them out. You only need to accept them if you want make your server accessible outside your network (not covered in this tutorial)
- Start your client and login
- Go to the main terminal you opened and hit
Ctrl+C - After a few seconds all the terminal windows (except the main one) should close
- Server is now shutdown
- Close the main terminal
As of the writing of this guide the DLU codebase is still actively being contributed to and as such, the code base is constantly being updated. Some of these updates include bug fixes or feature additions. It is recommend to update the server at least once every 2 weeks.
Open a terminal in the server folder and run the following
-
git pull --recurse-submodules -
./build.shRunning the build script will automatically run mysql migrations
-
Any new sqlite or mysql migrations are run automatically when you start the server. If there are new migrations to run, startup will be slightly slower
last updated 10/14/23
