Dwarfinator - Blog

Dwarfinator

Punk rock for punk orc

Every punk orc needs some punk rock! Therefore, specially for Porck, I wrote some. To be honest, I have no idea how well the track I made fits the genre, the main thing is that it fits the character. But I've really tried, putting together distinctive drum sequences, guitars and bass of specific timbres and completing all this with perky brass. I’ll tell you a secret, the track is called “Boar and Dwarf” for a reason, it even has some lyrics, telling the story about the tragic encounter of the dwarf Casimir with a harsh forest pig, preceded his meeting with the main character of the game. But you'll probably never see it, as the lyrics are written in my first language, and I doubt I will be able to translate them to english anytime soon, not even speaking of recording vocal. Anyway, the ingame version of the track remains purely instrumental.

Crawling out of huts

Apart from the updated appearance, goblin huts also received new behavior - now goblins crawl out of them not only when the hut is destroyed, but also just in the middle of battle. No need to worry too much about it though, no rapid-fire goblin birth machine with endless ammunition is sitting inside. In my vision, such a hut can accommodate about five goblins - and a single hut will spawn about that amount in total. And as huts vary in decorations, the goblins inside do too. In a common hut you can meet simple thugs and thieves, and in a more prosperous one - a commander, a shaman, a scavenger and even a goblin slave, temporary provided for use to these fine folks by the Cyclops.

Porck

I am continuing to fill the second part of the first story chapter with minor characters. Meet Porck! Not to be confused with pork. He's an orc. He's a punk. With the same Slaughtro in his hand that Wilfred will inherit, and the Strumlo behind his back, which he use to play - what do you think? - of course, punk rock. His purpose in this world is to hand over the axe to the dwarf, willingly or otherwise. And to add a couple of strokes to the orc tribe image. In addition, I'm planning to make him the first in a number of characters for a new gameplay feature, which I'll get back to later.

Goblin huts

The collision feature required some modifications to the object assets - and that's exactly what I was doing when I stumbled upon the old goblin hut. Instantly I realized - the thing is scary as hell, modifying it will only waste time.

Therefore, I had to urgently draw a replacement. Besides, since the drawing of the old one I had in mind adding more advanced hut for the tougher goblins. So here are two new goblin huts for you at once - more detailed, better adapted for animation, more compact - to better match the scale of both their inhabitants and the location itself, and featuring an entrance and internal space from where the goblins will appear. [goblin_huts.jpg]

Tank collisions

Some of you have probably wondered what dwarf needs a tank for, or why there is "side-scroll shooter" in the game genre. The answer is simple - in addition to the defense against hordes of mobs, the game, since the earliest concept, meant to also include chasing the same hordes, running away as fast as they can. It was implemented in some form in the prototype with the old graphics, but no work has been done on it since then.

But now the time has come for me to shake off the dust from the old designs (and to trash them away, as they are horribly ugly and completely useless in the new conditions), and for Wilfred to finally show everyone who is the boss in this damn forest. And he will start, perhaps, from the nearest pile of rocks.

What exactly am I talking about is the movement of the tank in space and its interactions with inanimate objects - rocks, trees and other junk generously spawned in attack mode. Some objects can be easily dragged by tank to be eventually crushed, others will remain standing in place after a collision and if the damage wasn't high enough to immidiately destroy such object, the tank will stop as well. The tank itself also takes damage in collisions, so in order to carelessly crash through everything on its path, tank must be heavily upgraded. I've spent quite a lot of time trying to make interactions with objects more believable and interesting, taking into account many nuances and adding a number of hidden properties to objects and tank parts that affect their behavior in collisions, and most of this also applies to mobs. But I'll get back to mobs next time.

Wilfred's appearance switching

The trick with changing Wilfred's appearance is ready - from now on, after a certain point in story, he gets a new look, both in cutscenes and in the cockpit of the tank. In the case of cutscenes, everything is simple so far - since they are all sequentially distributed throughout the story, starting from a specific moment I simply use another asset - although in the future there is possibility of implementing cutscenes not tied to specific moments with a dynamic choice of the main character’s model. As for the tank - I had to put some work in it. Now the engine picks dwarf's model based on unlocking of certain story flags, places it in a chair and binds it to its animator. And by excluding the hero’s model from the engine assets, I obtained the basis for the feature planned for the next story chapters - additional engines in the tank without the dwarf sitting in them.

Forest Wilfred

The idea of gradually change the appearance of the main character through the story hit my head quite some time ago, but it remained rather in the “it would be cool” section. What made me bring it to light and implement was the recently written cutscene of the victory over Bonecracker, in which Wilfred needed an axe. And if you give a dwarf an axe, he's going to ask for some armor too. So in the second half of the forest location, Wilfred will be a little more protected and dangerous even without a tank. At the same time I slightly updated his basic appearance - no drastic changes, just added a little depth. Actually such update would not hurt a number of other characters and mobs, but whether their turn will come is still unknown. But for Wilfred, as the main character, and besides, drawn 5 years ago by me, who just recently took a pen of a cheap small tablet in hand at that time, this was clearly necessary.

Whelp

I have another minor character here - meet Whelp. Son of Bonecracker, so untimely left without his dad by meeting our brave dwarf. As he couldn't find a better use for himself after this tragedy, Whelp starts to bring boulders and logs to the Casimir market, earning himself a meal. It's gameplay purpose on the market is to sell stone and wood at low prices, but in large indivisible chunks - you won't be able to buy 1 piece of wood from him, only the whole log.

Cutscene aspect ratios

And the last point regarding different aspect ratios - cutscenes. Due to the two-dimensionality of the game space (more precisely, to the fixed direction of the camera relative to it), just expanding/shrinking the frame was not enough. There was still an option to simply fix frame size with black stripes, but that would be too boring. Therefore, I added to the commands of moving and teleporting actors the ability to bind the target position to the camera by anchor, borrowing the idea from RectTransform component in Unity. Thus, I got the opportunity to send the actor, for example, "to the left top corner of the screen", "beyond the right border" or "slightly to the right and below the center", and with its help I adapted the existing cutscenes to any screen width. Here some example screenshots of defeating cyclops cutscene with a whole pack of female goblins, dead and not quite.

Aspect ratios

Following the progression screen UI the rest of UI elements and the gameplay itself were also adapted to different aspect ratios. I should probably explain more details about the last one - the original concept of the game meant fixed position of the camera, with the battle field exactly fitting the screen. And as the mobs spawn beyond its right border, their path to the player base would take much less time at 4:3 aspect ratio than at 16:9. In the first prototype I've compensated this issue with mob speed adjustments, to keep the base reaching time the same at any aspect ratio.

However, with the real graphics it turned out that at the squarest aspect ratio the base take almost half of the screen, and the difference in the distance between base border and screen edge to the widest one reaches 4 times! Simple speed adjustments don't work well at such rates. So now the battle field has fixed size for 21:9 aspect ratio, and at the aspect ratios more narrow only part of it displays at the time, enabling moving the camera to its borders. I've developed three with a half different ways to control that movement, which one is better only time and players will tell, for now there is a switch for it in the settings window.