Improvements since the last update two weeks ago.
- Various sound effects added, mainly with respect to the player taking hits and shields recharging.
- The spawners detailed in the last update were added to the campaign/arcade mode, and were given an internal queue to hold multiple enemies.
- A few graphical layer issues fixed, such as projectiles formerly being “under” spell effects, making them hard to see.
- The Campaign now actually chains into the next cutscene, so it can actually be played, although I have not begun any work on the real campaign yet, only the programming skeleton. I also added a much needed restart feature, so you don’t need to quit the entire level each time you die, and can just start over. This works for arcade mode as well as an individual campaign level.
I also added a feature where the player gets a defensive bonus, taking only 25% damage, if they aren’t attacking. The main goal was to force players to pick their spots more carefully, but also to let players learn faster, since they can spend more time observing their attacks.
There’s now an an item that clears all projectiles. You can see the UI representation of the armour in the shield graphic above, while the blanks are represented by the three blue items. The used/not available states are shown below.
I disabled the HUD that follows the avatar around on screen. I might have to re-enable it with some tweaks, since I don’t think the game does a good job conveying necessary information to the player, and the more frenetic the combat, the worse it is to have to glance over to the right side of the screen to see the state of your grenades/blanks/armour, etcetera. I’ll probably talk more about that in the next entry.
Anyway, enemies were given momentum when staggered. Initially I did this purely as a graphical feature. Then I realized that sending the enemies flying is hilarious, and also added a feature where the enemies take damage from hitting the walls, depending on their speed. That was a bit glitchy, so I toned down the acceleration from being hit for now, although you can still bait the Golems into leaping into a wall and killing themselves.
Some enemies had their poise tweaked. For example, the Golem is only vulnerable to stun when they’re recovering from diving at the player. The MtF troon only when throwing, etcetera.
The last noticeable change was the one that took the least time, yet was also the most important. Since the start of development I shoved the camera in close, since that felt the best for a variety of reasons. I assumed that the minimap, shown in the bottom right corner, was good enough that I didn’t need to show the player the entire level.
Unfortunately, the minimap isn’t good enough. That’s partly due to the minimap being extremely rough right now, but no matter how much polish gets added to the minimap it’s never fun to get hit by projectiles that start offscreen. I played around with various “sized” 2D cameras, and settled on one that shows pretty much the entire level, and the game was instantly more enjoyable to play. I think that a full camera view is necessary going forward, although this leads to another problem where the camera is so pulled back that the action feels somewhat remote.
It’s interesting how 2D shooters need such a tight link between map size, character size, and movement speed. That’s somewhat disappointing, since there are advantages with a much larger combat arena, but if the game doesn’t feel right, or the enemies can kill you from offscreen, it just doesn’t work. I could potentially work around this problem by preventing the offscreen enemies from shooting at the player, such as making a variety of rooms/obstacles in the way, but that’s a different kind of game entirely.
I’ll play around with much smaller arenas, such as the one I created for the first prototype boss fight, in the future and see how that affects things. I might also blimp up the size of all the characters while changing their movements speeds. Whatever the case, as broken as the game is right now I do enjoy my daily playtests, and I’m also enjoying these two week updates.