How to make helpful AI

There’s a youTube video that explains how to make AI smarter about which items or enemies it wants to chase.
It is very extensive though and I am not sure you need that level of detail, but it is called Unreal Live Training Game Ready AI or something like that.

But if you want to keep it simple you will still need to nake a way for it to compare situations like
“the players health is low, and there is a weapon, some ammo, and a health pack within my radius of interest. I better pick the health pack.” you can do this by having it go through all the player state variables and seeing which one has the biggest percentage difference between what number it has and the desired number. That’s the one to chase after items for. He needs a way to know which items help which stats.

To make him punch a zombie when he gets close, then when a zombie overlaps a cylinder component (or on tick whenever zombie is in punching range), then use LookAt to set the AI pawns rotation toward the zombie and then execute your punching function that plays his animation, then use animnotify keyframes in the animation to generate a trace to test if the punch hit, or you can put collider elements on the fists and use anim notifies to turn on or off whether they are at a point where it should punch anything they overlap with.
then when the punch counts as a hit then you apply damage at location to the zombie. and the zombie has an apply damage function to decide what to do with being punched like play a dying animation