Search Unity

Third person cover controller

Discussion in 'Assets and Asset Store' started by EduardasFunka, May 23, 2017.

  1. Munken

    Munken

    Joined:
    Dec 28, 2013
    Posts:
    9
    Hi Paul
    Thanks for the reply. I did add the Update manager prefab to my scene but no cigar:( i did the changes to some of my other scripts and that seems to work i even made the change on the fixedUpdate of the characterMotor script no problem, but as soon i do the change on the LateUpdate the camara won't follow... any suggestions?
     
  2. Paul-Swanson

    Paul-Swanson

    Joined:
    Jan 22, 2014
    Posts:
    319
    Well if it works for the other scripts then I'd just not use it on the camera tbh. Motor and the ai scripts are the heavy lifters. So you can probably get away with just not using it in there
     
  3. Munken

    Munken

    Joined:
    Dec 28, 2013
    Posts:
    9
    Hi Paul
    Apparently My Pc Just needed to sleep on it... Yesterday i rebooted multiple times flushed the ram etc. i could not get it to work but when i tried it this morning it just works... Well thanks for your time and thanks for all the help you offer to this forum. One last thing the Ai scripts that does not have the (public class.......... : MonoBehaviour) in them are you still able to use the Update Manager on them if so then How?
     
  4. studentvz

    studentvz

    Joined:
    Dec 14, 2014
    Posts:
    149
    1) How can I do damage to another object by shooting it?
    For example, I shoot a cube, when a cube is shoot 3 times it gets destroyed.

    2) Performance problem (mobile)
    I have 3 AI enemies and when they are active, if they are searching and attacking me, I get a huge performance drop. It is script related. I can't find a post in this forum, but somebody already talked about that, how AI is doping things every frame that is not necessary.
    Does someone have some solution for this?
     
  5. Paul-Swanson

    Paul-Swanson

    Joined:
    Jan 22, 2014
    Posts:
    319
    No having monobehavior is the keystone to making that work. So you won't be able to use it on everything. You also must have the awake function.
     
  6. Rahd

    Rahd

    Joined:
    May 30, 2014
    Posts:
    324
    1) there was example script posted awhile ago here , that covers that , with a video of a metro window breaking .
    2)mobile can run a bit slow , depending on the stats on the phone , in General the animator and raycasting eats alot , you can split the animator to different ones , for zombie melee , shooter .. ect by removing the not used animation clips . for scripts ,the Ai even if it's a zombie it will do alot of things like look for cover and ground check ... ect i think .
    if you are doing a top down mobile FPS scripts can be present in the motor script ., the gun script is doing a ray casing every bullet , ...
    this was posted a while ago that will replace the unity update ,for more frames https://assetstore.unity.com/packages/tools/utilities/update-manager-53581
    but overall the default mobile scene provided in the asset can run from 35-60 FPS on mobile , you just have to change the project settings to lower resolutions see this post https://forum.unity.com/threads/unity-5-2018-2019-android-performance-tips.437695/
     
    jandernunes and studentvz like this.
  7. Paul-Swanson

    Paul-Swanson

    Joined:
    Jan 22, 2014
    Posts:
    319
    Yep, that was my handy work :)
    https://forum.unity.com/threads/third-person-cover-controller.472313/page-26#post-3858319
    2) Just look at the last few posts from me, it covers exactly that.
    https://forum.unity.com/threads/third-person-cover-controller.472313/page-42#post-5025734

    Glad to see your back Rahd, you went silent for while there, i was worried
     
    satchell, studentvz and Rahd like this.
  8. Rahd

    Rahd

    Joined:
    May 30, 2014
    Posts:
    324
    Yes !! used the same script to make emerald ai work i thinks :p .
    took a job while waiting for the new update :p . i feel like it's gonna drop soon so i quit :D .

    studentvz there's alot of addon scripts here , some of them reposted twice and more .
     
    satchell and studentvz like this.
  9. Unplug

    Unplug

    Joined:
    Aug 23, 2014
    Posts:
    256
    OMG thanks, the base.Awake(); was not in the instruction !!! so confusing. have you seen gain in performance on the CPU ?
     
  10. Paul-Swanson

    Paul-Swanson

    Joined:
    Jan 22, 2014
    Posts:
    319
    It boosted me like 70% I'm glad your still around wb
     
    Unplug and studentvz like this.
  11. studentvz

    studentvz

    Joined:
    Dec 14, 2014
    Posts:
    149
    @Rahd @Paul-Swanson
    Thank you, without you and a few other members this asset would be a disappointment because support is almost none existant, even for basic things.

    Do you maybe know how I could make AI attack an object? More precisely, how to change the target that AI will attack?
     
    Lay84 likes this.
  12. Munken

    Munken

    Joined:
    Dec 28, 2013
    Posts:
    9
    Hi
    Has anybody successfully implemented a new weapon type that demands different animations?
    I'm trying to make a Bow for my player but i'm struggling to switch the animation layer to the bow animation layer when i switch to the bow weapon type? i would be very thankful if somebody would share how they did it or if somebody could point me in the right direction as to which scripts to look at.
     
    Last edited: Oct 7, 2019
  13. Anhella

    Anhella

    Joined:
    Nov 18, 2013
    Posts:
    67
     
  14. Paul-Swanson

    Paul-Swanson

    Joined:
    Jan 22, 2014
    Posts:
    319
    @dnaster Did you have a question? You quoted me but didn't contextualize why. No sure if you need something or are just shareing the info.
     
    Last edited: Oct 8, 2019
  15. Rahd

    Rahd

    Joined:
    May 30, 2014
    Posts:
    324
    you add BodyValue6 (for example) .. to the animator parameters then add a motion tree to the first blend tree in the first Baselayer / walking there add a motion tree just like the ones for pistol replace all the walking crouch animations with the bow anims and set the same settings for each tree except the first set it to bodyvalue6
    then you duplicate the pistol layer for example and name it bow and add the aim bow animations ...
    then under _animator.SetFloat("BodyValue5", bodyValue == 5 ? 1 : 0, 0.1f, Time.deltaTime);
    in CharacterMotor script add _animator.SetFloat("BodyValue6", bodyValue == 6 ? 1 : 0, 0.1f, Time.deltaTime);
    then in private void getWeaponProperties( add a case for the new type of weapon (Bow)
    "case WeaponType.Bow: ""
    use the hasMelee cases for melee .
    use EquippedWeapon.Shield if you have bow Shield animation and body =6;
    then inside WeaponDescription add WeaponType Bow ...
    thats the summary of it really ... not too much just endless clip arrangements
    example 2H
     
    Toby31 likes this.
  16. Munken

    Munken

    Joined:
    Dec 28, 2013
    Posts:
    9
    WOW! when do you start selling that melee addon;) Thank you for your answer and also thank you for all your inputs to this forum. You help keep this asset alive...
    At first glance it looks a bit complicated, i never really found where all the magic was happening in the animator... it never occurred to me to open the Walking blend tree I'm so stupid... Now it all makes sense. I might return with a few follow up questions hope that's okay?
     
    Last edited: Oct 10, 2019
    Rahd likes this.
  17. Paul-Swanson

    Paul-Swanson

    Joined:
    Jan 22, 2014
    Posts:
    319
    *facepalm*
    So it helps to actually ya know READ the code your using as a base. 2 things I learned tonight.
    PlayerInput has a feature on it called Disabler, which is described as following: Input is Ignored When a disabler is active.
    And that slot takes a gameobject.
    So if your interesting in resting control away from the player. Create a dummy object and slap it in there. Disable it. Then just use a script to toggle it's active state, from false to true. such a script would appear like such. Example below would go on the player. and you just assign the slot properly.

    Code (CSharp):
    1. using UnityEngine;
    2.  
    3. public class PGS_Disabler : MonoBehaviour
    4. {
    5.     public KeyCode Test;
    6.     public GameObject Disabler;
    7.     public bool Toggle;
    8.  
    9.     // Start is called before the first frame update
    10.     void Start()
    11.     {
    12.         Toggle = false;
    13.     }
    14.  
    15.     // Update is called once per frame
    16.     void Update()
    17.     {
    18.         if (Input.GetKeyDown(Test))
    19.         {
    20.             Toggle = !Toggle;
    21.         }
    22.  
    23.         Disabler.SetActive(Toggle);
    24.     }
    25. }
    Essentially what this means for me is a lot of the drone code I posted could have been simplified from the start. I mean its not bad for when I wrote it (Iv learn a huuuuge amount int he last 6 months)...but lesson to learn here is pay attn to what your doing before you start, and make sure your not just reinventing the wheel.
     
    Lay84 likes this.
  18. rmorph

    rmorph

    Joined:
    Apr 3, 2012
    Posts:
    87
    I've dived in a bit and I've had a programmer helping me out. I want to give a bit of criticism that I hope won't be seen as too harsh. For what it is worth I think what this asset does it does brilliantly: Its a superb 3d person controller when it is doing things well. But a lot of what it does isn't being done so well.
    I left an honest review which gives it 3 out of 5: I think this app is a bit disappointing for the price and Eduardas should focus on the strengths of the controller element rather than trying to build a gaming system. There's stuff out there for half the price that does some things a lot better.

    So I want to speak specifically towards the features you describe in the asset store and led me to purchase it:

    ⚡It is the best asset if you want to make a Third person or Top-down Cover Shooter.
    -> No. there are other controllers with integrated parkour and climbing systems as well as simple ability editing that cost a lot less and do way more... For starters, there is everything missing from the controller: Ability configuration (dash, roll, double dodge, leap kick etc), better climbing (ladder, ledge, fall-catch ledge), better obstacle detection (autoduck, auto step up, auto leap rail).

    ⚡It has smooth and responsive controller
    -> No. Movement needs to be more fluid: its a bit clunky frankly in a lot of situations. - especially when coming into contact with some obstacles that are too low or too high. You could for example plug into Kinematic for smoother movement. https://forum.unity.com/threads/released-kinematic-character-controller.497979/ Or at least check out what they do.

    ⚡It has a fun and polished gunplay and melee combat.
    No. It's very simple and underdeveloped. The melee is just a single swing. The gunplay is point and shoot. This is not fun or polished. What about pistol whip or rifle butt smash? What about spray and pray or run and gun type firing? Overcharge rapid fire?
    Melee can be many things. Katana or Baseball club or chainsaw or knife or broken bottle. This asset has none of that and no real way to make it happen.
    ⚡And It has amazing and belivable AI!
    No - but who cares? > give NPCs decent basic animations and a basic AI that devs can start with that can be swapped out with better assets later. Focus your effort on the other stuff.


    Other assets are doing parkour and full climbing. Smoother movements and better fluidity of motion: My advice is to not try to be the best at everything because you'll end up not being great at anything. I think the strength of this asset could be as an overriding controller that manages other functions and combines them into a unified complete controller. Strengthen the basics of the asset as a controller before you start trying to build game features around it.

    Right now this asset is not useable for me - and that's a shame. I hope Eduardas comes back to work on it (You've silent too long man frankly) and it gets better.
     
  19. Paul-Swanson

    Paul-Swanson

    Joined:
    Jan 22, 2014
    Posts:
    319
    I'm not the dev, just a user. You do have some points certainly. However for this bit:
    The melee is actually very easy to edit. Take a look at the melee weapon and animator. Simply swap out bits. Rahd was able to do this as well. In each weapon theres a melee section, swap out the melee there also for your needs. Want a Katana or a broken bottle? Switch out the bat.

    Spray and Pray? You can do that right out of the box. Not sure your issue with that bit...
    Overcharge rapid fire? What exactly is that?

    Also the AI is fairly good. Its way better than a lot of the AI's I used before. Including the one you are familiar with AIdesigner. I could not for the life of me get that thing to work near what I wanted. I also have Tactical AI (now deprecated). The AI built into this asset is in my opinion quite superior to both. True, This is a controller KIt not an AI kit...Think of it as an extra free add on, you don't have to use it if you have a better solution.

    I do agree with your first 2 points however not the ability part. I really dislike ability systems on the store, they always fall just short of where they need to be with no real way to adapt them. (cough*Invector/Opsive*cough)
    The cover system really does need to be an AutoCover System and not a script based one. And the mounting system needs work, including ladders(this is a critical need, lets be frank about that). I'm still not entirely sure what some of those settings do.

    I'm still of the opinion its the best Third Person Cover system out there that does not use playmaker as a base. Ed is on break right now as he just had a new child, lets give him some time to come back. However there is nothing completly broken right now except some Shotgun code. And even that's not that big a deal. Math can always be added to fix it.
     
  20. rmorph

    rmorph

    Joined:
    Apr 3, 2012
    Posts:
    87
    Well, I think this is a 60 dollar asset. It does stuff sure - but it's not the best at it. For the money, it needs to step up frankly because in a lot of what it's claiming to be the best at it's being matched or outclassed by assets costing less than half its price.

    Maybe I'm not seeing it but we can't find easy ways to swap out weapon proximity range and speed. At the moment it looks like all melee weapons will behave the same - but maybe we missed something. Still: A katana is more than a swipe: blade dancing animations etc would be important. Leap attack and acrobat abilities kind of go with melee - not just run-up-and-smack stuff. Other assets can do the ninja thing. How about multiple stances. Use any medieval melee game out there right now as a comparison to see how much should be improved.

    Sorry if this isn't clear - but basically a differentiated attack state over time an accelerated fire with overheat (or equivalent mechanic) and then a lock/cooldown period. You can get some cool gameplay with Overheating or overcharged weapons. Most shooters now have complex kickback mechanics: Hold trigger and the gun resists you with increasingly aim over time. The larger the gun (minigun?) the more the kickback. Controlled bursts become essential - at the moment there is no real variability that we can see in the projectile mechanics. Inferno/shock damage from overcharging. Heat overload. Speed increase (or slowdown) depending on thermal state etc. Modern shooter stuff basically.

    Well sure but again for every hour put into AI thats an hour less expanding the core controller concept. I would argue that you can get a basic AI going to demo the Controller you are good. AI is really its own field and there are a lot of products out there that more time has been put into than needs to go into an AI byproduct for a controller system. I would say start focusing on the AI only when there's a better core system in place for 3P controls - it's just not there yet. The same with Multiplayer: It will be very worrying if the dev takes time to learn multiplayer and basically sidelines the controller - That could take years! There are people out there with decades of experience doing it already - Better to learn the bare minimum of integrations to get other assets working with networking than trying to build the whole barn yourself.



    Ability systems are essential from an RPG perspective. Ninja or tank? Archer or Rocketeer? Call it career paths or specializations etc--but there should be variability in game modes: For example subsets under "Melee" like Nija, Paladin, Monk etc...
    The ability to expand the systems REALLY easy is critical. and this goes beyond simple weapon handling - Other 3P assets offer vehicles and turret interaction. rocket packs, gravity shifting and various other things for half the price of this asset.

    Agreed mostly. And I think its the best looking controller - and some of what it does it great. I just wish it was a bit better polished as a full-blown control system. That's kind of what it says on the tin.
     
  21. Paul-Swanson

    Paul-Swanson

    Joined:
    Jan 22, 2014
    Posts:
    319
    These are good points. Thanks for clearing up some of the bits and bobs. I can clear some of the animation issue out though. New state like ninja jumps though, not really sure how you might be able to do that but, here's the basic melee stuff:

    As for the Melee Animation settings:
    Open ->: CharacterAnimator
    Click on your Melee Layer
    In there you will find Rifle Hit, Pistol Hit, Fist Hit, and Machete Hit
    Switch out your required animation there.
    Its the Hit Left and Hit Right nodes that contain what you would have been looking for.

    As for range of said melee items:
    The range is just the size of the Collider trigger you put on the weapon.
    You can also control the Type of animation it is via the Melee Script that is present. And if you want a new type, just add new fields to thew animator just like you would any other controller and add them to the drop down as needed.

    Its all set up to be root motion so if you want dark soul's like control just bake that delay and movement into the animation itself. Speed is directly controlled by the animator, so just edit the play speed for faster movement. I'm just saying you do have options, just need to look a little bit for them.
     
  22. Paul-Swanson

    Paul-Swanson

    Joined:
    Jan 22, 2014
    Posts:
    319
    I don't know the answer to this yet. But....If you want to make it so the AI CAN attack it intentionally and deal damage, you just need CharacterHealth and Actor. Set the team to not AI and it should be good.

    I'm working on my overlord system right now, and that's a factor I need to know as well. So as soon as I really dig into it, I'll let you know.
     
  23. castor76

    castor76

    Joined:
    Dec 5, 2011
    Posts:
    2,517
    I am afraid that I have to go with different opinion with this. When I look at this asset which I did purchase and had look at, I have no confidence in integrating into my game because I dont feel like it is modular enough, easy enough to customize it. For every character controller asset, you will either need to work around how it is built, or modify its source in somewhere to fit into the game, because frankly you dont want to modify your own game logic code to fit around the controller you bought. It should be other way around, if not with minimal efforts. I felt like this asset was going to be too intrusive in terms of intergrating into my game. In most of time assets like this just need to be very solid with what it needs to do fundamentally, and then expose enough customization options, event delegates so the existing game can just adopt it instead of having to recreate everything to go with the asset. Frankly, you dont even need AI. But you need function call such as, EquipWeapon.. instead of having to manually set things up. Events such as IsCover, OnHit, ... make controller that can fit into existing game instead of making system that changes one. This can bring down the price of the asset and it should be more popular. Right now, when I try the asset I feel like .. oh.. ok.. it is cool. But that is it.
     
    Last edited: Oct 13, 2019
    rmorph likes this.
  24. pushingpandas

    pushingpandas

    Joined:
    Jan 12, 2013
    Posts:
    1,419
    I guess the asset is dead.
     
  25. studentvz

    studentvz

    Joined:
    Dec 14, 2014
    Posts:
    149
    And performance is catastrophic, I've tested it a lot.

    I tried to make it better with UpdateManager, Pooling and striping all effects, sounds, spawning, destroying and etc to the almost naked controller, just walking and shooting ability. Placing it in my mobile game that has locked 60fps when the mobile phone is hot drops it to unstable 40fps, so 20fps drop when I just walk around, imagine other active enemies, very disappointing.

    And major flaw, no support, or even if you get it over email, it is vague and uninterested kind of support, you need to solve and figure out things by yourself.

    This asset is not worth more than 15$.
     
    Lay84 likes this.
  26. Rahd

    Rahd

    Joined:
    May 30, 2014
    Posts:
    324
    1- mobile is locked to 60 fps .
    2-when you run it at 60 fps you gonna make it heat up and then the phone will drop the cpu to 25 % no matter what even if the game is not causing the heat .
    using the profiler could help knowing the cause of the issue .
    lock you frame target to 24 . its a mobile not a PC
     
    satchell and Paul-Swanson like this.
  27. studentvz

    studentvz

    Joined:
    Dec 14, 2014
    Posts:
    149
    I design my mobile games so that they don't drop fps below 60 even if the device is hot as an oven. The problem is in TPCS, it is a performance nightmare. TPCS Aiming and shooting on mobile with a lock to 30fps is unusable, the game is too jittery, almost like slideshow.
     
  28. Paul-Swanson

    Paul-Swanson

    Joined:
    Jan 22, 2014
    Posts:
    319
    Like he suggested examine the profiler. It will help you pin point the issue
     
    Rahd likes this.
  29. Rahd

    Rahd

    Joined:
    May 30, 2014
    Posts:
    324
    here is pubg mobile settings
    • Low: 20
    • Medium: 25
    • High: 30
    • Ultra: 40
    • Extreme: 60

    please understand it's a mobile game ! 60 frames is madness .TPCS is not the issue here .
    you are asking the phone to run at full power for some extra frames on a credit card size device .
    when the phone reach 50-60 degrees it will drop to 50-25-10 % of full power even if you run tinder on it


    and not just the cpu drops the speed . but it will disable cores .
    (example oneplus . Max core clock 2.15 ghz you can see that in 12 mins the 2 first cores dropped to 0.3 ghz )


    did you change the Fixed DPI ? or the screen resolutions ?
    (some phones have 2K screen with little power to run a 2k video )

    did you change the player model or did you keep the one the comes with TPCS (30-80K tris)?
    so many issues could be tackled with the profiler .
    my game have TPCS running a 5% of the phone's CPU for the player with triple the animations and more features like swiming and health system the keeps track of hydration calories fat heat blood level ... .
    plus i have inventory Pro , Horse anim controller , emerald AI , easy build system , and a 4096* 4096 terrain with over 128 textures and many more props and effects running at 30-24 all the time unless i call the garbage collector or change the frames to 60 .
     
    Last edited: Oct 14, 2019
    satchell, f1chris and Paul-Swanson like this.
  30. Rahd

    Rahd

    Joined:
    May 30, 2014
    Posts:
    324
    i have to agree to some of those points . it is not modular enough . tbh i'm still waiting on the new update this will have a node system where you can add modules to it and remove some so far i have been adding switches to turn off things in the AI and the player controller .
     
  31. Toby31

    Toby31

    Joined:
    Jul 7, 2014
    Posts:
    70
    After reading your comments I've tried to extend the melee animations myself and I'm not having much luck unfortunately. Want the animations for melee to cycle through punches.
    In the character animator under Melee: >> transitioning from Hit Left melee > have duplicated one of the Hit right blocks > added transition with condition, combo hit > New Hit Right, then transitions to exit with condition end melee, In the New Hit right block I have ticked off Enable combo in the melee animation script.

    I've tested out an animation exported from Mixamo with and without the tpose cowboy mesh.
    The animation plays with my custom character in unity when applying the mixamo animation to the, New Hit Right, with the mesh in the test render window for that animation but upon play it does not work, just loops the two original punches.

    When setting up the animation without the cowboy mesh and trying the standard import settings applied to the New Hit Right Block, upon play it just loops through the two original punches.
    When I try to match all the settings of the previous animation imports of the TPCST I just get an error when changing the avatar definition > copy from other avatar > source > TposeAvatar "copied avatar Rig Configuration mis-match. Transform hierarchy does not match "Ed: Solving: Hips "for human bone "Hips" not found"

    Not really sure how to get this to work? Any advice would be greatly appreciated
     

    Attached Files:

  32. Rahd

    Rahd

    Joined:
    May 30, 2014
    Posts:
    324
    try this :
    select the mixamo fbx clip . go to rig , then animation type humanoid , do not copy the avatar but create a new one .
    then select the clip inside the fbx and type ctrl+D ,non the clip is unity default character , then change that clip to the same settings as TPCS clip settings . all mixamo clips works , you just need to loop them just like TPCS clips and bake the pos if that was done as well . i think the dev made a video on his channel about putting other clips
    as for the combo script you have to change the slider in editor mode to match the timing i think .
    i hope this helps
    upload_2019-10-17_16-3-23.png
    upload_2019-10-17_16-7-1.png
     
    satchell likes this.
  33. Paul-Swanson

    Paul-Swanson

    Joined:
    Jan 22, 2014
    Posts:
    319
    There is a bug on 2019.3.07b I think its more a Unity Bug though.
    the unity.editor.experimental.assetimporter;
    I think this is what parses the AI Brain data.
    I get an infinite import loop on the Brain folder.

    Fortunately the AI works fine without the Brain Objects imported. Just an FYI. If you are going to use the beta on the newest Unity 2019.3 beta release just import it then move the folder out of the project. Easy fix.

    I don't think its the assets fault though, I believe this is an engine bug.
     
  34. EduardasFunka

    EduardasFunka

    Joined:
    Oct 23, 2012
    Posts:
    467
    Hey guys I miss you. I hope you guys doing well. Some of you I see frustrated with the asset some love- hate relationship . I really feel your pain.
    Having a new child set things in perspective. I will be honest with you. we make very little money from TPCS. We tried patreon but it failed. aperantly people want pay once and have updates for live for free. And I understand them why not they dont know that we spend 3 years developing this asset with less than minimal monthy salary's. Its not your fault that this project commercially was not successful you payed 70 bucks you expect flawless product. But reality that most of develpers here work because its a passion project and put soul in to it with minimal monetary reward. We experiment try to create something that could help us and you to make a dream game. When you frustrated and cant fix some annoying bug and losing all hope remember that we all in similar situations trying our best to create our passion projects. We are just 2 guys struggling and trying our best just like you.
    Games are complicated there are no clear rules how to develop cover shooter or AI we took this task to find out and we are sharing our findings with you.

    Now if I missed your email sorry send me again. But please test before you send. 95 percent of emails usually people forget some collider or attach a script
     
  35. Rahd

    Rahd

    Joined:
    May 30, 2014
    Posts:
    324
    Warmest congratulations on the birth of your child . we feel you friend . and miss you too .


    Most of us believe in this asset . and without it i would never tried my making a game . i learned a lot from it and still learning .



    it's amazing and the mobile controllers is the best out there . and this comes from a mobile games addict :p .


    the main issue is you're putting new features and leaving the others bugged . we all love innovation .

    i really loved the strategy example and the brain nodes thing .
    i really get that unity have a bugs too .

    make the Ai simpler , i had to use Emerald ai for large number of enemies and cover shooter AI for the boss enemy .

    Your AI is good and genius , but sometimes its has build crashing errors for a simple null check .
    ground , cover checks , rays casting and ik updates that eats up performance .

    Please try to focus on making things simple for new users ,like a community platform , we can even all pitch in to host a forum and help in creating threads and guides .
    i myself willing to help with third party plugins like emerald ai , inventory pro and others . willing to share my mobile scripts and improvements if deemed worthy.
    We just need a gated community where we can share codes without leaking your work .

    i tried a lot of assets hoping to find answers to my problems , but this asset covered a lot of my needs .
    dealing with assets commerce and knowing it for years now . i have this to say as a financial advice $$$ :
    -Slice the assets to modules and sell them individually .
    Third person cover shooter for pc / mobile
    Topdown shooter controller for pc / mobile ( with click to climb or cover but no scoping )
    Topdown strategy controller ( no cover , weapons, inventory ,ground check .. .or climb )
    Turn based shooter controller like xcom ...
    this way you can earn more money , give everyone what they need without bloated scripts .

    Marketing :
    exhibit 1
    https://twitter.com/minionsart?lang=en

    https://www.patreon.com/minionsart
    772
    PATRONS
    $4,149
    PER MONTH
    for sharing things for free and tweeting shaders and tips in unity while making a game.

    i really feel your position giving the your financial side of things .
    i'm taking part time jobs to cover the bills and i know how it feels .
    for now take a break , a month, a year , it's up to you , please try to keep the asset alive , i will be here always refreshing the forum page waiting for the updates , because i believe in your work .

    I will send you an email now .
     
    Last edited: Oct 24, 2019
    johaswe and JBR-games like this.
  36. p_hergott

    p_hergott

    Joined:
    May 7, 2018
    Posts:
    414
    that nearly sounds like a "whelp, I'm abandoning the asset" speech. if you made 1 asset and assumed that all your financial issues would be gone.... well that's crazy. you have some fierce competition, if you want the lions share of the ppl to buy this controller over the others, it needs to be better than the others. TPCS is a great core, but it isn't very modular, or compatible with other assets or even with custom code, unless you dig deep into the scripts. id suggest, that you find some other popular assets, and really do some integrations with them. don't have time for a inventory? integrate with a inventory system. help each other promote each other. same with all kinds of stuff. you have written numerous times on this forum about financial issues. don't get me wrong, I respect what you do. But, dig deep. fight for it.
     
    JBR-games likes this.
  37. indie_dev85

    indie_dev85

    Joined:
    Mar 7, 2014
    Posts:
    52
    The Night appears to be darkest just before the DAWN, you have put so much time and effort into TPCS don't give it up now.
    Just focus on TPCS core mechanics & make it modular so that other assets for AI/Saving/Controller can be integrated easily this will save ya a great amount of time that an be utilized for freelancing.
     
  38. MastermindInteractive

    MastermindInteractive

    Joined:
    Jun 13, 2014
    Posts:
    89
    I appreciate your effort with TPCS. It is indeed a great asset. And I understand where you are coming from. If something wasn't giving me the finances needed to pay attention to it, It would be hard to justify support. Why not make this open-source then? Allow the community to contribute? If it's not giving you the finances needed, allow those with direct access to edit the main branch to make the edits for you while you remain in control.

    I also feel for all of the people who have stood by this asset for so long. There are bugs that are so big that you simply can't release anything with it.

    I would recommend to all of you that you try out Opsive's Ultimate Character Controller. I switched months ago after I waited years to see this asset mature to the point where I could release my game. I am so glad I switched. The asset is EXTREMELY modular. You don't have to edit the source code to add special abilities and features. It integrates with a TON of 3rd party assets. It has a Character builder, item builder and so much more. I can't explain how extensible it is. Getting up and started is really easy, adding new abilities and tweaking the features does require a learning curve but once you understand how the developer made it extendable, you will be glad you switched. It also has extensions for multiplayer. The author has their own forum where they answer questions every single morning. I will literally time my questions and wake up knowing that I will have a detailed, thought out response waiting for me. There is also a thriving community of people who have created extensions or script edits themselves. I'd say that the ONLY thing that it is missing is the cover ability but with a little bit of time, you can easily add it to the controller.

    Good luck everyone and good luck to you too Eduardas. I know having a child definitely changes your perspective and it's great to see that you are being honest with yourself and everyone else here.
     
    Rahd likes this.
  39. Rahd

    Rahd

    Joined:
    May 30, 2014
    Posts:
    324
    exactly the right example !!

    Opsive have split his assets into packs like :
    PUN Multiplayer Add-On for Opsive
    Agility Pack for Opsive
    Ultimate Third Person Melee
    Ultimate FPS
    Ultimate First Person
    Melee Ultimate Third
    Person Shooter
    and more ...

    and to get it all you have to play 180$ !! just for a full Character Controller
    the AI BEHAVIOR DESIGNER another 80 $ ...
    240 $ is too much . plus other Add-On could get more
    here we get it all ... for 75 $ and some of us got it for less due to sales

    i tried Opsive Melee pack , it was not good (No combo or fancy melee )
    however Opsive is very optimised and easy to work with due to its simplicity
    cover shooter use of ik and targeting system is way better and nothing out there is like it .
    i really tried to switch to Opsive when i needed the melee before the update 1.6.x
    even with it support for tons of other 3d party plugins i could not switch due to a lot of stuff in cover shooter missing in Opsive .
    the AI in Opsive is made with BEHAVIOR DESIGNER ... to get the movement trees you have to pay 10 $
    see more here https://opsive.com/solutions/ai-solution/
    i think the brain nodes is what @EduardasFunka making in the next update .
    i'm glad Opsive worked out for you , but its a big fat money grab from the dev of Opsive .
    that's why i keep asking @EduardasFunka to up his game with the prices and make it packs ...
     
    Paul-Swanson likes this.
  40. f1chris

    f1chris

    Joined:
    Sep 21, 2013
    Posts:
    335
    I do agree with you @Rahd but people are not afraid to invest big $$$ in Opsive because they know Justin is a totally dedicated dev, always there to provide support, answer questions and deliver hotfixes when required.

    @EduardasFunka will have to step up in those areas, keep delivering good quality products and then eventually he'll be in a position to charge more.
     
    Rahd likes this.
  41. p_hergott

    p_hergott

    Joined:
    May 7, 2018
    Posts:
    414
    Opsive controller, isnt really all that special... the cost is high no doubt, but the amount of features and quality is there to warrant it. Ive tried it, but preferred to design my own controller and AI. Since the down side of most controllers, is in order to have it do exactly what you want? Isn't in any controllers. Unless you wanna make a cookie cutter bland game. Deep customization and being modular is key. Like in reality, the only thing that is fairly difficult to reproduce from TPCS is the AI cover system. If i owned TPCS, id finish polishing up the controller, then just hammer on AI, and make it modular, advertise the hell out of the AI, the controller is more of a bonus. No other AI system on the asset store is as sophisticated as TPCS, if the AI was modular, so it was easy to add to any game. Like AI search for player by Tag, maybe a component with player info on it, but on damage just message “Damage”. Like it does, but make it easy to tap into. Or even change.
     
    f1chris and Rahd like this.
  42. usama-qureshi

    usama-qureshi

    Joined:
    Apr 22, 2016
    Posts:
    4
    How to get back UnArmed position in mobile scene just like on Third person cover scene, we just press "1" and get back Unarmed position. How can we get this on the mobile scene? Thanks
     
  43. Rahd

    Rahd

    Joined:
    May 30, 2014
    Posts:
    324
    just got the beta looks very promising
     
    Paul-Swanson likes this.
  44. Paul-Swanson

    Paul-Swanson

    Joined:
    Jan 22, 2014
    Posts:
    319
    Rahd,
    Did you find it impossible to move the [Animator] Walk Layer nodes around?
    I can create new blend trees, but I cant move them. I'm also using 2019.3.0b7
    Not sure if Unity bug or not.
     
  45. Rahd

    Rahd

    Joined:
    May 30, 2014
    Posts:
    324
    i think you can't move them in unity ... you will have to slowly scroll up and down with mid mouse button and drag .
    i got rid of a lot of movements clips backward clips especially and some turn clips
     
  46. SarhanSoft

    SarhanSoft

    Joined:
    Apr 15, 2015
    Posts:
    65
    Hi
    EduardasFunka

    Adding more features will not give you faster money, or more sales, but you need to market more to earn more sales.
    The new features put them separately, and include them in a comprehensive package, and anyone who asks you for more features can ask them to pay in particular.
    Your tool has two problems, and I think their solution is simple with the new update:
    First, it is not flexible or easy to understand, it is ready to use, but the developer cannot add more feature directly by his hand (try to fix this, and add - on event features - for that, if v2 solve this problem so it will be amazing)

    Second, it is not compatible or configured to be directly compatible with any other tool, which means that every feature we want will require you to implement it yourself and include it in an update.
    I do not know if these problems are incorrect and it is just a wrong look from me, but I will give an example I personally encountered: Suppose I want the player to kill 20 of the enemies and calculate that? How will I know that? I had to find a place in your code to add that (in motor or health script).

    I am sure that your new version will fix this problem, and your new version holds a great advantage to help grow it is that the community in general will be able to build artificial intelligence systems themselves, and this is very wonderful and you can use it in marketing your project.

    deal with your project like that: each feature is different tool, it should work alone + with other tool from you or third party asset/user script. that maybe need to add OnEvent system for that (for example: AI onSpawn/onDie/onCover..)
    this maybe will let you rework for more things, i think it is very big problem maybe!!

    I have an idea that may help you, which is to prepare a game for different scenarios appropriate for the games, for example, create a special scene that fits with a certain type of games (say, for example, a war game) where you put the various enemies and allies you expect to be in this game, which means that the developer who will buy your tools In order to develop a similar game it will only change the models in the scene and publish the game directly.

    In conclusion: that your tool is very cool, do not try to expand its features in order to bring more profits because this will work against you and make you work without passion and put the advantages of perfection, make each new feature separate and any custom request Get money for it in Patreon , and do not forget Interest in marketing for your project (let YouTuber or other to market for yourself) publish the new version with High power marketing, make everything you can to make it very huge marketing for it.

    good luck and we waiting for your update

     
    Rahd likes this.
  47. jwsntn170

    jwsntn170

    Joined:
    Jun 17, 2017
    Posts:
    4
    Beta request email sent and sent again. No reply in a week so I tried forwarding it to the other contact email I've seen: eduardas@redbee.lt
    Got an error because that email doesn't exist. Where do I send the email? Is it still eduardas.ninja@gmail.com

    As for the reviews, your system works fine in a vacuum. Unity is not a vacuum. I found it very frustrating to work with and had to rework a lot to integrate either my work with yours or the other way around. Some documentation would go a long way toward helping this product.

    Your tutorials are often too quite. Audacity is free and there are easy ways to fix that audio, here's a tutorial that takes five minutes but would help tenfold: https://www.instructables.com/id/How-to-Improve-Vocal-Quality-in-Audacity/

    Like others said, get some integrations with other products. A lot of them will work with you and some even do it basically for you! Reach out to people like Pixel Crushers for Dialogue System for Unity. Their great and it's a good place to start. Manuel Alberto de Malbers Animations creator of Horse Animset Pro reached out to you on one of your Youtube comment sections. I've never worked with them but maybe try contacting starting there (the comment is a year old now...):

    A little integration can go a long way!
    I hope your kid is healthy and that things are going well.

    I don't expect free updates forever, but I do expect a mostly bug-free, well-documented product with my purchase. If you can't deliver that then don't sell it. Go open source and watch as tons of free updates roll in. Maybe set up a donation there that gives bonus models or something. There is already some development like that going on here with things like the ammo and pickups! It could be an option worth looking into.
     
    ruuben, Lay84 and Rahd like this.
  48. p_hergott

    p_hergott

    Joined:
    May 7, 2018
    Posts:
    414
    Horse animset pro would be killer for tpcs, suits it well, and malbers animations have great support and is just a stand up good guy. Playmaker integration would be cool . Rewired could be a easy one to do, that would add a lot of value, and open the door for multiplayer. Inventory pro is active which would branch into quest pro.
     
    Rahd and jwsntn170 like this.
  49. satchell

    satchell

    Joined:
    Jul 2, 2014
    Posts:
    107
    Had a request for adding sprint to the mobile third person controls. I wanted to share it here hope it helps.



    MovementJoystick.cs
    Code (CSharp):
    1. using System;
    2. using UnityEngine;
    3. using UnityEngine.EventSystems;
    4. using UnityEngine.UI;
    5.  
    6. namespace UnityStandardAssets.CrossPlatformInput
    7. {
    8.     public class MovementJoystick : MonoBehaviour, IPointerDownHandler, IPointerUpHandler, IDragHandler
    9.     {
    10.         public enum AxisOption
    11.         {
    12.             // Options for which axes to use
    13.             Both, // Use both
    14.             OnlyHorizontal, // Only horizontal
    15.             OnlyVertical // Only vertical
    16.         }
    17.  
    18.         public int MovementRange = 100;
    19.         public AxisOption axesToUse = AxisOption.Both; // The options for the axes that the still will use
    20.         public string horizontalAxisName = "Horizontal"; // The name given to the horizontal axis for the cross platform input
    21.         public string verticalAxisName = "Vertical"; // The name given to the vertical axis for the cross platform input
    22.  
    23.         Vector3 m_StartPos;
    24.         bool m_UseX; // Toggle for using the x axis
    25.         bool m_UseY; // Toggle for using the Y axis
    26.         CrossPlatformInputManager.VirtualAxis m_HorizontalVirtualAxis; // Reference to the joystick in the cross platform input
    27.         CrossPlatformInputManager.VirtualAxis m_VerticalVirtualAxis; // Reference to the joystick in the cross platform input
    28.         public bool walk;
    29.         public Toggle autoRun;
    30.         public string buttonName;
    31.         public GameObject runArrow;
    32.  
    33.         void OnEnable()
    34.         {
    35.             CreateVirtualAxes();
    36.         }
    37.  
    38.         void Start()
    39.         {
    40.             m_StartPos = transform.position;
    41.         }
    42.  
    43.         void UpdateVirtualAxes(Vector3 value)
    44.         {
    45.             var delta = m_StartPos - value;
    46.             delta.y = -delta.y;
    47.             delta /= MovementRange;
    48.             if (m_UseX)
    49.             {
    50.                 m_HorizontalVirtualAxis.Update(-delta.x);
    51.             }
    52.  
    53.             if (m_UseY)
    54.             {
    55.                 m_VerticalVirtualAxis.Update(delta.y);
    56.             }
    57.             //When the Joystick reaches the maximum up value of the available range which is 1
    58.             //the player will start running untill the joystick moves below 0.7 return to walking.
    59.             //This can also be repetted for backwards and strafe...
    60.             if (delta.y <= 0.7 || delta.y == 0)
    61.             {
    62.                 walk = true;
    63.             }
    64.             if (delta.y == 1)
    65.             {
    66.                 walk = false;
    67.             }
    68.  
    69.             if (walk)
    70.             {
    71.                 SetUpState();
    72.             }
    73.             if (!walk)
    74.             {
    75.                 SetDownState();
    76.             }
    77.         }
    78.  
    79.         void CreateVirtualAxes()
    80.         {
    81.             // set axes to use
    82.             m_UseX = (axesToUse == AxisOption.Both || axesToUse == AxisOption.OnlyHorizontal);
    83.             m_UseY = (axesToUse == AxisOption.Both || axesToUse == AxisOption.OnlyVertical);
    84.  
    85.             // create new axes based on axes to use
    86.             if (m_UseX)
    87.             {
    88.                 m_HorizontalVirtualAxis = new CrossPlatformInputManager.VirtualAxis(horizontalAxisName);
    89.                 CrossPlatformInputManager.RegisterVirtualAxis(m_HorizontalVirtualAxis);
    90.             }
    91.             if (m_UseY)
    92.             {
    93.                 m_VerticalVirtualAxis = new CrossPlatformInputManager.VirtualAxis(verticalAxisName);
    94.                 CrossPlatformInputManager.RegisterVirtualAxis(m_VerticalVirtualAxis);
    95.             }
    96.         }
    97.  
    98.  
    99.         public void OnDrag(PointerEventData data)
    100.         {
    101.             Vector3 newPos = Vector3.zero;
    102.  
    103.             if (m_UseX)
    104.             {
    105.                 int delta = (int)(data.position.x - m_StartPos.x);
    106.                 delta = Mathf.Clamp(delta, - MovementRange, MovementRange);
    107.                 newPos.x = delta;
    108.             }
    109.  
    110.             if (m_UseY)
    111.             {
    112.                 int delta = (int)(data.position.y - m_StartPos.y);
    113.                 delta = Mathf.Clamp(delta, -MovementRange, MovementRange);
    114.                 newPos.y = delta;
    115.             }
    116.             transform.position = new Vector3(m_StartPos.x + newPos.x, m_StartPos.y + newPos.y, m_StartPos.z + newPos.z);
    117.             UpdateVirtualAxes(transform.position);
    118.         }
    119.  
    120.  
    121.         public void OnPointerUp(PointerEventData data)
    122.         {
    123.             transform.position = m_StartPos;
    124.             UpdateVirtualAxes(m_StartPos);
    125.             runArrow.SetActive(false);
    126.         }
    127.  
    128.  
    129.         public void OnPointerDown(PointerEventData data)
    130.         {
    131.             if (autoRun.isOn)
    132.             {
    133.                 autoRun.isOn = false;
    134.             }
    135.         }
    136.  
    137.         void OnDisable()
    138.         {
    139.             // remove the joysticks from the cross platform input
    140.             if (m_UseX)
    141.             {
    142.                 m_HorizontalVirtualAxis.Remove();
    143.             }
    144.             if (m_UseY)
    145.             {
    146.                 m_VerticalVirtualAxis.Remove();
    147.             }
    148.         }
    149.         //Calls the string to reference a corrisponding input set in the Player Settings.
    150.         //For this example our string for the buttonName field is "Run"
    151.         public void SetDownState()
    152.         {
    153.             CrossPlatformInputManager.SetButtonDown(buttonName);
    154.             runArrow.SetActive(false);
    155.         }
    156.         public void SetUpState()
    157.         {
    158.             CrossPlatformInputManager.SetButtonUp(buttonName);
    159.             runArrow.SetActive(true);
    160.         }
    161.  
    162.         //From the toggle we can place the joystick object in the On Value Changed field
    163.         //and call this function setting the player to run automatically.
    164.         public void SetToggleState()
    165.         {
    166.             Vector3 newPos = Vector3.zero;
    167.             if (autoRun.isOn)
    168.             {
    169.                 transform.position = new Vector3(m_StartPos.x + newPos.x, m_StartPos.y + 20, m_StartPos.z + newPos.z);
    170.             }
    171.             else
    172.             {
    173.                 transform.position = new Vector3(m_StartPos.x + newPos.x, m_StartPos.y + 0, m_StartPos.z + newPos.z);
    174.             }
    175.             UpdateVirtualAxes(transform.position);
    176.         }
    177.     }
    178. }
     
    Lay84, SarhanSoft and Rahd like this.
  50. raziel786

    raziel786

    Joined:
    May 6, 2014
    Posts:
    22
    Wonder if anyone can help me? I am using 3rd Person Cover Controller for my mobile game however I am currently having issues with my enemy character animation (see attached image). When i disable "IK Enabled" the character model appears fine however will not shoot or attack. I am using the same animator on my player and it works correctly. Any ideas?
     

    Attached Files: