Difference between revisions of "Building PSUnreal on Windows"
Line 133: | Line 133: | ||
=== cmake command for libzip === | === cmake command for libzip === | ||
mkdir build | mkdir build | ||
cd build | cd build | ||
C:\PSUnreal\ThirdParty\Libzip\libzip\build>"F:\My Programs\Develop\CMake\bin\cmake" -DZLIB_LIBRARY=C:\UnrealEngine\Engine\Source\ThirdParty\zlib\v1.2.8\lib\Win64\VS2015\Release\zlibstatic.lib -DZLIB_INCLUDE_DIR=C:\UnrealEngine\Engine\Source\ThirdParty\zlib\v1.2.8\include -DENABLE_COMMONCRYPTO=OFF -DENABLE_GNUTLS=OFF -DENABLE_MBEDTLS=OFF -DENABLE_OPENSSL=OFF -DENABLE_WINDOWS_CRYPTO=OFF -DENABLE_BZIP2=OFF -DENABLE_LZMA=OFF -G "Visual Studio 15 2017 Win64" .. | C:\PSUnreal\ThirdParty\Libzip\libzip\build>"F:\My Programs\Develop\CMake\bin\cmake" -DZLIB_LIBRARY=C:\UnrealEngine\Engine\Source\ThirdParty\zlib\v1.2.8\lib\Win64\VS2015\Release\zlibstatic.lib -DZLIB_INCLUDE_DIR=C:\UnrealEngine\Engine\Source\ThirdParty\zlib\v1.2.8\include -DENABLE_COMMONCRYPTO=OFF -DENABLE_GNUTLS=OFF -DENABLE_MBEDTLS=OFF -DENABLE_OPENSSL=OFF -DENABLE_WINDOWS_CRYPTO=OFF -DENABLE_BZIP2=OFF -DENABLE_LZMA=OFF -G "Visual Studio 15 2017 Win64" .. |
Revision as of 15:55, 23 June 2020
Reference docs
Check this page as reference: https://wiki.unrealengine.com/Dedicated_Server_Guide_%28Windows_%26_Linux%29
There are two ways to compile and run your project:
* Compiling the editor and then running/debugging the game within the editor. Please note VS breakpoints will work also in this mode. THIS IS THE ONE WE USE AS DEFAULT. * Compiling the client without editor, and you will then need cooked content (prepared art files). All non-editor builds require cooked content, however, you can run an editor build with the "-game" command line flag to run the game directly using the editor data; please note however that this will be slower than a cooked build as the editor is essentially processing assets on the fly.
Compiling Unreal Engine
High level steps:
- Step 1: Register an account at UnrealEngine and GitHub
- Step 2: Add your GitHub username to in your UnrealEngine profile under your dashboard
- Step 3: Download the source code from UE4 Repo
- list remote branches with: git ls-remote https://github.com/EpicGames/UnrealEngine.git
- get source code with: git clone -b 4.24.3-release https://github.com/EpicGames/UnrealEngine.git
- this will create a "Unreal Engine" directory as child of the dir where you run the command
- Step 4: Install Visual Studio 2017, follow these instructions to get the right components in your Visual Studio
- Step 5: Run Setup.bat to download and install the prerequisites
- Step 6: Run GenerateProjectFiles.bat to make project files
- Step 7: If you dont have it yet, you need to make an account to login to Visual Studio.
- Step 8: Launch Visual Studio, open UE4.sln and Build Unreal Engine 4 with Development Editor configuration and Win64 Platform
- Step 9: Copy F:\UnrealEngine\Engine\Source\ThirdParty\zlib\v1.2.8\lib\Win64\VS2015\zlib.dll to F:\Unreal Projects\MyProject2\PSUnreal\Binaries\Win64
- Step 10: Run the UE4Editor.exe from Engine\Binaries\Win64\ subdirectory
Compiling PSUnreal
You need to install MariaDB Connector from: https://mariadb.com/downloads/#connectors
- Select C connector , version 3.1.8GA and MS Windows (64-bit) as platform
- It will install it in : \Program Files\MariaDB\MariaDB Connector C 64-bit
- From the MariaDB install directory, copy both lib/ and include/ (with subfolders) into PSUnreal\ThirdParty\MariaDB\
Compile Wordnet
- Open PSUnreal\ThirdParty\Wordnet\Wordnet.sln with Visual Studio
- Click on Compile
- Copy this file: PSUnreal\ThirdParty\Wordnet\x64\Debug\Wordnet.lib in PSUnreal\ThirdParty\Wordnet\lib\x64\Wordnet.lib
In this mode you will use the Editor to run/debug the game
- Generate project files, by right clicking on PSUnreal.uproject and "Generate Visual Studio project files"
- Open Visual Studio 2017
- Open PSUnreal.sln
- Select "PSUnreal" project from the left tree view and "DebugGame Editor" as configuration from the top dropdown
- NOTE: DebugGame configuration builds the engine as optimized, but leaves the game code debuggable. This configuration is ideal for debugging only game modules.
- Compile
Preparing the server
- Install mysql server and launch it
- Create the PlaneShift database
> mysql -u username -ppassword
- IF you get 'mysql' is not recognized command, means windows cannot find it. Do the following
- press start, type "advanced setting", the click on "View advanced system settings"
- Click on "Environment Variables" at the bottom
- Click on PATH line, end "Edit".
- Then click on "New" to add a new element in the PATH variable
- Copy paste the directory where your mysql.exe is , for me is "F:\Develop\MySQL\MySQL Server 5.5\bin"
- Click on OK on both windows to apply
- open A NEW command prompt, now it will work
The default username is root with no password.
Then from within mysql:
mysql> create database planeshift; mysql> GRANT ALL PRIVILEGES ON planeshift.* TO planeshift@localhost IDENTIFIED BY 'planeshift'; mysql> quit
> cd PSUnreal\Scripts > mysql -u planeshift -pplaneshift
mysql> use planeshift; mysql> source psunreal_mysql_20200401.sql; mysql> quit
- To test if you can connect to your database install: https://dbeaver.io/
- Provide the connect information : locahost , port 3306, you should see the planeshift schema with a set of tables.
Launching the server and client
There are different ways to launch the client in debug mode:
1) PREFERRED. PSUnreal\Scripts\client.bat (you may need to adapt the path to your installation)
2) From Visual Studio
- Select the DebugGameEditor configuration
- From VS properties on PSUnreal add command line -debug -game
- It will launch directly without opening the editor app
3) From Visual Studio with the Editor first
- Select the DebugGameEditor configuration
- From VS properties on PSUnreal remove -game from command line
- It will launch the Editor, then you press "Play" in the editor. The breakpoints placed in VS are working as expected.
If you want to launch the server:
1) PREFERRED. Use PSUnreal\Scripts\server.bat (you may need to adapt the path to your installation)
2) from VS:
- Select the "DebugGame Editor" configuration (if you select Development Editor then the Editor will start instead of the server)
- From VS properties on PSUnreal , select "Debugging" and then add this in the command line: -server -log
- The resulting property will be like: "$(SolutionDir)$(ProjectName).uproject" -server -log
- It will launch directly without going through the editor
Updating your database
From time to time a new database is posted under \Scripts, example: psunreal_mysql_20200401.sql
To update your database you need to:
> cd PSUnreal\Scripts > mysql -u root -p mysql> drop database planeshift; mysql> create database planeshift; mysql> GRANT ALL PRIVILEGES ON planeshift.* TO planeshift@localhost IDENTIFIED BY 'planeshift'; mysql> quit
> mysql -u planeshift -pplaneshift
mysql> use planeshift; mysql> source psunreal_mysql_20200401.sql; mysql> quit
cmake command for libzip
mkdir build cd build C:\PSUnreal\ThirdParty\Libzip\libzip\build>"F:\My Programs\Develop\CMake\bin\cmake" -DZLIB_LIBRARY=C:\UnrealEngine\Engine\Source\ThirdParty\zlib\v1.2.8\lib\Win64\VS2015\Release\zlibstatic.lib -DZLIB_INCLUDE_DIR=C:\UnrealEngine\Engine\Source\ThirdParty\zlib\v1.2.8\include -DENABLE_COMMONCRYPTO=OFF -DENABLE_GNUTLS=OFF -DENABLE_MBEDTLS=OFF -DENABLE_OPENSSL=OFF -DENABLE_WINDOWS_CRYPTO=OFF -DENABLE_BZIP2=OFF -DENABLE_LZMA=OFF -G "Visual Studio 15 2017 Win64" ..