March DevLog | Game Development Summary
We’ve got one hell of a devlog summary for you this month, with insights into our texturing work, our special attack animations and unique asset creations. We’ve also got some brand new VFX and sound effects to show you, as well as a ton of improvements in the engine to tell you about. Before we jump into it, give us a follow on Instagram, Twitter or Reddit for daily updates on Depths of Erendorn!
Texturing the Lizards
Last month, we took you through the sculpting process of some of our lower level Lizards, one of which – the Swamp Lizard – we actually ended up texturing. After finishing off this model, we began March with more texturing work on the rest of our lizard sculpts, starting with the Spiny Lizard:
- The patterns of scales on the body were inspired by Komodo Dragons.
- Blue detailing was added to the head and tail to create some more visual interest.
- We made the scales break apart in areas to expose the deep red skin underneath.
- The horns were made a dark colour to make them seem more threatening.
- The plate that sits on top of the head, and the horns on the shoulders, were given a scratched texture to suggest that this reptile has had its fair share of fights.
The work we did on the Spiny Lizard was then carried over to the Thorny Lizard, its less powerful cousin who shares similar design elements. Therefore, our 3D Character Artist used the Spiny Lizard’s texture as a base for the Thorny variation in order to speed up the production process:
- Though the scales were coloured differently, we kept the way they broke apart because we liked how it revealed the skin underneath – which, this time around, was made a dark blue.
- The colour of the horns on the head and elbows were kept the same colour for consistency reasons, since both of these lizard variations hail from the plains.
- Instead of blue detailing, red details were used to accent the head and the tail. The same scratched texture was also transferred across onto the Thorny Lizard.
Next up was the Big Lizard, the largest among these reptiles – though not as strong as the Spiny variation. Our 3D Character Artist had a lot of fun replicating the concept for this character because of how unique its design was:
- The scales were textured in ombréd colours that graduated from deep, cool blue tones to warmer, rusted tones.
- Blue speckles were added along its back and made to look slightly raised, giving a tactile quality to the overall model.
- The horns on the head were made a light orange colour; by these being the lightest part of the lizard, we draw attention to what are this enemy’s most formidable weapons.
Rounding off our work on the lizards, you’ll notice that all of these variations share the same scales and leathery skin texture. This is because they all come from dry, arid habitats, like plains and caves, and should therefore have a rougher-looking texture. The Swamp Lizard, on the other hand, is native to Erendorn’s swamplands, which is why this model was textured with much slicker, almost slimy scales.
Creating the Twilight Elf Merchant and Civilian
Once we had finally finished the lizards, our 3D Character Artist decided to do some work on two new class types of Twilight Elves: the Merchant and Civilian. We had actually already created the model of the playable Twilight Elf Assassin last year. This made things a lot easier because it meant that the base for the Merchant and Civilian was already modelled and textured, meaning that our Artist only had to worry about the clothes and accessories for these NPCs:
- A long, muscle-fit shirt was sculpted for both characters, and textured with the characteristic dark blue colour of the Twilight Elves.
- A simple boot design was then also created for both class types, in addition to some plain trousers.
- A backpack was sculpted for the Merchant, since this character will carry a lot of valuable items that players can obtain.
- The backpack was then given a worn leather texture, and some potion bottles were also placed inside to give it an appearance of being full.
- Smaller potion bottles and various pouches were also added to the Merchant’s body as a hint to both what they carry, and what Twilight Elves are known for: toxic warfare
Our 3D Character Artist also integrated some leather padding into the design of the shirt for both the Merchant and Civilian. The leather padding for the Merchant and Civilian reused the same diamond pattern that was used on the Assassin’s clothing, and was also made using a similar process:
- Our 3D Artist started by using a noisemaker plugin in ZBrush to distribute a chequered pattern/alpha onto the mesh.
- Since this was applied via UV projection, they needed to unwrap and adjust the mesh UVs in order to get the pattern wrapped and rotated on the model in the right way.
- From there, our 3D Artist could apply the noisemaker preview as a mask and finally inflate the unmasked areas in order to create the leather padding.
This leather padding is a common design element among the Twilight Elves, including the Assassin, and is inspired by leather jackets in order to reflect the fact that these Elves are a badass race, given their attunement to the Void, their mysterious lives, and their proficiency with potent poisons and venoms as well as daggers, throwing stars and many other melee weapons.
Modelling the Storm Elf Fighter, Warrior & Captain
Another set of Elven NPCs we worked on in March were the Storm Elf Fighter, Warrior and Captain, which appear as formidable enemies in Depths of Erendorn. Storm Elves possess an affinity with lightning which enables them to hone lightning magic. As a result of this, they can be identified by the branching scars that pattern their bodies. Luckily, our 3D Artist didn’t have to worry about creating these intricate scars because, like the Twilight Elf, the base mesh for these characters was already completed last year. So, with that said, we jumped straight into blocking out, sculpting and texturing all of the clothing:
- A thick and padded gambeson was created for all three variations. This garment makes these enemies appear bulkier and well-armed.
- Bracers were also added to all three models. Since the design for these were a bit more complex than a simple cylinder, our 3D Modeller first painted a plan of them to get the shape right.
- While the Fighter wears simply designed shoes, the Warrior and the Captain benefit from protective shin guards, with the Captain’s being the most intricately designed.
- Armour was added to both the Warrior and the Captain. Although the overall shape and colour is the same, the Captain’s armour was edged in gold to help differentiate between the two classes.
Once we were done texturing all of the individual components, we had our first finished set of Storm Elf enemies. There will be many class types of Storm Elves that will appear in the game to battle your team. These three are low to mid-level enemies, with Storm Elf Civilians being the least powerful of the race, and the Storm Elf Great Seer being the most powerful – in fact, the Great Seer is twice as strong as the Storm Elf Captain, so we’re looking forward to the day when we get to create that model!
Revising Special Attack Animations
Many special attack animations were worked on this month for a variety of playable classes. This is because some of the preexisting animations for these abilities either didn’t work well with the new unique rig that all playable characters now share, or didn’t express the attack in the way we wanted them to.
Shadow Leap, for example, is a special attack of the Twilight Elf Assassin that needed a few revisions made to it. The ability allows the player to leap from up two six tiles away towards an enemy, dealing Physical Damage and Stun once they land:
- The original animation for this attack showed the Assassin landing, pausing, and then attacking the opponent with a stab up the ribcage.
- While we liked the brutality of this animation, the pause seemed to interrupt the overall flow of the attack.
- For that reason, we revised the animation so that the Assassin deals the attack as he lands, eliminating the pause.
- Although the actual stab is less violent than the original version, we will be using VFX to make it more visible.
In addition to Shadow Leap, there were a few other special attack animations worked on for the Twilight Elf Assassin:
- Rupture Kick: Deals Physical Damage while reducing an enemy’s Strength for one turn.
- Shift Strike: Allows you to teleport behind an enemy within a six tile radius and deal Void Damage. It also stuns one tile enemies.
- Blind Side: Can only be used when attacking from the side or from behind. Deals Physical Damage but always hits for critical damage.
After all this, we moved onto transferring and editing the animation for Pulsating Wound. While this is the Watertarg Excursionist’s only special attack, since this character relies more heavily on spells than combative moves, it makes up for it by doing several things:
- Pulsating Wound deals significant amounts of Physical Damage every turn for five turns.
- It causes 1 tile and 4 tile enemies to lose a bit of Movement Speed whilst it’s active.
- Every time it deals damage, it also grants the Watertarg player 1 Ancient Power.
- To make the animation for this attack just as gnarly as its tile, our Animator opted to show the Watertarg slicing open its opponents belly in one swift, wide motion.
Next up was the Earthen Dwarf, who had its animation for Shattering Blow worked on:
- The original animation for this showed the Earthen Dwarf spinning around and then bringing his weapon down.
- We felt that this movement wouldn’t really create enough force for what is meant to be the powerful impact of this attack.
- In the revised animation, the actual motion of the weapon was made less vertical, and was instead swung round to create the impression of a greater impact.
The next playable character our Animator started reviewing the special attack animations for was the Human Knight:
- Revenge Thrust: This ability animation was recreated so that it can work with several weapons. While the original animation was based on the two-handed sword only, the updated version can now work with both two-handed and one-handed weapons.
- Heaving Blow: On a similar note, the animation for this special ability is focussed on two-handed weapons, and is also being reviewed so that we can figure out how to change it to fit more weapon types. This is important since the Knight can use a variety of weapons, from two-handed swords and poleaxes to spears and maces.
Heaving Blow received the most alterations. The original animation for this was only focussed for two-handed weapons, so the main edits our Animator made to it were in order to get it usable for both one-handed and two-handed weapons. They also made a few polishes during this process, and the final animation is looking a lot more adaptable for the expansive list of weapons that the Knight can use.
After working on special attacks for a couple of weeks, our Animator moved onto creating some ideas for ‘block’ animations that will be used by the Human Knight:
- Block with a Shield: The animation for this was kept quite generic so that it can be used to block both normal and stronger attacks. However, the Knight won’t always have a shield, so another type of block had to be animated for when it uses a weapon.
- Block with a Weapon: We edited the original animation for this so that the Knight was in a more bracing stance, as though he is bracing himself for impact. This was done by having him holding his weapon and pausing after he steps forward. This was a big improvement on the original animation, which looked a little more like a parry than a block. The sword was also angled a little lower in the animation so that it can be used against smaller enemies as well, like rats.
- Activating ‘Block’: Given that Depths of Erendorn is a turn-based game, the ability to ‘block’ will be activated on one turn and will be able to be used on the next turn. This means that our Animator also had to create an animation for the activation of a ‘block’ for player gratification.
Since the Knight can use a variety of weapons, from maces and spears to heavy swords, we will also be making these animations usable with both one and two-handed weapons.
Unique Rigs for Bipedal Characters
When they weren’t working on animations, our Animator was working on getting some bipedal enemies to use the same unique rig that our playable characters share. For those who don’t know, a unique rig is a single rig that can be used for multiple characters. This will not only optimise our workflow, it will also speed up character generation in the game.
Our Animator has already successfully created a unique humanoid rig that works with all of our playable characters, so this month was focussed on updating the rigs of bipedal enemies so that they will be able to share the same humanoid rig in the engine. We’ve started doing this for a couple of enemies from the Land of the Dead: the Zombies and Skeletons.
- After updating their rigs, our Animator had to adjust these characters’ skin weights, which experienced some issues during the rig changes.
- All of the current animations for the Zombies and Skeletons were then transferred and adjusted on the updated rig.
- Some of the Zombie’s features were then added back to the rig, like its grotesque tongue that hangs out, or its drooping eyeball.
After working on this for a bit, our Animator has now made it so that Zombies and Skeletons can share the same rig in the engine that other humanoid characters share, including Humans, Elves, Dwarves and everything in between. As a fail-safe, these Undead enemies will also be able to have a separate rig if necessary, but we’re hoping that everything will work out – like we said earlier, fewer rigs means faster character generation, so this is our aim!
Unique Rigs for Quadrupedal Beasts
For the same reasons, our Animator also spent this month creating another unique rig that will be shared by quadrupedal enemies, specifically the smaller beasts like the Skyhound, Jaguar, Lion, Dog, Rat, etc.
To get started on this, our Animator:
- Adjusted the beasts’ unique rig to fit the Skyhound, Jaguar, Plains Lion and Rat.
- They then spent some time troubleshooting and tweaking the rig, which is important to do to ensure that all enemy types perform well with it.
- Each beast was then transferred from its old rig to a new one that matches the unique rig.
- Our Animator then cleaned up and exported the new rig and placeholder animations for each beast type.
- Finally, everything was imported into a test scene in Unreal Engine, where each beast was assigned to the new unique rig.
As we mentioned earlier, for now we will be using placeholder animations to test how each character responds to the new rig set-up. Once everything is running smoothly, our Animator will then work on the final animations for these characters. Bigger quadrupeds, like the Mammoth, Boar or Blackhorn Rhino, may need a separate rig made for them, but we’ll see how it all goes!
This month was all about asset creation in the Environment Art department as our Environment Artist worked with our Concept Artist to bring their asset designs to life. If you follow us on social media, you’ll have seen some of the illustrations our Concept Artist has been working on for assets like shrines, altars, floor lamps, obelisks and a stone portal, which was the first asset our Environment Artist decided to recreate:
- They were first provided with the orthographic views of the stone portal concept. These show the design in a three-dimensional way so that our artist can work from them more efficiently.
- The general form of the stone portal was then blocked out, which is important to do because it allows us to capture the silhouette, shape and scale of the prop.
- A high poly version of the portal was then sculpted, before being retopologised and UV mapped in order to create a low poly mesh.
- After baking it, the portal was textured in a rugged stone material so that its architecture seemed more organic and ancient.
- We also played around with having a luminous blue light shining through the various cracks and markings, though we’re still trying to find the right ratio for this.
As with all environmental assets, these stone portals will appear in our cave dungeons – but they’re not just for decoration. Players will eventually be able to use portals to travel longer distances, so they will become an integral part of the gameplay. But there were also several smaller assets that were worked on this month, including a stone chain, two types of floor lamps, several different urns, a fire pit, a runestone, and even a stone coffin.
Before entering the baking and texturing process, these assets will be made to look even more weathered, and will be detailed with cracks and chips. It’s also worth mentioning that we’re keeping the asset designs quite generic because they will be reused throughout our dungeons, so we want to avoid creating any obvious repetition.
The end goal with these assets is to have some nicely detailed and aged looking props for use in Erendorn’s cave dungeons. These will lend depth and authenticity to the game, and help make the dungeons feel like dark, ancient places that are filled with mystery and hidden treasures.
Our VFX Artist created tons of new visual effects this month. Since our Animator had already refined the animation for ‘Shift Strike’, a Twilight Elf Assassin class skill, this was one of the first abilities they worked on. Given that Twilight Elves have an attunement to the Void, which manifests itself as a purple aura around the character, our VFX Artist decided to add a purple slash effect to ‘Shift Strike’. This demonstrates how pieces of lore can inform an artist’s aesthetic decisions.
But that wasn’t the only Twilight Elf Assassin ability that received new visual FX this week. ‘Voidshadow’ was also brought to life with a purple cloud that rises around the character. Choosing this ability activates Stealth, making the player unable to move or be targeted.
In fact, there were a few class abilities worked on this month:
- Backstab: Another Twilight Elf Assassin ability, this can be used to deal some Damage when attacking an enemy from behind, and also grants a permanent increase in Movement. VFX were also created for Improved Backstab, which deals an extra amount of Maximum Damage.
- Cleave: This is a powerful melee attack of the Earthen Dwarf and Human Knight, dealing damage to a chosen enemy as well as any enemies that are to the left and right of the target.
- Rupture Kick: This is used by the Twilight Elf Assassin to deal high amounts of Physical Damage to an opponent, as well as reduce its overall Strength for one turn.
- Viper Strike: Used by the Forest Druid, this not only makes your next two attacks free, it also deals an additional amount of Nature Damage.
One playable character whose skills and abilities received a lot of new visual FX this month was the Human Knight:
- Rush: This allows the player to charge into a tile up to two spaces away and damage adjacent enemies. It also allows you to charge through enemies if needed.
- Slay: This automatically kills an enemy that has less than 50% Health. Since this is such a powerful ability, we balanced it out by making it only usable against 1-tile enemies that are either humanoids or beasts.
- Zeal Master: This increases a player’s Zeal by 12. Zeal is a secondary resource that can only be used by the Knight. The player can then spend Zeal on specific Knight abilities that cost Zeal to use – so to have more of this resource is always useful.
- Fist of the Titans: This allows you to target a random 1-tile enemy in a room. Not only does it stun them for one turn, it also grants you 1 extra Zeal per turn.
- Test of Allegiance: This restores a small amount of Health to a friendly target, like another member of the team. Alternatively, if you choose, it deals a significant amount of Physical Damage to an enemy target.
In addition to all of this, many other effects for generic skills and abilities were worked on this month, including:
- Swift Hit: This skill deals a significant amount of Physical Damage to an opponent and also has the potential to stun said opponent. It can be used by the Assassin and Watertarg.
- Palm Strike: Another generic skill used by the Assassin and Watertarg, this also deals a good amount of Physical Damage to an enemy.
- Giant Strike: More powerful than Palm Strike, this deals Physical Damage to an adjacent target and can be used by the Human Knight and Watertarg.
- Charge: This allows either the Knight or Earthen Dwarf to charge into enemy within 2-4 tiles of them, and deal a decent amount of Physical Damage.
- Quick Counter: When activated, the next melee attack made against you is automatically countered by a normal attack, at no cost to the player. It can be used by the Assassin and Blue Melmee.
- Chain Heal: A Forest Druid and Parakaw specialty, this restores an equal amount of Health to the entire team, and also grants a 25% chance to have even more Health restored to everyone. (FD Parak)
- Bind: Used by the Forest Druid and Parakaw, this ability enables the players to choose two one-tile enemies and root them for one whole turn.
- Shrouded Step: This is used by the Assassin and Watertarg to teleport within an 8 tile range, which can be very useful during a heated battle.
But it’s not just skills and abilities that were in need of visual effects this month. Recently, we have felt that our dungeon rooms would benefit from some atmospheric effects to help reinforce the fantastical element of the game. To achieve this, our VFX Artist has decided to use fireflies to add to entire rooms, as well as around single objects. They also created some magical floating lights
They have already tested these in UE4, so once they have been finished and our rooms are up and running, these particle effects will be integrated into the background.
Sound FX for Abilities
Many of the visual FX for abilities that were created this month were enhanced even further with the use of sound effects. Together, our VFX and Sound Artist discussed how certain abilities should play out, and how the visual and sonic elements would best work together.
For example, some of the Twilight Elf Assassin abilities, including Shift Strike, Backstab and Improved Backstab, were brought to life with the use of breathy reverb, which works well with the dark shadow effects our VFX Artist has used to visualise these abilities. In addition, the Twilight Elf Assassin has also benefited from some new blade sounds, where we increased the pitch and the reverb signal to create a more metallic, wetter sound, making the ‘slicing’ effect of the blades feel quicker and deadlier.
With that said, these are some of the other abilities that received first draft sound effects this month:
- Bind: Since this roots enemies to the floor, and since it is able to be used by the Forest Druid, our Sound Artist decided to express this ability with the sounds of growing vines and chains being dragged. Doing this drives home the fact that the enemy is becoming enwrapped by vines and grappled to the spot by the spell.
- Viper Strike: While we originally wanted to use the rapid shaking of a rattlesnake for the sound design of this ability, we decided it would be safer to keep things more nonspecific. Instead, we used some generic sounds to express a similar effect to the rattlesnake, without having to specifically reference one.
- Hammerblow: An Earthen Dwarf skill that is pretty powerful, our Sound Artist wanted to do justice to the immense physical presence of this ability, and included some ground-shaking and crumbling rock sounds to achieve this.
Sound FX for Beasts
A lot of sound effects were worked on for Erendorn’s low-level beasts this month, starting with the footsteps for dogs and wolves. To do this, our Sound Artist began by recording some base sounds. They did this by taping metal nails to thick, heavy-duty work gloves, which recreated the sounds of canine nails and the padding on their paws. The tape used was also made quite thick in order to replicate the sound of a leather sole.
In the future, our Sound Artist will be able to increase or decrease the weight of the padding used in these base sounds, depending on the size of the canine. They will also eventually layer a variety of ground surfaces onto these base sounds, like grass or water, depending on where the enemy is encountered. The Ice Husky, for example, may accost your team in the Arctic Region, so the crunching of snow would be layered over the Husky’s base sounds. Click here to check out our Sound Artist’s recording process of this foley!
Other low-level beasts that received sound effects this month include the Giant Rats, Swamps Rats and Wolvajins. Even though these are all just level one enemies, we still want them all to have their own identity so that we can differentiate between them and make them each seem unique:
- When creating the sound effects for these beasts, we didn’t want them to sound like the generic rat or werewolf characters that you find in any game.
- At the same time, our Sound Artist also couldn’t go too bizarre with the sounds because audiences have pre-conditioned expectations of how certains creatures should sound.
We think we found the perfect middle ground between these two extremes, and are especially pleased with the sound effects for the Wolvajin – let us know what you think!
Sound FX for Enemies
In addition to creating sound FX for abilities and beasts, we also worked on some gruesome vocalisations for a couple of Undead enemies in the game:
- Ghouls: Part of the sound design for these Undead creatures were some deep groans. However, Ghouls are low level enemies that come in hordes, so our Sound Artist didn’t want the groans to be too abrasive as the players will likely hear them quite often.
- Revenants: These are also the most powerful level 1 enemies, so we had to make sure the sound effects were intimidating and sinister. This is why our Sound Artist decided to layer many different sounds together, including deep groans, reverberating breath and haunting whispers. We feel that this combination perfectly captures the Revenants’ ominous presence, as well as matches the magical abilities that these enemies possess.
Another enemy type our Sound Artist worked with this month was the Zullra, a shapeshifting desert race that are powerful enemies in the game. Because these characters are made of sand, it meant that we had to think differently when working on their sound design than we would when working on the sounds for a humanoid creature. An example of this is the impact sound:
- An impact sound is the sound of an attack when it hits the opponent. In humanoid creatures, it would sound quite similar among different characters because they are usually made of the same thing, i.e. flesh and bone.
- To differentiate between humanoid creatures, then, hit reactions are often used. For example, if you hit a Zombie, the slash of your sword against its skin is the impact sound, while the Zombie’s groan is its distinct hit reaction.
- Since Zullra are made of sand, and aren’t very vocal, the impact sound would have to include the sound of the weapon and the sound of the weapon hitting sand in order to make it distinct so that the player knows what they’ve hit.
- Doing this is important because it maintains a level of realism within the ‘universe’ of the game, which helps to build the overall immersion for the player.
The sound effects for a Zullra’s death will also be interesting to create because these creatures actually reform into smaller versions of themselves upon dying. This means that the death sound will have to include the sounds of smaller Zullra being shaped. Also, since they reform from the scattered mounds of sand, having the sound of a weapon smashing away parts of the larger Zullra will aid in the implementation of forming the smaller versions from this sand.
It’s also worth mentioning that the Zullra are massive and intimidating enemies that are, at the same time, very mysterious. Part of their mystery comes from the fact that they have no eyes, and instead rely on an intuitive understanding of the world. This is why our Sound Artist has worked on making their size and inscrutable nature apparent in their sound design:
- We wanted the Zullra to sound like they are a part of Erendorn itself.
- This led our Sound Artist to layer together deep, reverberating noises.
- Doing this created the impression of a huge sound that seemed to travel distances.
- These sound elements capture both the Zullras’ size and their otherworldly mystery.
As well as this, we always try to give each character in the game a distinction from the rest – particularly with an enemy such as the Zullra, which are so unique and powerful. Therefore, having extra layers to their sound design aids the player in recognising this difference between strengths of enemies and types of enemies.
It was another busy month inside Unreal as our Programmers worked on getting Depths of Erendorn ready and playable. Starting with a few UI elements, the bar on the overhead health bars was reworked in order to be usable in other areas. Our Programmers then added Damage and Heal numbers to the health bar object:
- This will enable us to test and double check our values.
- It will also ensure that future testers can see exactly what Damage has been done.
- As well as this, players will be able to see how Heal has affected a given entity.
In addition, the client can now parse and make use of Damage and Heal logs from the server, allowing us to create the UI objects for Damage and Heal numbers.
Another UI element worked on this month was party portrait tracking, which has now been fully implemented. With that said, party portraits now appear at the side of the screen, allowing players to see the current status of their team. Party portraits also display the Health, Mana and Energy of other players, as well as what secondary resources are available to use. A target portrait is now also updated whenever a player selects, attacks, or uses an ability on an enemy.
There were a lot of areas that needed to be worked on this month in order to get the game and the UI functioning properly:
- Turn Order Display: We limited the amount of displayed characters that appear on the turn order display so that it wouldn’t get too overcrowded. We also introduced a few new additions here, like a button that shows all hidden turn players, and a turn timer that shows when a player is half-way through their turn.
- Status Effects: A widget was implemented for status effects this month so that they can respond to changes. A log was then added to the lobby as new delegates were added to status-related game entities, allowing us to have the UI react to statuses. We then added a function to the Status Effects Manager that makes it possible to retrieve a status from its ID.
- Ability Bar: Abilities can now be confirmed and cast by reselecting a specific one from the ability bar. Cooldowns were also added to the ability bar so that players can easily see what they have available to use.
- Ballots: Ballot buttons have been updated so that they show when hovered over, and ballots themselves have been updated to highlight selected options and disable unselected options. Ballots now also have a ‘Ballot type’ which allows our Programmers to set what type of Ballot it is, meaning we can have the client treat them differently depending on what they’re for.
- Stat Panels: We made it so that stat entries contain a minimum and maximum number of a single relevant stat, be it Health, Energy, Mana, Movement or Weapon Damage. We also modified the panel to size dynamically based on the number of stats contained. The stat panels were also given the ability to display stats in a preferred order, which is up to our Programmers to define.
- Notifications: Many additions had to be made to get these working, including an archive panel, which will display all previous notifications; a callback function, which will allow pop ups to handle player choices; a pop up that will appear when a room has been beaten, or the team defeated; and a specific notification for local players, team players and enemy team turn starts. We also added an on-screen pop up notification that can be used by any manager to display a message to the player.
The last bit of work involving the UI was adding a fading tooltip widget for ability details as well as for status effect details. We also added the foundations for the client’s understanding of the pings and chat messages from the server and, in the future, VFX and chat boxes will be integrated with these foundations.
Another thing that needed to be worked on in order to get Depths of Erendorn playable in the engine was the Room Builder. This benefited from the addition of terrain sublevel loading, allowing us to move away from building rooms out of individual tiles. Instead, we will be loading combinations of set pieces and terrain pieces to populate room environments with. More examples of work carried out on the Room Builder include:
- Updated the execution order, storing and building of rooms to facilitate multiple rooms.
- Added the ability to build consecutive rooms after enemies in the current one have been defeated.
- Added reroll votes for consecutive rooms, and allowed rooms to be rerolled, joined and played.
- All currently-used set pieces were updated so that they would orient correctly with built maps.
- We added logic to wait for set pieces to fully load before a room is shown, and then updated logic for unloading rooms and set pieces.
Moving on, game events were added to the room detail panel this month. This is a panel that shows you what you will face in the next room so that you can decide whether you want to reroll or not. Game events vary in their content and effects – they can do anything from changing stats, to spawning special enemy encounters.
To help handle these, a Game Event Manager was integrated with logs from the server. This means that when events start, they are added to the Event Manager. This then fires off an event that we can attach other functions to. These functions then run with and respond to new events.
Game events now also use the notification panel and a new on-screen pop-up in order to display their effects when they are triggered. This will make testing the game and understanding what is happening much easier as the players will be given more information.
Following on, several new events specific to each game state were created so that we can hook up different things in the client to when the client enters and exits these states. These types of events concern the changing game states – like pause, for example.
Quite a bit of work was carried out on the graphics of the game this month, namely on noise-based tiling, grid materials and the movement spline. Ensuring that these are all appearing and functioning correctly is integral not only to the user experience, but also to how the user understands Depths of Erendorn:
- A placeholder grid material was added to the engine and integrated with the camera. This grid, which forms the tiles that all characters stand on, now responds to a player’s cursor position, and we can control its various parameters if we ever need to change the colour, size or fade distances of the grid. This will make it a lot easier to understand the spaces between enemies and players, and will also better help our testers try out the game properly in the future.
- The movement spline was recreated this month in order to give it a slightly more transparent look. The movement spline shows the player the path they can take when trying to move. It was recreated in order to make it easier to plan your movement. It has also been made to path around enemies so that you can avoid them.
- A new material function that allows us to make any image tileable was implemented into the engine this month. This will be used mostly with noise images to make tiling in the distance less noticeable. This new material is particularly useful because it means that even if a noise image doesn’t tile, we can now make it tile.
As well as all this, tile-targeting ability controllers were implemented by our Programmers this month. Now that these are in place, the area of effect for tile-targeting abilities now has a visual display for their affected area.
This does two things: it allows the player to cast abilities that require tiles to be selected as a target, because it will highlight certain tiles to show the player what is selected. It will also highlight all the tiles in an area that the spell will affect – for example, if you decide to use ‘Shrouded Step,’ which allows you to teleport within an 8-tile radius, all tiles within this radius will be highlighted, making the gameplay experience a little easier for the player.
A big change made this month was in the server code and moving between rooms. Working together, our Programmers changed the structure of the process and added in another layer to make the code more manageable and more logically sound. This required refactoring some old code and adding some new code in, too. The result is a much smoother user experience and is much easier to work with for developers.
A lot of our Programmers’ work this month was focussed on laying the foundations for replacing the rudimentary walls for newly created wall splines. Doing this will create flowing, linked-up walls which can be bent to create any shape. Right now, they aren’t complete, but we’re hoping that we’ll get to a point soon where they are.
That’s it for this month! We’re already steamrolling into April with a ton of brand new content, so make sure you join us on our socials to keep up-to-date with everything. Our first devlog of April has also just gone live, and in it we’re introducing a new team member – so head over there now to see who it is!