
Originally we made a small Flash game as a joke, based around Casino Arcade, where the London shmup crowd used to meet once a week.

We then thought we would try and make something good enough to play seriously. JDE did all the coding, writing the game engine. I handled the graphics, music and sound - we both pitched in on the design and system.
We made a list of different scoring systems, and we both agreed that we wanted a system that didn't involve anything that would screw your run if you died: we wanted a simple core mechanic that you could jump right back into regardless of where you were or how many lives you had. It may sound obvious, but the focus of the game had to be the fun of dodging bullets and destroying things. We also didn't want the game screen to be full of massive bonus point displays, or a score that went into the trillions, both things we find annoying to read and keep track of. Scanlines and Tate support were also high on the list.
There were a number of different concepts - a more traditional setting of space ships etc. - but we soon settled on "Bitter Moth": the premise was that you would play as an ugly moth that was bitter about his bad looks, and would "soul drain" the colour and life out of pretty butterflies and other insects, making them wither and die. Rapid shot would "soul drain" the enemies, switching to laser would finish them off for a bonus. That was the basic scoring, and it would have a visual representation of the system that wasn't just a large number.

I quickly discovered that this would be a nightmare to animate as every enemy would not only have to have 4 or 5 different "states" of greyness, but each frame would also have to have a matching state. It would also take up too much memory and more importantly it didn't look good. Turning everything grey made the game look drab, so "soul drained" enemies were changed to neon instead. JDE got an engine running that could handle what we needed - that was lots of bullets and large scrolling backgrounds, each with multiple layers as we wanted ground based enemies to appear from under certain sections - this was a TON of work.

Obviously we did things arse-backwards by me designing the backgrounds first, then JDE trying to get them to fit into the game. Once the backgrounds could scroll it was then a matter of how much we could load on top before the game crunched to a halt. As the engine got more optimised we were able to add quite a lot. I then had to go back and desaturate the backgrounds so as not to clash with bullets and enemies.

Once we finally got the game engine running smoothly it was time to design the enemy placement in levels, some of which were largely determined by the backgrounds. We generally placed the ground enemies first, then the airborne ones. We'd both played a lot of shmups so had a good idea of the pacing that we wanted. We would meet once a week, work on one stage at a time until we had something playable, then progress onto the next stage until we could play through all stages, then go back to the beginning and repeat, repeat, repeat. On those play-throughs where we could go from beginning to end we could clearly see how the difficulty curve was going.

Sometimes there were things we wanted to do but couldn't as we always had to think about memory and performance. We got into a routine of Skyping once a week, where we would playtest together on a video call, then I would make a ton of notes on what we thought should be changed. We pretty much agreed on most things, and getting all the notes done for the next call was a good deadline.

As the game progressed we kept on adding ideas to the scoring system: we discovered that making a complicated scoring system is actually quite easy... just keep adding ideas! So for a while we had a small helper - the Broken Butterfly - that would follow you like an option. It did no damage but constantly "soul drained" enemies. We were also going to introduce mini chains, where if you "soul drained" two or three enemies and finished them off with one laser blast you would get a multiplier (we might still use this a some point).
There was going to be a bar that would gradually fill up every time an enemy was successfully "soul drained" - when full it would activate a super laser that multiplied the score. During the middle of the game's development we considered having bullet grazing, but didn't actually add it until much later. Eventually we decided to just have "soul draining" and grazing, with some hidden items to find to add variety. The other ideas are enjoyable by themselves, but when added together just made the game too complicated.
We forced members of the Casino Crew to play the game (at gun point) and be as honest as possible about what they thought of it. It was really valuable getting people together to play it. We spent ages polishing the game as best we could, altering enemy attack, damage, speed, placement, HP and more by the smallest amounts. Eventually we got to the point where we could no longer distinguish if we were just making the game different rather than better. So it was time to release - and change the title to Space Moth.

All the graphics were done in Photoshop using a Bamboo Tablet - small gifs were made to check animations, and everything was made at a resolution of 320x240 then doubled in size before being added to the game. All the music was done in Garageband on an iPad, with a few overdubs using the Solina String Emu. The original game engine was first started in Flash, then moved to Stencyl and finally GameMaker: Studio.
You can see how it turned out on the website, http://www.1CCGames.com. I was working on Mac and playtesting using bootcamp, which ran the game pretty good. We will keep this thread updated with any changes etc.