Search Unity

Official Feedback Request | Unity's New Mobile Runner Template

Discussion in 'Unity Ads & User Acquisition' started by ARaisinghani, Nov 7, 2022.

  1. ARaisinghani

    ARaisinghani

    Unity Technologies

    Joined:
    Nov 4, 2022
    Posts:
    2

    Our team at Unity has developed a template to serve as a starting point for a shippable mobile game.

    While previous Unity templates have been designed as learning tools or showcases, our new mobile Runner template is designed to help our developers focus on creating differentiated, high-quality games that can ship.

    We designed this template to accelerate the game development process by providing end-to-end runner game mechanics, custom presets, and a Level Editor. The template also brings together Unity’s products, including guidance for the Unity Ads SDK integration, Asset Store, and In-Editor-Tutorials.

    We would love to hear from you as we shape the development of this template and our future efforts. Below are a few areas we’d love to know your thoughts on in this thread, but are open to other feedback or suggestions as well.
    • Goals
      • What are your goals for using a Template like this?
      • How many games do you intend to create from the template?
      • What other genres would you like to have templates for?
    • What’s working
      • What are the ways that the Template itself is helping you?
      • Did the template save you a meaningful amount of time around development?
      • What are you freed up to focus on when the end-to-end game mechanics are included in the template?
    • Improving your experience
      • What more would you need included in the Template and Tutorial?
    • Publishing
      • Do you intend to submit the game you’ve created to a publisher?
    To navigate to the Runner Template, please ensure you're on Editor version 2021.3.4f1 or later.
    You can learn more about the new Runner template here.
    Access Unity docs on getting started with project templates in the Unity Hub here.
     

    Attached Files:

    Last edited: Nov 15, 2022
  2. sevenfivel

    sevenfivel

    Joined:
    Mar 25, 2017
    Posts:
    5
    The Runner Template seems to only be available for the LTS version of the Editor. If that's how it's supposed to be, you really should make that clear both here and in the documentation.
     
    MomoZaki likes this.
  3. Cartierwells

    Cartierwells

    Joined:
    Mar 7, 2017
    Posts:
    1
    I have an LTS version of the editor (2020.3.2f1) but still can't find the template in the hub
     
  4. sevenfivel

    sevenfivel

    Joined:
    Mar 25, 2017
    Posts:
    5
    Probably needs to be the latest LTS. (I have 2021.3.13f1.)
     
    SrNull likes this.
  5. Andy-Touch

    Andy-Touch

    A Moon Shaped Bool Unity Legend

    Joined:
    May 5, 2014
    Posts:
    1,483
    Hello! Thanks for the free project! :D

    Ive downloaded the project and had a small poke around in it. I need to poke it some more before having more thorough thoughts and feedback on the technical details.

    My main questions so far are:
    • Why this type of genre for a template? Studios have been building Runner games in Unity for over a decade and its not a particularly complex genre to tackle with plenty of resources already on how to build things like this. Aside from the Services like Ads, Analytics and Cloud Build, Unity hasn't shipped anything in the past 10 years that would greatly benefit this genre so im confused why to release this now as opposed to any other number of game types that would lean more into the investments Unity has been making.
    • Only Unity Ads is being shown; what about Analytics, IAP, etc and the other monetization services? Trash Dash had these 5 years ago. Pretty much every mobile f2p games has some kind of purchasing system.
    • No Saving Of Data? For leaderboards, profiles, unlockables etc. Every game needs this.
    • Settings menu is fairly bare bones; would like to see more settings in terms of Localization, Input Controls, Accessibility, etc. What does changing Quality actually do? Most Quality Settings Menus now have individual settings per shadows, texture res, etc.
    • Could Unity use this template and extend on it and then ship and maintain that extended game to the App Stores? And document the delta of work between the template offered as-is and the shipped version? The blogpost has example scenarios of how it could be reskinned and its a shame not to have those versions to study aswell.
     
    Last edited: Nov 16, 2022
    PutridEx, Reverend-Speed and DevDunk like this.
  6. ARaisinghani

    ARaisinghani

    Unity Technologies

    Joined:
    Nov 4, 2022
    Posts:
    2
    You'll be able to see the template on Editor version 2021.3.4f1 or later. Added that to the Forum post. Thank you!
     
    TreyK-47 likes this.
  7. Andy-Touch

    Andy-Touch

    A Moon Shaped Bool Unity Legend

    Joined:
    May 5, 2014
    Posts:
    1,483
    No reply to questions and feedback after a week? :( Thats a shame.
     
    Unifikation and PutridEx like this.
  8. HamzaMehmood786

    HamzaMehmood786

    Joined:
    Feb 28, 2021
    Posts:
    1
    Anyone able to share this template
     
  9. Reverend-Speed

    Reverend-Speed

    Joined:
    Mar 28, 2011
    Posts:
    284
    Is this considered a standard Unity approach for mobile architecture, eg. the scriptable object event systems etc?
     
  10. stardev24

    stardev24

    Joined:
    Nov 29, 2021
    Posts:
    7
    After running this template player is not moving.I am also getting error with mouse movement
    Code (CSharp):
    1. Player cannot move because SetMaxXPosition has never been called or Level Width is 0. If you are in the LevelEditor scene, ensure a level has been loaded in the LevelEditor Window!
    2. UnityEngine.Debug:LogError (object)
     
  11. uncleTompson

    uncleTompson

    Joined:
    Jul 17, 2019
    Posts:
    1
    The same!!! It's bug or feature?
     
  12. k3mell

    k3mell

    Joined:
    Oct 7, 2021
    Posts:
    1
    Same :(((

    Did you succeed?
     
  13. sevenfivel

    sevenfivel

    Joined:
    Mar 25, 2017
    Posts:
    5
    Try making sure the level editor window is showing somewhere when you click the play button.
    I had this problem, too. At the time, I had the level editor window and the gameplay window on different tabs in the same docking panel. When I played the game in the Editor, it would switch to the game window, covering the level editor window so that, the next time I tried playing, the level editor wasn't showing. Apparently, this messes something up with the way the level editor sets things up for playing in the Editor. I moved the level editor to its own docking panel and that seems to have fixed the problem.
     
  14. Mehdi_Hasheminia

    Mehdi_Hasheminia

    Unity Technologies

    Joined:
    Feb 12, 2021
    Posts:
    3
    Hi Andy-Touch,
    Thanks for the feedback, and I'm glad you liked the project!

    Runner games have long been trending, and this is a highly marketable genre on mobile. We’d love your feedback on what other genres would be interesting for you.

    Unlike "Trash Dash," this template is not a sample game. The purpose of this template is to help our users to ship a customizable and complete mobile game rather than a demonstration of the latest technologies. The emphasis is on customizing and creating new levels quickly using the tools provided.

    We have an item pickup and a currency system (coin collection and unlocking stars by picking up keys), and the data is saved locally. We do not have a leaderboard system to avoid making assumptions on backend/server support and providers. Perhaps in the future the template may have a thin front end layer to plug into though.

    The settings menu resembles the same window from well-known mobile games. The quality slider switches between a few quality presets.
     
  15. Mehdi_Hasheminia

    Mehdi_Hasheminia

    Unity Technologies

    Joined:
    Feb 12, 2021
    Posts:
    3
    Hi stardev24, uncleTompson, k3mell,

    Sorry for being late to the party! The dependencies of the runner game mechanics are provided by either the Boot scene (Boot.unity) or Level Editor window (Menu>Windows>Runner Level Editor). If none of these elements are present when you run the game, it will throw errors.

    To solve the problem, try running the game from the Boot scene or when the Level Editor window is open and level data is loaded. If this answer doesn’t help you, or you think getting the game running is confusing, please share more info about the problem and how we can reproduce it.
     
    WilderMedeiros likes this.
  16. Mehdi_Hasheminia

    Mehdi_Hasheminia

    Unity Technologies

    Joined:
    Feb 12, 2021
    Posts:
    3
    Hi Reverend-Speed,
    This is one of many possible approaches that work well for this scale but is not considered Unity's standard approach.
     
  17. stardev24

    stardev24

    Joined:
    Nov 29, 2021
    Posts:
    7

    @Mehdi_Hasheminia
    As suggested I have started using Boot.unity and also opened level editor window while playing the scene.But still I am not able to move player left and right.Even I have tried using arrow keys,WASD and well as mouse pointe click etc..
    You can also observe the error on console.Please refer the screenshot and kindly help me with resolution.
    Unity given assets are always work smooth.First time I a
     

    Attached Files:

    Last edited: Dec 9, 2022
  18. stardev24

    stardev24

    Joined:
    Nov 29, 2021
    Posts:
    7
    @sevenfivel
    As suggested I have opened level editor window while playing the scene.But still I am not able to move player left and right.Even I have tried using arrow keys,WASD and well as mouse pointe click etc..
    You can also observe the error on console.I could not understand what am I missing here.Please refer the screenshot and kindly help me with resolution.
     

    Attached Files:

  19. TelinoT

    TelinoT

    Joined:
    Mar 31, 2019
    Posts:
    2
    For some reason my Levels are not being loaded correctly. The boot scene always loads the last level opened in the Level editor. I tried adding "debug.log(m_LevelDefinition)" in the LoadLevelFromDef wehre it told me that for example Level_000 got loaded even though it was Level_001 that effectively got loaded. Did anyone have this issue too and was able to solve it?

    EDIT: Solved the issue. It was becasue a LevelParent object of the LevelEditor was preloaded in the boot scene. This somehow messed everything up. I'm very glad I could find the issue.
     
    Last edited: Dec 10, 2022
  20. stardev24

    stardev24

    Joined:
    Nov 29, 2021
    Posts:
    7
    Could you please help me
     
  21. sevenfivel

    sevenfivel

    Joined:
    Mar 25, 2017
    Posts:
    5
    To be honest, I'm at a bit of a loss here. You could try making sure there is actually a level loaded in the level editor and then clicking on "save level" and then "load level," but, if you're launching while the boot scene is loaded (as in the screenshot), it shouldn't make a difference (at least, it doesn't on my computer), so I'm not too hopeful that will help at all. I really think the Devs should take this one, but they have been slow to respond, so far.
     
  22. enhawk

    enhawk

    Joined:
    Aug 22, 2013
    Posts:
    833
    I would like to echo the sentiments of Andy-Touch, but also add that there are some Unity provided frameworks absent from this demo that could be interesting the see integrated like Unity Social API which has leaderboard integration.

    Is the omission of the Social API a sign that Unity also can't get leaderboards to work anymore?
     
  23. alsomitra

    alsomitra

    Joined:
    Aug 31, 2017
    Posts:
    33
    The following error message appears
    Is this a bug?

    Unity 2021.3.16f1 Mac Editor
    Advertisement Version 4.3.0

    Assets/Core/Scripts/Ads/AdsController.cs(47,31): error CS1501: No overload for method 'Initialize' takes 4 arguments

    // Advertisement.Initialize(GameId, TestMode, false, this);//ERR
    Advertisement.Initialize(GameId, TestMode, this);//OK
     
    Last edited: Jan 6, 2023
  24. enhawk

    enhawk

    Joined:
    Aug 22, 2013
    Posts:
    833
    seems like the demo uses the old version of unity ads.
     
    steven-sauer likes this.
  25. Freakhealer

    Freakhealer

    Joined:
    Aug 27, 2020
    Posts:
    6
    surely is a bug, seems that they changed the library but didn't update the demo. could someone help with an updated default for the
    Advertisement.Initialize(GameId, TestMode, false, this)


    should we keep
    (IUnityAdsInitializationListener) this
    on initialization, ignoring the false argument that comes on the default project?

    edit: after editing the script it asked me to update the adds package saying that it will soon be discontinued, now basically the whole script is bugged. probably this "runner template" should be removed until you update the tutorials.. wasted a lot of time not learning much. since the base of the project(ads) is deprecated
     
    Last edited: Jan 16, 2023
  26. WilderMedeiros

    WilderMedeiros

    Joined:
    Nov 28, 2017
    Posts:
    3
    This approach have worked for me. That's how it was done, we have to open the boot scene to load the variables and play the game. WASD doesn't worked here (idk why), I played with mouse (clicking, holding and directing the player)
     
    m_ozi_j likes this.
  27. Freakhealer

    Freakhealer

    Joined:
    Aug 27, 2020
    Posts:
    6
    WASD isn't set up, the tutorial tells you to use the mouse. you can use touch as well
     
    steven-sauer likes this.
  28. helplocal

    helplocal

    Joined:
    Jan 18, 2023
    Posts:
    1
    is runner template only available for LTS version
     
  29. steven-sauer

    steven-sauer

    Unity Technologies

    Joined:
    Jul 12, 2022
    Posts:
    6
    Hey there!
    From the screen shot I see here, I do not believe the Boot scene should be active. The typical way to get to a clean Level Editor scene is to open the Level Editor window and select the “Open Level Editor Scene” button. You may need to select a LevelDefinition to edit. If you need a new one, the create menu (or right clicking in the project view) has a button to add more, or you can duplicate existing ones.
    If you’re still having troubles, I suggest starting from scratch just to make sure nothing has been changed manually in your current project.
    Hope this helps! I’ve attached screen shots just in case.
     

    Attached Files:

  30. steven-sauer

    steven-sauer

    Unity Technologies

    Joined:
    Jul 12, 2022
    Posts:
    6
    Hey there!
    In case you need more information, the shown levels and order they end up on the level select screen is controlled by the RunnerSequenceManager.prefab object (screenshot attached). Make sure that you are not overwriting the first level over and over by having it selected in the Level Editor! There are some auto-save settings available to change if they’re not what you are used to as well (another screenshot attached).
    Hope this helped!
     

    Attached Files:

  31. steven-sauer

    steven-sauer

    Unity Technologies

    Joined:
    Jul 12, 2022
    Posts:
    6
    Hey there!
    There are many modules and supplements that we would like to add to this demo and it’s a question of which and when rather than a question of feasibility.
    Understanding the community’s desires helps us support and prioritize further development and we appreciate knowing what you would like to see the most.
    In the meantime, we fully encourage adding additional packages like the Social features to this project and hope its structure eases that process.
     
  32. steven-sauer

    steven-sauer

    Unity Technologies

    Joined:
    Jul 12, 2022
    Posts:
    6
    Hey there!
    The Unity Ads platform is undergoing a number of changes that are not backward compatible and we will be removing the current version from this project. We will add in the new package as soon as it's ready.
    Thanks for the error report!
     
  33. steven-sauer

    steven-sauer

    Unity Technologies

    Joined:
    Jul 12, 2022
    Posts:
    6
    Hey there!
    You are correct, it is only available on the 2021.3 (LTS) version
     
  34. BeyondMASC

    BeyondMASC

    Joined:
    Feb 11, 2019
    Posts:
    9
    Hi there,

    I'm experiencing a lot of problems using my own saving/loading system when I build the game.
    Basically does not work.
    In the Editor work normally, but not on the phone.
    I don't use the save system provided by the Template because Playerprefs does not manage collections.

    Let me know if the Runner encapsulation blocks something outside the Editor.

    Thanks,

    Marcos
     
  35. steven-sauer

    steven-sauer

    Unity Technologies

    Joined:
    Jul 12, 2022
    Posts:
    6
    Hey there!

    The short answer is: no, we do not do any editor specifics in the save management.

    We did test this on device, but if launching a fresh project from the template onto a device is proving otherwise, we appreciate bug reports and any details you can provide.

    The long answer is: if the only initial issue with PlayerPrefs is the save/load of Lists, you could use
    PlayerPrefUtils
    to save [Serializable] classes with List data in them. Otherwise, it's very reasonable to replace/change the SaveManager in the case of any form of complex save/load needs. I would suggest taking a fresh project with this template and replacing PlayerPrefs calls in SaveManager with calls to your own system first. That way, you can preserve existing code links and prove out that a simple swap of the underlying systems does not have differing results. If everything functions the without change, that means it is not a bug in your new save system. The next place I would look would be to make sure that the WinEvent (which is the event that level progressing is linked to) is still firing on device for you. The WinEvent is linked in the
    SequenceManger
    script and subsequently the RunnerSequenceManager prefab.

    Best of luck, let us know if you need more help!
     
  36. Thule84

    Thule84

    Joined:
    Sep 12, 2021
    Posts:
    1
    Hi, I'm having some trouble with this template too. I started with unity/c# some time ago with simple 2d projects and some e-learnings where i could learn the basics. Now I gave this template a try and, oh boy, these scripts give me headaches. Though, having some success modifying the template, I, for example, still do not understand how the events system works. The scripts which they are calling do not seem to do much except for some pathing. I'm also failing on getting a 'try again' button on the levelcomplete screen to work, seems the game needs to be in the lose state and not in the win state, like it is done on the lose screen. And where can I find that game framework which is shown on the runner template webpage? Maybe this could help me to understand what is actually happening here. Thanks in advance.
     

    Attached Files:

  37. KANIYO

    KANIYO

    Joined:
    Nov 12, 2020
    Posts:
    28
    I am afraid it is very detailed, but I would be happy if you could correct this comment to something appropriate (Maybe not Gate). Because it is very confusing for ScriptableObject newbies! Thanks in advance.
    Collectable.cs Line 27-30
    Code (CSharp):
    1. /// <summary>
    2. /// Reset the gate to its initial state. Called when a level Called when a level
    3. /// is restarted by the GameManager.
    4. /// </summary>
    Gate.cs Line 7-12 (...fail state?)
    Code (CSharp):
    1. /// <summary>
    2. /// A class representing a Spawnable object.
    3. /// If a GameObject tagged "Player" collides
    4. /// with this object, it will trigger a fail
    5. /// state with the GameManager.
    6. /// </summary>
     
    Last edited: Apr 12, 2023
  38. KANIYO

    KANIYO

    Joined:
    Nov 12, 2020
    Posts:
    28
    When placing a spawnable in a level, it seems that when using PrefabVariant, the original Prefab is registered in the LevelDefinition, not the PrefabVariant.

    I think the following changes will cause the PrefabVariant to be registered in the LevelDefinition.

    RunnerLevelEditorWindow.cs
    void SaveLevel(LevelDefinition levelDefinition)
    Line 452

    Code (CSharp):
    1. SpawnablePrefab = PrefabUtility.GetCorrespondingObjectFromOriginalSource(spawnables[i].gameObject),
    Code (CSharp):
    1. SpawnablePrefab = PrefabUtility.GetCorrespondingObjectFromSource(spawnables[i].gameObject),
     
  39. KANIYO

    KANIYO

    Joined:
    Nov 12, 2020
    Posts:
    28
    The skybox comes off when the level starts. How do I set it up?
     
    nfregien and NectarDigital like this.
  40. nfregien

    nfregien

    Joined:
    Aug 2, 2021
    Posts:
    3
    I am having the same issue with the skybox... is there any way to change the backgrounds for individual levels?
     
  41. zuanzike

    zuanzike

    Joined:
    Sep 20, 2011
    Posts:
    20
    Great!
    I'm just going to update my Run Game on the App Store,then here this;
     
  42. GDevTeam

    GDevTeam

    Joined:
    Feb 14, 2014
    Posts:
    90
    I moved the Level Editor to a second screen in my version of events. This strikes me as an odd need.
     
  43. GDevTeam

    GDevTeam

    Joined:
    Feb 14, 2014
    Posts:
    90
    Also, why is the Runner Template not available from the latest LTS (2022)? I recommend a Unity team member confirms the Rummer Template shows in a Template search in the Hub, and not just state it does. It did not for me.
     
    Last edited: Jul 21, 2023
  44. IHS88

    IHS88

    Joined:
    Jun 27, 2017
    Posts:
    3
    I'm on Unity Hub 3.5.1 and Editor version 2022.3.8f1 (LTS) - How do I use this template? My Unity Hub "All Templates" doesn't have this and every link on websites says get it through Unity Hub?
     
    GDevTeam likes this.
  45. GDevTeam

    GDevTeam

    Joined:
    Feb 14, 2014
    Posts:
    90
    You have to install another version, believe 2021.3.x. They don't support it I guess on anything newer. Which is odd to say the least. Good luck. I moved away from them, their solution.
     
  46. IHS88

    IHS88

    Joined:
    Jun 27, 2017
    Posts:
    3
    I was just about to delete my post but yeah that was it. When the accompanying blog post said:

    "Editor's Note (November 17, 2022): To navigate to the Runner Template, please ensure you're on Editor version 2021.3.4f1 or later."

    I assumed it was anything later than that version but I guess it has to be 2021.x.x.

    I confirm I can see it with editor version 2021.3.30f1.
     
  47. suiteazabug

    suiteazabug

    Joined:
    Jan 7, 2014
    Posts:
    1
    I followed the steps outlined in unity learn tutorial - 'Building your first runner game". Everything seems to be working except it appears the AdsManager prefab scripts are missing. I've looked but can't locate them, and I don't know what they're named. Can anyone help me out .. really it's the main reason I was checking out the tutorial.
     
  48. codewithauspex

    codewithauspex

    Joined:
    Aug 1, 2023
    Posts:
    3
    if you drag this very simple file to the scene and define the level definition asset just like the runner level editor window, and define the game manager in the scene, you can load your level without runner level editor window, designated level definition values will be loaded after playing the project.

    The problem is related to the fact that the level load and level definiton properties are defined in the level editor window functions. Anyway, You won't have this problem after compiling the project.

    I think when you create different unique objects, you will need to save the scenes differently. Then, in order to integrate these level definition values into the determined level, you need to both open the scene and determine these values according to that scene, but I haven't examined it much yet, maybe there's something for it.
     

    Attached Files:

    Last edited: Apr 19, 2024 at 10:49 PM