I've solved most of my debugging issues by adding a new GUI layer and checking various object properties and watching how they update in realtime.
However, there is an issue I am not sure how to test, and that is why my enemies are sometimes rendering off the screen. Perhaps this is a Firefox issue, as I haven't seen it happen on Safari (yet).
You can play the latest version of the game build here
Enemies spawn only at the beginning of a wave, and the code that spawns them is:
I have boxed the spawning code, and yet they still sometimes spawn off the screen and never show up (they have pathfinding, but when they spawn off the screen they do not move). I am starting to wonder whether it may be a bug with C2 itself, as there are no other events that spawn them off the screen. There could be a rare case where an asteroid spawns on an enemy and physics causes the enemy to move off the screen, but the enemies have the Wrap behavior and should show up on the screen anyway.
Speaking of Wrap, the Wrap behavior isn't working on my enemies. I had to manually implement wrapping events. Possibly a C2 bug?ImpulseCollision.capx