Download

Overlapping doesn't work when toggle visible and player already in the area

Hey all,
Just making another topic, because, after I fixed my problem with lights here, I noticed something that happen for my lights, and for a monster. I use the BeginOverlap nodes for a bit everything, but, some of the collision spheres are not visible until the player do something. And the problem appear when the player is already in the area of the collision sphere (that is still hidden), and when the sphere turn visible, the BeginOverlap doesn’t trigger, I guess because the player never really entered the area, as he was already in. It happen too for my monster, the player can flash him and make him stop, but when the player activate the flash and that the monster is already in the collision, nothing happen.
So, is there a way to get passed that ?
Thanks for your answers !

You can do some thigns:

1 , use the node, is overlapping actor, to ask directly if the player is in the area, without need for the begin-end-overlap

2 you can leave the areas, always active and hide only the light or the mesh,
create another step in the blueprint, to make the area, record the player presence, but , only if he is visible, call a custom event to do some action.

I have for the moment that blueprint, I just tried to add the “overlapping actor”, but it doesn’t work, am I doing it wrong ?


I already added a “Is Visible” because without it, even if the Visible was uncheck for the sphere collision, it was setting overlap light to 1.
And I must say that I don’t quite understand what you mean for the second option ^^’

"The is overlapping actor "
Create a custom event and call it “CheckPlayer” use this event to check if the player is in the light area. with the “is overlapping actor”
you can call this event when you begin the game, (because overlapping will not occur if you start inside it)
or when you light on an area light, (Because again, the player will be already inside and it will not Start-Overlap)

So, it should look like that, right ? I know that, like that, the custom event is useless, I could just replace it by the event tick x) But when you said that I could call it when I begin the game, I thought it like that, but I’ll change it.


You said that I can call the event when I begin the game, but you mean with an “Event begin play” ? I tried with this configuration, and, from what I see with the breakpoints and looking at the bp when simulating, it set my boolean to 1. But it doesn’t make the progress bar going up.

Ok, I found the thing, and that’s really strange. So, with my event tick, I check if the player is overlapping or not. And with the branch, I put the boolean to 1 or 0. The problem is that it seem to switch between true and false everytime, even if the player is overlapping… (“Overlap pas” means “don’t overlap” :p)

](filedata/fetch?id=1823273&d=1603018812)
And of course, if I delete the set boolean from the false, it never turn back to 0 if I stop overlapping

Edit : well, just had to move the boolean I talked about just before to an “End Overlap” and it’s ok x) Still, it’s strange that the “is overlapping” switch everytime

Hi man,
check the is.overlapping at every tick is a bit consuming!
I suggest you tomake a clean single customevent for running that check.
You can call it, every time you need but “once”

The game start? call event “CheckLight”
The player is teleported ?call event “CheckLight”
The lights suddenly goes black and then light on again ? call event “CheckLight”
A bullett hit a barrel of fuel , and the explosion make some light? call event “CheckLight”

You have both the result True and false, because both your lights-area are checking !
so , again you dont want to call that thing at every tick for every light.

I think you can fix this thing removing the Set 0 if is not overlapping.
You can manage this without it.
You only want to know if the player is IN the area,
If he is not in the arealight leave to zero and if he is leaving the area, the end-overlapping event will occur to manage the stuff

(Beware that you can still be out of any light but having a lamp or an object)

Hey ^^
Yeah, I saw that Event tick was far to be the best solution, but it was working, and I don’t have that much things using an event tick (I think I saw that if there was some event ticks, it was not that consuming), but yeah, I’ll change it to a custom event when I’ll have the time ^^ (and sorry for the late answer x) )