Monthly Devlog | August 2019 | No. 7

Development
September 11, 2019
February 21, 2022

It’s been another busy month spent developing Depths of Erendorn, from modelling different enemy types and creating new animations to implementing a character customisation system. As well as this, our budding fantasy world now includes water! We’ll also be showing off some brand new visual fx for abilities in the game, so if you haven’t already seen those on Twitter, Instagram or Reddit, then make sure you stick around!

3D CHARACTER MODELLING

After we completed modelling the Tribed series of Lionmen in our last game development update, this month we moved straight onto creating the Untribed series. These can be a particularly ruthless group of enemies since they are bound to no rules or leader, enabling them to really indulge their savage instincts.

With the base meshes for the bodies and manes already made back in July, all there was left to do on the Untribed series was to create their clothing – and, since their clothes were not too dissimilar from our Tribed Lionmen, it didn’t take too long!

  • We started by blocking out and detailing the different pieces of clothing.
  • While the Tribed Lionmen wear shorts with an armoured front, Untribed Lionmen wear more gladiator-inspired skirts.
  • They also wear slightly different armour over their shoulders, and instead of bandages they have studded leather cuffs around their wrists and ankles.
  • After blocking everything out, we added more sculpt details like folds in the skirt’s cloth, their rope belt and the necklace they wear.
  • After all the modelling was complete, we created low meshes for them and then baked the maps so that the full model would be ready for texturing.

Next, we focussed on creating the clothes for the Tribal Leader, whose base mesh was already modelled and baked in our last game development update. Even still, the clothes that this character wears were a lot more detailed than the previous sets we had made so it took a little extra elbow grease.

  • The rope belt this model wears was made using splines in 3ds Max, which allowed us to make the interconnected loop shapes you see.
  • Tassets were made for the side of the Leader’s legs, while an extra cloth piece was designed for the front of the skirt.
  • Metal cuffs were made for the Tribal Leader’s wrist armour, rather than the simple bandages worn by members of the tribe.
  • As always, when all the various clothing and armour pieces had been sculpted, low meshes of them were created and the maps then baked.
Low poly model of an Untribed Lionman
After we sculpted the clothes for the Untribed Lionmen, we created a low mesh of them.
2 baked models of Untribed Lionmen
We then baked the maps and moved onto creating the Tribal Leader’s clothes.
Low poly model of the Lionmen's Tribal Leader
The Tribal Leader had many more details in its clothes than the other 2 sets of Lionmen.
Baked model of the Lionmen's Tribal Leader
These details include things like tassets, spikes, shoulder armour, intricate waist armour and various adornments around the face.

With all the clothes modelled and out of the way, we could finally move onto texturing! It was actually quite challenging to accurately replicate all the different fur tones in a lion. To make life a bit easier, we decided to use a photo of some lion fur and then used a cell filter to pixelate all the different shades. This allowed us to more accurately colour pick from the various tones, leading to a more realistic result.

Starting with the medium sized Lionman model, we:

  • Used a procedural fur pattern to generate the shorter hairs on the body.
  • We then textured the mane by projection painting it from a photo.
  • This process ensured a much higher level of accuracy.
  • All the other sized bases were then textured using the medium base’s textures.
  • This was possible because we made sure, while modelling, that all Lionmen had the same UV layouts.
  • This meant that the exported textures of the medium Lionman could be used as a foundation for texturing the other bases.
  • The manes, however, had different UV layouts and so were repainted separately.
  • Different musculature cavity overlays were then also created for the different body sizes.
Front and back of a textured Lionman with no clothes
When texturing the fur, we used a pixelated photo of lion fur to accurately colour pick all of the different tones.
3 ascending sizes of textured Lionmen models

After texturing all of the bases, we then projection painted the manes separately.

After the base textures were done for all the body types, we started texturing the clothes. Luckily for us, many materials, like cloth and leather, could be produced quickly and built upon, which massively streamlined our entire process. We were able to do this due to a library of custom materials that we have been steadily growing with every character creation.

Our production process was also sped up by the fact that we detailed some parts during the texturing phase instead of the sculpting phase. The parts made from bone, for example, were detailed while texturing because of the simplistic forms they had.

