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

Controller Third Person Templates by Invector

Discussion in 'Tools In Progress' started by Invector, Aug 20, 2015.

  1. Invector

    Invector

    Joined:
    Jun 23, 2015
    Posts:
    966
    Hello @iDeveloper2 / Tanzeel, I just got your email but I'm going to post the solution here as well for other people that miss this little tab.

    Mobile Input
    - After change the platform to your select mobile OS, there is a little tab call "Mobile Input", just hit Enable and the input should work just fine (you can test on the Editor as well, don't need to export build to confirm).

     
  2. peter_rodrigues

    peter_rodrigues

    Joined:
    Jan 28, 2014
    Posts:
    39
    Hey Invector,

    I was wondering if there is a way to make the character move a bit slower. Right now its too fast and the character travels a lot of distance in a short amount of time. Not really good for survival horror games when you have small, tight environments and Im not talking about jsut the sprint button but when the player is jogging.
     
  3. Invector

    Invector

    Joined:
    Jun 23, 2015
    Posts:
    966
    Hey there @peter_rodrigues, our controller is driving by root motion (we choose this, after months testing and it show better result for realistic movement), this means that the speed of your character will be exactly the speed of your animation, if you don't have new animations you could try to lower the speed value of the clip on the animator window, or open the fbx of the animation on a 3D Editor and change the distance on the Translate Z, oooorr you can even remove the sprint clip and make the character walk by default like oldschool RE.
     
  4. peter_rodrigues

    peter_rodrigues

    Joined:
    Jan 28, 2014
    Posts:
    39
    Cool thanks. Ill try to mess around with it in a bit. In the mean time I just adjusted the sensitivity in the input to .85 so the character doesnt fully jog. Thanks.
     
  5. o1o101

    o1o101

    Joined:
    Jan 19, 2014
    Posts:
    639
    Thanks for the response, downloaded it, works great, love it, super easy setup and great features, and all contained in one script on the player, beautiful, the next week we will work on implementing a shooting system, and let you know how it goes, Thanks!
     
    Invector likes this.
  6. Invector

    Invector

    Joined:
    Jun 23, 2015
    Posts:
    966
    Thank you @deverolirc!! We spend months building a solid base, now is just add new functionalities.
    The script on the player is actually 1 of 4 main scripts each one with their function, here is a infographic to you understand better how things work in our template.


    ps* hey guys, don't forget to rate us on the AssetStore please :p
     
  7. Steel-Grin

    Steel-Grin

    Joined:
    Aug 28, 2013
    Posts:
    16
    Hi,
    There's something I'm having trouble with and I'm not sure how to fix it as my own knowledge of 3D animation and colliders is a little limited (hence why I bought this).

    The issue I have is with the character's collider staying on the ground. I've added a jump animation, but even during the roll which comes with the asset the player is unable to actually get over a step or ramp unless they're already on it as the collider gets in the way and blocks them.

    I've found the code that modifies the capsule collider during specific actions, but is it just a matter of trial and error to find the right values without the model clipping through the ground or is there a better way to do it?

    Thanks
     
  8. Invector

    Invector

    Joined:
    Jun 23, 2015
    Posts:
    966
    Hey @Steel Grin, the collider does not leave the ground when rolling, what makes the character actually roll in more elevated surfaces is the StepOffSet, make sure that this Grey raycast are at the front of the capsulle collider, he detects the height of the surface ahead, and helps the rigidbody to go forward.

    Another important detail is to make sure that you character is using the correct Scale wich is 1, if you mess with the scale it can cause some issues with the colliders and ragdoll.





    We are working in a better way to debug this raycasts, to be more easy to edit as well
    and about the ControlHeight, I test here and find a better way to do it, instead of manually put values, I change to resize the center and height based your initial values, works way better, you can replace the ControlHeight() method on the ThirdPersonMotor

    if (crouch && !jumpOver || rolling)
    {
    capsuleCollider.center = colliderCenter / 1.4f;
    capsuleCollider.height = colliderHeight / 1.4f;
    }
    else if (jumpOver)
    {
    capsuleCollider.center = colliderCenter /0.8f;
    capsuleCollider.height = colliderHeight / 2f;
    }
    else
    {
    // back to the original values
    capsuleCollider.center = colliderCenter;
    capsuleCollider.radius = colliderRadius;
    capsuleCollider.height = colliderHeight;
    }

    It will work way more accurate because it will get the original value and resize from that value.

    The update is coming people, looots of improvements! :D
     
    Last edited: Oct 8, 2015
  9. Project-Mysh

    Project-Mysh

    Joined:
    Nov 3, 2013
    Posts:
    223
    Hi there guys,

    Final Ik problems with this plugin are directly related to a bug with unity 5:

    http://fogbugz.unity3d.com/default.asp?734432_nvt1d0uc31tg41s9

    Basically, Changing update mode of the animator by script to Animate physics is the problem. Try to put it manually before hit play and ALL FinalIK components should work again.

    Hope this helps you.

    Note: When charcther enters to ragdoll mode, disable IK components or you will suffer from ghost physics.

    FinalIK.jpg
     
    Last edited: Oct 8, 2015
    Invector likes this.
  10. kurotatsu

    kurotatsu

    Joined:
    May 10, 2012
    Posts:
    588
    Excellent, I'm writing a ragdoll system for my ai, and that tidbit will help.
     
  11. Invector

    Invector

    Joined:
    Jun 23, 2015
    Posts:
    966
    Cool! We were using that change on the animator update mode just because of the way that the spine curves when on aiming mode, but we removed that script and now we are using the animator.SetLookAtPosition to curve the spine and make the headtrack!

    Also, you can verify when the ragdoll is on by the bool ragdolled, then just disable the finalIK stuff and enable again when !ragdolled.
     
  12. ISH_the_Creator

    ISH_the_Creator

    Joined:
    May 8, 2013
    Posts:
    165
    Hey great template man I may pick it up Friday afternoon. I have 2 other controllers, one is great and is modular the other is a complete project and is very buggy. I am curious how differently
    this will function for my own educational uses as I learn how to build and code my own character system.
    Its a win win either way you slice it. Making a fully functional character controller is very long and hard. Its only 59 bucks and Its new give it time. There are good and alot of bad assets on the asset store. Alot of us have got burned lets not jump to conclusions because of the douchebagery of other vendors. So far for what I can see this asset is very solid and there are updates to fix what most want. Hey you could always learn to code and make your own system for the game you want. Its always rewarding when you built it and it works the way you want.

    I only for now care about getting it to work with final IK

    and customizing the camera zooming :)
     
    Invector and kurotatsu like this.
  13. kurotatsu

    kurotatsu

    Joined:
    May 10, 2012
    Posts:
    588
    I agree with your statement completely, and buy premium assets to see how things are done as well.

    @Invector :
    And it takes a excellent asset for me to jump on board to assist and support especially in the middle of my own development, wink, wink.

    Keep it up fella's, you are doing fine, and from what I can tell, you take your customers suggestions seriously.

    Just remember, just because something grows in a direction it wasn't first intended doesn't mean it won't grow into something miraculous.
     
    ISH_the_Creator likes this.
  14. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    4,030
    This doesn't solve the problem for me. The character still vibrates/stutters and has difficulty. However, there is a deeper issue that has nothing to do with FinalIK. After seeing that this suggestion wasn't working, I turned off the FinalIK components to check some things. The vibration/stuttering went away, but lots of other issues remained. In your demo scene, everything is just flat surfaces so things work fine, but in my scene there is lots of varied terrain and other objects and the controller doesn't do well at all. In certain areas, the character just stops for no reason. In some cases, it keeps repeating part of an animation like it's trying to go forward, but is stuck and can't move. Other times the camera just jumps around as the character desperately tries to navigate the terrain, but fails. I increased the step offset limit to 1 and slope limit to 50, but it didn't help much. I'll provide a video when I get a chance, but you might want to just try running some tests on a terrain scene with some rough sections. Here is a screenshot of a trouble spot so you can see what kind of terrain I'm talking about.

    upload_2015-10-8_22-19-39.png

    The darker areas are little, bumpy terrain and it has fits with it.
     
  15. angelodelvecchio

    angelodelvecchio

    Joined:
    Nov 15, 2012
    Posts:
    170
    hi!

    its possible to let the character scrolls smoothly when walking closer to wall ? it can be notice that it stops!, like in the old tombraider games !
     
  16. ThunderTruck

    ThunderTruck

    Joined:
    Sep 25, 2013
    Posts:
    61
    Hi,
    For resolver the camera issue change the "FixedUpdate" with "LateUpdate" in TPCamera script.
    FixedUpdate shouldn't be used to update camera transform with physics behaviours involved
     
  17. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    4,030
    Here is the video showing issues. This is completely without FinalIK. I simply copy and pasted the character from the provided demo into my scene to see how it works. It's fairly long so be patient. I provide annotations for most problem areas to describe what's happening. I kept in long stretches where the controller does well so that you can see that it may not be obvious there are issues with every terrain or all the time.

    https://www.dropbox.com/s/klfv2i41anrs3ra/InvectorTest.wmv?dl=0
     
  18. macodys

    macodys

    Joined:
    Jul 22, 2012
    Posts:
    64
    Hi
    Check if there is an invisible collider there, that might be the problem
     
  19. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    4,030
    No, there is nothing. In fact, I also tested this scene with 2 other controllers, including the pilot character from FinalIK. The pilot blows through this entire level as smooth and perfectly as can be. Not a single issue.

    EDIT: I should change this to I'm pretty sure there is nothing or that there shouldn't be anything invisible here. But since this scene was a pre-bought 3rd party asset, I suppose it's possible. I'll double check these trouble spots this evening and see if I can find anything. I'll probably just try moving the terrain over to an empty scene and see how the character does there. That will insure there is nothing else and I can know for sure.
     
    Last edited: Oct 9, 2015
  20. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    4,030
    I'd also like to point out that there is a major issue when you select 3rd Person Controller/Create Character. The window takes as long as a minute to come up. Then when you drag your character to the window, you have to hold it over the field for about 20 seconds before it actually lets you assign it. Not a good thing.
     
  21. Invector

    Invector

    Joined:
    Jun 23, 2015
    Posts:
    966
    Hey @magique I just saw your video, I can't read the debug window but you can see what values change there when this issues ocorred. One very important thing is to keep the player with the layer Player, otherwise the raycasts will collide with each other and cause major issues like auto crouch and stuff...

    When the character was stuck on the brigde, I'm thinking that you use mesh collider and maybe there is a hole there, causing the character to be stuck between falling and onground.

    The only reason for the character to auto-crouch is when the Green raycast above the head collide with other mesh, make sure your gameobjects without collision use the layer Triggers.

    And about the CharacterCreator window... that's really odd, this happens on the scene from the video or any scene including empty?
     
  22. Invector

    Invector

    Joined:
    Jun 23, 2015
    Posts:
    966
    Did you mean walk 'inplace' facing the wall?
     
  23. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    4,030
    I copied the character from your demo scene so I suppose it's on the Player layer, but I'll check when I get back home this evening.

    I didn't make the asset, but I can look closely at the mesh and see if there is an issue.

    Not sure what's relevant here. In the cases where he was trying to crouch there wasn't anything but the terrain to collide with.

    It's happened to me every time in several scenes, but I don't know if I tried an empty scene yet.
     
  24. angelodelvecchio

    angelodelvecchio

    Joined:
    Nov 15, 2012
    Posts:
    170
    for example, usually we walk really closer to the wall, usually to search for itens and so, when I try that in webplayer, is possible to see that the character stucks, so you have to rotate more, or even walk back and rotate to keep going
     
  25. Invector

    Invector

    Joined:
    Jun 23, 2015
    Posts:
    966
    Oh yeah... this is a method call StopMove that we made it exactly for the player not walk in place, modern games like Uncharted, GTA, MGSV also have this feature, but it is manageable, you can turn it off if you want to :)
     
  26. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    4,030
    I'm troubleshooting the scene and here is what I've learned. Getting stuck on the bridge has to do with the StopMove feature. There is a little raised section on the bridge and the sphere collider hits it and because the bridge is set to Default layer and the Stop Move Layer includes Default then it gets stopped. Here is a screenshot of the sphere hitting the raised section.

    upload_2015-10-9_18-54-26.png

    In fact, all the getting stick issues go away if I remove Default from the Stop Move Layer. However, the camera glitch still happens everywhere where I would have otherwise been getting stuck due to the StopMove. I can find nothing else in those areas that would cause this, but when I have a clean scene with just the terrain then it doesn't happen. Whatever mysterious thing that's causing the glitch, I am unable to track it down at this time. I will have to look at it at a future time.
     
  27. Invector

    Invector

    Joined:
    Jun 23, 2015
    Posts:
    966
    @magique Perhaps the culling layer from the camera is activating on this colliders with the layer Default, as I said before, try change this colliders to a layer call Triggers, the culling will ignored then.

    Another thing, we have improved a LOT the camera and the culling system, now the camera really don't get inside walls and stuff, it is more smooth and has more options, such as the required Zoom :)
     
  28. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    4,030
    So, if I change Culling Layer to Triggers then the problem goes away, but of course now the camera doesn't clip against the terrain or buildings, etc. And you;re suggesting that I change thousands of objects in all my scenes from Default to Triggers so this will work? That's just not good at all. Also, if I change the terrain to triggers then the character can't even move on the terrain. So then I have to change Ground Layer to include Triggers. And yes, that all makes it work just fine. But having to change every scene in a game from Default to triggers on all objects with colliders? I just have to say I think that's a poor design decision that needs to be re-thought. Is there another way around this without making that switch?
     
  29. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    4,030
    OK, so I figured out the camera glitch and I don't have to change everything to Triggers. I can keep the Culling Layer as-is. The glitching was a consequence of an experimental visibility technique I was playing around with and forgot about. I have 3 buildings in the scene each with a sphere collider as triggers. When entering the sphere trigger the objects become visible and when exiting they become invisible. These objects are on the default layer. But I'm still not sure why this would be an issue. My apologies for putting the blame on the controller. All issues resolved without use of FinalIK. I'll see if I can get that back in the equation and see how it does.
     
  30. bjarnidk

    bjarnidk

    Joined:
    Oct 9, 2015
    Posts:
    10
    Hi I just bought this template and I really like it in a new project. However, how do I use it in a pre-existing project? I have a game that is going to use this template but if I import it, it just makes a new project. If I import it into my existing project I don't get the "ThirdPersonPlayerController template" button next to component and I also get a lot of compiler errors such as "namespace global already contains a definition for 'character'" along with many other compiler errors.
     
  31. peter_rodrigues

    peter_rodrigues

    Joined:
    Jan 28, 2014
    Posts:
    39
    For the compiler errors, youre importing scripts that you already have in your assets most likely. You will have to delete them as the compiler errors come up. Most of mine were from re importing the same image effects so I just delete the duplicates. Of course since since is a complete project it imports everything a project will need and will most likely change all your inputs, layers and other settings. You can always uncheck the stuff that you do not need before importing with the box that comes up.

    As for the create character button not coming up. I had the same problem and I just deleted all the third person controllers in my assets because 1 compiler error had an instance of multiple third person controllers. Just make sure you dont delete or modify anything that was imported with the invector template though.

    Unfortuntely with out looking at a screen shot of your compiler errors we cant really tell you if there is something bigger causing issues.
     
  32. bjarnidk

    bjarnidk

    Joined:
    Oct 9, 2015
    Posts:
    10
    Hi. It's a HEAP of issues and some of these scripts depend on other scripts. So it's basically a huge issue in my entire code hierarchy :( I'm using Atavism (a MMO template) and I wanted to use this template for the movement system but I guess that's impossible without redoing the entire code?
     
  33. Invector

    Invector

    Joined:
    Jun 23, 2015
    Posts:
    966
    No worrys @magique, as I say you don't need to change every object to Triggers, It was just a suggestion to change the layer of objects like invisible wall, or colliders with no mesh that trigger something, the character auto stop and make the camera clipping for objects with the default layer (wich is the majority).
    There is no need to go out and pointing guns lol, we are here to help... just post your problem and we will find the solution together.

    Hey @bjarnidk as said before this is a complete project, it's way better if you use this project as base and import your stuff, it's complicated to combine 2 different big projects, but we are working in a way to minimize this problem by change scripts like Character to Invector.Character and removing some of the Standard Assets that we included on the project.
    One thing that sucks is when you already has a script imported on your project, and try to import another script with the same name and different lines, Unity does not replace the file, but create another and you get the error.
     
  34. bjarnidk

    bjarnidk

    Joined:
    Oct 9, 2015
    Posts:
    10
    Oh...I just bought it and this means that I really can't use it then. Is there any way I can get a refund? I think the product is amazing for a new project but if I can't integrate it to my current project then I really can't use it :(
     
  35. Invector

    Invector

    Joined:
    Jun 23, 2015
    Posts:
    966
    I send you a PM bjarnidk
     
  36. Invector

    Invector

    Joined:
    Jun 23, 2015
    Posts:
    966
    I'm making some animations of climbing ladder guys :p
    It will be very modular, you will be able to climb any height and the code can be use to climbing walls, poles, ladders, ledges, etc... Just replace the animations or copy the methods and add new bools.

    - startLadderBottom & endLadderBottom (you can use the same animation with -1 value)
    - startLadderTop & endLadderTop
    - climbLadder (you can control up or down by the parameter speed)

     
    Last edited: Oct 11, 2015
    SingularitySystems likes this.
  37. montyfi

    montyfi

    Joined:
    Aug 3, 2012
    Posts:
    548
    Very tempting to buy this asset, but reading this forum I have several concerns.
    - Does your asset works correctly with Final IK? If not, when you are planning to make it working?
    - Does your asset works with multiple terrains (Terrain Composer)?
     
    ISH_the_Creator likes this.
  38. Invector

    Invector

    Joined:
    Jun 23, 2015
    Posts:
    966
    Hey there @montyfi , first we wanna make some updates on our asset, it's just the first release and we have much to improve, then we will take a look at 3rd party assets for integration and stuff :)
    (Some guys has tested FinalIK but nobody confirm that is working, and I don't see why not won't work with multiple terrains)
     
  39. tmmandk

    tmmandk

    Joined:
    Jul 6, 2013
    Posts:
    7
    I was Just Going To Reply LOL

    -Final IK is Working But Not Really Good And You will have to modify an play around with scripts a little bit .
    - As INVector Said " I don't see why not won't work with multiple terrains" And i agree It works with multiple terrains.
     
  40. mensch-mueller

    mensch-mueller

    Joined:
    Nov 25, 2014
    Posts:
    156
    Hey Invector
    Bought your controller a few days ago, really easy, simple and fast to set up. And really good working.
    And the updates seemed pretty promising!
    But I own FinalIK too and I really thought from the beginning to bring them together. I´m really not that good to modify FinalIK scripts :( to get them working!
    I saw you on Pärtel Langs PuppetMaster forum, there is just more to come from him! I´m sure the problems will be sorted out sooner or later, but perhaps you can contact him directly (he is always very helpful), to make the two work together!(and PuppetMaster later) :)

    Thanks for your great work
    Cheers Michael
     
  41. Invector

    Invector

    Joined:
    Jun 23, 2015
    Posts:
    966
    Thanks for your purchase @mensch.mueller (Michael)!
    We will definitly take a look on FinalIK after we completed this first Update, there is a lot of people asking for this. :)
     
  42. jasonMcintosh

    jasonMcintosh

    Joined:
    Jul 4, 2012
    Posts:
    74
    +10 for this. More modularity, please.
     
    Invector likes this.
  43. Invector

    Invector

    Joined:
    Jun 23, 2015
    Posts:
    966
    Hey guys I'm still looking for a 3D Animator to help us with some specific animations, with you know someone, please send us a PM :)
     
  44. Demonith88

    Demonith88

    Joined:
    Jun 30, 2014
    Posts:
    216
    help
     
  45. Invector

    Invector

    Joined:
    Jun 23, 2015
    Posts:
    966
    @Demonith88 most people that show me errors like this is because they are using old versions of Unity, try update to 5.2.0 or higher as recommended in our assetstore page and import the project into a new project.
     
  46. Invector

    Invector

    Joined:
    Jun 23, 2015
    Posts:
    966
    Ladder climb system is fully functional :D
    - it's possibly to climb any height and you can change this animations for climb walls, rope, pools, ledges, etc...



     
    SingularitySystems and macodys like this.
  47. SingularitySystems

    SingularitySystems

    Joined:
    Feb 10, 2014
    Posts:
    48
    Ladders look amazing!

    What is your timetable for the next update? Same question for the combat system you mentioned earlier in the thread.
     
  48. jayimagination

    jayimagination

    Joined:
    Dec 20, 2012
    Posts:
    89
    I second the combat system and is there an ETA on the shooter plugin? Also what features will be expected in the shooter plugin?
    Thanks
     
    SingularitySystems likes this.
  49. Invector

    Invector

    Joined:
    Jun 23, 2015
    Posts:
    966
    Hold on your horses fellas hehe, this things take time to develop and we want to make sure is working correcly before release to you guys! Everything that I said until now is already working, the 2.5D and topdown camera, the jump, ladder, but we want to polish a little longer before release.

    Here is the agenda:
    - Release v1.1 (around 1 week from now with Jump, Ladder, new gameplay modes)
    - Take a look on the most request 3rd party asset for integration
    - Release v1.2 with Basic combat and simple Enemy NPC
    - Shooter Addon (this will take more time so I can't say a day just yet)

    Features that you can expected from the Shooter Addon:
    - IK system based on weapon state, easy to edit in runtime with gizmos
    - Weapon system to set up new weapons
    - First Person state view like MGS V and Scope view.
    - Throw ballistic trajectory projectile
    - Pickup item system based on height

    All this was actually already coded and it's working, but it was developed in another Controller, so now we have to implement on this template. I will not show any screenshots just yet to not create any hype on you guys lol, but we will definitely develop this addon, you guys just have to be a little patient :)
     
    jayimagination and RonnyDance like this.
  50. kurotatsu

    kurotatsu

    Joined:
    May 10, 2012
    Posts:
    588
    Look into GAC for melee, is what I recommend.

    Ladders look sweet! Is the ledge hang with left and right movement in the future.(You are making it hard Not to make this modular and use this system.lol)

    Keep it up! Can't wait for the next update.