Project Requirements and Settings
The following requirements will help to ensure that the Game can co-exist with other Games in future LOL build configurations, such as a combined Legends of Learning master mobile project
  • For API 5.3 you must use Unity 2020 version 2020.3.33 LTS or higher. We do not support Unity 2021 or higher
  • Do not adjust global project settings. This includes timesteps, graphic settings (no URP), etc.
  • Use the standard out of the box Unity 2020.3.33 LTS LTS renderer. Do not use URD or HDRP (High Definition Render Pipeline) or their custom SRP (Scriptable Render Pipeline).
  • Use layers sparingly. The available layers must support multiple Games in the master project. Refactor to use Tags if possible. If you can write your Game without layer checks, please do. This also applies to adjusting physics collision matrixes, culling masks and cameras, etc. Most Games just set the camera to the UI layer since built in the index is always the same, but if you use a custom layer for your layer masks, please refactor or use a built in to achieve the look you need. If you need to reference layers in code, always use the layer name and not the index.
  • Always load scenes by name, never by build index. Scene names should be as descriptive as possible
  • Use plugins sparingly. If you are using a popular plugin, like Dotween, do not adjust the global plugin settings. There is a strong chance that another Game is using that plugin and non default settings could create unwanted behaviors.
    • TextMesh Pro is required. This is an official Unity package that is not activated by default and needs to be added to the project via the Package Manager window
    • Post Processing is not not a required package, but if you need it, then you must use the built in version from Package Manager. It will appear when “Show Preview Packages” is enabled via the Advanced submenu.
  • Set UI buttons / selectionables to Navigation: None.
  • For DontDestroyOnLoad, use the gameObject extension version supplied in the SDK. (Plugins that already register don’t destroy on load will be manually adjusted when we combine projects.)
  • Organize your code and assets as follows:
    • All of your code must be assigned a unique namespace. The namespace should be <YourCompany> <GameName>.
    • Create a folder in the root of your project with the same name as your namespace. Put all of your code nested inside this folder.
    • Create a subfolder /Art inside your namespace folder, and put all of your assets in this folder. You can nest any subfolders inside the art folder.
    • Create a subfolder for plugins. These will be properly recognized as plugins by Unity. You can nest any subfolders inside the plugins folder
    • Folder structure should be as follows. Inside your company directory you can add additional folders for your own file organization:
  • Game Delivery: All web Games (Unity, Javascript, and Construct) must be submitted as a production-ready deployment build, in accordance with the build settings and submission process for all LOL web games.
Copy link