Thanks everybody - I'm very excited to get this game in the store.
The motion trail on the player's ship is done with three instances of the Cocos2D experimental class MotionStreak by Jason Booth. Look under the experimental folder in your cocos2d directory.
If you use the default sprite in MotionStreak, the tail "pulses" on & off. It took me forever to figure out that the sprite it was using (fire.png I think) was the cause. Basically what the class does is stretch a sprite along a path. Since fire.png is faded in all directions, when MotionStreak displays the clear parts of the png the trail went away. The new image file I made only fades in one direction (can't remember, but I think the fades are on the left & right of the image).
My player ship rotates nearly constantly. MotionStreak isn't (or wasn't?) designed to be rotated. Initially, I attached the MotionStreaks directly to my player ship node. That ended up causing the streaks to rotate & look very unnatural. So, my solution was to make a player node that I moved around the world but didn't rotate. I attached the player ship sprite, player shield sprite & 3 MotionStreaks to that. The only thing that gets rotated is the player ship sprite.
I used 3 MotionStreaks to make it look more impressive. The main tail is attached to the center of my player node. The other two are offset from the center of the player node by a small amount. They are smaller & different colors than the main tail.
The one thing I'd still like to do better with the MotionStreaks is make them realize they are in world space. My play area is much bigger than the screen & I move the player, enemies, explosions & camera around on another coordinate space than the interface stuff (scores, etc). That gives the tail a slightly non-realistic look. Still, I really like the effect & I don't think many players will notice the difference.
Now everybody...go add MotionStreaks! :)
Thanks to Jason for writing a great class!
-Bryan