The enemies have collision against each other and they're less likely to overlap. They pick a random direction when colliding and this can cause a little wobbling but at least they'll try to unstuck themselves. It's something I wanted to do in the first version but didn't know how to check collision against all other members in the same table/class..
The two known issues in the initial release are somewhat mitigated now. The ball will course-correct itself when it's one pixel off from being able to travel, and it's a little easier to shoot through gaps. Also, the ball hits the enemy when it comes into collision with both the wall and the enemy, but enough of the ball's width will need to overlap the enemy.
Daun has been dating an archdemon she met on Tinder for the past three weeks, but their relationship goes sour when the demon keeps proposing that she marries him.
This is a little hybrid of top-down action adventure à la Zelda and Breakout. Daun can fire up to five sugar balls at once which will deflect upon impact to a wall or destructible blocks, or damage an enemy and disappear. But this costs her sugar if she attempts to fire more balls than her current level: e.g. at level 2, she can shoot two with no extra cost, but the third shot will cost her extra sugar.
Defeated enemies will leave various dessert items for (somewhat) plot-plausible reasons, and this will replenish her sugar. Her blood sugar level depletes over time, so the player will need to actively search out for the demon's minions to stay afloat. While I sometimes get game overs when I'm not careful, the game shouldn't still be too challenging.
Daun does not get experience from defeating enemies. There are four macaron items in the dungeon that will increase her level by 1.
This game pulls ideas and code snippets from all my previous games plus a few new tricks I've learned along the way. The game should take about ~10 mins to finish.
Known issues that can be improved:
- When the ball hits an enemy standing next to a wall and the ball comes into collision with both the wall and the enemy, the ball is blocked by the wall and doesn't hit the enemy.
- When shooting the ball into a narrow gap, Daun's position needs to be exact or the ball will bounce back.
I might need some time to think how I might resolve these...
This was fun! My favorite one of yours so far. Took a little bit to get the hang of it. I did have a couple issues with narrow gaps, or having trouble with enemies right by corners.
I also feel like it might be better to just limit the maximum number of outstanding shots to the current player level? That's what I ended up trying to do anyway, and I feel like it might've been nice to not manage the bookkeeping myself.
@luchak Thanks! I'm trying to fiddle around it, both at the code-level and the dungeon layout so that the issues can't occur.
The initial idea was to limit the shots to the player level, but I found it too annoying when I mistakenly fire in the wrong direction and need to go fetch it back while there's an enemy nearby. Or when an enemy takes more than one hit, the player can choose to fire and dodge, or take an extra -5 sugar and quickly fire two shots to kill it. (And yes, sometimes I forget that I'm level 1 and end up killing myself as well)
[Please log in to post a comment]