Building the game - Studio-Lovelies/GG-JointJustice-Unity GitHub Wiki

Knowledge requirements

This document depends on basic knowledge of

General

By design, you can build the game in various ways.
This document outlines all options to generate an executable for Windows, macOS, Linux, using manual and automated build systems.

Automatically using GitHub Actions

GitHub Actions build the game for various platforms automatically on certain conditions.

All automated builds need to complete without issues before maintainers can integrate Pull Requests.

These builds serve as single source of truth. Meaning you need to treat:

  • bugs that occur inside automated builds but not locally, as reliably broken rather than flakey
  • bugs that don't occur inside automated builds as unreproducible - this typically indicates an issue with the local setup they occur in
  • features that break inside automated builds as incomplete

By hand, using GitHub Actions

Using GitHub Actions you may build any change you push to a branch on the Studio-Lovelies/GG-JointJustice-Unity repository:

  1. Navigate to the Generate builds-section of the Actions-tab of the repository
  2. Click on the Run workflow-dropdown at the top right of the center widget
  3. Select your branch and keep Upload to GitHub Releases and itch.io? set to false
  4. Click on the green Run workflow button
  5. After around 15 minutes, inspect the result of your build:
    1. ✅ After a successful build, you can select the run and download game builds from the Artifact-section at the bottom of the page
    2. ❌ After a broken build, you can inspect the Build for [PLATFORM]-steps to see the full error log

You can also fork the repository and run builds on your fork

Important: your first build fails and requires you to save the string generated inside Request activation file 🔑 as an encrypted GitHub Secret named UNITY_LICENSE.
After that, re-running the build process should succeed.

By hand, locally

Use the Unity build settings window to generate builds for whichever platform you want.