Loading...
54
Game
Hensen Hopper
2 days ago

This is a much larger (in terms of resolution) video than I've shared here before!!!

This is a full round of Hensen Hopper in it's current state! I mainly recorded this to showcase the new wave difficulty curve algorithm I've been working on!


The enemy wave spawning algorithm itself (that is the algorithm that handles when new enemy waves are spawned and how said process of spawning new enemy waves is executed) really hasn't changed much.

image.png

Random waves are still drawn from a list and their enemies spawned accordingly every time there are no offensive enemies (that is enemies that attack the player) in the scene. The only major difference here (as you can probably see in this snippet) is that the random waves are no longer drawn directly from the waves array that is accessible in the inspector window but instead from a separate internal list of waves that is built on Start and re-built every 10 waves during runtime.

image.png

The process of doing so can be separated into two subparts, adding new waves and pruning waves that are too easy for the point in the round the player has reached, this is in order to keep things exciting for the player, of course!

Waves added are based on a new wave difficulty system. Each enemy now holds it's own difficulty value and the difficulty of a wave is simply the sum of it's enemies' difficulty values.

image.png

Every time the internal list from which waves shall be drawn is updated, I loop through the FULL list of waves (the one I can modify in the inspector window) and add any waves that have a difficulty value less than the player's score divided by five (keep in mind the players score and the difficulty of enemies are both integers so this is an integer division operation) plus three to the list skipping any wave configurations that are already present in the list.

For example, when the player's score is less than five, the max difficulty of a wave that can spawn is two, meaning at most two soldiers can spawn until you reach a score of 10 where the list is next updated since soldiers have a difficulty value of one. Beetles have a difficulty value of two but all configurations involving them also include at least two soldiers so they don't spawn until you've gotten 10 points and the list is updated again (at this point waves with a difficulty leq 4 are added to the random draw list)

image.png

Pruning "easy" waves creates a brand new list from the current one where any waves with a difficulty value less than the players score over five minus five are left out (this proved more intuitive, at least to me, than trying to REMOVE items and since this is only being carried out every 10 waves I wasn't TOO concerned with the runtime complexity, after all, I can always have this happen more rarely by changing the value by which I mod the wave number in figure one).

This created a potential problem I noticed almost immediately, however, where eventually the players score would get to a point where there were literally NO waves that could meet this requirement and they'd all be left out. In order to fix this, I went ahead and made it so they'd also be included if their difficulty was five or greater regardless of the player's score. This seemed totally fine as the straight row of five and any wave with at least three soldiers and a beetle are a difficulty of five, both of which are REASONABLY challenging waves and shouldn't feel too boring to have spawn on you late-game (again, I can always tweak some values later if I need to so shrug).



0 comments

Loading...

Next up

Okay so fast forward ~2 and a half hours of work and I've gotten an effect to play when the shield breaks! There is a sound effect too but for some reason it sometimes doesn't play... Need to figure THAT out now... v0.2.1 is on the way today!

Okay, so I've gotten the functionality for the beetle shell render over the player working! (using the first 3 frames from the beetle shell collect animation as placeholder sprites, these ARE NOT the final sprites)

I DID end up making the body and elytra both 1 cycle/s and the wings 6 cycles/s. I'm working on a video of the animation itself playing in the Unity editor so you guys can see it properly. I think it turned out well!

Doki Doki Literature Club is celebrating Monika's birthday and the 8th anniversary of DDLC with exclusive stickers, avatar frames and backgrounds on Game Jolt! 

Head over to the shop to collect yours 👉 https://gamejolt.com/#shop

#gjbroadcast

I've more or less finished off the beetle enemy's animations now. Here's a short video showing the defeat animation as well as how it currently looks in-game. I still need to work on an effect for when the shield breaks, though.

Dive into the cozy post-apocalyptic open world of Critter Cove!

Gentleman Rat Studios (@GR-Rob ) describe it as “a little bit Animal Crossing, a little bit Stardew Valley. Maybe even a little bit Windwaker, too."

Wishlist the game: https://bit.ly/CritterCove

Here's a short demonstration of the beetle shell power-up in-action! It's not very obvious what it does at the moment because I still need to work on a lot of the effects for it, but the functionality is there if you pay attention to the health bar!

FIRST ACTUAL EDIT USING DAVINCI RESOLVE!!! Also, FINALLY, here's that clip of the beetle's idle animation I promised a while ago.

Mae Borowski is the main character of Night in the Woods! It's an adventure game that tells the story of her return to her hometown of Possum Springs. She was confirmed as canonically pan in a social media post by the game's creator Scott Benson.

The beetle shell is now fully VISUALLY implemented! Next thing on my list is a unique sound for Hensen equipping it.