Dev Blog
Closed Multiplayer Testing Begins | Development Update
Posted By EHG_Kain on May 10th, 2022 (Source)

Welcome Travelers to our May Development Update for Last Epoch. It has been a little while since our last post, so oh boy, do we have a lot to share with you today. We are going to be sharing our progress on several big initiatives we’ve been working on, including multiplayer, visual and combat polish, and performance. We are also excited to announce that today marks the first day of our closed community testing for Multiplayer in Last Epoch.

Development Focus

In March we released Patch 0.8.5 - Depths of Eterra. This update introduced two new dungeons: The Lightless Arbor and The Soulfire Bastion, as well as The Arena of Champions, an overhaul to Catalysts, and a whole slew of new 3D models for unique weapons and armor sets. These two new dungeons saw with them their own unique gameplay and reward mechanics, including a much anticipated gold sink.

With the addition of all this new content, we feel our endgame goals for 1.0 are in a great space. Of course there will still be further adjustments and changes, but we’re happy with the variety in endgame content to now switch our focus fully to a few key goals. We’re turning our attention to visual and combat polish, performance improvements, and of course everyone’s favorite topic, Multiplayer.

Combat feel and performance have been two of the most talked-about feedback topics from our community for some time now, and while we felt that delivering our core content was something we needed to do first, we are now incredibly excited to be in a position to add the level of polish to these systems that Last Epoch deserves.

Development Cadence

As we’ve always planned on providing cycles for content post 1.0, we’ve followed fairly regular development cycles of 3-4 months since the first Beta launch of Last Epoch. This allowed us to hone our techniques for this kind of regular development schedule, and gain an understanding of what we could, or could not develop within one of these cycles. With our current goal of prioritizing multiplayer, performance, and combat polish, we are going to be extending this patch cycle to the 6-month mark (September’ish) to keep progress on these fronts moving full steam ahead.

This change is not for all future development cycles, we’ve only decided to take more time on the current one to progress more efficiently on a specifically large and branching task, instead of splitting our attention back and forth between multiplayer and single player. As mentioned in the last multiplayer update, we’re moving towards a singular project, where “single player” and “multiplayer” are not separate projects, but one unified goal we are moving towards. As such, we’re taking the time right now to make that happen. Moving forward, we will also be combining “Development updates”, and “Multiplayer updates” into one “Development update” as we have with this post.

Multiplayer Development Update

For the multiplayer section of this Development update, our Production Director Stanzwar is back to bring you up to speed on our progress. Going forward we’re going to be combining these updates into single, frequent “Development updates”. however for this post Stanzwar is still providing the update directly!

A Letter From Stanzwar

The last month or two has mostly been heads down focusing on a lot of this less glamourous work I mentioned in our February Multiplayer update, but let me break down some updates to our progress in these areas.

Updates from our last post

Remaining Content

We have finished or nearly finished adding a ton of minor content to the game that needed to have the multiplayer switch flipped to “on”. This is a lot of smaller content such as:

  • Shrines
  • UI notifications such as Level Ups
  • Disconnect Logic
  • Online portal behaviors
  • Minion functionality (they transition across zones online now!)
  • Monolith (nearing completion)
  • Channeled abilities (nearing completion)
  • …and a lot more!

Most of our work is now turning to the online platform as a whole, and the minor details about the game experience and experience in a group that will be both critically important and take constant work to ensure it’s high quality. You’ll see how confident we feel below.

Diagnostics / Fixing Multiplayer Bugs Fast

We have made a lot of progress on this front; we’ve made more progress here than anywhere else, but we can appreciate that this isn’t the most exciting topic. Over the past several months, we’ve been working on migrating our backend system to gain more control and capacity to provide ourselves with telemetry and statistics. This allows us to more quickly identify, correct, and roll out fixes for issues much quicker than ever before. We have a lot of power here now, and here are some examples of how this backend migration is working out for us:

  • We’re down to zero or extremely few crashes in our servers
  • Our system that allocates you a server is up to 100% reliability
  • When you have an issue like a crash or poor performance, we can see:
    • Your player names and accounts
    • The time of the problem
    • The precise server it occurred on
    • The logs for the issue
    • An alert is immediately sent to our development team
  • We have a lot of data about:
    • Number of total crashes
    • Active players and party information
    • Reliability
    • Performance (is some crazy build making servers work overtime?)

Multiplayer Monolith

We knew this was going to be an incredibly complex project, but it was even more complex than we anticipated in the last post :). We’ve made most of our way through completing this project and are almost ready to release multiplayer monolith for testing to our internal team.

One major decision we’ve made is a change to how our game loads for you. We wanted to make sure that traveling back and forth from Echoes and the Monolith reward chamber was a quick and seamless experience. So we totally changed how we do loading in Last Epoch!

Previously, at any part of the game, we would just unload old zones and load new ones as you played. Your experience is more complicated in the Monolith - you are moving between Echoes, the reward chamber, and the hub zone constantly. In a group, this would have meant a lot of loading of new servers for players - not only is that expensive for us, but it’s a very slow and annoying player experience.

To solve all of this, our outstanding development team has re-engineered our game to support additive loading - that means we can do all kinds of things now, and in the future!

