Dwarfinator - Blog

Dwarfinator

Title screen

Since the beginning of development there was only a simple stub instead of game title screen. But look at this dynamic background now! The location it use and its content are changing according to the game progress in latest save. Actually I wanted to place there some full screen art as background, but as I'm more of a programmer than artist, creation of something like that would take a lot of time which I don't really have.

Battle UI

For last couple of weeks I've been working on various improvements in battle UI. The changes visible parts suffered are small, but there's a lot of additional information now available through tooltips for most of them. And the pause window reworked from scratch and united with the result window. Now the player will be able to see current stage loot and kill stats at any time.

Settings window

Some screenshots of a settings window. Most likely not in its final form as there's always could appear a need in another configurable thing in further development. Took a little longer than I expected as I had to deal with inability of Unity to separate UI textures from ingame sprites. So now I have my own mipmapping imitation for the UI which picks a texture for the UI element according to its actual size on the screen regardless of texture quality setting value.

Freeze spell

It's time for May to have her first active skill. The spell she casts is able to freeze to the ground almost any enemy. Techically, it's instant cast of AoE inflicting "Freeze" effect on mobs, which immobilize them for certain amount of time and does some ice damage in process. I already had snowflakes and ice shards, so all I needed to draw is magic circle and some ice decals.

Forge UI

It seems I left you without updates for several weeks again. Not without a good reason though. After thouse weeks I can finally say that forge UI is complete and fully functional. I had to draw a lot of new UI elements and redraw some of existing, rewrite almost all the code from scratch and even change some of UI logic. The result you can see on attached screenshots. And now I can finally get back to working on something more enjoyable. As I probably already said - I hate making UI.

Item parameters

With new parameter system based on new icons and tooltips it's now possible to see all the important item stats in its description panel. And if some parameter is not informative enough you can call its tooltip and see the rest. For example, the armor parameter displays average value for all damage types, but its tooltip shows armor value for every damage type if it's different from zero. And each sub-parameter also has a tooltip.

Windmill in action

Few hours of animating, little adjustments to companion visualization, some little things like icon, description, stats and upgrades - and the windmill is fully implemented into game! Wilfred and Ugylk say it works just fine in its place. The dwarf is especially happy about it as he don't need to pedal whole the tank on his own now.

Windmill

While reworking inventory UI is still in progress, I found some time to make new engine for Wilfred's tank. Yep, that's a windmill. And I know it can't possibly produce enough power to move a vehicle that big, but neither can dwarfcycle. Though I always try to create tank parts with some visual explanation of how they work, it was never about total physical accuracy.

Progression screen soundtrack

Although I already had a track for progression screen, I felt it shouldn't play there all the time and suits only for one of later locations. So I decided to make a separate menu soundtrack for each location. And another one of them is already here, it's called Campfire and will accompany player between stages of the forest location. With this one, total amount of soundtrack is reaching 20 tracks with 55 minutes total length, which is probably already too much for a game like Dwarfinator. But I just can't stop. Maybe making a game was just an excuse for making a music.

Icon system

Inventory-related UI rework in progress. Stuck here for a while, for many existing features were inefficient or not reusable. Right now, for instance, I'm making general icon system to decerase UI latency and make possible partial updates of multiple icons. It's become possible with building icons from multiple parts such as background, content, frame and others instead of baking full icon and using scriptable objects to store values of those parts as single style asset. I can also merge multiple styles into new one at runtime, which allows me to store some changes in icon, like highlighting or selecting, as common style for every icon of certain type.