The final part of texturing the Lionmen was to simply add a lot of awesome details:

  • Creases and stitches were added to the Tribed Lionmen’s shorts.
  • A unique pattern was painted onto the Tribal Leader’s front cloth piece.
  • Dirt and scratches were added to the Untribed Lionmen’s clothes and armour.
  • Black stitching was added to the Untribed Lionmen’s red skirt.
  • The cuffs on the Untribed Lionmen were given metal studs that stood out from the leather.
  • A headpiece was created for the Tribal Leader to reflect its prominent, more regal position.

And with that, we closed the book on the Lionmen! We had so much fun creating this race of enemies, and we know you’re all going to love fighting them in the game. But they’re not the only enemy type we boxed off this month. We also completed the Wolvajin character series, another race of enemies who are known for their guile, precision and speed – and for stalking their prey at night.

We already completed the first Wolvajin model back in May, so we finished off the series by simply creating the rest of the meshes for the stronger Wolvajin variants. We did this by inflating areas of the body to make them appear more muscular. With a now-complete set of Wolvajins, we could move onto creating yet another race of enemies – but you’re gonna have to come back for our next game development update if you want to find out what that is! (Or, head over to our game site, where we post weekly game devlogs!)

Lineup in ZBrush of 2 textured Untribed Lionmen wearing clothing and armour

The Untribed Lionman series.
Lineup in ZBrush of 3 textured Lionmen models in ascending sizes, wearing clothing and armour
The Tribed Lionman series.

CHARACTER CUSTOMISATION SYSTEMS

Much of this month has been spent researching and testing possible systems for character customisation in the game. While Depths of Erendorn has zero pay-to-win features, we do want to give players to opportunity to customise their characters however they like, whether that be their proportions, facial features or clothes and armour. Therefore, we need a system that will allow players to easily do this.

When it came to finding a system for customisable clothing, we thought that the best approach would be a modular pawn approach:

  • A modular pawn approach involves splitting up the base mesh of a character
  • This should then allow us to swap out parts of the base mesh for other pieces of clothing or armour
  • This will enable players to modify and customise character’s clothing however they like

Meanwhile, we decided that bone scaling would be the best way to approach customisable body proportions in the game. This is because bone scaling also influences the size of the clothing and armour so that they adjust to match the altered proportions. Therefore, if a player wanted to make their character more muscular, the clothing would be fitted to the new body size.

For customisable facial features, we found that blend shapes and morph targets would be one of the most efficient systems to implement:

  • Blend shapes and morph targets are essentially stored pieces of information on the location of vertices
  • They also allow for interpolation between the values of the default target and the values of the morph target
  • In a nutshell, this means that players will be able to literally slide between two set size ranges of any facial features – from a small nose, for example, to a large nose (or any size in between)!

To get this character customisation system working, we’re using the Unity Multipurpose Avatar (UMA) plugin, which provides a good framework as well as many additional features for us to work with. To test this, we have created and skinned a character to use as a dummy – but we’re having some trouble implementing this character customisation system into the game (because Unity hates us and all of humanity).

There’s still lots of troubleshooting that we’ll have to do before we can get this system up and running. Hopefully the plugin we’re using works, or we can find another one that works, because otherwise our programmers are gonna have a lot of work to do… so we’ll keep you posted!

Front and back of a textured Wolvajin model
We created the original Wolvajin model back in May.
2 sizes of Wolvajin models, one big and one small
We then inflated areas of the body to create the more muscular variants.
3 variant sizes of Wolvajin models, each one slightly more muscular
The final Wolvajin series.

ANIMATION

One of our playable characters from the game, the Watertarg Excursionist, received a lot of attention this month. We started by updating several of its animations, like Leaping Strike which the Watertarg can now perform with a two-handed sword. We also made another version of the Sprint animation so that the Watertarg can also Sprint while holding one-handed and two-handed weapons.

