Search Unity

  1. Good news ✨ We have more Unite Now videos available for you to watch on-demand! Come check them out and ask our experts any questions!
    Dismiss Notice

[RELEASED] Emerald AI 2.4.1 - The Ultimate Universal AAA Quality AI Solution

Discussion in 'Assets and Asset Store' started by BHS, Jun 26, 2015.

  1. BHS

    BHS

    Joined:
    Dec 21, 2009
    Posts:
    4,264
    I plan on adding PlayMaker tutorials soon to do all sorts of cool stuff.


    Awesome, thanks for sharing!
     
  2. petercoleman

    petercoleman

    Joined:
    Feb 21, 2016
    Posts:
    223
    Hi,

    I need some help with adding a Player Model Character. I have a model with animations, However I can't get the Player model to animate despite many attempts.

    There does not seem to be any demo scene at all that shows this. All there seems to be is a simple capsule collider with a sword for a weapon as a Player. The Manual does not seem to specifically show how to add a player character model with animations...

    Where can I find a Video tutorial of precise instructions - a step by strep as to how this can be done - more precisely how it should be done in consideration that there may well be a need to follow absolute specific rules and procedures so things will work in Emerald in order to achieve success.

    I don't see any example of this being done?

    I do see Player Character models in the screen shots at the asset store page so there must have been scenes created for such screen shots to exist so why don't we have any scenes with a real functioning character example like those included in the installation? as that would be a very helpful example resource to learn from and follow.

    Help would be very much appreciated.

    EDIT UPDATE :

    I have just tried using Invectors free character controller to create a a Player model via its creator which takes about 1 minute and the result is a perfectly working new Player Character with correct animations and controller/animation controller. This is the only asset I have found that can set up a player character correctly and I have lots of assets like Emerald I have tried with to no avail.

    Anyway not much help there even as now I have a Player Character working model inside the same project as Emerald the character created via the free Invector controller system is restricted to just 3 animations. and it wont play with Emerald as is and I would not know how to make it do so. An Emerald enemy does not recognise it as an Emerald Player character and I don't think I can get it do do so unless someone knows how?

    Thanks

    Peter
     
    Last edited: May 13, 2018
  3. Demonoid74

    Demonoid74

    Joined:
    Jan 20, 2017
    Posts:
    16
    When you do get around to making Playmaker Tutorials , please show some how to manipulate the players health with damage AND healing...tried awhile back but kept having weird errors and issues trying to get my healing items functioning properly and my traps damaging correctly...so just moved on from that for now and have been working on other systems and things before moving on from my test map...I admit I did not try for a long time to figure it out...just have so much other stuff to work on...

    Also picked up Crux during the sale and like it so far , definitely looking forward to the update to that so I can use it in my current projects mostly city environment!
     
  4. sebasfreelance

    sebasfreelance

    Joined:
    Aug 27, 2015
    Posts:
    227
    After using Emerald Ai in two weeks, I have to say that is the best purchases I've made in the store, it is very easy to use, well documented and works and consumes few resources, I have 100 behind enemies of my player in a project iOS and no less than 200fps, congratulations on the job!

    but I have a problem, better show him an image so he can see.
    https://drive.google.com/file/d/1maLw9rc3fSK6C5_DmRNjL5FSw8JEVjlM/view?usp=sharing



    as you can see in the image zombies remaining circle at a distance, is the same configuration Ai for all, not for some attack and others remain in a circle at a distance from the player, it looks like they're enjoying watching as his friends beat me up;)

    here an even stranger case, stays in a circle when the player was before...
    https://drive.google.com/file/d/1icXyotc8Uarpm4QokPSNJVHfVuf_2zKV/view?usp=sharing

    I just want the enemy to continue without stopping the player and when this fence hits him

    Could you tell me how to solve this? or what could be the problem? Thank you!

    best regards
    sorry my inglish
     
    Last edited: May 15, 2018
  5. BHS

    BHS

    Joined:
    Dec 21, 2009
    Posts:
    4,264
    Hey Peter,

    Emerald AI requires you to set up the appropriate tags and layers for AI to properly detect each other and your player. I'm not familiar with the free version of Invector, but I would imagine its setup is along the same lines as its paid version. Please refer to the Invector TPC tutorial here for an example of how things need to be setup: https://docs.google.com/document/d/...uHce2BVLM3QTq5axg/edit#heading=h.29qyg517h920

    When I get the chance, I will look into adding a guide for the free version of Invector, but the guide above should do get things working for you. If the Invector player controller has a health script, you will need to call that in place of whatever is currently in the DamePlayer function.


    Yes, of course. I know a lot of users use PlayMaker and adding tutorials is a top priority. That's great to hear about Crux. Version 1.2 shouldn't be too much longer.


    It's great to hear that, thanks!

    I have never seen Emerald AI agents do that. I can only think of two things that would make your AI do that.

    1) You have a Nav Mesh Obstacle on your player.
    2) Your Nav Mesh isn't baked properly.
     
  6. sebasfreelance

    sebasfreelance

    Joined:
    Aug 27, 2015
    Posts:
    227
    Hi BHS,
    I do not have a Navmesh obstacle in my player and the configuration of the browser the unity parameters by default, surely I have configured something wrong, I let you know, thanks.

    best regards.
     
  7. petercoleman

    petercoleman

    Joined:
    Feb 21, 2016
    Posts:
    223
    Hi BHS,

    Don't spend any time on my behalf adding a guide for the Free Invector Controller as I was just using it as a test to see how well it could take a new Player character model I have for use in my Fantasy game (Currently uses RFPS) and set it up for use as the Player as RFPS cannot do that successfully for me. Invector Character Creator however can do it perfectly in seconds using the Free Controller. However is not at all usable in a full game as it only has 3 basic movement animations and no others and has no supporting scripts for anything other than those 3 movement animations.

    Effectively I have two projects on the go that I need to upgrade in all areas.

    1. Shooter : Modern futuristic, scifi so I need features for both environments on Earth and in iinterplanetary space. e.g. shooting, drive vehicles and much more. I have many assets I use as well as RFPS to achieve this and at this stage having 22 levels and about anther 22 or more to add but want to upgrade everything including Player Character before I get on with the additional levels. e.g. Update the current contents and add functionality I need before embarking on perhaps years more dev - adding or changing to new systems and assets if need be to test them out now before proceeding. Else I could be wasting years more of work.

    2. Fantasy Game Project. I was hoping to continue using RFSP for this too but if I cant get a new pro quality Player Character that I want to use (or any other than the default) then I cant proceed and RFPS is not playing in that respect. Additionally its not really in and of itself designed to be of much help when it comes to Fantasy or RPG type games thus I was seeking perhaps to use Emerald integrated to provide that. Of course I cant do that if I want to keep using RFPS as I cant change the Player Character successfully and both adding new player Character and Player weapons is a real pain in RFPS. Thus considering Invector or other.

    I have just also bought numerous other assets and have integrated TSAI with RFPS in my shooter game and that works fine and will extend the AI and Game play quality, however it does not get over my prob with Changing the player character model :and weapons :) RFPS does also not support particle weapons out of the box which I need whereas TAIS does..

    Tried many other controllers too but either not whats needed or currently don't get updated themselves or to support latest Unity versions and I want to move the game forward in keeping with Unity dev suitable for the future game player aspirations.

    Keep up the good work :)

    Peter
     
  8. karmik

    karmik

    Joined:
    Oct 8, 2014
    Posts:
    124
    @BHS
    emerald AI is crashing after upgrade to Unity 2017.4
    worked well in 2017.2

    I have created a new prj with EAI and try to create ai out of a pr fab and unity crashes
    how to fix
     
    Last edited: May 19, 2018
  9. PeppersGamer

    PeppersGamer

    Joined:
    Jan 18, 2018
    Posts:
    17
    Curious the progress on Flying AI. Most of my enemies are flying drones.
     
  10. Mythran

    Mythran

    Joined:
    Feb 26, 2013
    Posts:
    48

    So are there any news for this implementation?
     
  11. sebasfreelance

    sebasfreelance

    Joined:
    Aug 27, 2015
    Posts:
    227
    Hi BHS,

    you can help me?

    I'm trying to set up an enemy that goes directly to the player and when he approaches him he attacks, but I do not get it

    - enemies sometimes go by the player and others where it was before and others where they want
    - the enemies do not attack directly, they stop and after a while they attack

    thx!
     
  12. BHS

    BHS

    Joined:
    Dec 21, 2009
    Posts:
    4,264
    Thanks for the information regarding this. I'll take a look at it to see what's going on. I'll release a quick update if needed.


    Emerald AI currently supports hovering fly where the AI does not change its height. I plan on adding full flying support with the 2.3 update.


    Yes, UniStorm is being rewritten with version 3.0. After UniStorm 3.0 is released, I will begin working on the UniStorm integration support with Emerald AI for schedules.


    What character controller are you using? With Emerald's demo player, and all of the integrated character controllers, there are not issues with the AI detecting, stopping, and attacking their target.

    Try reading through Emerald AI's documentation: https://docs.google.com/document/d/1_zXR1gg61soAX_bZscs6HC-7as2njM7Jx9pYlqgbtM8/edit

    You need to make sure your AI have the appropriate tags and layers as stated in the documentation.

    Also, make sure your AI's attack distance isn't set to low that would allow your AI to run into their target.
     
    sebasfreelance likes this.
  13. mattis89

    mattis89

    Joined:
    Jan 10, 2017
    Posts:
    1,100

    Creating a player in Unity , search for that on youtube, or PM to assist you.. If you need characters or animations , AstralStorm Games is here for your gaming experience to achieve custom wished mocap animations and characters, PM me if thats the case..
     
  14. mattis89

    mattis89

    Joined:
    Jan 10, 2017
    Posts:
    1,100
    It is achieveable allready with some messy coding and settings
     
  15. Radu392

    Radu392

    Joined:
    Jan 6, 2016
    Posts:
    210
    Melee attacking targets of different sizes hasn't been properly looked at. Characters attacking characters is fine since most are about the same size, but if you try to attack big targets, for example a building with a box collider size of 8x4x8, the AI will completely ignore the collider and go through it to reach the distance as defined in the 'attacking distance' parameter to the middle of the building. The parameter could be adjusted to fit the size of the building yes, but then it wouldn't work with the smaller objects! I'm guessing somewhere in the code, it's calculating the distance to the target's center or position, instead of its extremities. Big oversight, and sadly not as easy of a fix as I thought. I tried fixing it myself by instead of using the target's position as the destination, to use instead the closest point of the bounds of the target. Although it works well, it messes up the rotation of the AI and very often gets stuck and does nothing. Anyone know of a better solution?
     
  16. BHS

    BHS

    Joined:
    Dec 21, 2009
    Posts:
    4,264
    A target needs either a NavMesh Agent component (which is applied to other AI by default) or a NavMesh Obstacle to determine an object's radius. If you are using objects that are not AI, you will need to attach a NavMesh Obstacle. This will allow your AI to properly detect the object's radius.
     
    Mark_01 likes this.
  17. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    3,830
    I'm using this for some prototyping in an FPS game and I am either setting things wrong or there is a coded limitation. I'm finding it far too easy to casually avoid being hit by the enemy AI. All I have to do it walk slowly backward away from the enemy and he can never hit me. It's like there is a coded range to the attacks that prevents it from ever hitting unless I just stand toe-to-toe with the creature. I've tried adjusting the Attack range both upwards and downwards and neither helps. See the video for an example of what I mean.



    I'll dig into the code to see if I can find where the limitation is, but it would be nice if it was exposed in the inspector so that enemies can do damage while being further away from their targets.

    [EDIT]
    Some more info. In the video whenever the creature has it's mouth open is not an attack. That's just part of the run animation. So, it seems the problem is twofold. While continuously backing away at walking speed, the creature does not even initiate an attack most of the time. The other issue is range, which is a bit finicky. I found where I could modify the TargetInRange check so that melee attacks can hit from further away, but this doesn't solve the issue where it refuses to attack while the player is backing away.
     
    Last edited: Jun 4, 2018
    Marcirazzo likes this.
  18. BHS

    BHS

    Joined:
    Dec 21, 2009
    Posts:
    4,264
    Cool looking game!

    This is happening because Emerald will only trigger a successful attack if an AI is within the appropriate range. This is done to avoid an AI having the ability to attack a target outside of its Attack Distance. The Run Attack feature is intended to resolve the issue you're having above by allowing a far greater threshold for attacking and for an AI to trigger an attack while moving.

    I can certainly look into a better solution though. One way could be to create a public variable that allows a user to adjust the max distance an attack is allowed to apply damage after an AI has started its attack animation.

    For now, you can try to adjust this manually, however, I haven't been able to test this yet myself:

    Find the line below located in the Attack Coroutine:
    Code (CSharp):
    1. if (DistanceFromTarget <= AIAgent.stoppingDistance){
    This is the distance that determines whether an AI's target is within range or not. If it is, it will set the variable, TargetInRange to true. If a target is out of the above range, the AI will still play its attack animation, but it won't trigger any damage.

    You can try setting the AIAgent.stoppingDistance amount to a custom amount or custom variable to see if it allows the AI to trigger damage from further away. It would need to be greater than the AI's Attack Distance though.

    Please be sure to let me know how this works. If it doesn't help, I'll see if I can pinpoint the proper code.
     
    Mark_01 likes this.
  19. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    3,830
    I already adjusted the code for TargetInRange and was able to get better results for causing damage further away and also tried adjusting stoppingDistance. This seems to work for causing damage when further away. However, I also tried the Run Attack feature and that didn't help with getting the creature to attack from further away. I haven't gotten it to initiate a run attack as yet even if the creature is running and I'm running backwards. I'll debug that code to see what's happening, but I think it must be failing on some check and not doing the run attack no matter what.
     
    Marcirazzo likes this.
  20. zenGarden

    zenGarden

    Joined:
    Mar 30, 2013
    Posts:
    4,538
    Cool game.
    So finally you're not making your own AI system ( i know it's lot of heavy work ).
    I just used Behaviour Tree and EQS for a game needing advanced AI, this was the best solution for custom AI.

    About the creature issue there is work around solutions :
    - Give it low height jumps attacks
    - Use melee attacks that have forward movement
    - Decrease the melee range, the creature will get very close and launching an attack should hit even with player moving backwards
    - Get it do a fast melee attack with enough range and without any wait time when it is in melee range
    - Make it able to vary it's purchase speed, slow when discover the player and fast during some seconds, able to catch up with player and get to melee distance
    - Give it slightly faster speed than player, make it slow during some time each time it is hit by ranged weapon or gets a melee hit.

    Anyway the problem is about the creature has a wait time , and the melee approaching distance is too big.
     
    mattis89 likes this.
  21. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    3,830
    I have plans for an AI system of my own for my RPG game, but I may not follow through. For this FPS prototype this seemed like a good start to get things going so I'm giving it a try.

    As for your ideas, I thought about some of those, but I'd rather fix the fundamental problem that seems to be occurring first. Although it might be related to some of those parameters. Not sure yet.
     
  22. zenGarden

    zenGarden

    Joined:
    Mar 30, 2013
    Posts:
    4,538
    Try :
    - decrease the wait time to 0
    - increase walking speed
    - decrease melee distance
    It should quickly move very close to player, and launch melee that should hit even with player moving.

    Using random pursue speed, random attacks, some random wait times from 0 to a max value, is what makes AI less predictable and more interesting. But you'll have to modify Emerald code for this.
     
  23. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    3,830
    Well, in looking at some debug output I notice 2 very interesting things. While I'm backing up and the creature is pursuing it gets to the code where it is evaluating whether to attack or not and 2 conditions prevent it. The first is that AttackingInProgress == true and CurrentVelocity == 0. Now, it hasn't actually attacked yet at all, but it seems to think it is and the velocity should be greater than 0, but it's not. So, checking to see why that code is going awry.

    [Edit]
    The velocity at 0 was my mistake. It was some debug output from earlier in the scene. AttackDelay is true, however, so it is probably the delay causing this. I'll change that as zenGarden suggested.
     
    Last edited: Jun 4, 2018
  24. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    3,830
    I managed to figure out some settings and modification to the code to get the desired effect I was looking for. So, I'm good to go for now.
     
    zenGarden likes this.
  25. halo_of_the_sun

    halo_of_the_sun

    Joined:
    Sep 17, 2017
    Posts:
    49
    Would you be willing to share the changes you made to get the desired effect? I'm having the same issue in my game.
     
  26. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    3,830
    At the moment it's mostly a hack and needs to be cleaned up, especially since I commented out code related to the run attack, which wasn't working for me at all. But if you still want to see it, I can PM you the changes in the next day or so.
     
  27. mattis89

    mattis89

    Joined:
    Jan 10, 2017
    Posts:
    1,100
    That IS excactly what I mean with ALL this AI packages on the store.. We have to be able to combine walk and attack! It shouldnt stop when attacking.. the setting is probably walk to target. Stop. attack.. So ofcourse this occurs then when walking backwards.. In ICE I made a avatar mask to combine walk and attack but I got some sliding issue but the AI attacked while walking.. But the author of Emerald neeed to figure this one out..
     
  28. mattis89

    mattis89

    Joined:
    Jan 10, 2017
    Posts:
    1,100
    awesome thanks!
     
  29. mattis89

    mattis89

    Joined:
    Jan 10, 2017
    Posts:
    1,100
    @BHS random speed and stuff is good, next update?
     
  30. mattis89

    mattis89

    Joined:
    Jan 10, 2017
    Posts:
    1,100
    Can you please pm me the changes too so I ger an understanding of it?
     
  31. julianr

    julianr

    Joined:
    Jun 5, 2014
    Posts:
    1,145
    It's a common problem with AI that run up to you but don't attack straight away so you can avoid damage no matter what. It needs something like a trigger event in the animation so it will strike straight away during the running process, not wait to change the state. So while you are in a running animation state the attack/damage trigger will come from the animation, instead of having to go to a state then run the attack animation.

    Or at least;
    Detect player or another AI
    Run to Player or another AI
    If Player or another AI distance < 2 [custom defined] start run attack
    If Player or another AI distance < 1 [custom defined] no run attack
    These will also have state changes, so may not be the best option - especially with a lot of AI on screen at once where you make those thought processes on state changes faster, it will impact on performance.

    In addition, as an option
    Enable AI to have upper body attack avatar masks, so it will be faster and more flexible.
     
    Last edited: Jun 7, 2018
    mattis89 likes this.
  32. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    3,830
    mattis89 likes this.
  33. zenGarden

    zenGarden

    Joined:
    Mar 30, 2013
    Posts:
    4,538
    Play Dark Souls and you'll get an idea to make AI that is sometimes unpredictable and challenging AI.
    This is what is missing in Emerald, a way to create behaviours and actions instead of having a fixed number of attacks hard coded in linear code. Decisions with random and priorities, and actions that could be attacks or a combination of attacks and movements.
    Something more modular, while staying simple to construct for non coders.
     
    Last edited: Jun 7, 2018
    Mark_01 likes this.
  34. Demonoid74

    Demonoid74

    Joined:
    Jan 20, 2017
    Posts:
    16
    For my current project , I would love just a simple setting that gives us a variable chance that the AI would attack the player or other targets or factions...not just always attack or not...Would be something like in the game Bully , where sometimes they would come after you , sometimes not , sometimes see another wandering kid and go after them...That is what I would really like to get working!
     
    Mark_01 likes this.
  35. VP_no1

    VP_no1

    Joined:
    May 12, 2018
    Posts:
    105
    Is it necesary an extra code to integrate Adventure Controller too ? Invector and Emerald integration states it will help on damage so the simple movements should work for simple animals.
    What settings should I use to make simple animations work ? I set up a rabbit ro run from the player with the documentation help but it does nothing.
    I also have a small warning to do something on the animations
    Also I dont have an avatar, just fbx files for every movement. Should I create one from the main Idle/pose clip ?

    upload_2018-6-7_15-55-35.png upload_2018-6-7_15-57-2.png

    Should I rig the rabbit to generic ?
     
  36. Marcirazzo

    Marcirazzo

    Joined:
    Nov 27, 2015
    Posts:
    46
    How can I do when I damage the animal that it escapes or attacks me?
     
  37. zKici

    zKici

    Joined:
    Feb 12, 2014
    Posts:
    251
    If anyone could pitch in that would be great:

    I need 2 things done via script,

    1. When 2 colliders touch the Player's arrow as an example hits the NPC Enemy, in my collision event script how do I tell the AI it got damaged?

    2. I have a collision event script ready for when the Enemy NPC attacks the Player whether with ranged or Melee, I need to know via script when the Enemy is actually attacking and then to cause the player Damage, so the main thing is when is the enemy attacking?

    Example if the sword touches the player it shouldn't cause damage, only if it is in attack mode playing its attack animation

    Thank you
     
  38. sapster

    sapster

    Joined:
    Jan 23, 2017
    Posts:
    2
    Hi, really great work. 2 quick question, would it be hard to get Emeral AI to work with RPGAIO? Also does Emerald AI work with 2D top down games?
     
  39. Tomza

    Tomza

    Joined:
    Aug 27, 2013
    Posts:
    591
    Hi,
    I'm searching for an AI solution for root motion Mecanim animations. How does it work with professional animated bots?
     
  40. 047

    047

    Joined:
    Mar 5, 2014
    Posts:
    13
    Hi .
    I'm trying to damage my player character , when the AI attacks . but i cant find any event which runs when the AI successfully attacks. can you help me plz ?
     
  41. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    3,830
    What are you using for your player system? The Emerald_AI script has a DamagePlayer function that is called and you would need to modify the code there. The following document of existing integrations might help as well:

    https://docs.google.com/document/d/1QGSEdc2-6bks22KIelYlBw_601uHce2BVLM3QTq5axg/edit
     
  42. 047

    047

    Joined:
    Mar 5, 2014
    Posts:
    13
    Thanks for the answer .
    I have scripted my own character using Bolt.
    So each time the AI successfully attacks the player , this " DamagePlayer" is called on the target ? So i should just create a "DamagePlayer" function on my character ?
    Thanks again .
     
  43. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    3,830
    The function is called on the AI and the code must be altered to pass on the damage to your character. You can do this a number of ways, but the easiest is to just add code in the DamagePlayer function that checks to see if the target is your custom player object. If it is then you call a function on your custom player object to tell it that damage was dealt. You could also add a message in the DamagePlayer function to send the damage information to any listener and your player custom code could listen for the event and apply damage.

    Notice the example code from the Invector integration, which checks to see if the target is an Invector player controller:

    Code (CSharp):
    1. if (CurrentTarget != null && CurrentTarget.GetComponent<Invector.vCharacterController.vCharacter>())
    2.  
    It tries to get the component called Invector.vCharacterController.vCharacter. For you, you will want to attempt to get whatever component you have attached to your player that is going to handle receiving the damage and applying it. For example, you might have a component called MyPlayer and that component could have a function called ApplyDamage. In that case, you would add the following code to the Emerald_AI DamagePlayer function:

    Code (CSharp):
    1. if (CurrentTarget != null && CurrentTarget.GetComponent<MyPlayer>())
    2. {
    3.     CurrentTarget.GetComponent<MyPlayer>().ApplyDamage(CurrentDamageAmount);
    4. }
     
    Mark_01 likes this.
  44. RendCycle

    RendCycle

    Joined:
    Apr 24, 2016
    Posts:
    329
    I've had some experience in using ICE Creature Control before and now looking for an ideal replacement since it has been abandoned. Emerald AI 2.0 seem to be the closest to it. Can this be used alone for NPCs that don't use Navmesh and moves by swimming and/or flying? Planning to use this with animals/creatures and connect some of their actions to a Weather System like Enviro as it supports Community Ocean Shader.
     
  45. julianr

    julianr

    Joined:
    Jun 5, 2014
    Posts:
    1,145
    Currently you can only use Navmesh (not sure if @BHS) has any plans to provide this option. Enviro has an API so it should be fairly easy to create a weather manager (I've done it) as long as you know a bit of c#. However, having said that I believe BHS is working on the integration with his own Weather Environment system in the asset store.

    Emerald is a bit more restrictive, as it has self contained behaviors, unlike ICE you can't add your own unless you code them in. It does provide an option to call an Animation though, so you should be able to do things like if your AI walks up to a door, open door, then continue, or if AI reaches a waypoint eat something, but does again require some coding knowledge. As for swimming/flying (not sure) - I think from a previous thread I saw that you can have flying AI, but it needs to be better (something BHS may be working on).
     
    RendCycle likes this.
  46. 047

    047

    Joined:
    Mar 5, 2014
    Posts:
    13
    Thanks for taking your time and replying in details .
    That made perfect sense and i was able to damage my player .
     
    magique likes this.
  47. RendCycle

    RendCycle

    Joined:
    Apr 24, 2016
    Posts:
    329
    What about Behavior Designer? I was initially considering that as well but got the impression that it is less automated. If you've tried it, how does it compare with Emerald? Would you say Emerald sits between ICE Creature Control and Behavior Designer with regards to how fast AI can be added to a game?

    I appreciate the reply. Thanks for the info! :)
     
  48. julianr

    julianr

    Joined:
    Jun 5, 2014
    Posts:
    1,145
    The difference is that whilst Behavior Designer is more flexible, its still a learning curve that will take some time to get things to work how you want them to. You can buy the Deathmatch kit to understand it better and you will also need the Movement/Formations/Tactical add-ons depending on your needs. It is also supported. Network support for multiplayer use (I've not tested it).

    Emerald will get you started quick and easy, up and running in no time with basic (melee (unarmed or armed with a melee weapon, or ranged (not both currently without changing the code - BHS mentioned this may happen in a future update) - it can be modified to expand it further to your needs by coding. It's a good replacement to ICE Creature Control - its easy to understand in the code and is supported. It has a pre-defined GUI system for setting everything up.

    ICE CC can do quite a bit, however it has some bugs, doesn't support 2018.x without modifications and the developer has not been around for months due to an injury, and no sign of whether he is coming back. Steep learning curve and frustrating when you need support as it can take a long time to work things out. Network support for multiplayer - but untested.

    If you are just starting out, go for Emerald, it is now my first choice to get something up and running quick, then if it no longer supports your needs further down the line you will have a greater understanding of how things work and you can either upgrade to something more advanced or you will be able to modify what you have or see what updates/add-on modules are added (I'd be interested in creating some at some point if the developer allows this). Its not networked for multiplayer use.

    This is my understanding of them all, anyone can quote me if I am wrong :)
     
    Last edited: Jun 15, 2018
    RendCycle likes this.
  49. RendCycle

    RendCycle

    Joined:
    Apr 24, 2016
    Posts:
    329
    If only Emerald can be confirmed to work even without Navmesh, it looks like it will fit my requirements and will be a must buy. The majority of my game will be set over water/ocean and encounters will happen over and under sea. That means most NPCs will be swimming and/or flying. My option now would be either to get Emerald and modify it or use another less automated system and code/expand further AI behaviors in them to meet my needs. Both might take the same amount of time though. I guess it is quite difficult to create an AI System that can work without using Navmesh as I still haven't found anything on the Asset Store that can do that. The closest I found seem to be AI Designer Pro but it has so many bad reviews.

    For ICE CC, it is sad it has become what it is today. If the author couldn't currently provide support he can just ask someone to simply post updates to console customers. It is a business after all. If the system will go nowhere, he can also just post something to inform people. I am actually wondering why ICE CC is still available in the Asset Store if no support nor update is being posted for this long. Well, sorry for the off-topic.

    Anyhow, thanks for the tip! I will consider your suggestions. :)
     
    julianr likes this.
  50. wood333

    wood333

    Joined:
    May 9, 2015
    Posts:
    696
    Is Emerald compatible with A* Pathfinding Project?
     
unityunity