Search Unity

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

Dynamic AI Project[Navigation Released]

Discussion in 'Assets and Asset Store' started by brilliantgames, Oct 13, 2012.

?

Should the Navigation be available as a separate purchase?

  1. No, keep it exclusive to Dynamic AI.

    34 vote(s)
    23.0%
  2. Yes, I am only interested in the Navigation in this project.

    53 vote(s)
    35.8%
  3. Yes, but I also want this to be compatible with Fantasy AI

    61 vote(s)
    41.2%
  1. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    Important note on help questions: I am very busy with many projects, and I run several threads. However, you are far more likely to get a response by simply sending me a PM right here on the Unity forums. Just specify which package and what your problem is.



    DYNAMIC NAVIGATION 1.1 IS NOW RELEASED AND ON SALE!

    Asset Store http://u3d.as/content/brilliant-game-studios/dynamic-navigation-beta-/3FZ





    Welcome to the Dynamic AI project. This is an early look at the beta stages of this AI project. All of what you currently see will drastically improve and evolve.

    NEW HELP/TUTORIALS PAGE! http://forum.unity3d.com/threads/159725-Dynamic-AI-Project-Help-Page?p=1092936#post1092936



    The purpose of Dynamic AI Project, is to create the most powerful shooter based AI system the indie Unity community has ever seen. I strongly believe Indies should have access to AI at this sort of level, because it is just not plausible for an Indie to put this much focus and time into their AI while trying to build the entire game itself. I am very excited about this project, I decided to reveal this at a fairly early stage cause I need your input! I want to build this AI with the community. This will work with all versions of Unity, and hopefully most platforms.



    DYNAMIC NAVIGATION 1.1 IS NOW AVAILABLE!




    NEW VIDEO



    Web Demos!

    NEW DEMO!

    Here is the new demo for verion 1.1! Its a very complex scene with both indoor and outdoor. The AI's have jumpable areas, as well this entire map was made with a low resolution of just 150*150!. Command 3 units to follow you, go to a specified location, or explore the environment!

    http://dl.dropbox.com/u/65183439/DynNavDemo1.1/WebPlayer/WebPlayer.html



    Obstacle Course

    Here is an obstacle course which is an older demo. It demonstrates just some of the possibilites of this Navigation engine. This course contains everything from, elevators, dynamic moving objects, to jumpable areas. Watch the AI Spaceman navigate all these complex areas!

    https://dl.dropbox.com/u/65183439/Navigation Demos/Navigation demos.html

    Stress Test

    This is the same level as the Obstacle course, but a stress test. This demo contains 130 AI's navigating to randomized targets around the level. I could have added more units to this, but things got too chaotic with the amount of space they had. Enjoy!

    https://dl.dropbox.com/u/65183439/Navigation Demos/Stress.html


    DeDust2 Demo

    Try the new Navigation demo. This demo demonstrates follow navigation, and randomized patrolling/exploring navigation. There are 5 patrol points/areas the AI choose at random when exploring. The location is in Dust2 from Counterstrike!

    PS, remember even the navigation is still in beta.

    Instructions: WASD to move around, mouse to look around and fire. Order Units with num keys and top.

    WebPlayer: https://dl.dropbox.com/u/65183439/dust2/WebPlayer.html






    First Video Teaser!




    New demonstration for dynamic obstacle and grid features





    Dynamic Navigation


    The pathfinding engine has been in the making for 3 months full time. I set my goals extremely high in this and have accomplished more than I ever dreamed I could.


    Navigation Grid Generation

    Generate infinite multilayer high resolution grids in the editor or in game. The size of the grid has very little to no effect on performance. I worked many hours designing smart algorithms for maximum performance. I have tested grids up to over one million nodes. The time it took to generate a grid of that size was still only in the seconds. It does not matter what geometry/terrain or how many layers, it just works.

    Completely Dynamic?

    Grids generated can be 100 percent dynamic. Objects of any size or shape without rigidbodys, can be moved, rotated, or scaled and the grid will update the footprint. This gives this navigation an upper hand over most navigation systems that exist for Unity engine. Many Navigation systems claim having dynamic features, but often these are limited to rectangular shapes that often cannot even be rotated or scaled.


    400x400 High Res Navigation Grid(Generated in 3.5 seconds).


    Multi-Layer Test.



    Pathfinding Movement

    The Pathfinding and movement is something I did not slack off on. All paths are dynamically generated through modified A* methods. In the AI Navigation inspector, the user has control over the speed at which the AI calculates his path to both moving targets and static targets. The user can also control the max node distance the AI will look for his target.
    AI have smooth pathfinding with advanced movement. When the AI is in combat or has a strong focus, he will side strafe or run backwards in order to keep focus on the target. This enables massive flexibility in combat with player like movement. This is also something the user has control over.


    New Portal Navigation Feature

    In the picture below, you may ask, "What is the purpose of those purple cylinders?". This is a very useful feature I came up with called, "Navigation Portals". These purple cylinders, are the answer to many common problems in modern pathfinding. "What exactly do they do?". Navigation portals create an extra connection between any 2 nodes you wish, but each side can be dynamicaly moved, opened, or closed. The uses for these are endless. Some of the many uses may be, portals, ladders, elevators, jump-able areas, roads/path preference, doors, steep stair cases, or areas which are too tight/small for the grid resolution you have chosen. I guarantee you will become addicted to this tool once you discover its true potential. :)

    Screen shot of demo scene included. AI uses an elevator in his navigation




    Screen shot demonstrates a jump-able area.









    Stress Test(240 AI 43 FPS, 54 FPS without debug)



    Multiple AI pathfinding through complex terrain and indoor environment to a target.








    Combat



    I cannot give too much info in this area because it is in very early stages but heres a look at what I have so far.

    The combat is designed with flexibility in mind. All the stats and general behaviours/characteristics of their combat, is all controlled through simple skill percentages. This gives the user a ton of flexibility for controlling the difficulty as well as tactics and movement amount.
    The AI currently have the ability to fire while running by side strafing or running backwards(When needed) in order to keep focused and aimed at his target.
    The AI also have the ability to use any weapon you put in his hands. You can specify how often he fires and what type of weapon he is currently using.


    Multiple AI in team combat.





    The Future Of Dynamic AI Project



    Here, I'm going to give you a look at the features I am currently working on in this project, as well as other features I hope to accomplish.

    Goals For Navigation

    I have already started on ladder/elevator/portal Navigation. The user will be able to specify elevators or ladders or any form of transportation/shorcut that is not a physical connection, and the AI will be able to use these in his navigation.

    And finally, dynamic cover system. I believe this is very important in a modern shooter and I am going to make sure this is accomplished. My goal in this area is for the AI to dynamically analize his environment with similar algorithms used for his pathfinding, to identify near by potential cover zones from his current enemy.



    Goals For Combat Behaviour

    There is still much work to be done in this area. One thing I feel is necessary is control for more unpredictable combat behaviour. I would also like the AI to be able to attempt to analize his enemy's movement/aiming and dodge based on that.
    Complex tatics are also something I would like to implement(Which includes team tactics).



    More information coming soon.
     
    Last edited: Jul 23, 2013
  2. ttank7

    ttank7

    Joined:
    Apr 18, 2011
    Posts:
    42
    Now this sounds interesting! Especially the dynamic grid creation. Can it be on the fly, like for procedural levels and the such?
     
  3. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    Yes if the grid is not to large, this is possible. :)
     
  4. Boji

    Boji

    Joined:
    Jul 10, 2012
    Posts:
    44
    Sounds great, for procedural levels could you add in-game joining/welding of pre-generated grids? So when joining pre-made level pieces you could also join the pre-made pathfinding grids?

    Also it would be great for navigation to include cover based navigation like mantle/vaulting over cover.

    I'm verry interested in this system.
     
  5. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    Yes I am in very early stages of building in many powerful features into the navigation(This includes cover). But to answer your first question, you likely wouldn't need to do that. Because the grid generates so fast, it is possible for the grid to be generated in sections during gameplay. Just as long as these sections arent too large.
    Its a bit early for me to be talking much in the dynamic area of this pathfinding, but I will have more info soon!
     
  6. Boji

    Boji

    Joined:
    Jul 10, 2012
    Posts:
    44
    Nice, it would be cool to just generate the grid around the player in-game. Do you have an aproximate release date?
     
  7. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    I would like to release this in less than a month. The first release might be a beta.
     
  8. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    I would love to know your thoughts on things so far. Feel free to put any requests for behaviours or navigation. :)
     
  9. runner

    runner

    Joined:
    Jul 10, 2010
    Posts:
    865
    Sounds good with the dynamic path-finding as for the behavior's stuff not sure its a large technical subject

    user defined state machine: When Health < 10 pathfind to [tag] (Health pack) or pathfind to tag (Cover)

    user defined state machine: When Ammo < 10 pathfind to [tag] (Ammo pack)

    of course these two state's would be on Hold overridden if the AI was under-fire

    weapons probably need a user defined lookup table so the entity can select the best weapon on what they picked up from either dead AI or ones at ammo stash's.
     
  10. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937

    Oh yes, these are all things I will go into alot of detail with. I'm still in the ground work stage of most of the main features though.
     
  11. ttank7

    ttank7

    Joined:
    Apr 18, 2011
    Posts:
    42
    Yes, generating the grid around the player on the fly would be amazing. And then have it take into account memory of course so if you walk in X direction forever on different terrain it just works. I think would be the future of A.I navigation, and also making really simple for beginners to prop their levels with A.I(not worrying about setting up any grids at all).
     
  12. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    For sure. I mean there are always things you need to setup. Like the grid resolution, the cube sizes of the grid, as well as the capsule collider size for the collision detection of the grid. But yes setting up a grid is extremely simple and very fast. :)
     
  13. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
  14. Boji

    Boji

    Joined:
    Jul 10, 2012
    Posts:
    44
    It would be cool if you can release the navigation only component first, I'd definitely get it if it has:

    -in-game generation of the grid around the player, update grid only around player, navigation only around player, can be based on a specified radius around the player
    -navigation to include vault/mantle for low-cover points (sandbags,etc.)
    -IOS/Android compatibility
     
  15. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    First video teaser!

     
  16. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    For sure, thanks for the interest!
     
  17. RoyS

    RoyS

    Joined:
    Jan 12, 2009
    Posts:
    664
    If you purchase Fantasy AI, would you need this one, too? I'm doing a medieval game, not a shooter game.
     
  18. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    This is a completely new AI system designed for shooters. If you want to be able to use the powerful navigation engine for Fantasy AI, theres a poll at the top where you can vote for that! :)
     
  19. Lypheus

    Lypheus

    Joined:
    Apr 16, 2010
    Posts:
    664
    I may have missed this in the thread, but there appears to be an option from the poll missing - I'm interested in having an AI subsystem which can make used of unity3d's built-in navmesh API - is that going to be handled through an abstraction layer from a specific nav implementation to allow for different navigation apis or will your AI assume the use of your own nav grid implementation?
     
  20. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    Yes I will do my best to make it possible to use other navigation systems. But the whole point of this navigation was to make one thats so powerful and well integrated with the AI you wont want to use another one. My goal is to make this one of the top Navigation systems for Unity. It still has a ways to go.
     
  21. ttank7

    ttank7

    Joined:
    Apr 18, 2011
    Posts:
    42
    I think it would be amazing if your A.I nav was able to make grids based around it as it is moving towards a point on the other side of the map. This would allow dynamic levels like voxel terrains easily work with it's navigation. I am sure many would find this interesting as I don't think it's ever been done at such a dynamic level before.
     
  22. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    For each AI to make its own grid would be really inefficient(Due to memory and performance). Its much better having one grid based around the player, cause after all, its whats around that player that matters the most. But yes I have strong faith this Navigation will have some good dynamic features enabling for procedurally generated worlds. I cant guarantee you will get lighting performance procedurally generating navigation, it really all depends how complex your scene is and how large a radius you want around the player.
     
  23. Lypheus

    Lypheus

    Joined:
    Apr 16, 2010
    Posts:
    664
    Sounds good, my main concern here is scale. I tried a couple of the pathing/navigation solutions on the asset store and found that in general, they tend to break down with larger grids, they all seem to crash/break down around the 250x250 mark. Will keep an eye out, should be interesting to see this come together :).
     
  24. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    250x250 huh? I've gotten mine as high 1100x1100 with multiple layers, after that I tend to get a memory crash. I have 8 gigs of ram. Although one thing I cant make sense of(Maybe I just dont fully understand how engines manage memory) is, I could easily make 5 1000x1000 grids and everything would function fine, but if I try and make one giant grid, thats when I get a memory crash. There must be some kind of limit on Arrays and lists.
     
    Last edited: Oct 16, 2012
  25. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    Well, its looking like so far you guys want the navigation to be compatible with Fantasy AI. Keep the votes coming!
     
  26. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    Today I have officially added a very efficient dynamic obstacle feature!

    It does not matter what shape, angle, or size of the object, the grid will create perfect footprints for the obstacle! Even watch the grid update in editor mode!

    I am very excited about this new feature and can't wait to show it off!
     
  27. Lypheus

    Lypheus

    Joined:
    Apr 16, 2010
    Posts:
    664
    Might be something to do with this: http://stackoverflow.com/questions/...strained-by-the-upper-limit-of-int-2147483647 or the 2gb limit on in memory objects for .net. I don't know if this falls in line with what you're trying to accomplish, but I think if you made the nav grid so that it had a very granular navmesh as the top layer which has a few nodes, then when you do calculations you can "zoom in" or use a different LoD of the nav grid for those calculations. I mean, why have all the overhead if there is 10% of the map in use at one time right? Who cares if the mobs on the other side of the world move slightly inefficient, so long as they still reach their goals. Almost like using a backing store for "pages" of increasingly granular nav grids depending on the situation.
     
  28. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    I see. Yes I've heard of, in a way, 'subdividing' grids. I probably wouldnt be getting into this until some next versions though, too much left to do on everything else. But thanks for the advice!
     
  29. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
  30. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    I would love to know everyone's thoughts on the new Dynamic features. I feel very accomplished with this latest feature!
     
  31. runner

    runner

    Joined:
    Jul 10, 2010
    Posts:
    865
    finish it so we purchase this?

    anyway i would like to see little group formation and less single file movement within groups but i guess that's not part of the feature set

    The dynamic obstacle avoidance is great! :eek:
     
  32. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    Yes, character avoidance/interaction is something I havent gotten to yet. But I will. :)
     
  33. 3agle

    3agle

    Joined:
    Jul 9, 2012
    Posts:
    508
    This looks like it could be fantastic, what's the aim for pricing and do you have an eta on when this will be ready?
     
  34. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    Hey 3agle. Its likely the pathfinding will be released sooner as things are farther along with that. I would like to release the pathfindg in around 2 weeks, and the AI itself in over a month. I havent fully decided on a price yet but I'm up for suggestions.
     
  35. Boji

    Boji

    Joined:
    Jul 10, 2012
    Posts:
    44
    Sounds good, can't wait to get it. For the price if it's around the price of SimplePath it would be great.

    Also, can I send you some ideeas of how I wish the vault cover navigation would work? :)
     
  36. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    Sure sounds good.
     
  37. Nomad5oul

    Nomad5oul

    Joined:
    Aug 18, 2012
    Posts:
    24
    @brilliantgames

    Please can you confirm when this is likely to be finished / released and how much it will cost?

    What kind of modes will this support like deathmatch, capture the flag etc?

    Thanks
     
  38. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    Hey Nomad. The AI itself is still a ways from being ready. But the pathfinding should be ready sometime the beginning of next month(So hopefully no more than 2 weeks). But I will definatly be releasing the full AI before the end of next month, whether its still in beta or not.

    As for pricing. I still have not yet decided because it will likely have a much higher value than it currently does with its current features.

    I think the pathfinding will be somewhere between $40.00 to $60.00. The whole AI will be somewhere around $80.00 to $100.00.

    I would love to hear anyones opinions on these matters. Should I release Dynamic AI while it is still in beta?
     
  39. Boji

    Boji

    Joined:
    Jul 10, 2012
    Posts:
    44
    Did you get my PM?

    I would be interested in the beta if you release it at a discount price.
     
  40. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    Yes, I just responded.
     
  41. jasonkaler

    jasonkaler

    Joined:
    Feb 14, 2011
    Posts:
    242
    One thing that may help is to use a hierarchy (tree) structure for the grids.
    In the real world, if you are traveling from city A to city C via city B, while you are still in A, you don't need actual street directions in B or C yet.
    You need a county level grid which links cities and the next level can be street maps of each city individually. That way huge grids can be broken down into smaller ones.
     
  42. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    This is definitely something I was thinking of the other day. Pathfinding gets slow and CPU intensive at great distances. I would like to implement a long range pathfinding system. It might involve some manual work from the user though. Like drawing out pre-set paths/roads between significant areas.
     
  43. WhyDoesThis

    WhyDoesThis

    Joined:
    Oct 25, 2012
    Posts:
    5
    Hmm... this sounds very interesting... FIRST POST!
    Why doesn't anyone use colour though? 0.o
     
    Last edited: Oct 25, 2012
  44. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    New demo coming very soon. In a very familiar location to many gamers.. ;)

     
  45. jasonkaler

    jasonkaler

    Joined:
    Feb 14, 2011
    Posts:
    242
    It's difficult to do if the map isn't designed with this in mind, with defined countries and cities.
    An idea that might help with that is to divide the main map into 9 sectors, 3 x 3
    and each of those can also contain 9.
    If you are traveling from one sector to another, draw a straight line from your start to end and pick the node that is closest to where that line enters the next sector - all you need to do is pathfind to that node, and not the entire map.
     
  46. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    Thanks for the advice. I will keep these methods in mind!
     
  47. Peter Hou

    Peter Hou

    Joined:
    Oct 12, 2010
    Posts:
    66
    The dynamic features look amazing!
    I hope this will be able to run smoothly on mobile devices. Looking forward to further updates :)
     
  48. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    I don't see why not!
     
  49. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    Try the new Navigation demo. This demo demonstrates follow navigation, and randomized patrolling navigation. The location is in Dust2 from Counterstrike!

    Instructions: WASD to move around, mouse to look around and fire. Order Units with num keys and top.

    WebPlayer: https://dl.dropbox.com/u/65183439/dust2/WebPlayer.html


     
  50. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    Feedback on the first demo would be appreciated!