Skip to content
Snippets Groups Projects
Select Git revision
  • b1cb1543b86c7a0442e8f4f344f0acdf15e9470b
  • master default
  • JS-based-scroll-rendering
  • Paul_Marius_Level
  • Paul_Marius_2
  • Paul_Marius
  • Andi_Mark
  • be-UnityWebView
  • gitignoreFrameitServer
  • ZimmerBSc
  • Bugfix_StageLoading
  • stages
  • MAZIFAU_Experimental
  • tsc/coneworld
  • tsc/fact-interaction
  • marcel
  • MaZiFAU_TopSort
  • mergeHelper
  • zwischenSpeichern
  • tempAndrToMaster
  • SebBranch
  • 3.0
  • v2.1
  • v2.0
  • v1.0
25 results

DEPLOY.md

Blame
  • Deployment of new UFrameIT Releases

    A Note on Versioning

    We use semantic versioning. A version number looks like x.y.z, no v prefix.

    Always release all of

    at the same time with the same version number.

    Making a new UFrameIT Release

    1. Deploy prereleases on the UFrameIT/UFrameIT GitHub repo for all OS. See below how to do that.
    2. Let people test.
    3. Merge FrameIT/frameworld's devel branch into master and git-tag with x.y.z.
    4. Update archive submodules in UFrameIT/archives and git-tag with x.y.z.
    5. Git-tag UFrameIT/UFrameIT (this repo) with x.y.z..
    6. Publish prerelease from step 1.
    7. Write a news post on our website: https://github.com/UFrameIT/UFrameIT.github.io

    Deploying Binaries for UFrameIT

    Archive type

    • For Linux, deploy .tar.gz files (-> smallest file size as compared to .zip and .tar)
    • For macOS, deploy .dmg files
    • For Windows, deploy .zip files (-> guaranteed compatibility among end users since Windows Explorer can open them)

    Building Binaries (MultiBuild.bat can be used to do this automatically. MultiBuild.sh is maybe outdated and needs adjustments)

    • Make sure Support for all build target platforms is installed:

      • Open Unity Hub -> Installs -> Choose Version -> Add Modules -> Check the following: Windows Build Support, Linux Build Support, Mac Build Support
    • Make sure to copy a suitable frameit-server.jar and a corresponding archives-folder into "Assets/StreamingAssets":

    • Make sure to build with the unity-version that's set as the default-version for the project

    • Build Binaries (HINT: THE BUILD FOR macOS USUALLY ONLY WORKS IF IT'S BUILT FROM A MAC)

      • Via Command Line: see MultiBuild.bat
      • Via Unity-UI: File -> Build Settings... -> Choose "Target Platform" and "Architecture" -> Build

    Building Archives

    • For Windows: zip -r <TARGET-DIR>/UFrameIT-<version>-Windows.zip <SOURCE-DIR>
    • For Linux: tar -zcvf UFrameIT-<version>-Linux.tar.gz <SOURCE-DIR>
    • For macOS: Create a dmg-file from the .app-file (Only possible on macOS)
      • mkdir UFrameIT-Image-Folder
      • cp <UFrameIT-.app-file> UFrameIT-Image-Folder/<UFrameIT-.app-file>
      • hdiutil create UFrameIT-<version>-Mac.dmg -volname "UFrameIT-<version>" -srcfolder UFrameIT-Image-Folder
      • For adjusting the appearance of the dmg, the image from "Assets/Images/dmg_background.png" can be used

    Hints for deployment

    • The build for macOS usually only works if it's built from a Mac
    • There was a Unity-Bug, where two different versions of Unity were pointing to the same Unity.exe. When you verify the version of the Unity.exe, with opening its details-panel, this version should match the version used for the build and the version that's set as the default-version for the Unity-Project. If that's not the case, this could lead to the following error on Linux: "Invalid serialized file version: .../FrameWorld_Data/globalgamemanagers. Expected version: 2019.4.0f1. Actual version: 2019.4.3f1"
    • If the resulting binary does not work properly, please go through the player.log file (https://docs.unity3d.com/Manual/LogFiles.html)
      • Linux: ~/.config/unity3d/CompanyName/ProductName/Player.log
      • macOS: ~/Library/Logs/Company Name/Product Name/Player.log
      • Windows: C:\Users\username\AppData\LocalLow\CompanyName\ProductName\Player.log
    • For problems concerning the appearance of the game, please open the Unity-Project and adjust the Project-/Player-Settings: Edit -> Project Settings... -> Player -> Resolution and Presentation
    • For changing the scenes that will be build please change the Build-Settings: File -> Build Settings... -> Scenes in Build