Handling multiple enemies as one actor

The setup here is a tad strange, why is there a character class in the first place? Do you intend to use a character for this?


Since it’s set up this way, there are three (or even 4 - not sure what GC_SM_DestructionCube is. A child actor component?) colliders that could potentially interfere with projectile collision:

I’d double check those - one or more of them is the offender. As mentioned above, do test what the projectile hits - Print its Display Name. You’ll get an immediate answer and will know who is the troublemaker.

It seems I have to have a character mesh otherwise I can’t inhabit it as the player to control, nor can I get rid of it so I just hide it, I think the collisions are okay its the actual Event Hit that isn’t working something isn’t right as the instanced actor doesn’t seem to destroy

This doesn’t print anything at all

No need to cast or destroy anything. Read the doc about collision. Ignore projectile’s collision against the colliders belonging to the player character.

Not sure what type of game you’re making, but you can possess a Pawn without anything in it. If you’re making an invaders clone, that’d be the way to go.

1 Like

OKay I’ve made sure everything ignores the projectile in the character itself and made it a Pawn and added Floating Pawn Movement so I can control it still (hopefully that’s right?)

  • it still fails to destroy itself when hitting the enemy
  • the enemy still fails to destroy
  • I can’t change the direction of the static mesh in the viewport anymore now its a pawn
  • inputs for left and right are now doing opposite (incorrect)

BP Enemy

BP Enemy instanced static meshes are the same as below

Player_Shoot Actor

Character Player

Ship Static Mesh collisions

I know for sure that this is returning ‘None’

So the For Each loop creates each type 4 times as I understand it then multiplies their location by 100 so they shouldn’t be touching, however they just become one long line without a break, so I had to increase it to 200 to represent the same distance is has in the pawn/actor itself but I need them to hit hit and go down one space and keep going, I’ve managed to get this working so far with the following as a test, not sure if this is the more performant way of doing it, then of course I need something to trigger it moving down in the first place doing it once and then returning to go the one direction before going down etc etc

What I’ve considered for hitting a ‘wall’ then moving down and going other direction etc, but is that the most performant way?

Please revisit this part. The implementation in the BP_Enemy does not make sense.


Pick any tutorial on projectile spawning or have a look at the fps template - projectile spawning is implemented there.

Paramentrize Z and have the Lerp node use it. Or, better, move the entire actor lower - remember that all of this is just 1 actor.

This should be done with the timeline curve.

I’m not sure how to implement this, I’ve tried the following but it sets the rest of the values to 0

vertical timeline

Apologies, I’m not following this with enough attention. We want to move the actor down with a timeline, right? If so, definitely use a separate TL, it could be close to:

Call the event when you’re ready to descend or it can run non-stop - depends on the gameplay loop design.

1 Like

Appreciate the honesty haha, okay well, last thing I suppose, how am I to correctly call this descend event, I’ve created a BP_wall and just done this but it don’t work

Debug it. As before, collision channels, what overlaps with what, does the cast fail, can the wall generate overlap events:

1 Like

Okay so this is working

just need to work out how to make sure as soon as it happens it starts heading the other way some how, possible to read the current direction of the actor? left or right?

Okay I have a solution, please let me know if its not performant, the best way etc

Wall 1

Wall 2

1 Like