Dev Blog

September 2022 Development Update

Posted By EHG_Kain on September 2nd, 2022 (Source)

Hello Travelers, and welcome to the September Development Update!

We have big news for you today: The CT Multiplayer Build for Last Epoch is going online 24/7 starting in early September. This means our Community Testers will be in full multiplayer test mode (by the way you can apply here) all day, every day as we polish, improve, and prepare for our upcoming Multiplayer Launch. We’ll be diving into the details regarding Multiplayer development in its dedicated section below.

In today’s Development Update you’ll also find details on our continued improvements to performance, optimization, combat feel, and upcoming mechanical balance changes, all coming in our next update.

Multiplayer Progress Update

Progress Since Last Update

Features and Gameplay

Since our last update, we now have all abilities working! Channeled abilities were the last bit we needed to do. We’re now focusing on ensuring all abilities are smooth and responsive in multiplayer. Essentially this comes down to minor bugs with things like positioning and network interpolation. We’ve also progressed the Monolith to ~95% complete with empowered timelines being wrapped up and again moving to working on ensuring smooth experience with small bug fixes and polish.

We’ve continued to make great progress on our new Chat implementation. We’ve completed matching parity of features with our current chat system, and are now working on expanding the functionality. This change of our chat system gives us a lot more flexibility and potential for features than our old chat system. This includes channel support, and game guide linking which we’re really excited for.

Untitled

We are already making progress on the remaining endgame systems (Arena and Dungeons), and will be digging into a polish pass for our questing system soon. We will have more to share on these features in our next Development Update.

Online Experience, Stability, and Services

We’ve made a lot of headway on improving the overall experience of playing multiplayer. This means improving the connect and disconnect flow, error messaging, and ensuring scene transitions are as smooth as possible. There’s still more to do here, and we’ll always be working to ensure this experience is as easy and clean as possible. Having an intuitive and consistent user experience when playing multiplayer is just as important as making sure all the multiplayer stuff behind the scenes is functioning smoothly, so we’re ensuring this is as crisp and smooth an experience as possible.

We’re pretty much complete with our migration from our previous backend platform (such as for account services), and we now have all the core components in place. This was a fairly large task which has allowed for many improvements with multiplayer and the new cohesive single player and multiplayer combined client. We’ll announce more details for what this means for players alongside our 0.9.0 posts as we close in on the update date.

Another area of focus for us at the moment is carefully evaluating and improving how we save and keep character data. This is one of our largest remaining projects for multiplayer because we understand just how important it is to have accurate information for players and their inventories. We had hit a couple challenges during our work on this feature, but our talented team is through them now and we have a clear path forward.

All of this work has lead us to our most exciting development update…

Multiplayer Alpha: Online 24/7

Starting September, we will be taking our multiplayer build online 24/7 for our CT Program. From this point on, testers will be able to play multiplayer whenever they would like instead of playing within specific testing windows. With this, we will be providing regular updates to the alpha from now, until the launch of 0.9.0.

We anticipate having minimal downtime during these updates, and will be both experimenting with, and refining our release processes during this time to establish the best processes possible for once we’re fully online for the entire community. We’re really excited about this stage as this is a big observable step closer to our goal of open multiplayer and we get to experience and refine maintaining the live service.

Invitation waves and future expansions

We’re feeling very good about how multiplayer is progressing, and with great confidence in our CT program we are now in the process of expanding the program to ~1000 users. It feels like just yesterday the very first people outside of EHG were getting their hands on multiplayer, and now we’re at the thousand mark already. This is amazing, and we’re extremely happy that so many players are interested in participating in testing. With this, a big thank you to all past, present, and future, CT program members for helping us make this as great a feature as possible.

We will be continuing to expand the program even more leading up to 0.9.0, and there is likely to be multiple waves of intakes to reach that point. So make sure if you’re interested in applying and getting involved with alpha testing to submit an application! You can read all about the program and how to apply in this post here.

Upcoming Performance Blogs

