Foreseen yet Unpredictable Invader: post-mortem #1

Hi again!
First, thanks for the ratings!

So, I'll be talking a bit about what I intended to do, what I scrapped down, and why I have made some decisions.

Also, I was pretty surprised by the number of DNW. Could anyone give details on those issues so I can provide a post-compo fixed version?

Game Concept

Back when the 13th iteration of PyWeek was announced, I was working on reimplementing a famous bullet-hell game. Then, someone told me the challenge was about to start, and I voted for the themes, without giving them much though. Then, at night time, my sick brain began to apply the “Mutate!” theme to what I've been working on.
So, the basic idea of the game has been unchanged since then: fighting enemies whose code would be mutating as you hit them (I'll explain the details later on).
When the theme was decided, I began to think more about the game mechanics, and shortly decided the player would have to fight one (and only one) mutating boss which would launch “drones”, which are simple, stationary enemies shooting bullets in a way similar to the boss.
I had a hard time deciding whether the boss should move or not, and I ended up making him stationary. And I can't recall why!

No, about the mutation part. It's a core feature of the engine, but doesn't really show up in the gameplay. Why? Because I wanted consistent scoring. I figured having a non-deterministic mutation path would easily make the scoring inconsistent, and that would have taken far more than a week to balance properly. It might have been a bad choice of mine, since it's prevented me to use the theme in the gameplay.

What I've scrapped down

I'm pretty happy with how the game ended up, but there are a few things I wanted to get in the game that I didn't to.

  •   Music. I've even spent hours searching for suitable musics. And I've found some. Unfortunately, pyglet kept segfaulting on my computer, so I had to forget about the whole the idea (or ship uncompressed WAV files, but well...). Here is the list of planned musics:
    1. Startdrive — Good morning
    2. Startdrive — A new day
    3. Dr. Salt — Hide your sadness
    4. Startdrive — Digital Surfing
  • Super-awesome pokémon-like intro. I've written a funny intro full of references to popular games, shows, etc. and had a clear idea in mind. But then I tried to do the graphics for it, and pixel-art really is not my thing. Not to mention it would have needed a fair amount of additional code to work.
  • Backgrounds. I wanted scrolling backgrounds so hard. It would have really easy to code, but I really had no idea what I could (try to) draw. 

And that's it for the first post-mortem! The next one will be about the technical aspects of the game.

Once again, if the game did not work for you or if you have found a bug, please detail it, I plan on making a post-compo bugfix version!

(log in to comment)


I was pretty surprised by the number of DNW. Could anyone give details on those issues

While it ran for me, it didn't seem to be working properly. The enemy's bullets didn't seem to have any effect on me, nor my bullets any obvious effects on the enemy, although I think I did manage to kill one eventually.

From comments I've seen posted since, it seems like the player has an extremely small hit area -- is that right? If so, it may have been working as intended and I just didn't understand what was going on.

If that's the case, it might be better to make the bullets smaller and the hit area bigger, or something to make it more obvious whether a bullet is hitting you or not. Also, have something happen when you hit the enemy (explosion, sound, etc.) instead of just invisibly accumulating damage until it dies.
I doubt it wasn't working properly. Indeed, the hitboxes are really small, and you can see them by holding shift, as said in the intro.
A bullet hitting you is immediate death, so, it's pretty clear when it happens :)
A bullet hitting the boss disappears, so you should always be able to tell if you've hit it or not. Adding a life bar and/or sounds would probably have made it clearer, though.
The small hit boxes and the boss that lasts five minutes under continuous fire are genre staples. Arguing them is heresy — you better just get used to it :).