Development of the game has been done on Windows and Linux devices.
-
Install Unity version 2019.4.2f1 (We recommend installing via Unity Hub. You should also be able to retrieve it from here: https://unity3d.com/get-unity/download/archive)
-
Install yarn
-
If you also want to edit source code and don't want to use a plain text editor, you should also install an editor with support or plugins for C# (Rider, Visual Studio Code, ...) and for Typescript (WebStorm, ...).
For further instructions regarding development, see the development setup hints.
This guide assumes the reader knows how to execute commands from a command line like
bash.
If you do not want to manually build and bundle every component of the game, you can use an included build script which will build all components and bundle them into a standalone distributable folder for Linux or Windows.
Follow these steps:
- Open ../SynergyQuest in the Unity editor.
- Select "SynergyQuest Build" in the menu bar at the top of the editor window
- Select "Windows Build" or "Linux Build", depending on the system for which you want to bundle the game.
- The build process will now start and take quite some time. As soon as it completes, a popup will appear informing you about the location where the build has been saved.
- Optional: ZIP the build folder for distribution
Execute the following commands:
cd Controller/controller-client-lib
yarn install
yarn build
cd ../sensor-input-lib
yarn install
yarn build
cd ../controller-app
yarn install
yarn upgrade ../controller-client-lib
yarn upgrade ../sensor-input-lib
yarn buildExecute the following commands:
cd Controller/ssl-warning-info
yarn install
yarn build- Build the Controller Web App first.
- Open /SynergyQuest in the Unity Editor and build the project for Linux and / or Windows.
For the remainder of the guide we assume the build is saved in
SynergyQuest/Build/SynergyQuest. - Create a folder
SynergyQuest/Build/SynergyQuest/controller-appand copy all files inController/controller-app/build/*into there - Create a folder
SynergyQuest/Build/SynergyQuest/ssl-warning-infoand copy all files inController/ssl-warning-info/build/*into there - (Optional: Generate SSL certificate used by game.
This is not strictly required since a pre-built certificate with a ridiculous expiration date (900 years) is already shipped with this repository.
Still, on Linux systems with openssl installed, a certificate can be built by running
Certificates/generate-self-signed.sh.) - Create a folder
SynergyQuest/Build/SynergyQuest/Certificatesand copyCertficates/generated/server.pfxinto it. - Done, you can now run the executable produced by Unity
- (If you want to distribute the game, put
SynergyQuest/UsageNotes/ReadMe.txtalso into the folder and ZIPSynergyQuest/Build/SynergyQuest.)