If you’ve been following our previous development updates you know we’ve been making some massive headway on our performance and optimization goals. That momentum hasn’t slowed down since we last shared our progress. We’ve been boosting frame rates, reducing draw calls, optimizing shaders, culling triangles, removing memory leaks, and minimizing disk space impact. The result of all of this means your time in Eterra is feeling smoother, more beautiful, and more immersive than ever before - all with a lower impact on your hardware. We are so excited to bring these updates into the game along side out upcoming multiplayer patch.

Last time around, we mentioned some updates to one of our favorite non-performants, the Ancient Dragon. We finished up some more work on this enemy, and wanted to show off the latest updated version with a more direct FPS comparisons in game as a result of these improvements.

Of course, the Ancient Dragon is not the only thing we’ve been focusing on. We will be sharing a deeper dive into the details about optimization in an upcoming blog post, where we can dig into the ins and outs of each initiative listed above. Keep your eyes out for those upcoming blogs - until then, check out this sneak peak at some big framerate gains!

Melee, Bow, and Throwing Damage

A number of updates ago we introduced a change to flat Spell Damage, removing specific damage types from it in many cases, and introducing “Adaptive Spell Damage”. This meant that the damage would apply to whatever ability you used and was treated as matching the damage types for the skill. For example if you have a staff with “+40 Adaptive Spell Damage” and used a fire skill, it would be treated as added fire damage. The same staff used with a cold skill would treat it as added cold damage. This system has been fairly well received and enabled spell builds to scale flat damage without needing to seek out a type that matched the element of the spell or make do with mixed damage types that would be harder to scale.

Currently many melee, bow, and throwing attack builds find themselves limited to dealing mostly Physical Damage. This is true even with using a melee void attack, or fire bow attack, as that’s what weapons come with. This resulted in the best way to scale your damage often being counter intuitively and counter thematically increasing physical damage rather than increasing a damage type that matched the tags of the attack. As such, we’ve decided to extend this system to attack based damage - Melee, bows, and Throwing. This means the majority of weapons will now provide “Melee Damage” rather than “Melee Physical Damage” as an implicit property, and many passives will see a similar change. Our plan for this is to again open opportunities for more diverse melee builds and make building a melee character more intuitive and enjoyable. As a note, there will still be a few item types which have specific damage types (such as ‘scythes’ with implicit necrotic damage).

ThrowingDamage_Tooltip

We’re also revisiting skills which have multiple damage options, and adjusting them to better utilize these changes (such as Warpath which can add the fire tag, but currently does not convert base damage). With these change many builds will have many more options made available to them rather than often needing to go physical due to available equipment.

Alongside this, we’ve also revisited flat throwing damage. Throwing skills often don’t benefit from flat implicit damage on weapons, and as such start with much higher base damage on the skill. Currently there are not a lot of sources of flat throwing damage, meaning while throwing skills often start out strong, there’s some difficulty getting throwing to scale into the late game without using ailments or triggered effects. To address this, we’ve changed the “Catapult’s” affix on items to provide flat throwing damage (which like the new melee is considered ‘adaptive’), as well as changing the “Ballista’s” affix to provide flat throwing damage rather than flat throwing physical damage. This should help allow builds like Hammer Throw to focus more on the hammer, and less on what the hammer can cause as a delivery system.

Ailment Changes

Another game mechanic we’re looking at for this patch is Ailments. We’re seeking to make ailment related stats easier to understand, more intuitive as to how they work, as well as making them easier to balance, particularly in multiplayer. The goals here aren’t necessarily for immediate balance improvements, but for performance and user experience as we’re moving into multiplayer and 1.0.

While we want to maintain a level of depth and complexity in Last Epoch’s item system, we also put a large priority on getting players invested in that system enough to care about the details, and a key part of that process is making sure that stats’ effects and interactions are clear. There were two areas we felt were easily misunderstood when it came to scaling the damage of ailments. One is that they are affected by penetration, and the other is that increased effect acts as a multiplier to their damage, but multiple sources of increased effect are additive. To alleviate both concerns, for damaging ailments we are replacing stats like “10% increased Ignite Effect” with "+10% Fire Penetration with Ignite”. With this, not all changes are 1:1, many values have been re-balanced to accommodate for this change. Most non damaging ailments, such as armor shred, will retain their increased effect stats.

