Progress on playability

Greetings everyone!

This has been yet another busy week, mostly because we were a little behind with our schedule on Monday. We managed to catch up, though. This week we made the game playable by implementing the paths for the enemies, adding the shooting behavior for the enemies and allowing the levels and paths to be built from XML files. This last thing basically means that we can now successfully create the levels in a separate file instead of having to put the level design into the code itself. The basics for this were implemented earlier, but only this week did we complete the code that allows us to actually read the files and use their data in the way we want to. As of writing this there are still some bugs in the system but those are already being solved.

What all of the above means is that we now have a playable, albeit very simple, game! As soon as the biggest bugs have been fixed we could just start designing levels and enemies and have a fully functioning game. However, that's not what we're going to do. Right now the enemy sprites are still simple 2D replacements for the upcoming renders of 3D models that'll look much better. Important things like the menu, high scores, pause and mute options as well as the HUD haven't been made yet. We still don't have a boss made yet, although we could simulate one by giving a regular enemy strong attacks and loads of health. We also haven't added the shop where you can purchase upgrades for your ship yet or implemented and tested the dynamic difficulty. As you can see we still have a long way to go, but it's exciting that the core functionality is now all there!

That's not to say we didn't add anything that isn't strictly necessary for the core gameplay, though. One of the things we added is a shield around the player that slowly fades when it accumulates damage. Another one is that we added knockback when the player bumps into an enemy ship, damaging both of them slightly and sending your ship reeling preventing the player from controlling it for about half a second to a second.

I also messed around a little with the bullet patterns to test the shooting system. In only 20-30 minutes I was able to whip up this bullet pattern:


In the picture you can see the temporary sprites for the enemies (the one for the "boss" is quite silly :P) and the bullets we use for testing purposes and the shield around the player. You can also see that the player bullets are not always spaced the same – this is because, unlike earlier, the positions of the gun are correctly recalculated when the player moves the ship sideways which causes the sprite to tilt, moving the guns closer to each other. It's a small detail, but one that's very noticeable when you're playing the game – imagine the bullets appearing out of thin air somewhere on the sides of your ship!

Next week we'll start working on the shops and upgrades as well as the bosses.