How do I call a custom function when ever a collision box comes in contact with something?

The something needs to be literally anything the player character can interact with (I.E. Floors, Walls, Physics Objects).

All you have to do is attach the function call to the OnBeginOverlap node. If it is part of an actor you have to do is cast the actor to the correct class and call the function. If you have many different classes without a common parent class you can create an interface and implement it in every class that should be interactable.

HTH

I can’t seem to find the OnBeginOverlap node when im in the event class for the blueprint with the collision

It should be as Noobs described, try look for ‘ActorBeginOverlap’

I’ve tried it, but it doesn’t work like it should, as it collides with stuff like Arrows and things that shouldn’t be collideable (including things get to noclip)

Would I have to change the collision of every other object? or just the thing with “ActorBeginOverlap” in the event graph

Its an event called ActorBeginOverlap as the post below me said. Is will be there. Just right click and search for it. Make sure that the collision channel is set correctly. You might have to make a custom channel: Add a Custom Object Type to Your Project | Unreal Engine Documentation