It has been an exciting week for the team. The Druid's tier one armour nears completion while the animators work on applying the spellcaster's movement cycles to the updated rig. Meanwhile, the wizards of coding work on adding new enemies and interactable objects forging the way for vendors. Additionally, the environment team have been adding some new foliage to the grasslands of Erendorn. Finally, the set design team have been working on the corrupted brazier and the VFX team has combined visual effects and animations within the engine. As always, join us on Facebook, Twitter, Instagram, and Reddit for daily updates on Depths of Erendorn. Alternatively, join our Discord for all the latest! - now let’s get into it!
The 3D modelling team have nearly completed the Druid's tier one armour throughout the week. The biggest changes to the design over the last week as been in the belt and shoulder pads. A brush-style motif has been added to the shoulder pads to imitate moss and fauna that would be prevalent within their landscapes. The shape and colour of these shoulder pads also make for a smooth transition through to the rest of the bodice. The changes to the belt have made the material covering it less shiny and added a texture, giving the impression that its carved out of the blue leather of an unknown creature. The new textures and details can be seen in the picture below.
The team would also work with the Zentragal armour throughout the week. Adding the colour scheme that has followed the Zentragal throughout its design phase. Applying dark colours over the entire bodice shows the dark presence that follows the Zentragal race while using red accents conveys the danger that the arachnid poses. This is a similar colour pallet to the Black Widow spider in our world. The team have also started to add detail showing the different material that would be used within this armour, such as the metal scuffs on the wrist guards and lower armour plates. Smaller details such as this help make the armour more realistic and grounded in the world the race is constantly fighting in.
Set Piece Design
The set piece design team have continued their work on the visual effects for the corrupted brazier. Working on the magical fire effects using the Niagara system, the team got closer to the effect they desire. These effects are updates from work completed by the visual effects team. The team also worked with the concept of having the brazier change colour upon being interacted with, after some experimenting on this, the team concluded that this would need to be worked on later through the month. To finish off the month the team worked with some other props that would be utilised within events such as a ring and crystal ball. These items have been created to catch the eyes of adventurers and indicate these props are of importance.
This week we're even closer to bringing combat to the World of Erendorn, work this week has been in bringing together the changes made to facilitate World Combat and fixing any issues that have arisen due to the differences in requirements from Dungeon Combat. Turns, basic attacks and abilities are now working correctly. This leaves player movement, player death and combat ending as the only things standing in the way of World Combat. Finally, the team created an Interactable manager and InteractableData class ready for implementing Interactable objects into the game client, this will allow us to make interactable vendors and world events, one of the final features for our next milestone. Additional work completed by the Client-side team can be seen below.
- Gave the base Manager class properties for determining and branching function based on parentage. Managers are now able to more easily determine whether they belong to World or Dungeon Sessions or Combats.
- Updated Environment Managers and any Combat Submanagers that make use of their positioning functions to use a generic Grid ID that can refer to a Room ID when belonging to a Dungeon and Combat ID when belonging to a World Session. Another step towards handling multiple World Combats that the player may not even be a participant in.
- Streamlined Core UI Session and Combat Start/End functions to fit within their respective setup and clear phases. UI now updates situationally to show/initialise or hide/clear the relevant widgets.
- Debugged and fixed any issues and differences when attempting combat regarding turns, basic attacks and ability targeting.
- Fixed issues affecting Dungeon Combat brought on by the system changes.
- Refactored a majority of Step and Stepper debug logging to improve readability when streaming game state updates.
- Added an Ability Descriptions Data Table to the Ability Stepper Template Library for easier ability logging.
- Set up dialogue manager initialisation.
- Went through several reworks of dialogue functionality to work in line with the manager.
- Updated the core widget system to account for the dialogue window.
- Some further tweaks to the layout of the vendor window.
- Cleaned up some redundant parts of the old inventory system to avoid function naming conflicts and confusion.
With many things now where they're needed for the current state of the game, the server team has turned their attentions to the enemies that players will encounter in the world, as well as their 'Intentions'.
Two new enemies have been added to the roster:
-Juvenile Forest Druid: Similar to the player class, these druids are resistant to nature damage, and have a large swathe of spells to support their allies and harass their enemies from afar.
-Fen Elf Scout: Fast moving, and with a long range, these scouts try to keep their distance from the players, their arrows apply a poison that deals damage every turn.
Intentions are like little bolt on bits of logic that can be put on top of their standard AI, to allow them to use abilities intelligently. Before this week intentions only existed in a very basic form, such as 'Cast smite on the person my AI is targeting, if smite is available to cast'.
Now, much more advanced Intentions can now be created, such as the Juvenile Forest Druid enemy, who has access to three abilities with their own intentions:
-If they have mana, and there's an ally below half health, cast Heal Wounds on the lowest percentage health ally.
-After that, if they have enough mana, cast Birds of Prey on a random enemy if they don't already have Birds of Prey on them, and the spell is available to cast.
-After that, if they have enough mana, cast Nature Bolt on their target, if they're within line of sight.
Additionally, some bug fixes have been done for item stat calculation so they correctly add their base stats before the stats given to them by their power level are applied. Items are now also awarded correctly at the end of a dungeon.
The rest of the week was spent cleaning up and bug fixing various parts of the server code to make it more stable and to prepare for features that are due to be implemented very soon. Also, the logs sent to the client upon disbanding/joining a party are now fixed. The team also helped the client-side programmers to eliminate a bug with the pathfinder on extreme terrain. Additional work completed by the server-side team can be seen below.
- Sessions now close down when they end.
- Sessions clean up objects when they close.
- Sessions will now close after everyone disconnects or are defeated.
- Is an adventure/session is invalidated then any alive player entity will be killed allowing combats to resolve in defeat before the session closes.
- If a player dies in a world session they should be sent back to the settlement.
- Gold and XP should now be saved after a dungeon/adventure completes.
- Player death in an adventure have there progress sent individually back to the settlement server to be granted to the character on the account.
- Adjusted Vendor interactables to fix some invalid information.
- Checks to see if a player is in a GameSession refactored.
- World combat area reduced in size.
- Interactables now have a text string associated with each interaction.
- WorldSessions now crash alot less often as many breaking bugs have been resolved.
- Player death should no longer cause a server crash when adventuring.
- DungeonSessions are now correctly given unique ids.
- Combats in the WorldSessions now Teleport the entities in the combat to the correct tile on start.
- Joining a session with an entity that has already existed in that session is handled better.
- Sessions now register the parties that exist within them.
- On world combat start entities that are added have any ongoing movements cancelled.
- Fixed a crash during loot distribution.
- Fixed a crash related to ending an adventure before getting any XP.
- Entities that die are healed when they return to the settlement.
- Players should now be removed from closed sessions.
- Enemy AI should no longer try to move or attack when they are dead.
- Enemy AI should correctly end if the combat ends or they die.
- WorldSession zone monitors should no longer try to activate subzones from players in combat.
- Stopped enemy groups spawning too close to one another or near a player spawn point.
- Summons in World Combat can now issue commands like other entities in combat.
The environment team have been working on some finer details of the rolling hills of Erendorn. Using the SpeedTree program, the team have worked on a variety of tall grasses that will help add more texture to the grasslands. This foliage will also aid in adding some colour to the sprawling landscape, breaking up the larger green spaces of Erendorn's initial areas. Once the team were happy with what they created in the SpeedTree program they implemented them into the engine. Using a similar tool that allowed the team to spread out grass evenly, the team added the newly created tall grass throughout the landscape. Examples of the new foliage and how it appears in the landscape can be seen below.
With the newly updated tier one armour for the Druid being completed, the team started to update the rig and animations for the model. Whilst doing this, the team would clean up any imperfections that would arise from the updated armour. Such issues occur when sections of the mesh clip through each other as the character moves. The colliding of the mesh can be fixed in a couple of ways depending on its severity. For issues involving clothing, the team will be able to alter the animations to stop it from happening. If this doesn't fix the issue, the 3D modelling team will need to alter the model. Examples of the newly updated model with animations are below.
The VFX team have been working with the visual effects that were completeded throughout the past week, applying them to the animations within the engine. These visuals now give an accurate for how these abilities will be shown in game. Effects and visuals such as these will be integral to gameplay to give players the feedback needed to interact with the dungeons. The team will continue to clean up and apply visual effects within the engine. Examples of visual effects applied to animations are below.
That’s it for this week’s devlog, but have you seen our monthly roundup of August yet?!