This means:

  • When you enter the Monolith hub, the reward zone will also be loaded
  • Neither of these will unload
  • When you enter a new echo, it loads it
  • When you finish an Echo and enter the hub or reward zone, it unloads
  • You can seamlessly travel between your Echo, the Monolith hub, and the reward zone
  • All of this is now on a single server for a full group

As you can imagine, that is not only much faster for you when you get to play the Monolith of Fate online, but is much more cost-effective for us in terms of maintaining servers.

With all that said, we also have an entire multiplayer experience we’ve designed around the Monolith - how your party will function, how you will get rewards, what happens when you disconnect or die, and many other considerations. We are going to release this for further testing before we provide you with more details.

Ideally, we are also going to use this technology in the future to make the entire game load faster at all points.

CT Test Update and Recruitment news

Now that we’re through some major updates, we are happy to share some big news.

With all the progress we’ve made, we’ve decided to bring multiplayer to our Community Testers! Our first multiplayer test with our Community Testers will be… TODAY!

For our Community Testers, we’re giving them a few straightforward goals:

  • Have fun!
  • Play in groups of 2-4 players
  • Don’t race
  • Try to create party synergies
  • Report major player experience issues

EHG has some very simple goals for this test:

  • Observe party, server allocation, and server health
  • Observe server performance callouts
  • See how well we’re able to intake feedback and data
  • Not focused on gameplay yet

For our Community Testers, we’ve let them know a large list of features that are still finishing up, and various areas of the game that are currently regressed while we pull it all online. We’ve let them know to consider our online version of Last Epoch as a pre-Alpha, where we typically call our singleplayer releases a Beta. There are a lot of new features and services we are mastering, and this is reflected in the status of the build. We expect things to start moving fairly quickly from this point on.

I’d like to make a quick note to mention that we are currently not looking for more Community Testers; we want to perform a few tests like this before increasing its availability. Another post calling for multiplayer testing will go out in the future, so don’t apply yet!

Going Online

It is a huge transition for any team to go from managing an offline game to an online one. We have often mentioned we want to make this process as healthy as possible for our team, while also being able to properly handle any issues we see when we go live.

For now, we are going to be starting with short bursts of tests. Our eventual goal is to be doing full-weekend tests, and then having full pre-Alpha multiplayer availability at all times.

A lot of the prior months have been filled with planning, organizing, and trying our best to be ready to handle any issues we run into without burning out our team. We get a lot of questions from the team about when we are ready, when we will feel good to test, and how we will get there. We recently had an epiphany that helped us simplify how we can answer these questions: “Go online!”. Eventually at some point, you just have to make the decision to jump in and get the game online.

Today is that day!

We’re very excited to finally be approaching a wider online release, and very excited where this will take us.

Goal for May

Our main goal is to start making multiplayer available to our Community Testers, and beginning to master the art of the online service. In doing this, we’ll likely share some details about how the test went and what our next steps are after that. Outside of that, we’re almost completely focused on fixing multiplayer bugs, finishing up features, and preparing for larger and wider multiplayer releases.

Thank you for checking in, and expect to hear more from me soon after our testing to let you know how it went!

Current Development

Moving into the current development cycle from 0.8.5, we’re making the most concentrated effort on multiplayer we’ve ever made. However, this doesn’t mean the core game is going to be neglected. Alongside the development for multiplayer, we’re also going to be addressing some of the topics which we’ve received a lot of feedback regarding, and we agree are very important for us to polish as we approach 1.0.

This includes performance optimization, making combat feel better and more exciting, as well as updating item and enemy models to our more current standards. Of course, these items in themselves will be constantly ongoing projects for as long as we continue developing content for Last Epoch (planning for many years of content!). However, there’s a good bit of catching up we feel we can do here which we intend to target during this development cycle. Not all of these items may make it into the next major patch, but are items we are currently working on preparing Last Epoch for its 1.0 release.

Performance Optimization

In our efforts to further polish Last Epoch, we are creating a suite of analytics tools to measure game performance. We know that performance improvements are something that the community is very much looking forward to, and we are very excited about this development.

We are taking the extra step here - from measuring individual abilities and effects to creating performance heatmaps of entire levels. This gives us a broad view of the entire game, how levels compare to each other and where the heavier FPS hits are.

heatmap_row

With these tools we can measure values such as how many objects are being drawn per scene, as well as perform comparisons between different computer setups, making it easier to find bottlenecks. It also helps us to establish a guideline for what we expect from level performance in the future, so if a new map deviates from the average we will immediately recognize it.

We are planning an entire development blog specifically showcasing the improvements we’re making to Last Epoch’s performance and optimization across the game - so keep your eyes out for that in the future.

Improvements to Combat Feel

One of the significant areas of feedback we get concerning core gameplay is “Combat Feel”. This is a fairly complex topic and consists of a lot of things that can be hard to identify, or call out - but is certainly a case of “the whole is greater than the sum of its parts”. To improve the feeling of combat, we’re focusing on two main parts: how it feels to hit an enemy and how it feels to kill an enemy.

On-Hit Effects

