Course: COMP3329 Computer Game Design and Programming
School: The University of Hong Kong (HKU)
Author: Choi Tsz Yin
UID: 3036259176
The Slayer is a 2D pixel-art action platformer developed with the Tuanjie Engine. It uses 2D Universal Render Pipeline (URP) rendering, the Unity Input System, Cinemachine, Addressables for scene loading, and DOTween for UI fades.
| Item | Version / notes |
|---|---|
| Tuanjie Editor | 2022.3.62t3 (Tuanjie Editor 1.8.1) |
| Platform | Windows or macOS |
| Disk space | Sufficient space for the repo + imported Library cache (typically several GB after first open) |
Use the same major editor version as this project to avoid asset or script upgrade prompts. If you only have Unity Hub with vanilla Unity, install the Tuanjie editor build that matches 2022.3.62t3.
-
Obtain the source
Clone or extract this repository to a folder path without special characters if possible. -
Open the project
- Launch Tuanjie Hub.
- Add → select the folder that contains
Assets,Packages, andProjectSettings. - Open the project with editor version 2022.3.62t3 / Tuanjie 1.8.1 as recorded in
ProjectSettings/ProjectVersion.txt.
-
First-time import
On first open, Tuanjie will import assets and regenerate theLibraryfolder. Wait until the progress bar finishes and the editor is idle. -
Addressables
This game loads gameplay scenes through Addressables. After import completes:- Open Window → Asset Management → Addressables → Groups.
- If prompted to create Addressables settings, accept it.
- Build Addressables when preparing a standalone player: Addressables Groups window → Build → New Build → Default Build Script (required before or as part of your release pipeline so packaged scenes resolve correctly).
-
Optional: IDE
C# scripts can be edited with Visual Studio or VS Code if you install the appropriate Unity/Tuanjie integration.
-
In Project window, open
Assets/Scenes/Initialization.scene(this is the only scene listed in File → Build Settings and acts as the bootstrap). -
Press Play ▶.
The initialization scene loads the persistent bootstrap and uses Addressables to bring in the menu and game content as designed. -
If audio or scenes fail to load, confirm Addressables settings exist and that groups referenced by
AssetReferencefields (e.g. persistent scene onInitialLoad) are built or playable in the Editor per your Addressables configuration.
-
File → Build Settings
- Ensure
Assets/Scenes/Initialization.sceneis included.
- Ensure
-
Choose Windows, macOS, or your target platform, then Switch Platform if needed.
-
Addressables
Run an Addressables Default Build before building the player so runtime loads succeed. -
Build → choose an output folder → run the generated executable.
| Path | Purpose |
|---|---|
Assets/Scripts/ |
Gameplay, UI, audio, transitions |
Assets/Scenes/ |
Scene files including Initialization.scene |
Assets/Settings/ |
URP, Input System, renderer data |
Packages/manifest.json |
Package dependencies (URP, Cinemachine, Addressables, Input System, TextMesh Pro, etc.) |