Search Unity

[RELEASED] 2D+3D Infinite Runner Engine - new v1.6 : Downhill!

Discussion in 'Assets and Asset Store' started by reuno, Dec 31, 2015.

  1. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,929
    @jasonxtate66 > No, the direction doesn't matter at all, and the engine comes with examples of different directions (x, y, z are all demonstrated). Again, check out the list of features, it'll probably make things easier :)
     
    jasonxtate66 likes this.
  2. jasonxtate66

    jasonxtate66

    Joined:
    Nov 21, 2017
    Posts:
    133
    Does it have a built in projectile script or can I use my own or incorporate the corgi engine's? Say a platforming level goes to a top down infinite runner scene.
     
  3. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,929
    @jasonxtate66 > Again, the list of features would answer that question :) So no, it doesn't have a projectile script. It focuses on generating endless stuff. You can use whatever script you prefer with it, it's an engine, it's meant to be built upon.
     
    jasonxtate66 likes this.
  4. csoto

    csoto

    Joined:
    Dec 12, 2016
    Posts:
    3
    Just purchased this since I believe it covers most of what I’m looking for. Question: I can’t update my unity to 2018 just yet, will all the features (from 2017) work? Any particular issue I should know about?

    Also, if someone has a good link / asset/ package that could assist me with power ups and creating an asset store, that would be great. Not a coder , but I can read it and play around with it. Thanks.
     
  5. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,929
    @csoto > No, the latest update requires 2018.1, as explained in the FAQ and the releases page.
    With 2017 you'll get everything but the latest update.
    Any particular reason why you can't use 2018 though? You can have multiple installs of Unity. I'd recommend using Unity Hub.
     
  6. Werewoodle

    Werewoodle

    Joined:
    Oct 6, 2016
    Posts:
    8
    Hi Reuno. I'm using this asset to build my first infinite running type game. I've never attempted this type of game before.

    I was curious about a few things. From a performance perspective, would spawning nested game objects have a huge impact? I plan on having your typical pool of platforms to use, but I was also wanting to create duplicates of those platform objects and add traps and what not to them to give the illusion that there are way more platforms than there really is. So say, one has a spike trap that has it's own logic, but it's a child of a duplicate of a bare platform and so on. Is there anything in the way your engine is scripted that would become a barrier to this technique or is spawning a prefab just spawning a prefab, regardless of parenting and children?

    I thought this would allow me to be more creative instead of just spawning traps at different intervals. I'll be using the linked spawner if that matters.

    EDIT: Also, your new Downhill demo has multiple MM Poolable Object scripts attached to the hill objects. Is there a reason or is this a mistake?
     
  7. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,929
    @Werewoodle > There's no absolute answer to that question, it depends on what exactly you're spawning.
    Script side it doesn't matter at all, and there'll be no difference.
    What will affect performance is your sprites/objects size, their movement, numbers, etc.
    The engine contains examples of both options, and really the best way to know what works best for you is to try it :)
     
    Werewoodle likes this.
  8. Werewoodle

    Werewoodle

    Joined:
    Oct 6, 2016
    Posts:
    8
    Hi again. I'm having a strange problem I can't figure out. I'm assembling a scene from scratch to develop my project on, but I'm having an issue with the Jumper script.

    For some reason I can only jump as many times as I set Number of Jumps Allowed. So if I set it to 10, I can jump 10 times and it stops working. It doesn't reset upon collision with a platform. If I set Jumps Allowed When Grounded to true it doesn't work at all. I think it has something to do with the platform I'm jumping on. I added the MM Rigidbody Interface, box collider 2d and rigidbody 2d to the platform and character. What am I missing? I went over all your demos and see nothing different with what I did. I have all the necessary stuff in the scene. UI Camera, Level Manager and the other Managers.

    What I'm trying to do is develop my own wall jump extension. I have a single horizontal platform with just the basic things, no spawners or anything and two vertical platforms with spawners to test things out. I'm stuck on the horizontal platform and player. I looked at the script and it should just detect the platform and allow me to jump. I don't know why it's not working.
     
  9. Werewoodle

    Werewoodle

    Joined:
    Oct 6, 2016
    Posts:
    8
    I threw in a debug log in the Jumper script to fire when the _grounded boolean is true and it fires nonstop on your Minimal2D demo when the character is on a platform. Doesn't fire once in my scene. Any ideas?


    I added the ground from the minimal 2d demo to my own scene and everything is working as expected now. I'm checked every component multiple times. For some reason, when I create my own platform is all breaks.

    It's not just the one platform. I tried making a new one and the same thing is happening.

    I have a box collider 2d set up just fine. There's also a rigidbody 2d set to kinematic. Finally I have a MM Rigidbody Interface script attached. Exactly the same as your demo platforms. Only your existing demo platforms seem to work.

    I'm using Unity 2018.1 on a MacBook Pro.
     
    Last edited: May 28, 2018
  10. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,929
    @Werewoodle > Please use the support email for questions like this. And I'm guessing you didn't setup the layers correctly, but really without more info it's hard to guess what's wrong. I'd suggest comparing the demo scenes that work with your scene to spot the differences. Or check out the documentation and tutorials, they explain all that in more details.
     
  11. Werewoodle

    Werewoodle

    Joined:
    Oct 6, 2016
    Posts:
    8
    It was the layers. I didn't dig deep enough into the scripts and forgot I saw that in the videos. I'll use the standard support request next time. Sorry about that.
     
  12. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,929
    @Werewoodle > Lucky guess! And no problem, I'm glad it's working now :)
     
  13. VP_no1

    VP_no1

    Joined:
    May 12, 2018
    Posts:
    132
    What changes should be made to make it work with a 3rd party controller ?
    I do not know to write code like you for every action and ofc the selection of the prefab is not enough to make a player do more actions.
     
  14. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,929
    @VP_3 > It's too vague a question to answer. Depends on the controller I guess?
    The engine is really independent from your controller, and actually comes with many examples of different controllers. Adding a new one can be done in the exact same way, the engine is really more about spawning stuff, not much about controllers :)
     
  15. VP_no1

    VP_no1

    Joined:
    May 12, 2018
    Posts:
    132
    The thing is that I am more a designer and would like to focus on design and not coding every move I would like to insert. There are some great assets managing a player and I would like to use them and do rest with your engine. Is it possible? Or at least if it is too complicated to make them work then if I use a visual scripting asset how could I make some actions work ? Easiest way would be to copy a char of yours, comment your few actions (like flying) and reffer to the actions I create with visual scripting. But from what I read I should have events so that all game should listen to those behaviours.
    I do not have a clear clue what to do to have some special moves in your engine becasue I am not much of a programmer as I said. If you can just give general direction at least I would know how to start. If it is too complicated and I should reverse the the integration just say so and its ok too :)
    Thank you
     
  16. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,929
    @VP_3 > There's nothing complex here. Also I'm not sure what events you're referring to.
    The easiest way to proceed is to extend the PlayableCharacter class, as explained in much more details in the documentation, and the dedicated tutorial.
    That said, if you've read that documentation and didn't get it, and if you're completely new to programming, you may want to start with something a little more basic. I'd recommend Unity's tutorials for that.
     
  17. MaccyDBoy

    MaccyDBoy

    Joined:
    May 25, 2017
    Posts:
    30
    Hi Reuno !

    Is there a function that enables the player to crouch, or slide ?

    I tried looking in the forum to make sure no one asked it before.

    I tried to look in the unity files to see if there was a crouch or slide script, but couldn't find any.

    Thanks !
     
  18. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,929
  19. esteban16108

    esteban16108

    Joined:
    Jan 23, 2014
    Posts:
    159
    Hi. Really amazing Asset.

    I was trying to use the camera shaker and I can't seem to make it work.

    I add the MM Camera Shaker component to my camera and then trigger the MMCameraShakeEvent but the camera doesn't shake at all

    I tried setting the duration but after the first time it's reset to 0.

    Do you have any instructions on how to use it?

    Thanks.
     
  20. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,929
    @esteban16108 > It's not meant to be used in this engine (and is not), but it's pretty straightforward, you just have to set the shaker's component's setting as you want them. Might not work with the current camera controller without changes though.
     
  21. esteban16108

    esteban16108

    Joined:
    Jan 23, 2014
    Posts:
    159
    @reuno Thanks.

    Another question. Is it possible to make the platforms one-way platforms? In the sense that the player doesn't collide from bellow?
     
  22. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,929
    @esteban16108 > Of course you can, just like you would in any other Unity project.
    The engine focuses on spawning and recycling stuff. What you do with it is up to you :)
     
  23. amit-chai

    amit-chai

    Joined:
    Jul 2, 2012
    Posts:
    80
    Hi. I yet to purchase your Asset, I wonder if there is a way to bake shadows with it? I guess not, because the platforms are moving, So if not, do you have any solution for baking? Second, how will it work with Curved World?
    Thanks!
     
  24. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,929
    @amit-chai > There's nothing specific to bake shadows in the asset. One way to bake them would be to manually place the platforms in the scene, bake the textures, save the output and apply it. Personnally I would draw the shadows on the textures in my 3D software directly, that's usually how it's done in situations like these.
    As for curved world, I've never used it myself, but from what I've heard of it it should work fine.
     
  25. amit-chai

    amit-chai

    Joined:
    Jul 2, 2012
    Posts:
    80
    Thanks! I will look now more deeply in the resources to see if it can fit my project.
     
  26. generaltofu203

    generaltofu203

    Joined:
    May 9, 2018
    Posts:
    40
    Hello there I have purchased your asset and begun using it, I created my own movement script but as I know the level manager requires you to insert a player script so what exactly do I need in my own script so I can drag and drop it for the level manager to use?
     
  27. generaltofu203

    generaltofu203

    Joined:
    May 9, 2018
    Posts:
    40
    I’d like to modify my question a bit, basically I have a movement script attached to my player prefab that allows me to switch lanes as well as jump. I know I need a level manager to use this asset properly, I attached the playable character script but didn’t make any changes as currently I don’t need to Use it however the only change I need to make is the spawn location, where do I change this and how?
     
  28. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,929
    @generaltofu203 > I'd suggest checking the documentation, it would have answered your questions.

    The LevelManager requires a PlayableCharacter to spawn, as explained in the documentation, the API doc, or the inspector itself :

    upload_2018-12-9_14-9-15.png

    The spawn location is the field just above, StartingPosition.
     
  29. generaltofu203

    generaltofu203

    Joined:
    May 9, 2018
    Posts:
    40
    Ok thank you but my player has a few transforms that are required (to drop into the editor) but if it isn’t in the scene I am unable to drop in the transforms so how would I fix this?
     
  30. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,929
    @generaltofu203 > I don't understand what you mean. Transforms that are required? What does that mean?
     
  31. generaltofu203

    generaltofu203

    Joined:
    May 9, 2018
    Posts:
    40
    Nevermind I solved that I think but now my question is why my player isn’t spawning? I added it to the level manager as a playable character and added a starting position. Is that all I need?
     
  32. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,929
    @generaltofu203 > I don't understand your questions. Please read the documentation, it explains all there is to know about how to create a character. If the problem persists, please use the support email and provide more info about your issue.
     
  33. generaltofu203

    generaltofu203

    Joined:
    May 9, 2018
    Posts:
    40
    Ok, where can I find the support email?
     
  34. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,929
  35. generaltofu203

    generaltofu203

    Joined:
    May 9, 2018
    Posts:
    40
    Ok thank you, yes I’ve skimmed over it sorry that you couldn’t understand what I meant, I meant my player wasn’t spawning but it was because I forgot to increase the death bounds.
     
  36. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,929
  37. Boom_Shaka

    Boom_Shaka

    Joined:
    Aug 31, 2017
    Posts:
    141
    @reuno - I saw a previous question about incorporating third party controllers. After reviewing both assets' documentation, it looks like all I really need is the infinite runner's game management functions (i.e. spawners, events, scenarios, etc.). I want the third party controller to hand physics and GUI. To that end, my approach is to:
    1. use the third party input manager - call appropriate game/level manager events directly from it
    2. make the third party controller and extension of the playable character script
    3. add MMRigidbodyInterface for collisions with spawned objects
    Updating the GUI is easy enough....the only question I really have is whether or not the engine's collisions will interfere with the controller's physics? This is a driving game so the player will always remain "grounded" and I have no special plans related to that specific state.

    Anything I'm missing? Thanks in advance.
     
  38. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,929
    @Boom_Shaka > I can't tell you how a 3rd party controller would behave, it depends on its implementation.
    For changes that big, the only way to find out if it'll work or not is to try it :)
     
  39. Boom_Shaka

    Boom_Shaka

    Joined:
    Aug 31, 2017
    Posts:
    141
    Understood. I just want to make sure I have a grasp of the engine structure/architecture before I do. I guess what I'm really trying to ask is: does the engine care about player character physics?

    It looks like it doesn't really matter how the player is being moved. The only thing the engine really needs to know is if the player is alive or not, as that triggers end of life/level/game events.

    The only thing issue is the "grounded" movement state as that requires a collider on the game surface and that collider could interfere with the third party controller.

    It should be superfluous as the third party controller is handling movement, in which case I can bypass or ignore it. Does the engine leverage that state for anything other than movement?

    I'm not asking for directions, mind you. Just trying to make sure I understand how things work before I get started. (And sorry for the long post!)
     
  40. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,929
    @Boom_Shaka > These are good questions :)
    So I guess I'll start by defining "engine" in that context : the engine is the sum of all its parts, but all these parts can work separately.
    - one of the parts is the Player, each of the demo has one (or many).
    - then there's the game logic (LevelManager, SoundManager, etc)
    - then there are the spawners, that spawn stuff and (usually) make the world move around you

    You can decide to use the engine as a whole, or just parts of it. So you can absolutely replace the Character with another one and just use the spawners. The game logic part is the one I would recommend changing every time, as each game has its own rules, and it's by far the easiest part to replace (it's mostly a point counter and not much more).
    But if you decide to keep it, it has almost zero impact on your character. The game manager or level manager don't have to know whether or not your character is grounded. Alive would indeed be the only info it needs in its current state.

    I hope this clears things up!
     
    Boom_Shaka likes this.
  41. Boom_Shaka

    Boom_Shaka

    Joined:
    Aug 31, 2017
    Posts:
    141
    Yes it does thanks. For some reason I was expecting it to be more complicated but there aren't nearly as many moving parts as with Corgi or Top Down Engines.
     
    reuno likes this.
  42. milkorva

    milkorva

    Joined:
    Mar 5, 2018
    Posts:
    1
    Thanks for this wonderfull asset.
    Just two questions, I'm not sure about how to creat a new achievement. In fact I just wanted to replace the option jump of "toInfinityAndBeyond" by an option with a number of points to achieve (1000). How can I do this ?


    It is possible in the levelselection scene that the map button script refers to a scene (in level name). But all the scenes are in the a single folder and project. :)
     
  43. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,929
    @milkorva > The achievements section of the documentation will answer your first question (and everything else there is to know about achievements).
    And I don't understand your second question (if it's a question). Not sure what folders and the level selection scene have to do with each other, or what your issue is.
     
  44. revocelotmoky

    revocelotmoky

    Joined:
    Mar 4, 2014
    Posts:
    11
    Hi Reuno, I have a doubt, Is it possible to make the linked spawn objects work on 3D objects? cause I've been trying to achieve 3d endless runner using the linked spawning objects but when I start my game with the linked spawner component attached to an object with the mm multiple object I can't get it to work, it generates the game object pool and the objects on it but there aren't any objects being spawned. Thanks
     
  45. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,929
    @revocelotmoky > Yes, of course. All spawners work with 3D objects. There's no difference of treatment between 2D and 3D objects, they're all 3D objects as far as the engine is concerned. Open the Sandbox scene, modify the LinkedPlatform1 and 2 prefabs and you'll see it keeps working just fine.
     
  46. luniac

    luniac

    Joined:
    Jan 12, 2011
    Posts:
    614
    Does changing the level manager "speed" during gameplay affect the spawned objects instantly?
    so i can speed up or slow down all active objects at any time?
     
  47. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,929
    @luniac > Yes, as explained in the documentation, the LevelManager's Speed value is the current speed the level is traveling at. If your objects are affected by that speed then you can indeed control them all like that.
     
    luniac likes this.
  48. luniac

    luniac

    Joined:
    Jan 12, 2011
    Posts:
    614
    thanks.
     
  49. luniac

    luniac

    Joined:
    Jan 12, 2011
    Posts:
    614
    so since timed spawner doesn't depend on Level Manager speed, if speed is very low then the objects may spawn on top of each other potentially right?
     
  50. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,929
    @luniac > Absolutely, by definition a timed spawner will ignore the speed or behaviour of the objects it spawns.