For the combat feel of when you hit an enemy, we’re exploring options for enhancing the skill SFX and VFX that can happen when hitting enemies, such as blood splatter, dust and bones being shattered off on hitting skeletons, bug gloop coming off of bugs, void splatters for void creatures, etc. Additionally we’re looking into improving many stun animations as well as adding walking flinch animations for big hits that don’t quite stun to provide this feedback of enemies being hit, even while moving.

On-death Effects

For the combat feel of killing enemies, we’re experimenting with various ways to add custom death VFX for each damage type, which so far has been very successful. The goal here is to make this aspect of killing enemies feel more responsive to your skill and damage type selection. Seeing that impact of your skill selection directly on enemies as they die helps to reinforce the importance of your build selection, and its effects.

Death Animations

With new on-death effects, we are also making efforts to improve many death animations, and ragdolls throughout the game. Further expanding on this, we are also adding more variations for death animations for enemies often encountered in large packs to provide a better reaction to clearing large groups of enemies at once.

Ailments

Another part of combat feel we’re working on is clarity of ailments on enemies. For this, we’re moving the ailment points to inside of the monsters, as well as reworking the visuals for many ailments. While this may sound a bit complex, essentially it works to make the monster feel more like it’s on fire, or poisoned. Sometimes monsters in Last Epoch currently have their ailments obviously floating in the air next to them instead of inside or on them. These changes should help make a big impact on the feeling of applying ailments, and seeing that ailment truly affecting your enemies.

Skill VFX & SFX

While this also plays into combat feel, we’re also revisiting some of the older skill VFX to get these skills up to date and provide a more visually pleasing experience to use them. For those that follow our developer streams (every Friday at 3:00 PM CDT at twitch.tv/lastepochgame!), you may have already seen these; but we want to share these two examples with our entire community and one additional new yet unteased VFX update. Introducing the new visual effects for Hammer Throw, Judgment, and Aura of Decay!

Continued Visual and UI Updates

UI Updates

In refining the gameplay experience Last Epoch, we’re continuing to put attention into the UI elements. UI often goes under the radar, however it is critical to the game experience as it’s something regularly encountered, or even constantly persistent. We recently introduced the new skill bar, passive page, and globe UI’s, and now we’re working on expanding on these UI updates through the Dialogue system. We’re reworking the panels: providing all major and minor NPC’s in Eterra new Portraits to make them more distinct and recognizable, cleaning up dialogue (often making it shorter and easier to digest), and improving user experience with the window and options no longer moving up and down based on the dialogue length. For text boxes with longer dialogue that doesn’t require a player response, there is now a “continue” button where clicking anywhere on the panel (aside from the ‘close’ button) will progress the text.

Visual Updates

Alongside the improvements to combat feel, we’re also continuing our efforts to update visuals throughout the game to our current standards. This includes minions, companions, skills, and class armor designs. Here’s a few examples of some of the updates we’re currently working on!

Primal Sabretooth, Primal Bear, and Golem

The first items we’d like to show off is the updates coming for the Primalist’s Primal Sabretooth and Primal Bear companions with their new concept arts, as well as the 3D render for the Acolyte’s Golem. These updated styles help provide more character to these companions, as well as provide distinct silhouettes within the game sphere to make them easier to identify at a glance. These visual updates will also be coming with updates to their related skill tree!

Monster Models

Another item we’d like to show off is a visual overhaul to everyone’s favorite domesticated Eterran animals: Groles. The whole family will be getting new standard and corrupted variant visuals, as well as animations.

Armor Models

Of course, one of the most common categories of feedback we get (aside from “when mp?”) is in making different armor have a visual impact on your character. And we agree that this is very important in distinguishing your character, as well as providing a feeling of progression and power throughout the game. For this, we’d like to share the concept art for what is planned to be the highest tier of armor for the Mage Class, as well as one of the early Primalist armor sets.

3D Models for Uniques

Alongside updated models for armor sets, we are also continuing to work on creating 3D models for all existing Unique Weapons, Shields, and Catalysts to provide the visual experience of actually wielding the items you have equipped. With this, we have a couple examples of 3D renders we’d like to share the completed models for:

And much more

There are a number other improvements we are excited to share with you in the future, and as all these systems start to harmonize together, Last Epoch is really feeling like it’s “leveling up” in a big way. As it happens, leveling up is one of those core feelings that ARPG’s are known for delivering, and so we wanted to take the time to add some new polish to that experience as well. Turn your volume on, and enjoy the happy feels.

Looking Forward

We may have hinted at it throughout this post here and there, but some big things are starting to hit full sprint here at Eleventh Hour Games. Today is the first day anyone outside of our own team is accessing multiplayer which is incredibly exciting for us. We’re also revisiting some of our earlier work and moving it up to current standards to get everything ready for a goal that was once a Kickstarter dream. Thank you to all of our community members for your continued support, as we continue towards the Last Epoch we’ve always dreamed of making!

After the first series of tests with our Community Testers, we will be posting another update talking about how the tests went, as well as looking for additional Community Testers for expanding the tests - so make sure to hold on to your applications for now and keep an eye out for this post with information on how to apply if you’re interested in joining the expanded Alpha tests!