ReturnOfReckoning wrote: ↑Sun Aug 06, 2023 6:42 pm
First of all we would like to apologise for the slowdown of updates and communication. We have been working behind the scenes, on the ability system and have been making good progress. This was a massive amount of work and involved a lot of the code base being ripped out and rewritten.
Abilities power a lot of the functionality within the game. As you might expect, players use abilities in combat with other players and monsters. Morales, Tactics and Career Mechanics are also abilities under the hood. Monsters use abilities in combat, including dungeon bosses, keep lords, kings, etc. Additionally, things such as Potions, Mounts and other miscellaneous items are all powered by abilities. As well as bolster, procs, and other gameplay mechanics such as Siege Weapons. So in summary, a lot of things in the game are powered by abilities.
When we started Return of Reckoning we aimed at restoring as much functionality of Warhammer Online as we could. When the ability system was created it was done without any real understanding of how the abilities in the game were stored and processed. It soon became clear that the balance at the time was not perfect, this was a mix of how the game was in 1.4.8 and abilities which didn’t quite work right on Return of Reckoning. When we had the ability to deliver client updates to players, we soon started making changes to abilities and making corresponding changes in the client files which roughly lined up with the change. This process was slow as changes would have to be made in the game server in one way and in the client files in another way. It was not only slow but was also hard to master as somebody would need to learn how both ability systems worked before they could make a change. It was becoming a difficult process training people on such a complicated system and was unsustainable. Making balance changes was taking more and more time to implement. It had to be fixed. We decided we need to get rid of the technical debt we had accrued over the previous 8 years and finally do it right. This would allow designers to create new abilities for dungeons, live events, items, and everything else with less training, and a much improved workflow, allowing us to produce new content as efficiently as possible.
We started the foundations of this work back in 2020 and we are now coming to the end of this massive undertaking. First, we had to go back to the first client version of Return of Reckoning and use the ability data from that, which was 1.4.8. This consisted of random fields of data with what would appear to be arbitrary. Then collating information from all the patch notes from Mythic over the years, cross referencing that with the development team’s knowledge and all the knowledge of the testers and other players who helped us. In some cases this involved going through hours of low quality videos on YouTube from 10 years ago and then map all this knowledge to all this data. This was a very slow process and meant going over thousands of abilities, filling in gaps and aligning all the data. We ended up building a tool to allow us to visualise the data, find patterns between abilities and more quickly reverse engineer the data. This meant we then had a complete data set of how all the abilities worked in 1.4.8.
Then we had to build a new ability engine. This engine would take the 1.4.8 and allow every ability to work exactly how it did on 1.4.8. This was a slow process and went through many different iterations. As the system was being built, we found some very specific circumstances which would require the whole system to work slightly differently. This would end up in an overhaul of the system, which would often break other elements that we had previously worked on. It was very much a 1 bug down and 2 more pop up scenario. Finding these bugs was slow and would often be up to testers to find.
We needed a way to quickly test many abilities to ensure they were working when lots of changes were made to the ability system. We first considered making unit tests to the system, however, as a lot of code was never designed to be unit tested, it was going to be a huge time investment. We then decided to build an in-game automated testing system. This allowed us to quickly iterate on tests and see the tests be performed, it also was really cool to watch characters and monsters appear and cast abilities on each other. Each test was performed in seconds as opposed to having a tester log into a class and test with another player.
Once we had an ability engine that worked with 1.4.8 data in game passing all of our tests there was something else we needed to consider. Over the years we have made lots of changes to balance and these changes were obviously not in the 1.4.8 data. We had to then see what amendments could be made to add back in the Return of Reckoning changes. However, it was not really clear what the straight changes would be, so we had to build a tool to compare all of the data we could, along with the incremental patch notes over the years to build a complete “1.4.8 to Return of Reckoning” patch notes. Then we had to see what was possible to implement, what changes were added due to limitations in the existing ability system, which changes would we do differently and how long it would take to implement these changes.
We still had the problem that ability changes would be slow to implement. To tackle this problem we decided we needed to improve our tooling. We created a tool which would allow us to make ability changes visually, similar to the previous tool we made to help reverse engineer the data. This tool allowed developers to make changes and have those changes automatically be deployed to their local game client so they can very quickly iterate on changes. This tool was also expanded to be a general purpose tool which is used for a lot of other content within the game. Now we can easily make changes to abilities.
So far we have been focusing on player abilities and can start working on implementing Return of Reckoning changes, these are now going through final stages of testing and are nearing a release ready phase. However, more work is needed. Abilities are also used by monsters in the world, items, including potions and gear bonuses as well as quest items and live event items. We also needed to implement all the Return of Reckoning abilities used in new mounts and items we’ve made over the years. The way monster abilities worked in Return of Reckoning was a bit tedious and confusing for people to work with, so this was redesigned to be clearer. We are also in the process of testing hundreds of monster abilities and assigning them to monsters throughout the world, which was lacking from Return of Reckoning for the most part. This will hopefully make the world a bit more interesting.
The next biggest challenge is dungeons. Dungeons in Return of Reckoning have always been a bit buggy and implemented in a complicated way. These have basically all broken. A lot of abilities had been borrowed from player abilities or implemented differently than they worked in 1.4.8 data. Work is ongoing, essentially rebuilding all abilities on dungeon trash mobs and rebuilding the scripts for the bosses to work with the new ability system. The focus of this is to get everything working as quickly as possible. This means that they may need some adjustment when everything goes live. As a lot of dungeon monster abilities are now working as intended, monsters might be either weaker or stronger than they once were. Now we have the new ability system. All monster abilities should scale much better.
So as we have said before we are nearing the end of the process. We are trying really hard to get this over the finish line, we really want to get back to working on new cool features for the game, for our own sanity if not anything else. As such, our next steps will be somewhat like this, although this is subject to change:
- Tests with our internal testing team, developers and balance focus group members
- Open a public test server with the new ability system for various amounts of time
- Large scale testing with the public test server in which we turn off the main server for limited time
- A full release when we are confident
As we are focusing on getting it out of the door we are trying to reduce the amount of work in the first release. Therefore we are prepared to close some dungeons while we fix them into a working state, if we need to. Ability changes currently in Return of Reckoning from 1.4.8 may be implemented slightly differently. We will have a full changelog from the current version of Return of Reckoning to the new ability system in the next post. Please keep in mind that this will be the current provisional patch notes and we will keep a changelog if they change before the system is released. Therefore, we are hoping we can get this out the door in the next couple of months.
Once the system is released, we will all be relieved but we doubt we will be able to rest. We are expecting bugs we didn’t spot throughout the testing phases. We will be working as fast as possible to reopen the remaining dungeons (if we can’t get them fixed before release) and we will need to make sure event items are all working before they start again. Then we can rest. For a bit.
Class balancing will resume in the new Ability System. We will be working on a more comprehensive class and archetype specific balance patch in an update following the release of the new Ability System.
We will be communicating our future content plan for after the Ability System has been released soon.