Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

[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,915
    @Brohepa > That's not exactly what I had in mind for the scenario manager, but that's actually a great idea, and I can work with that. I'll add it to the todo list right away! Thanks for the suggestion!
     
    dhogan likes this.
  2. brettboring

    brettboring

    Joined:
    Nov 8, 2013
    Posts:
    33
    Awesome! thanks reuno
     
  3. drswoboda

    drswoboda

    Joined:
    Nov 2, 2012
    Posts:
    18
    Hello reuno,

    I just purchased your asset from the Unity Store and I am starting to dissect the project before I start to build my game.

    I ran into what seems to be a logic bug and a program bug in version 1.1.1 (as shown in Asset Store listing, but v1.1 on splash screen and readme file). I am running Unity 5.3.5f1 Personal on Windows 10. I have not made any modifications to the files yet, I just made a Windows build to play test the demos.

    From the Main Menu I run MultipleCharacters2D.

    The loading screen plays then the game starts.

    The three characters drop into the running world. The countdown begins at 3-2-1, with the clock not running, but the world is in motion.

    The count says GO GO GO, and clock starts running.

    I give no input, I just let game run forward. The three characters eventually die. The clock stops. The game waits for input to restart level. I press SPACE. (More about this later)

    The characters drop into the running world, the countdown starts. Then one of two situations take place, but both lead to same conclusion.

    Characters die before countdown ends, or countdown ends and then characters die. Either way, the clock rolls at end of countdown.

    And now the game is in a broken state. The characters are dead. The clock is running. There is one life remaining, but no input is registered to restart the level with last life. You must use the pause button to either Restart Level or return to Main Menu. Resume only returns to running world with the clock rolling and no player input accepted.

    So the program bug is the inability to use the last life. The game hits a non-steady state and must be exited.

    And the logic error is in my understanding of the countdown clock function. As implemented, it goes against my thinking for a countdown. You start the clock running with the world running. That is not how I understand a classic countdown of 3-2-1 GO to function.

    A classic NASA countdown and what I have seen in most games or say a track meet starting gun, is the world starts (or the rockets lifts off the pad, or runner launches) at GO!

    In the current state, the player comes into a moving world and the count is meaningless because its not a signal to get ready like in Galaga. You can die before that count finishes and the clock starts. You start running before the count even starts. I think you should change this behavior.

    The world should be frozen until the countdown ends, and the clock starts, then the world starts back up. This gives the player moment to Get Ready.

    I would also like to see or add myself, a prompt to press to continue level at the end of each life. I find it confusing that the world still runs at the end of a life and there is just the assumption that you must input to continue.

    Thanks for the cool asset. I hope to make something interesting and fun to play.

    -David
     
  4. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,915
    @David > I completely agree, but it's super easy to change in your own game. I just didn't bother implementing that in all the demo levels, but the engine triggers events when the game starts, you just have to wait for it to happen. Look at the BackwardsDragon demo for example, it has invincibility until the game starts, and of course you can expand on that to have other behaviours before the level actually starts.
    Maybe I'll change that in all demo levels to avoid confusion.
     
  5. sluice

    sluice

    Joined:
    Jan 31, 2014
    Posts:
    416
    Out of curiosity is there already a logic implemented to manage :
    -Different Areas in a level.
    -Increasing Difficulty.

    Say after a certain distance or time, the level changes from the jungle to the desert with the difficulty increasing gradually?
     
  6. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,915
    @sluice > nope, but the main feature of the next update is a ScenarioManager which will allow you to do exactly that. The idea is that it'll allow you to plan stuff happening based on time, score, or other events, so increasing difficulty or switching areas will be possible.
     
    brettboring and sluice like this.
  7. pepeami

    pepeami

    Joined:
    Jun 3, 2016
    Posts:
    1
    Hi, I am trying to create a simple game to teach Chinese using Infinite Runner. If any of you in interested in developing it for me, let me know.
     
  8. 047

    047

    Joined:
    Mar 5, 2014
    Posts:
    13
    Hello there and thanks for the wonderful asset .

    I want to know if there is a way to determine a ratio in the spawner for the objects spawned ,
    I mean , my spawner is spawning 3 objects , i want the first object to spawn twice as much as other two object , but i couldnt find anything to make this happen . i cant use two spawners because sometimes objects get spawned at the same time .
    Does the Scenario tool does this too ?
     
  9. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,915
    @047 > No, the scenario tool won't do this, it's more for triggering stuff. But having a ratio has been asked already, and it's on my todo list. In the meantime, one way to do it is to simply add more of the same objects to your list. All items in a multiple spawner have exactly the same probability of being picked. So if you have three prefabs (objA, objB, objC), and you fill your pool like that : objA, objA, objB, objC, the A prefab will have twice as many chances as the others to be picked. Not ideal, especially for larger lists, but it works. That ratio thing is high on my todo list, so it'll probably be in the next update.
     
  10. alvaro-em

    alvaro-em

    Joined:
    Feb 23, 2012
    Posts:
    77
    Hi, Reuno.

    Your asset looks great and we are considering about purchasing it. But before to do it, I'd like to be completely sure that it will fit our needs.

    We are going to develop an augmented reality infinite runner (it is like a treadmill in place over a marker). We wouldn't need an environment or skyboxes since it is an augmented realty app, also it is important to have the treadmill in place so it is always over the marker and don't move over time. We only would need enemies and obstacles spawn management and player control. Could you tell me wether your system would allow to do such a game or not before purchasing it?

    Thank you in advance!
     
  11. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,915
    @alvaro.em > Well that looks like a perfect fit to me.
    The whole basis of the engine is that the player remains static, it's the world and obstacles (and everything else you want to spawn) that come to it.
    If you end up creating your game with the Infinite Runner Engine, please send me a link to it, I'm curious now!
     
    alvaro-em likes this.
  12. chouhan50

    chouhan50

    Joined:
    Feb 14, 2016
    Posts:
    2
    Hello Reuno i'm getting an error when i try to build
    error CS0009: file `E:\Unity\Editor\Data\PlaybackEngines\AndroidPlayer/Variations/mono/Managed/UnityEngine.dll' has invalid `assembly' metadata

    Compilation failed: 1 error(s), 0 warnings

    and
    Error building Player because scripts had compiler errors

    11.png
     
    Last edited: Jun 6, 2016
  13. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,915
    @chouhan50 > Never seen that one. Looks like a Unity error. Do you have the latest version (of the Infinite Runner Engine and Unity) ?
     
  14. chouhan50

    chouhan50

    Joined:
    Feb 14, 2016
    Posts:
    2
    Yes i have latest version let me test again with new project :( i have complete my game 2 weeks now i'm getting an error
     
  15. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,915
    @chouhan50 > Alright, if the problem persists, send me an email with more info on the support email address.
     
  16. Aranda

    Aranda

    Joined:
    Jan 23, 2015
    Posts:
    16
    Hi reuno,

    Nice asset!.

    I noticed on the backwards dragon demo that the DistanceSpawner didn't seem to be obeying the MinimumGap.y value I was tweaking. I investigated the code and I think it must be to do with this:

    Code (CSharp):
    1.  
    2.                 // we apply a clamped gap to our object, based on what's been defined in the inspector
    3.                 spawnedObject.transform.position += (transform.rotation * ClampedPosition(MMMaths.RandomVector3(MinimumGap,MaximumGap)/2));
    4.  
    I see what it's doing, but it'd be cool to be able to enforce an absolute value minimum so that the spawned objects must be spaced by a minimum distance (at least for Y and Z).

    Also the divide by two seems a strange choice here, but maybe I'm missing something.
     
  17. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,915
    @Aranda > You're right, there's something wrong with the Y and Z gaps. I'll fix this for the next release, thanks for reporting it!
     
  18. vmercky

    vmercky

    Joined:
    Jun 10, 2016
    Posts:
    2
    First of all, I just wanted to mention that I think these are both great looking assets! I have seen the videos, downloaded Infinite Runner Engine Demo to my phone, experienced most of the gameplay and so far feel that it fills my requirements for the game I'm planning to create. However, I am more of a graphic person than a coder so I have a few questions if you don't mind before I buy the Infinite Runner Engine.
    a) How easy is it to change the main character out for a new one using a 3D model?
    b) I would like the player to start off with a certain amount of points. This would most likely be a countdown/point script so that when the players time and overall points are less than 0, the player can die as well. Would I also be able to make this number (the Player Score) a Whole or Integer number with the current setup?
    c) Finally, how likely would it be and how often do you consider helping customers with specific issues? (lol, just in case!)
    Again, thanks for the great looking products and for your time and consideration, so sorry about the long post!
     
  19. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,915
    @vmercky :
    a) I think I'll just add that one to the FAQ :) I usually don't answer "how easy is it to xxxx ?" questions. How easy for who ? For me it's gonna be easy, for anyone with basic experience with Unity it's gonna be easy. If that's your very first project and you've never fiddled with 3D models, it's probably gonna be hard. I'll answer like this : out of all the things you can do with the engine (and with Unity in general), replacing a model is probably one of the easiest one.
    b) You'll have to code that countdown thing, but that doesn't seem too complex :)
    c) I'm always happy to help if something's not working as expected, or not explained in the docs/tutorials already. Don't expect me to code your own features though.
    And it wasn't that long a post :)
     
  20. vmercky

    vmercky

    Joined:
    Jun 10, 2016
    Posts:
    2
    Thank you, I understand and appreciate your kind and timely reply, I definitely look forward to working with the engine in the near future. Please be sure to keep up the good work!
     
  21. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,915
    @Aranda > I've taken some time to look at that bug you mentioned about Y and Z gaps. There was indeed a problem.
    In the original (and current) implementation, the Y and Z gaps are relative to the spawner's position. That seemed like the most common use case to me, but then it shouldn't be called gaps I guess.
    So I've added an option to choose if the gaps are relative to the last spawned object or the spawner's position (like right now). This one will be the default option, so it won't break any project when updating. I'll include that fix in the next update. Send me an email if you want to give it a try before the next (still unplanned) release.
     
  22. brettboring

    brettboring

    Joined:
    Nov 8, 2013
    Posts:
    33
    Some minor bugs i've run into reuno
    StartingPosition can't be placed on z-axis (requires simple modification on the levelmanager script).
    When moving on the z-axis MovingObject script resets to x-axis when pooled. (Rotating the spawner so X is Z is a quick fix)
    CameraBehavior pushes back camera when follow player on z-axis selected.

    Thanks!
     
  23. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,915
    @Brohepa > Thanks for reporting these! They'll be fixed in the next release :)
     
  24. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,915
    @Brohepa > Alright I've had a look at these bugs.
    The starting position thing is fixed now.
    For MovingObjects, I've added an option (set on the MovingObject) to allow its direction to be changed by the spawner's rotation or not, so now it's up to you. I think both can be useful.
    I couldn't find anything wrong with the CameraBehavior though. Could you elaborate ?
     
  25. karmik

    karmik

    Joined:
    Oct 8, 2014
    Posts:
    124
    Hey there I was hoping you would look in to my request and create a running shhoter kind of example.

    I work on day job and game dev enthusiast. I was looking for a starting going to implement my running shooter game.

    Can you please simple template of this type. I already bought this asset and was hoping you might create this example
     
  26. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,915
    @karmik > No, I don't create stuff just for one person, I'm sorry but that's just not how I work.
    I've taken note of your request. It just so happens that it's not a high priority request, as not many people are interested by it. Plus I prefer focusing on what's actually hard to do. You have runner examples, you have damage examples, you have spawners, all you have to do is spawn bullets. That shouldn't be too hard :)
    As mentioned on the asset's page : Buy this asset (and anything, really) for what's been released, not what's possibly coming.
     
  27. brettboring

    brettboring

    Joined:
    Nov 8, 2013
    Posts:
    33
    @reuno I'm noob so it might just be how I've set up my scene or I don't understand the intention properly but when I select Follow Player Z on the CameraBehaviour component and push play the camera moves back from z -255 to z -374. Follow Player Y also moves the camera from y 125 to y 145.

    To be clear the camera follows the player properly when the games running just not in the position I originally set it at.
     
  28. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,915
    @Brohepa > Oh that's normal behaviour then. The initial position of the camera isn't taken into account (as the player can spawn anywhere, or you can have more than one player. The camera's offset relative to the player is determined by the Min and Max zoom coordinates (the first fields in the inspector). You can even tweak these at runtime to get the exact position you want. The camera's position will transition from min to max zoom position as the game goes (to accomodate for increasing speed for example). So if you want your camera to remain at the same place, just set its min and max zoom positions to the same values.
     
  29. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,915
    Hello,

    I've just sent a newsletter to, well, the people who've subscribed to it. I thought maybe it'd be a good idea to also post this here to let you know what I'm working on right now. So here’s a short recap of what’s coming in the next months!

    Nice Touch
    This one actually just hit the Asset Store. It’s the standalone version of themobile controls included in the Corgi Engine. As they proved quite popular to Corgi Engine users, I thought maybe they could be of use to other people. Of course, if you already own the Corgi Engine, don’t buy this asset.

    It’s a really simple mobile input solution. Minimal by design, it provides you with a way to add multitouch virtual joysticks, directional pads and buttons to your game within seconds.

    You can get Nice Touch on the Asset Store right now!

    Infinite Runner Engine
    I have a big update for this asset almost ready to roll. It includes a lot of new stuff, and improves on what’s already there based on your feedback. Here are some of the new features :
    - a scenario manager that allows you to trigger events after a certain time / when a certain score is reached
    - a big revamp of the multiple object pools, allowing you to spawn stuff in certain order, or handle the probabilities of each object more accurately
    - a much improved distance spawner
    - a brand new demo level, Flight of the Albatross, with some cool shaders and showcasing a lot of the new stuff

    If you've bought the engine and liked it, please don't hesitate to put a good note or review on the Asset Store for it, to help spread the word about it!

    You can grab it here before the update hits the store.

    Corgi Engine
    I’ve been adding lots of things to the Corgi Engine lately. Lots of bug fixes and small improvements. I’ve also started work on a brand new weapons system, and an inventory system. Both of these take time to handle all the possible use cases, so maybe the next version will ship without them. Not sure yet. There’s also a brand new demo level almost ready for you to play with. I've been getting lots of good feedback and it seems people like the asset, so I'll definitely keep adding lots of cool stuff to it. You can help by putting a nice note/review on the Asset Store if you've got 5 minutes to spare.

    You can get the Corgi Engine on the Asset Store

    Inventory System
    Initially created for the Corgi Engine, this has kind of grown into its own thing. It’s almost complete, I’m working on documenting it and well, these things take time. I'm still trying to figure out how to package this (bundled with Corgi Engine or standalone), but I'll make sure people who've already bought the Corgi Engine won't have to pay for it.

    And one more thing
    If you've made it this far, congratulations, you get a screenshot from an upcoming, all new asset. Can’t say much about it yet, but if you like racing with your friends, you’ll probably like it.

    That’s all for now, stay tuned for more announcements soon!
     
    brettboring and dhogan like this.
  30. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,915
    Good news everyone, I've just submitted v1.2 of the Infinite Runner Engine to the Asset Store. The update should be live within a few days. I'll post here again when it's out, with complete release notes and a new tutorial video showcasing all the new stuff.
    Note that the asset's price will go up when the update hits the store, climbing to $60. So if you don't have the Infinite Runner Engine yet, now's the time to get it!
     
  31. Zeneke

    Zeneke

    Joined:
    Jan 14, 2015
    Posts:
    2
    I bought Infinite Runner and Corgi Engine and surely also buy the new project. You're admirable. Thank you very much, keep it up.

    Edit: The new level of Infinite Runner crash in my Xiaomi MI4 phone XD

    Sorry for my english man.
     
  32. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,915
    @Zeneke > Hmmm, sorry to hear it crashed. It's entirely possible, it uses a ShaderForge shader to animate the water, and it's been behaving weirdly on iOS and Android on my test phones. It works great on desktop though. I'll update the apk with a simpler water animation. Shaders are hard.
     
  33. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,915
    Great news, the Infinite Runner Engine update is now live on the Asset Store.

    Here's the release trailer :


    These are the release notes :
    - Adds a new demo level, Flight of the Albatross
    - Adds a scenario manager, that allows you to trigger events when a certain score or time is reached
    - Adds probability based spawn
    - Adds sequential, non random based spawn
    - Adds customizable loading text on the loading screen
    - Adds an option to the DistanceSpawner to handle gaps relative to the last object's position
    - Starting position’s z value is no longer reset by the level manager
    - Adds an option for moving objects to keep their initial direction, disregarding the spawner’s rotation
    - Fixes temporary speed changes duration

    And this is a tutorial that goes over all the new stuff (and some of the old) :


    I hope you'll like this new version! Let me know what you think.
    Also make sure you backup your project before updating. It shouldn't break much stuff, but better safe than sorry :)
    It should require to re-setup the multiple object poolers (at least).
     
    brettboring likes this.
  34. brettboring

    brettboring

    Joined:
    Nov 8, 2013
    Posts:
    33
    Having a blast with this update reuno. Good stuff!
     
    reuno likes this.
  35. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    Knocked up a little vr project in a few days with this, still to add: rhythm gaming and shoot/slashing, but this toolkit is making it very easy, so cheers! here's a gif. a bit large



    Would love more news on the driving asset!
     
    reuno likes this.
  36. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,915
    @lazygunn > Wow, this looks absolutely amazing!
    And the driving/race asset is coming along great. Still polishing the multiplayer side. Should see a release in September/October.
     
  37. dhogan

    dhogan

    Joined:
    Jun 2, 2008
    Posts:
    55
    Hi Reuno, I'm getting deeper into the package, and having good luck creating the concept I imagined - thank you for the well organized kit!

    Edit : I'm having a hard time making my description clear and organzied, so I apologize if it's confusing.

    Currently, I am having the problem David described with invincibility not working properly. I used the code from Backwards Dragon, and think I have done something wrong.

    First, I want to see if I understand the Backwards Dragon code. Is it _rigidbodyInterface.EnableBoxCollider(bool); and _rigidbodyInterface.IsKinematic(bool); that makes the player invincible and disables the controls?

    For my player class, as soon as the player re-spawns I can immediately take control, which isn't how it works for Backwards Dragon. (That's what makes me guess it might be the above functions.)

    My new player class is based on Lane Runner, and new player prefab is setup like the Block Dude prefab. Before adding the invincibility code, the only code change was to the control inputs.

    This is what I added to my class for invincibility :

    Code (CSharp):
    1.         /// <summary>
    2.         /// On start, we want to make our player show invincibility. Taken from 2D Backwards Dragon, need a 3D solution.
    3.         /// </summary>
    4.         protected override void Start()
    5.         {
    6.             //Color flickerColor = new Color(1, 1, 1, 0.5f);
    7.             //StartCoroutine(MMImage.Flicker(LevelManager.Instance.CurrentPlayableCharacters[0].GetComponent<Renderer>(), flickerColor, 0.1f, StartImmunityDuration));
    8.             DisableCollisions();
    9.             Invoke("EnableCollisions",StartImmunityDuration);
    10.         }
    I'm using a 3D object, so I had to comment out the two lines for flickering, but I couldn't see how that would affect the invincibility. However, I am not making use of gravity (or the kinematic checkbox), but am simply moving the object by the distance between lanes - could that be part of the issue?

    Finally, I have noticed that if I re-spawn while the lanes have colliders, and quickly die on purpose, on the last life the obstacles actually push my player object instead of dying on contact. I'm wondering if that is an issue with the Disable/Enable timing where the colliders might already be in contact when the player collider is enabled.

    Again, I apologize if this is confusing and will try to explain more clearly if needed.
     
  38. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,915
    dhogan > This is indeed very confusing :)

    If you just want to add invincibility to Lane Runner (or a similar game), you just need to disable collisions (as collisions are the only thing that can kill you). As explained in the comments, in the doc, or in the method's name, DisableCollisions() does that.

    To enable them again, use EnableCollisions(). This uses Unity's built-in physics, so there's nothing special here. Of course if you enable collisions when objects are already colliding, that's probably going to trigger a collision... You might want to prevent spawning until then. Again, there are methods and examples for that too.

    And indeed, the IsKinematic is just used to prevent the character from moving (either by falling down and killing itself, or via player's input). In your case, that's not gonna be useful, you'll need to either prevent input, by disabling the input manager maybe, or just checking for the GameStart event in your character's class. Look at the Flappy class to see how that's done.

    There's nothing more to it. The flickering doesn't have anything to do with it, it's just cosmetic. That said, you're the second one to ask about it, so I guess it's not as easy as I thought, and I should just make that definable from the inspector in the next update :)

    I was actually stopping by just to tell you all that I'm going on (well deserved if you ask me) vacations right now, and I'll be off the grid with no email or internet access until the end of the month. So if you get stuck, please be patient, and in the meantime you can check the youtube tutorials or the documentation, maybe the answer's there. If it's not, I'll help you as soon as I come back.

    See you soon!
     
  39. dhogan

    dhogan

    Joined:
    Jun 2, 2008
    Posts:
    55
    Sorry, being clear and concise is something I'm trying to work on. :)

    That's what I thought, and thought I had properly implemented in the code snippet I posted. Hmm.

    Ok, my assumptions were correct, which is a step in the right direction for me.

    I have to say that I am an amateur at working with a full project, as a veteran developer I've done some complex things - but only for my specific responsibilities or department. So, going through your code is equal parts an education for me *and* useful for making a game prototype. It has given me a better understanding of classes, inheritance, and overrides already; my hope is that working through problems like this will help me better understand the overall flow of managers, levels, player handling, etc. Again, thanks. :)

    Enjoy - It certainly is well deserved!
     
  40. arjunr24724

    arjunr24724

    Joined:
    Nov 28, 2014
    Posts:
    9
    Hi

    I wanted to thank you for your engine. It's been great in letting me get off the ground. I am (or was) pretty novie at Untiy but I think your enginge as well as coding practices helped me a lot. Here's my first game (based on Sky Theory) on Google Play Store: https://play.google.com/store/apps/details?id=com.ark9.spacechase
     
  41. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,915
    @arjunr24724 > That's great! Thanks for sharing. I'll give it a try right away!
    Don't hesitate to put a good note/review on the asset store if you liked the asset :)
     
  42. arjunr24724

    arjunr24724

    Joined:
    Nov 28, 2014
    Posts:
    9
    Done! :)
    Looking forward to your future updates.
     
  43. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,915
    @arjunr24724 > Thanks! You've summed it up better than I would have :)
     
  44. antaran

    antaran

    Joined:
    Mar 23, 2016
    Posts:
    6
    Hi. reuno.
    Let me say first that your Infinite 2D+3D is very good! It helps me a lot.

    But I have a problem for customizing.
    My game is based on Minimal 2D. I want to modify high jump(long press) ability so I looked into Jumper.cs and PlayableCharacter.cs.
    There are functions MainActionStart, MainActionEnd and Jump. But I can't find the codes for it.
    Still high jump works even if it looks like MainActionOngoing function doesn't be involved in.

    Could you explain how high jump works and what codes should be touched?

    Regards.
     
  45. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,915
    @antaran > There's a Jump() method in the Jumper class. As its name implies (or the doc, or the comments), it handles the jump.
    It's triggered by Jumper's MainActionStart.

    There's nothing else to it.
    Not sure what you mean by "the codes" though.
     
  46. antaran

    antaran

    Joined:
    Mar 23, 2016
    Posts:
    6
    Then how long press works? As you say Jump function is triggered in MainActionStart and there is no MainActionOngoing. MainActionEnd just triggers JumpSlow. I can't find "codes" for handling long press.
    However, when I press longer, the Jumper performs long(high) jump and performs short jump when I tap(hit space)

    How it works?
     
  47. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,915
    "MainActionEnd just triggers JumpSlow" > That's exactly how the jump is slowed down.
     
  48. antaran

    antaran

    Joined:
    Mar 23, 2016
    Posts:
    6
    But MainActionEnd is called when I stop pressing space key(or touch). Ah-ha, I see.
    I think your jumping modeling is that force(Up) is applied continuously(or something like that) during I press but Actually, your model is adding some amount of force(Jump Force) once when MainAction starts and then dragging down immediately as soon as MainAction ends. It's reverse what I think.
    Ok. I got it. Thanks reuno!
     
    reuno likes this.
  49. antaran

    antaran

    Joined:
    Mar 23, 2016
    Posts:
    6
    Hi, reuno.
    I need your help again.

    I use MainActionOngoing Function which should be called continuously during touching continues.
    Unfortunately, it works on Unity Editor(or OSX. I've not tested) but not on my iPhone.
    I tried to edit Input Manager but there is nothing about touches.

    So I tested MainActionOngoing. I inserted a log into MainActionButtonPressed() function in InputManager.cs and pressed long enough but the log didn't appear.
    Test is under iOS 10, XCode 8 and Infinite Runner 2D+3D 1.2.

    P.S.
    For ensuring a test, I had create a new unity project and import only 2 assets, Infinite Runner and SRDebugger(for viewing a log in phone).
     
  50. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,915
    @antaran > That's entirely possible, although it works for me and has never been reported. The controls included in the asset are super basic, just meant as placeholders so you can give the demos a try. Check out Nice Touch (also by me) on the asset store if you want more options (or any input asset really, I don't know them all).