Training Stream - Advanced AI - May 12th, 2015

How about using enums?

If you want to micro-manage AI behavior then maybe Behavior Trees are not for you? It’s not a silver bullet, you know :smiley:

Awesome! So will the Gameplay Task be responsible for temporarily catching / executing Events from the Controlled Pawn to handle compartmentalize logic in the task assets? So if it jumps and lands, or move is completed – etc. Is it safe to assume handling the state of task will be left to the Logic Controller. If I had a bunch of Task I wanted to run in sequence. The interface would just allow me to know when task have started/finished and the results - so that I can transition accordingly?

Thanks,

[QUESTION] In your last video you spoke very briefly about Nav Link Proxy and I was hoping to find out a little more. For example: If you have an AI object/character that is simply following ‘My Character’ what happens if there are platforms in the way? Does a NavLink need to be set up for every edge? Can NavLink even enable to the AI to “jump” or is that handled elsewhere? I was initially under the impression AI could move anywhere within the Bounds… now I’m wondering if that is actually the case, even with NavLinks.

Thanks again for all the videos, hopefully I can make sense of this after watching the next one.

The video was really fun to watch :cool: But I have not learned much. The 720p resolution makes it really hard to read the text, and I like it more if the stream would just be made by one, not two persons. Miezko is the master of AI, but also knows really much about AI, so they just talk too much about what they could do instead of what to do :wink: I mean, it was really funny, but it’s just not as helpful as if one person would do the stream alone with a clear script on what to show and what to do :slight_smile:

Are there any news about support for very high amount of AIs (Characters) running around? The last thing I heard about it was like “you should write your own CharacterMovementComponent because it’s too expensive” as far as I remember :rolleyes: I don’t think I can write my own, and I still want to have thousands of AIs running around :smiley:

While I’ve got the attention of all the important AI members on the forum. Could we get an AI sub forum created under Development Discussion? It would serve as a central location for our field of work. It really deserves its own sub forum.

In my opinion, AI educational/help/reference content shouldn’t be split between C++, Blueprints, and Community Content sub forums which is how it is currently. I sent in a request on the request board but it was probably among the copious amounts of requests.

I think it hasn’t been made yet simply because so many of the UE4 AI Tools/features have been very early work in progress. But I feel with the updates to the perception system, behavior trees, and EQS System warrant the creation of it now.

Once it’s created I’ll definitely help compile some useful reference threads if need be.

That actually answers both my questions, can’t believe I forgot about enums.

I just wanted a cleaner way then using bools, and enums provide that. So thank you, and I would never abandon Behavior Trees cause I’ve grown to love them. It’s just so much fun simulating and watching your AI perform their tasks.

Edit; Just want to thank you and for the stream, hope you come on again and do some more AI stuff.

Hi

For those interested, I released a video that continues from the last AI Perception & EQS stream.

I quickly go over some changes in 4.8 Preview 2, and explain how I now have my AI Perception Components setup for the Character & AI. I also go over AI Debug a little more in-depth like MieszkoZ mentioned in the Stream (I still want you to!) but I go so excited so I wanted to squeeze that in. I’m really interested in EQS, so I plan to continue to explore that tool as well.

-Peace

I agree this would probably be a good idea. Not sure if it’s just me, but it feels like the number of interesting threads in the C++ forum has dropped a bit over the last month or so, which is a pity.

To be honest, I think it’s about time forums in general got replaced by a more dynamic tag-based discussion system. There’s never really a good balance between depth and breadth when you have to arbitrarily try to separate everything into single categories. Epic have mentioned an intention to completely revamp the various community hubs, but no doubt that’s a long way off. I’d definitely like an AI-dedicated subforum in the meantime.

I’m using 4.7.6 and trying to get the perception component to work on an ai controller.

Here’s my setup:

http://wobblyduckstudios.com/Images/UE4/AIPerception.png

Here’s my perception fail:

http://wobblyduckstudios.com/Images/UE4/AIPerception2.png

The issue is that the perception component doesn’t see the actor I’m controlling. It also doesn’t fire the “OnPerceptionUpdated” event, so I can’t handle anything :frowning:

Is this something which is broken in 4.7.6 or exclusive to 4.8 preview 2?

In 4.7, you need to call the RegisterPerceptionStimuliSource function on any actors which you want to be detectable through the perception system. So in this case, try calling it in the BeginPlay event on the blueprint of the character you’re controlling.

Ah, thanks! That’s exactly what it was. I wish it was documented :frowning:

No problem!

That could be my (or probably any UE4 dev’s) signature :slight_smile:

For anyone who’s interested, I’ve implemented a prototype ‘Utility Selection’ behavior tree node in an engine source fork.
Thread here.

Hi, guys
I´ve got some questions about this twitch episode.

  1. I must be totally daft, but I just can´t get the gameplay debug tool to open in PIE :frowning: . I´ve got a German keyboard setup so this confuses things, but I´ve also tried to change the keyboard binding in the editor. No luck :frowning: .

  2. The “set enemy” function they set up (24:20) doesn´t seem to work as expected. When I simulate the game and examine the perception debug, I have no enemy.

Best regards,

EDIT: I´m using 4.8

Hi,

well, this is how I´ve finally got it working:

  1. I couldn´t get the “apostrophe” key to work in PIE, perhaps because I´m using a German keyboard setup. I altered the keybinding in the baseinput.ini file. Look for “enablegdt” and change the key setting to something else, for example F10.
  2. Forgot to actually connect the “set enemy” to the “new enemy” pin. sigh

Best regards,

, you are my hero for today :slight_smile:

I was looking for a solution to this issue for days now …
Thanks for sharing this!