We also created several new animations for this awesome character:

  • Giant Strike: This enables the Watertarg to perform a heavy strike with its sword, dealing a significant amount of Damage.
  • Swift Hit: A fun little combat move, Swift Hit not only deals Damage but also has the chance to stun enemies.
  • Pulsating Wound: This gnarly-sounding attack deals Damage to enemies for five turns as well as affecting their Movement.
  • Leap: This is a generic skill that allows the Watertarg to jump from up to 4 tiles away, giving them a rather dramatic entrance.
  • Basic Attack: A one-handed basic attack allows the Watertarg to use a weapon to attack opponents.

Following this, we imported several Watertarg animations into Unity so that we could test them in the game. After that, we decided to focus on the Parakaw Astromancer for a bit, since this playable character also needed a few animations created for it. These included a simple shuffle from left and right as well as an animation for the teleportation ability that Parakaws now have.

With all of that out of the way, we then went on to create basic, out-of-combat idles before adding them to the characters who still needed them – like the Knight, Parakaw Astromancer and Twilight Elf Assassin. These were then imported into the game engine so that all the characters could be updated.

We also imported Swamp Rats, Giant Rats and their respective animations into Unity. Rats are common, low-level enemies in Depths of Erendorn that can deal a fair amount of Damage, especially if you underestimate them. With all of these different characters and enemies getting imported, we can continue testing their playability as well as start adding VFX to them – which is pretty exciting!

GIF of a Watertarg's sprint animation in Unity
The Sprint cycle for our Watertarg.
Watertarg animation in Unity showing it attaching a Skeleton with its hand
Our Watertarg using Swift Hit.
Animation in Unity of a Watertarg attacking a Skeleton
Giant Strike animation for our Watertarg.
Animation of a Watertarg leaping from afar in Unity
We think the Leap animation is our favourite from this month!

ENVIRONMENT ART

August was a momentous month for us in the Environment Art department because we finally managed to add water to our scenery! To do this, water material was created with edge foam and dynamic depth colour in order to establish a more realistic look.

Getting foam to appear around objects that intersect the water was a crucial detail that we wanted to utilise in order to make the environment feel more immersive and complete. We also wanted to improve the visual quality of the bodies of water that we were introducing, and to do this we decided to look into flow maps.

Flow maps are useful because they give directional information to textures. This comes in handy when creating something like a running river or a lava stream since the flow maps essentially tell the textures where and how to flow. Utilising flow maps like this will really help to enhance the overall realism of water and lava, both of which can be found all over Erendorn!

This month in the Environment Art department, we’ve also created a procedural rock generator. Trust us – it’s more exciting than it sounds! That’s because this new procedural rock generator will allow for high resolution rocks, cliffs and walls to be generated from base meshes at the touch of a button. The main benefit of doing this is that it makes for a much faster production process – hence why we’re so excited!

Screenshot from Depths of Erendorn showing mossy rocks in water
Water has now been added to our environments.
Screenshot showing a procedural rock generator tool
A procedural rock generator has also been created.

WEAPON DESIGN

Last month, we mentioned that we had decided to use a modular weapons system in which our weapons would be broken down into their components so that they could be procedurally generated in the engine. That work continues into this month as we created several new high poly sword components. We then created low poly versions of all five swords. This was actually quite challenging because some pieces, like the twisted metal hilt, were difficult to create without using a lot of polygons.

With the low poly versions of our weapons done and dusted, we UVd, baked and textured all our swords in Substance Painter. In accordance with the modular weapons system, these were then imported into Unity as separate components to allow for component customisation.

Unlike the character customisation system, doing this will allow us to create lots of different weapon variations from these components by combining them in interesting ways, rather than giving the player the ability to customise their weapons directly (although, in the future we will be introducing a range of weapon skins that players can choose from!).

Wireframe meshes of 6 swords

Low poly versions were then created for all our swords.
A twisted hilt of a sword

Some pieces were really challenging to create low poly versions of without using a lot of polygons, like this twisted metal hilt.
6 models of swords leaning against mossy rocks

With the swords all UV’d, baked and textured, we could import them into Unity as separate components to allow for component customisation.

GUI DESIGN

Another important thing we did this month was discuss the design of the GUI, a crucial feature for any game that should really focus on enhancing the user experience. This is why it was important for us to establish:

  • What information would be most necessary to players
  • Where this information should be displayed on the screen
  • How this information should be presented so that it is clear and appealing

