What do you think of the state of AI in Unity plugins?

I am primarily focused on AI more than anything and have experience working with machine learning algorithms and optimisation techniques. I always wanted to bring that kind of level of AI in games and for years I could see that there haven’t been major advances in games AI. I could be wrong of course since I cannot monitor all the games that are out there.

So my question is simple, what do you think of the AI plugins in the asset store? Do they need a lot more work? What kind of plugins would you like to see coming out that could seriously help your game?

hi,
I would like to see a modular approach for AI : the different tasks getting done by modules (scripts) that are referenced in the character control script (and the reactions/tasks being decided in the character control script). this way instead of one big AI script would be many subscripts that could be switched off/on when/if needed, their data could be used to compare/match/calculate in the control script.

like one script for wall cover, one script for analysing attackers’ positions, one script for choosing target, one script for team leader follow etc.

Isn’t that functionality covered by the Behaviour Tree plugin or some of the other AI plugins? Not sure which is why I ask.

maybe, I dont know about that, though I have never seen a unity asset doing wall cover for example, just wips. for me, the process of ai decision-making, I like when it’s simple and doesn’t include things that dont need to be included, but rather makes them so, that they can be added and discarded (in theory). its ShooterAI that I own and it’s pre-designed system, like it has a gun system implemented already and that makes it hard to use another gun system (but I didn’t looked into it really deep, so it might be simple. though I think it doesn’t look that it was designed to be modular)

The Asset Store already has good FSM and behavior tree products. coAdjoint is doing some interesting machine learning stuff, too.

Here are some areas that could use more attention:

  • Design-time and realtime analysis – identifying and tagging cover for shooter games, extracting useful information from heat maps, etc.
  • Higher-level decision-making: planning systems, squad tactics, hierarchical task networks
  • A good, general-purpose Monte Carlo tree search implementation

EDIT: Another idea: Voice command recognition.

1 Like

I think one very overlooked element to AI is relational decision making… When it comes to most AI systems it’s all about shooters, not really developed for relationships. Doing guests or giving food or other things that would increase your standing with characters or villages. And to be able to quickly define what those things are that develops the relationship that effects how the NPC reacts to the player. As sort of fill in the blanks kind of interface, e.g. For character A you set that after giving 20 apples Character A starts to like you and will allow you to come into their house without being upset.

Or like in Skyrim develop a relationship that will go as far as love and marriage, and or will fight to the death to protect you, otherwise if the NPC is a follower and has no feelings for you they might just run away when the battle gets hot…

I many AI developers writing bits and pieces but trying to fit the different elements together… that’s the tricky part.

+1 on the modular part for the different AI types, you could have distance AI for archers, snipers, spear, crossbow have a slot for animation, one for distance and another for damage and then have it tie into it’s relationship model to discern whether it shoots you or not, passive or aggressive, or becomes aggressive it you shoot it or not…

1 Like

@Licarell - I don’t want to hijack this thread, but if you have the time I’d really appreciate your thoughts in the “Seeking Feedback on Faction/Relationship System” and “NPC Personality Traits” threads. I plan to put this product on the Asset Store by the end of January, and the feedback already has been immensely helpful.

@TonyLi OK I’ll give it a gander…

Multi-agent systems could be a good fit for this. I did research trying to understand how you can build complex systems where all agents interact using high level languages.

Both of these sound very interesting. Exactly as above I think automated planning languages can work well on defining at a high level what your characters need to do. Not as easy as it sounds but its possible.

Thanks that is really useful stuff. If I was going to build a plugin for the asset store that uses some more advanced AI techniques would there be interested members in this forum to get feedback and help in terms of features etc? What is usually the response? I have no idea as I am quite new to the Unity world (not Unity).

My background is in AI, and I have some experience supporting Unity Asset Store products. I’ll be happy to offer whatever feedback I can. I’ve found that developers who are not deeply versed in a subject matter (AI in this case) give the best feedback. They don’t get caught up in background and theory. Instead, they know exactly what they want the product to do, and they’ll bluntly tell you whether your product helps them achieve that end result or not.

2 Likes

Tell me about it. This is actually a major issue in academia where theory prevails. It is difficult for a lot of researchers to see things objectively and to step back.

May I ask about your asset store products and your experience with it? How successful are they?

EDIT: I can see you have amazing reviews and five stars. Really well done!

Thanks!