Posted December 14, 2020 by cookiedraggy
Wishlist us on Steam! https://cookiedraggy.github.io/
Hi everyone, Null here!
We thought to change things up a bit this week and showcase more of the code side of things while Cookie is starting work on the lewd animations for the tiger!
We started out by brainstorming ideas on our whiteboard. On the upper left side you can see a short list of other enemies that are going to be in the jungle. It helped us figure out a movement pattern that is (1) interesting in combination with the other ones and (2) make sure the tiger is unique enough to be set apart.
My next step is usually to create what is called a Finite State Machine (short: FSM). You break the behavior of an object into discreet "states" or patterns of movement. It usually looks something like this:
It helps me analyze and understand how the object is going to act within the environment. It is also the groundwork for the code later on, as each state translates into its own chunk of code. The transitions between the states, ie. the rules of what makes an object switch from one state to another one, also translate to code.
For example, in the model above the tiger would switch from the "PATROL"-state to an "ANTICIPATE"-state when the player can be seen but she is not in melee range. ANTICIPATE will switch to POUNCE based on a simple timer, to give the player a few frames to react to what the tiger is going to do.
With a model like this I usually go straight to code. It helps me figure out what numbers are making the object tick too.
For example:
After I laid down the foundation of the behavior pattern, most of my work revolves around fixing bugs as they appear and tweaking these numbers to make the enemy as fun to interact with as possible, as well as adding subtle details.
For example, in a very early test, this is what the tiger's jump looked like:
This looks okay, he has a normal jumping curve. But I felt like it didn't quite fit the beefy tiger. It is not selling his mass. I played around with different jump strengths and speeds, but nothing I tried felt quite right.
Then I had the idea to increase the tiger's gravity at the peak of his jump curve, so he would come down faster than he went up.
This makes physically no sense, but the result was way better:
The tiger feels much heavier! I also added a little screenshake to help sell it even more.
That short line at the bottom made all the difference. :3
I hope that was interesting for you guys! I'm about to wrap up the work on the Experimental Build that will be released to $25+ patrons sometime this week!
Cheers,
Nullbunny
I'd also like to take a moment to give a shout out for the game Aurelia! It features beautiful pixel art animations, too, so I thought you might be interested in it, too! Here's the game in the creator's own words:
In this adventure game, you'll take the role of a young adventurer who returns to his childhood village to reclaim a house inherited by his grandfather.
On a sudden twist of fate, you find a mystical amulet in your newly acquired house, and its simple touch puts in motion a chain of events that will lead you to meet a mysterious woman who has sought refuge in your home.
You can download the latest update right now, here.