Search Unity

Third Person Controller - Third Person, AI, Multiplayer, Mobile Framework

Discussion in 'Assets and Asset Store' started by opsive, Jan 21, 2015.

Thread Status:
Not open for further replies.
  1. mattis89

    mattis89

    Joined:
    Jan 10, 2017
    Posts:
    1,151
    Hello:) Merry Christmas!
    Where is the ICE creature control component intergration so I can make monster do damage and other way arounD?
     
  2. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,127
    Yes, similar to UFPS there will be a multiplayer addon. This addon will support UNet and PUN.
     
  3. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,127
    Merry Christmas :)

    I didn't create the ICE integration so you'll want to ask the ICE developer :) I think that it is under a menu in ICE though.
     
  4. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,127
    Version 1.3.9 has been released on the Asset Store. You can see the full release notes on this page. This update was mostly a compatibility update with Unity 2017.3.
     
  5. mattis89

    mattis89

    Joined:
    Jan 10, 2017
    Posts:
    1,151
    Oh sorry, hhahah I was again on the wrong forum xD But yea It´s not there where it should be, hmm.. :D
     
  6. mattis89

    mattis89

    Joined:
    Jan 10, 2017
    Posts:
    1,151
    If I have a full game with otpc and want to update otpc, how do I do it without messing everythiing up and re-setup it all?
     
  7. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,127
    All of the metadata guids are the same so you can import the asset like normal. If you've imported the source then make sure you grab the latest from opsive.com as well.
     
  8. XN4k3dBR

    XN4k3dBR

    Joined:
    Sep 15, 2015
    Posts:
    11
    I need configurate controller xbox one, can you help-me?
     
  9. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,127
    By default the input manager is already configured for the Xbox controller. For further customizations I recommend taking a look at this guide on how to map the controller:

    http://wiki.unity3d.com/index.php?title=Xbox360Controller

    Rewired is also a great asset for handling custom controllers (and TPC is integrated with Rewired).
     
  10. smnerat

    smnerat

    Joined:
    Sep 23, 2012
    Posts:
    35
    Hi, so I just purchased and have been testing TPC out, its pretty awesome so far. It's definitely easy to use, to the point that after a couple of hours, I have a new character setup and am trying to implement a few different features that I have in mind.

    One of those features is context sensitive controls, is this already built into TPC and I just missed it? The simplest example would be using the same button on an X Box controller to both jump and interact with objects, with more complex situations planned.

    I can prioritize one over the other by changing their order in the ability section of the controller editor. Messing around with that led me to the DetermineState() function in the AnimatorMonitor.cs script. As far as I can tell this is where I will need to implement any decisions for context? I'm really just looking for confirmation that I didn't miss this in the documentation somewhere, or maybe an easier solution, since there is quite a lot of code that I haven't gone through.
     
  11. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,127
    Glad things are going well!

    This is possible, and what I would do is modify the Abilities CanStartAbility method so it returns true if the ability can start. In the case of jumping or running another ability you could have that other ability have a higher priority so if that ability starts then jump won't start.
     
  12. smnerat

    smnerat

    Joined:
    Sep 23, 2012
    Posts:
    35
    @opsive Thanks for getting back to me so quick, 74 pages of forum entries and you're still replying like you just released!

    So I guess I had the right idea in the wrong place. Things seem like they're already in motion at the DetermineState() function and I was getting a lot of weird behaviors, so I didn't have any luck with that.

    I did the common sense thing and looked through the code some more until I found the ControllerHandler script and just check/block/allow the inputs in the update function and things seem to be working as intended. For testing purposes I'll probably just keep a checklist and run through it there and the modify the CanStartAbility() once I'm finished.
     
    opsive likes this.
  13. ahkow

    ahkow

    Joined:
    Aug 13, 2015
    Posts:
    11
    Hi, would like to ask some pre-sales questions:
    1. Can I use Third Person Controller to control enemies?
    2. Can I use Third Person Controller to control non-humanoid NPC like drones, spiders etc?
    3. Is there a list of game made with Third Person Controller?
    Thanks.
     
  14. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,127
    Thanks for taking a look at the Third Person Controller.

    Yes. As an example in the Deathmatch AI Kit all of the characters are controlled with TPC (and Behavior Designer). If don't want to use a third person character for the player that's no problem.

    Yes, you'll need to have the animations for it but it does work with generic models.

    I have the hardest time getting games completed. Generally if things are going well you never hear from the developer so you don't know what games are being made with it. The most recent published game that I've seen use it is The First Tree.

     
    TeagansDad and ahkow like this.
  15. ahkow

    ahkow

    Joined:
    Aug 13, 2015
    Posts:
    11
    Hey thanks for mentioning this game. Just read about the development and it's encouraging.
    https://connect.unity.com/p/articles-so-many-projects-so-little-time
     
    opsive likes this.
  16. Jixzer

    Jixzer

    Joined:
    Feb 3, 2014
    Posts:
    15
    Using Playmaker, Behavior Designer and ThirdPersonController I’m hitting walls trying to get a generic 4 legged creature npc to follow the terrain slope angle correctly. They just follow in horizontal unrealistic way. I search the forum and have not come across anyone else with this problem so feel I’m missing the obvious.
     
  17. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,127
    Under the RigidbodyCharacterController make sure you have the "Align to Ground" toggle enabled - this will rotate the character so it is on the ground.
     
  18. Jixzer

    Jixzer

    Joined:
    Feb 3, 2014
    Posts:
    15
     
    Last edited: Jan 11, 2018
  19. Jixzer

    Jixzer

    Joined:
    Feb 3, 2014
    Posts:
    15
    P1.jpg

    seems the Align to ground only works for a player controlled character.
     
    Last edited: Jan 7, 2018
  20. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,127
    Ah, what is probably happening is that the NavMeshAgent is rotating the character back. Within the Movement Pack tasks you can uncheck "update rotation" and that'll prevent the NavMeshAgent from updating the rotation.
     
  21. Jixzer

    Jixzer

    Joined:
    Feb 3, 2014
    Posts:
    15
    Sorry, but unchecking the update rotation is no help. Still the same results.
     
  22. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,127
    It doesn't look like the update rotation value is actually being applied. Within NavMeshMovement.cs try changing the following within OnStart:

    Code (csharp):
    1.  
    2.             if (!updateRotation.Value) {
    3.                 UpdateRotation(true);
    4.             }
    5.  
    to:
    Code (csharp):
    1.  
    2.             UpdateRotation(updateRotation.Value);
    3.  
     
  23. Jixzer

    Jixzer

    Joined:
    Feb 3, 2014
    Posts:
    15
    No, it does nothing for the slope problem in fact it makes it worse as now blitz flickers on and off while moving.
     
  24. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,127
    After I made that change it worked for me. Here's a scene you can compare against.

    slope.PNG
     

    Attached Files:

  25. Jixzer

    Jixzer

    Joined:
    Feb 3, 2014
    Posts:
    15
    I'll give it a shot soon..
    ty
     
  26. Jixzer

    Jixzer

    Joined:
    Feb 3, 2014
    Posts:
    15
    This time you had my hopes up, however this solution didn’t work either. Just so were on the same page here I’m using Unity 5.6.4f1, Behavior Designer 1.5.11, Movement Pack 1.5.4 and ThirdPersonController 1.3.9 without any of the sourcecode added.

    Also in the clean scene demo when I move blitz over to the ramp he adjusts correctly to the slope as intended (player mode) when start the demo, but In my scene or the one you sent me he does not adjust as intended (ai mode) when started before the movement even takes place. Something is not right.

    I’m at your mercy as I can find no info on this in any of your manuals. I’d like to also add that I’ve had no other problems before this issue.

    jix
     
    Last edited: Jan 11, 2018
  27. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,127
    The change that you posted looks good. Can you send an email to support@opsive.com with your project so I can take a closer look at the cause? If you can also include your invoice numbers that would be great.
     
  28. Jixzer

    Jixzer

    Joined:
    Feb 3, 2014
    Posts:
    15
    will do
    ty

    SOLVED
     
    Last edited: Jan 11, 2018
  29. Galahad

    Galahad

    Joined:
    Feb 13, 2012
    Posts:
    72
    I'm trying to build the "Clean Scene" demo to Android, but the controls doesn't work as intented and the FPS is terrible. Any tips on how make this work on mobile?
    My test device is a Galaxy S7.




    Regards
     
    Last edited: Jan 12, 2018
  30. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,127
    Make sure you've imported the source code so the controller can detect the mobile platform.

    In terms of that profiler graph, you'll need to expand it that row in order to see what the bottleneck is but it looks like it has something to do with Timeline.
     
  31. Galahad

    Galahad

    Joined:
    Feb 13, 2012
    Posts:
    72
    That's strange. Does the "Clean Scene" has any Timeline element on it? Or it is because one of my scenes have a cutscene on it?
     
  32. levi777l

    levi777l

    Joined:
    Mar 13, 2014
    Posts:
    17
    Im sure this is in here somewhere, but since I am lazy today....

    1. How hard will it be to upgrade to TPC2 when its released?

    2. Do you have a roadmap of features for TPC2?

    3. Any expected timeframe for releasing it?
     
  33. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,127
    The clean scene doesn't include any timeline elements. I've only used Timeline briefly so I haven't profiled it to see its lifecycle. If you expand the DirectorFixedUpdatePostPhysics field you should be able to narrow down the cause a bit better.
     
  34. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,127
    The API has changed so any custom scripts that you've written will have to be adopted, but it will include editor scripts to get your character created easily.

    We don't have one online - if you follow @opsive on Twitter we do periodically tweet the latest of what we've been working on.

    We are aiming for the spring!
     
  35. francescobr

    francescobr

    Joined:
    Apr 2, 2017
    Posts:
    45
    Hi, I'd like to try out your third person controller. I already have invector but I'm not completely satisfied of some aspects of it. Is there any trial version?
    Another question, will version 2.0 require an upgrade fee?
    Thank you
     
  36. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,127
    Thanks for taking a look at the Third Person Controller.

    You can download a web player/standalone demo for each scene on this page but there is no Unity Package trial. If you have a specific question I should be able to help answer it.

    Yes, because we started with a completely blank project and took the best parts from TPC/UFPS there will be an upgrade fee. We haven't decided on the amount yet but it'll definitely be reasonable. Version 2 will hopefully be released in the spring.
     
  37. francescobr

    francescobr

    Joined:
    Apr 2, 2017
    Posts:
    45
    I undestand, I'll wait for the release then. Thank you.
     
  38. ShamanUY

    ShamanUY

    Joined:
    Sep 23, 2014
    Posts:
    6
    Hi, I have a question.
    I've been trying to make a multiplayer top down game. Everything is working fine except when I host a game with multiple players. The player I'm controlling is completely fine but the other ones move jittery. Like the animations are constantly restarting.
     
  39. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,127
    This sounds like it could be related to the NetworkTransform interpolation. Take a look at this thread for an alternate implementation and an explanation of what is going on: http://opsive.com/forum/index.php/topic,4459.0.html
     
  40. ShamanUY

    ShamanUY

    Joined:
    Sep 23, 2014
    Posts:
    6
    Thanks for the fast answer. I tried that and it kind of works. I does fix the problem with the jittering of the animations but brings 2 new problems.
    The first is that the host's player is skipping on place. Always jumping without animation. The clients see him just moving the head, like headbanging but calmer.
    The other problem is that the players are moved to places. The host's character is moved to the center of the map. As soon as it starts it hops to the center. The other players (just on their instance of the game) move to a previous place they've just been. If they move only to the right as soon as they stop moving they go back to the left. Not the whole distance, but about a third of it. This only happens on the instance that is controlling the player. Everyone else sees that player moving and stopping where it player ends (after it moves back)
     
  41. angel_m

    angel_m

    Joined:
    Nov 4, 2005
    Posts:
    1,160
    I hope the parts from UFPS won't break down the good of TPC. I mean UFPS is well-known as being a too complex project, very (very) difficult to modify or customize, so most users are forced to use it unaltered.
    Please, keep TPC easy to use and customize.
     
  42. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,127
    The Third Person Controller currently relies on Unity's NetworkTransform and NetworkAnimator components in order to synchronize. Unfortunately the issue sounds related to these two components. You may be able to try HLAPI Pro to improve upon the existing HLAPI. The 'true' fix is to use client-side interpolation and server reconciliation which will be in version 2. I am currently held up by a different Unity bug on this but using client-side interpolation and server reconciliation will definitely fix the issue and is not restricted by Unity's networking implementation.
     
  43. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,127
    Compared to the current versions of UFPS and TPC the structure is more similar to TPC. It doesn't rely on as much reflection as UFPS does and the event system is basically the same as what is in TPC. I was able to still bring over the best parts of UFPS (such as the springs and character locomotion code) without needing all of the reflection code.
     
    angel_m, TonyLi and TeagansDad like this.
  44. angel_m

    angel_m

    Joined:
    Nov 4, 2005
    Posts:
    1,160
    Good news.
     
  45. Tiny-Tree

    Tiny-Tree

    Joined:
    Dec 26, 2012
    Posts:
    1,315
    the locomotion of ufps was really good and very stable and predictable to handle platforming and obstacles. the only things that was problematic was the gravity, it didnt used unity rigidbody which made it very difficult to add new behaviours like flying, grapple hook...
     
  46. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,127
    Gravity is no problem with v2 (v2 doesn't use a Rigidbody or Unity's CharacterController component offering a lot more flexibility). I don't think flying will make the initial v2 release but it is definitely doable. I have started to add a "general" foldout to all of the abilities and enabling or disabling gravity is one of them:

    Capture.PNG
     
    TeagansDad and Tiny-Tree like this.
  47. ShamanUY

    ShamanUY

    Joined:
    Sep 23, 2014
    Posts:
    6
    Hi. Not sure what happend but I created a new charater, just to be sure, and change the interpolation values in the network transform and now it works. I don't really know what happened but it's working now.

    I have another question now (sorry for the inquisitiveness). I now have the scene running correctly. Players can join and they move without a problem. I'm having, however, a problem when aiming. It's always aiming down. The thing is that I'm pretty sure is not with the aiming per se. The problem is that the position of the mouse that is detecting is always on the floor so the character is always looking down. I'm trying to find out why this happens but I'm having no luck with it. Any ideas?
     
  48. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,127
    Hmm, how do you know that the mouse is locked to the floor? Are you able to tell me how to reproduce it from a fresh project? I just tried but the fresh project worked after following the networking steps.
     
  49. jessejarvis

    jessejarvis

    Joined:
    Aug 9, 2013
    Posts:
    303
    Hello, when I run a sword through the Item Builder, I can get it working however when attacking or jumping or just anything generally the sword's transform moves out of position.
     
  50. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,127
    Are you using 2017.3? Take a look at this post: http://opsive.com/forum/index.php/topic,5420.0.html
     
Thread Status:
Not open for further replies.