To get the general gist down, we started by making a UI blockout before discussing character frame layouts. This blockout has been through many revisions since its initial conception and has been really useful in helping us determine a visual theme. What work we’ve done on the GUI so far can actually be outlined in 5 key phases:

  1. We started by doing some good old fashioned research, like collating images from other games that inspire us. We tried to keep in mind how players would interact with the UI so that we wouldn’t run into any user experience (UX) problems.
  2. Taking this inspiration, we continued to add more elements to our GUI blockout in order to figure out where all the different aspects would go – like the abilities bar, the character details and stat sheets, and so on.
  3. Next up were the character frames. When designing these, we tried to ensure that they would display all of the necessary information a player would need whilst being visually concise. Otherwise, our scene would look cluttered and confusing.
  4. We then began discussing and testing the layout for the inspector panel, the XP bar placement and the Available Movements indicator.
  5. The final phase involved us fleshing out the detail panels and other UI elements. We also finally decided what our overall visual theme should be, so we are currently working on bringing that vision to life!
Screenshot from Depths of Erendorn showing the GUI blockout

When designing the UI, it’s crucial to think about what information is most important to the player.
Character frame blockout from Depths of Erendorn

We have also started designing character frame layouts for Depths of Erendorn.

VISUAL EFFECTS

So, in our last game development updated, we gave a little hint about something new that was to be expected in the next devlog. Well, the day is here and we’re ecstatic to say that we have welcomed a new VFX Artist to the team! With them on board, we can begin adding visual effects to our characters, their animations, abilities and everything else in between. It’s really awesome to see the game get brought to life in this way, so we can’t wait to share some updates!

This month, our VFX Artist added a ton of textures and materials that will be used with visual effects. They also began reworking some of the effects for the generic spells and skills in the game:

  • Bash and Dirk Kick, two generic skills in the game, had a little umph put into them by our artist adding a dust cloud shockwave effect.
  • Fireball was given a bit of a facelift by its smoke trail being made more dynamic with the use of embers and less linear movement. Its hit explosion effect was also worked on.
  • Acid Bolt was made to look more fantastical by adding moving pinpoints of light floating around it – although it’s lacking some of the deep, dark colours from the artwork, so we’ll be working on improving that over the next few weeks.

Meanwhile, our artist was also working on a secret Ultra Shader that will help to optimise their workflow. Once they’ve got this bad boy working, our VFX Artist will be unstoppable! So we’re really eager to get it up and running. Wrapping things up, some of the new VFX were added into the game to see how they looked – and they look great! More of the skills will be getting worked on next month, so keep your eyes open for our next devlog if you want to see how they all turn out.

VFX for Dirt Kicking ability from Depths of Erendorn

The VFX for ‘Dirt Kicking’ was given a dustcloud effect.
VFX for Heal ability from Depths of Erendorn

This is how ‘Heal’ now appears in the game.

PROGRAMMING

Believe us when we say that there is a lot to get through from the Programming department this month, so we’ll try to keep it short and sweet for you. A lot of work this month has gone into improving the items in our game by redesigning how they’re generated and how stats are assigned to them.

As a result, players will no longer get two stats from each item; they will get a different number of stats from different items, and these stats will change depending on their rarity levels. This means that the rarer the item is, the more varied stats a player will gain and the more their character will progress. We feel a lot better about this new system and have made sure to balance it out by ensuring that certain stats will be gained earlier in a level as well.

Since the number of stats on an item is now based on the rarity of the item, we needed to ensure that an item’s rarity level was set by its item power for its level. This would mean that higher rarity items would have a different balance of primary and secondary stats than low rarity items, which give players standard stats. For example:

  • Low rarity, i.e. poor items will give players 1 primary stat, like Strength or Resilience
  • Common and uncommon items will give players 1 primary as well as 1 secondary stat, like Energy Regeneration
  • Rare and epic items will give players 1 primary stat and 2 secondary stats
  • Legendary items, because they’re the rarest, will give players 2 primary and 2 secondary stats

