SO I haven't done it but here's the tips I got:
1) I noticed that with the "flight points" added in as indicated with the light green boxes i can't really "tell" my sprites to actually fly from point A to B then to C, they seemed to fly around to random points .
They seem to be flying in a circle in the gif, as mentioned earlier the IID (Instance ID) is being used, so that the first one created on the screen will be A, B, C etc... If you want more control over that arrays are really simple... Put the position of your green spots (click on them and look in the properties bar) into the array, your Array is gonna be as wide as the number of points you have minus 1, (because it starts at 0), Height is 2 for each coordinate and 1 for depth (which you won't use)
So Points x 2 x 1 will give you a table that looks like:
(Point 1 X, Point 1 Y)
(Point 2 X, Point 2 Y)
ETC...
Now to insert the points into the array is a little code: add action : Array: Insert (Point 1 X) at 0 on X axis, Insert (Point 1 Y) at 0 on Y axis, Insert (Point 2 X) at 1 on X axis, Insert (Point 2 Y) at 1 on Y axis
That should solve that with combined previous stuff ^^
2) The event will grab all sprites which are in the event sheet itself regardless if they are in the game area or not, how do i have the sprites to fly around when only in the game area?
Your gonna want to give the sprites a instance variable (preferably a Boolean: something simple like "active") When it's on the code uses it, when it's off it isn't affected by code. Then your going to have to have some event Trigger to make them active. you could also start the game having a few active and a few inactive, and when you kill one a new one becomes active. But yeah just add the condition that when boolean is on it uses that code.
3) I tried to set "System > Create Sprite > On "Game" Layer so that after creation, the sprite will start pathfinding and moving from point to point but it doesn't work, the sprite just spawns and stays there not moving.
So it's only running the code in order from top to bottom: I.e. it grads all the current Enemy4, then if you create a new one it won't grab that. You can add the actions to the Enemy4 after you spawn it, so after this creating sprite action you have, just repeat... ( this may mess with your previous ships, I haven't tried I don't know, if it does make a t2 and a n2 global variable and get 2 going on.)
What you can also do is add a system>for each step to the for each enemy4 condition (this is also where you should add the boolean condition.) It may work, or it may just constantly set the t and n to the same thing... IDK, try it out. Come back if neither of these work to your suggestion: put what you've done and hopefully somebody smarter than me will awnser