Dev Blog

Multiplayer Progress Update - July 2021

Posted By EHG_Stanzwar on July 20, 2021 (Source)

Also see the New Multiplayer FAQ: Official Last Epoch Multiplayer FAQ


Hello Travelers, and welcome to the first multiplayer monthly update!

I’m very excited to say that we’re now at the point that we are going to be able to keep you all more in the loop with regards to multiplayer development. Where before we’ve often relied on “informal” conversations through in-game chat, forum comments, and reddit replies, we are now going to be able to produce regular updates. I will use these posts to keep you up-to-date with not only our current status, but what’s coming next, what risks we currently have, and more. This first post will likely be a bit longer than following updates, as I will spend more time providing a breakdown of what Judd spoke to in the Roadmap to 1.0 post: Road to 1.0 - July 2021 Development Update. So let’s get right down to it.

Current Multiplayer Progress

Playing online

You can log-in, be allocated servers for your play session, and have a continuous online experience all day without interruption. The user account system we’ve had since the early days was built to eventually support our party system, and has been powering our in-game chat for some time. Our QA team is playing Last Epoch multiplayer every single day together.

Gameplay

We put a lot of upfront effort into building tools that enabled us to convert our current campaign, endgame, and quests into being Multiplayer-friendly. We're happy to say we're making very quick progress here and you should see most of the game represented right away in the first Multiplayer test.

Your spells work online, and are fully server authoritative. We have our baseline desync compensation system in place and it works well; this one is very exciting to me since it’s so important for making moment-to-moment gameplay feel responsive. There is a lot to tune in this system and it will continue to receive updates and improvements

Online Inventory

Your inventory works online and saves to your online character, with stashes being a separate global inventory as you’d expect. Loot drops are already instanced. You can store items in your stash and use them across online characters. Items are granting you their stats, for the most part. Gold drops and you store it in a server authoritative manner.

Server authority

All of the features you would expect to be stored and saved online now do so. These are features such as character saves, stashes, and quests. Your party’s data is all controlled by the server. Characters are protected from manipulation, accessible anywhere you log in, and this security paves the way for us to create competitive content like Cycles (seasons) and races. Both player abilities and monster abilities all fully communicate through the server. Player positions are mostly authoritative, with the rest in progress.

What are some of the major works-in-progress for Multiplayer?

Playing online

We need to solidify a strong queue system for login a wider release. We’re optimizing our server size to reduce as much overhead as possible. We’re working on ensuring a stable experience receiving servers at scale. We need to continue to test our “matchmaker”; that is, the tool that gives you a session when you’re playing Last Epoch online. Our party system will need updates as we proceed through beta.

Ensuring we have good tools in place to monitor and track any problems, so we can respond as quickly as we have during Singleplayer releases - this one is quite tricky, but very important to us. These features on top of Server Authority are the most challenging features to prepare.

Gameplay

We are using the tools to finish preparing chapters, monsters, and endgame to work in a Multiplayer format. I’m super confident in this process. We need to continue to tune a few ability types in multiplayer, such as movement abilities and channeled abilities and how they feel online. The same goes for monster abilities - bosses take more work than your average monster. Skill trees need numerous polish passes to make sure all the particularly interesting nodes work as intended - our skill trees are quite a bit of content!

A need for server authoritative quest states initially slowed down our progress on adding content, as we needed a way to change the state of the zones you are in while you are in a party. This is now all functional but there’s a lot of polish work to be done here. We are working on being able to Waypoint to locations so it’s easier to play asynchronously.

Items

While many Unique Items work, others have custom properties that will have to be implemented and tested. Some of our tooling works for this but a breadth of it will be custom work until we catch up to all the items. Idol stats are similarly not fully implemented, but your idol slots unlock during the campaign and the idols themselves are droppable. Crafting has a lot of its code ready, and we need to ensure crafting logic is server authoritative and it will be usable.

There is no trading at the moment. We have the code behind our item system to do this, we just need some additional work to make it happen.

Server Authority

Making sure the player’s position is fully authoritative. Right now it is partially so, but we need to ensure we have the correct logic in place for rollback. We need to keep pushing hard on testing the ability to exploit or have saving/loading errors with your characters’ data, so we never see any issues like a disappearing stash or an item that doesn’t save. We have to keep tuning our desync compensation system so the game feels as good as possible at a high ping - right now, you can get up to 200 ping before having a questionable experience. We are also finishing up our position authority system, but it’s not one of this month’s goals.

On the whole, this is some of the most complicated and long-term work; scaling these services and keeping them secure with minimum chance for error is critical before moving into a wider Multiplayer release.

What are our Goals for July?

  • Ensuring our content, up to reaching End of Time, is polished and easy to play. A major system we are to begin on is Waypointing, so players can play asynchronously more easily.
  • Debugging our party system to ensure play is as smooth as possible. The last 20% is the trickiest.
  • Planning for earlier access to one of our endgame systems in order to extend multiplayer play to make it viable for wider testing.
  • Collecting data. We need to not only be able to monitor and track player activity to help inform good decisions, we need to be able to monitor all of our front-end and back-end systems if we want to provide you a high quality experience like other online ARPGs.
  • Optimizing our server size in order to save cost, and this comes in two major forms: server optimization, and “netcode” optimization. We are profiling our server to reduce its size online in order to allow us to put more servers on a single machine. We are optimizing our “netcode” to significantly reduce the size of the data we need to send between the server and clients, as well as optimize our gameplay code to reduce the amount of computations we send to the server in the first place.
  • Getting our potions and idol systems working more fully, so you can fully flesh out your character (and survive!).
  • Scaling up to approach the ability to test more widely!


On the whole, we have a vision for a format of Last Epoch Multiplayer that we can release to wider testing before we’re done adding all the campaign/endgame content. Many of the goals above will bring us there, and some of them will be ongoing for more than this month. The closer some of these features get, the easier it will become for me to give you a harder date on when we’ll start opening up for some opt-in testing.

In our next update, I will provide a status update on everything I’ve mentioned above, as well as add new features we are working towards. I will also answer questions as I can in the replies below.

Thank you for taking the time to check this update out, and here’s a multiplayer gameplay video to tide you over until next month! Please note that you will find sounds to be a little off in this video.

Learn more by visiting the new Official Last Epoch Multiplayer FAQ

Stanzwar