This shows how different items can progress a player’s character in different ways. In order to enable all of these changes, the Item Generator has been reworked. We now feel that the gameplay experience of Depths of Erendorn is more diverse and enjoyable since players can progress their character even more depending on the items they loot.

We also made VFX for three castable spells: Acid Bolt (left), Fireball and Crystal Shard.

New loot-dropping code has also been worked on this month, and this was done in conjunction with determining how and what stats are assigned to items. Before the change in item rarity levels, the majority of items only gave players two, quite common stats – like Critical Hit. The new code addressed this by randomising the stats and finding items to match them, rather than just choosing a random item. These items can then be more purposefully placed throughout the game so that there is a better variety of loot. This will increase the type of stats a player gains from an item, making the game’s loot feel a lot more rewarding and varied.

While we’re on the subject, here’s a fun fact about the items in the game: so far, there are over 2.2 million lootable items at Level 1. Hopefully, this gives you an idea of the endless possibilities Depths of Erendorn has to offer – and of the turmoil our programmers have been going through to get this working!

But there was a huge range of things that we worked on in the Programming department this month:

  • Enemy portraits were added to the Turn Order display.
  • A new pipeline for bug tracking was implemented.
  • We replaced the light for any unlit fires on walkable prop tiles.
  • Correct materials now show on snowy props.
  • Floor props were added and modified.
  • Mushrooms and rocks were added to potential wall props.
  • All props were moved to addressables, which we spoke about here.
  • A bridge was added to the room builder.
  • Sound effects (SFX) were added for when a player’s turn starts.
  • We then fixed the ear-piercing SFX that sounded during a turn change!
  • Dead enemies are now successfully removed from the Turn Order.
  • The Turn Order display also no longer covers the top half of the screen!

This month has also been focussed on making improvements to the game client’s level generation. One way we have done this is with the implementation of the Addressables system, which we spoke about in our last game development update. In a nutshell, it allows large assets to be compressed into separate ‘Asset Bundles’ and loaded when needed, reducing the game’s memory footprint. Therefore, we will be using the Addressables system in conjunction with the prefabs that are used to build rooms categorised by biome and tile type.

Another way we have improved the game client’s level generation is by simplifying the room builder’s generation. This was achieved by adding a series of asset slots for all walls, floors and prop prefabs. We also added an option to generate a map from a specified biome, which will only affect the client that has it selected.

GIF showing the Crystal Shard ability being tested in Depths of Erendorn
We tested the spell Crytal Shard in the game to see how its VFX looks, and we’re so happy with the result!

We could go on forever about all the things we’ve been up to this month, but we think we’ll leave it here! Remember to join us on Twitter, Instagram and Reddit for daily updates on Depths of Erendorn – and if you can’t wait until next month to scratch that game development itch, head over to our game site where we post weekly devlogs every Friday!

LATEST NEWS

April 18, 2024
2024-04-18 19:00
April 18, 2024
Development
April Devlog | Week #2 | No. 271
This week at Depths of Erendorn, our teams have been hard at work across various departments, achieving significant milestones and pushing forward with key projects. The 3D modelling team completed retopology on the revenant enemy, moving on to unwrapping and texturing to enhance its visual appeal.
April 12, 2024
2024-04-12 19:00
April 13, 2024
Development
April Devlog | Week #1 | No. 270
Over the past week, the team at Depths of Erendorn has made strides in various aspects of development. The 3D modelling team initiated the retopology process for the Revenant character, ensuring efficiency while retaining intricate details.
April 9, 2024
2024-04-09 19:00
April 12, 2024
Development
Monthly Devlog | March 2024 | No. 62
Throughout the past month, the teams at Depths of Erendorn have made significant progress across various aspects of development. The 3D Modelling team successfully refined character models, focusing on the Centaur and Revenant enemies, while the Set Piece Design team enhanced in-game environments.
April 8, 2024
2024-04-08 19:00
April 12, 2024
Development
March Devlog | Week #4 | No. 269
Over the past week, the Depths of Erendorn development teams have been hard at work across various fronts, bringing the game's world to life with new enhancements and refinements. The 3D modelling team has completed their work on the Revenant model.
VIEW MORE..