Another commonly discussed topic we’ve had a look at is how some ailments, in particular resistance shredding ailments, tend to greatly favor faster hitting builds. This isn’t great for performance, networking, or build diversity. As such, we’ve reduced the stack limit on resistance shredding ailments. Resistance shredding ailments, including shock, will stack to 10 (from 20). Meanwhile, Poison will continue to stack ‘infinitely’, but only the first 30 stacks on a target will shred resistance. Poison will also deal more damage to compensate for this. In the case of shock where it also offers stun chance, we’ve doubled the stun chance portion to retain the same value as the previous stack limit.


(as shown in the above screenshot, the 15 stack limit for ailments on the enemy health bar UI has been removed)

Alongside this, we’ve also re-assessed how damage over time is factored into tooltip DPS. While ailment duration would theoretically just be multiplicative for DPS, this is not felt in practice as many targets will die before the most of the ailments they were inflicted with have expired. As such tooltip DPS previously curtailed the effect of Increased Ailment Duration. However it did not apply the same principle of diminishing returns to the base ailment duration, resulting in ailments being perceived as having an exaggerated effect on tooltip DPS compared to their actual usefulness for damage. This approach has been changed so that diminishing returns apply to an ailment’s total DPS (as long as it lasts at least 1 second) rather than distinguishing between base duration and extra duration from increased duration stats, and this results in the tooltip DPS being lower overall (this is a good thing - it’s more accurate to expected results).

We’re currently still testing and iterating on these changes, so we won’t go too much into numbers or the changes to all the individual ailments, such as frostbite, but wanted to cover the design philosophies on some of the changes. Also note these redesigns are still subject to change.

Updated Models / VFX

Our talented Art, VFX, and SFX teams continue to raise the bar when it comes to improving Eterra’s visual and combat experiences. This has been one of our longest patch cycles to date, and as such we have built up an impressive queue of upgrades ready to go live when patch 0.9 hits Last Epoch. Incase you missed some our previous updates in this area, including from our Friday streams we highly recommend checking them out. One of our fantastic community members AndrewTilley has actually compiled a list of teasers for the current cycle here. Let’s take a peek at some highlights from the most recent round of upgrades below!

Totems

All totems have had VFX and SFX reworks. Previously all totems used the same base model, typically with an extra model or two kind of ‘glued’ onto it. We really wanted to revisit these to give them all their own distinct identities and make them truly awesome with completely custom and individually created designs.

Spells

Many other older skills are getting both VFX and SFX updates and we want to show a couple examples of those here with both Fireball, and Wandering Spirits.

Enemies

The denizens of Eterra continue to see improvements to make the world more distinct and memorable. Some may be replaced, others however have very strong themes we enjoy and so are instead sticking around with reworks. Today, we’d like to show off another one of the latter, with the Voidfused Armor. In this clip, we’ve included a comparison with the old and new Voidfused Armor enemies, with the new model exhibiting a much more imposing frame, matching its aggression and threat to players everywhere.

Sound Design Updates

As mentioned in the the VFX section, we’re also making a lot of updates SFX. This is another area of improvement so large, similar to Performance, where we’re currently planning on having a more dedicated and expanded post to talk about SFX improvements and sound design in general. However, for this post, we not only want to provide some treats for the eyes, but also some for the ears. Here’s a few clips of some of the improved SFX you’ll find in patch 0.9.0.

We’ll take a deeper dive into some of this work with our sound team later on, and hope to see you all in that post!

Closing

Multiplayer is on the horizon now, and moving forward to the launch of 0.9 you are going to hear a lot more communication from us. We don’t quite have a date we’re ready to share yet, but it’s most certainly getting closer. Alongside multiplayer, 0.9.0 is introducing a whole new level of polish to Last Epoch never seen before. Greatly improved performance, tons of new SFX and improvements to combat feel, updated enemies, and tons of other improvements. We’re really excited to get this update into everyone’s hands, raising the bar on what’s expected for Last Epoch, and we have no plans of stopping here.

One final reference for this post - if you’re interested in getting involved in the alpha stage of multiplayer testing, you can find all the relevant information in this post here. We’re looking forward to diving into more details concerning 0.9.0, and will see you all again soon in our optimization blog posts.

Until next time Travelers, may Eterra bless your journeys!