Paul Jeffrey
Premium
Studio 397 have given fans an interesting insight into the ongoing development of the simulation, as they continue to investigate and identify bugs and issues whilst expanding the core experience.
As many of you will be well aware, Studio 397 are the development team behind rFactor 2, and thanks to the changing world landscape brought about by the Covid-19 situation, recently found themselves thrust into the spotlight as the simulation of choice for the virtual Le Mans 24 Hours event held a couple of weeks ago.
Although the event was a huge success for the studio and sim racing itself, 24 hours of racing and 200 + drivers did bring up a few issues with endurance racing within the sim, and the team are actively looking to recreate and rectify these problems - with work having already started to yield some positive results:
Of course rFactor 2 is very much a platform favoured by endurance drivers, and any improvements to the stability of the simulation in long distance racing and driver swapping situations is likely to be well received by the vast majority of the playerbase. However, another key aspect of rFactor 2 is the ability for community members to create and release mods for the software, and this is something that the Dutch studio have long since mentioned they want to improve and increase the levels of documentation and tools for established and aspirin modders alike.
Thankfully, it looks like Studio 397 are on the road towards developing some much needed further documentation around these very subject, as Marcel continues:
So that's the immediate future of rFactor 2 covered, just left to remind you that the studio recently deployed a new update to the simulation that includes the liveries of the Le Mans 24 Hours for those who own the cars, the recent free Portland track, various BOP improvements, announced the Ferrari 488 GT3 and a further, as yet unannounced GT3 car alongside a nice update coming the way of the existing models, Silverstone updates and plenty more besides.
A good time to be a sim racer and rFactor 2 fan it seems....
Original Source: Studio 397
rFactor 2 is available exclusively on PC.
Want to know how to get the best from the sim? Start a thread in the rFactor 2 sub forum and let our community offer you the benefit of their massive combined experience.
- Bug tracking and fixing overview
- Advice for driver swap workaround
- Release documentation for modders
As many of you will be well aware, Studio 397 are the development team behind rFactor 2, and thanks to the changing world landscape brought about by the Covid-19 situation, recently found themselves thrust into the spotlight as the simulation of choice for the virtual Le Mans 24 Hours event held a couple of weeks ago.
Although the event was a huge success for the studio and sim racing itself, 24 hours of racing and 200 + drivers did bring up a few issues with endurance racing within the sim, and the team are actively looking to recreate and rectify these problems - with work having already started to yield some positive results:
"A few weeks ago, after the 24 hour race, we promised to give you regular updates of our efforts to track down and fix the issues that occurred during that race, and a few races before that. In fact, this effort is not something we started two weeks ago, it is an ongoing process. But before we look at the specific issues, let us first explain a bit more about software development and fixing bugs" said Marcel Offermans of Studio 397.
For starters, let’s give you a bit of background on how we develop code, the processes we have in place to ensure that our code is correct as well as a brief introduction on what kind of bugs there are in code and how to fix them.
Every change we make to the codebase, either to fix a bug or to implement a new feature, is developed in isolation. As soon as the developer working on it is confident the change is correct, he or she will do two things. The first is to ask at least two colleagues to review the changes. By getting others to look at the code, we typically catch mistakes that the original author would miss. I’m sure you have had cases where you are blind to your own spelling mistakes when writing some text. For code it’s typically no different. The second is to create a build on Steam that can be tested by others. If the change passes both checks, it gets integrated into the next update. That goes to our group of beta testers who again test the change to ensure it works as designed. If that passes, you will find the change in the next public update.
So that’s how we deal with changes. What about the extensive codebase we already have? Here the process starts by identifying a bug and being able to find a series of steps to reproduce it. If we can reproduce it, we typically have no problem fixing the underlying issue.
There are two types of bugs in code. Bugs that come from mistakes in the logic of the code. Once identified they are typically easy to reproduce and fix. The second type is timing and threading related, also known as concurrency bugs, and in recent years these tend to happen more often as processors get more and more cores and a lot of things happen simultaneously. Reproducing this type of bug is usually a lot more tricky as the slightest change in the execution timing might cause it to appear or disappear. Finding them requires a combination of luck, lots of testing and in some cases rigorous code reviews. Given that the rFactor 2 codebase consists of millions of lines of code (to compare, a typical novel will be around 15.000 lines) you can probably figure out that going over it front to back is going to be a very time consuming process. And you might still glance over the actual issue (do you still remember what the name of the street was that the main protagonist was crossing on page 34?).
Now that we’ve explained the process, let’s go back to the 24 hour event. Directly after the race we started analyzing and categorizing all the different reports we got and pretty soon we were convinced that we were looking at one or more concurrency issues. Reproducing these was going to be tricky. We have a framework that we can use to setup fully automated tests, so our first step was to try and reproduce the exact conditions of this 24 hour race. Specifically we started designing test scenarios that resembled the reports. Two weeks later, we are now seeing the first results of those tests, with a reproducible scenario that we are investigating further. I expect us to be able to explain more in the next roadmap, but the good news is that we found something.
As a result of finding something, we also have some preliminary advice for those running endurance races. Contrary to what most series have been doing, making sure that the replacement driver joins shortly before the intended driver swap and then having the original driver disconnect soon after, it for now is probably better for all drivers to join the server before the race starts and stay on the server throughout the whole event. Our code in theory can handle up to 104 drivers and another 104 spectators, so if your races have less than that, try out this advice while we continue to track down these issues.
Of course rFactor 2 is very much a platform favoured by endurance drivers, and any improvements to the stability of the simulation in long distance racing and driver swapping situations is likely to be well received by the vast majority of the playerbase. However, another key aspect of rFactor 2 is the ability for community members to create and release mods for the software, and this is something that the Dutch studio have long since mentioned they want to improve and increase the levels of documentation and tools for established and aspirin modders alike.
Thankfully, it looks like Studio 397 are on the road towards developing some much needed further documentation around these very subject, as Marcel continues:
"With all the recent updates to the game visuals, we are now preparing to release documentation to help modders take full advantage of these updates. For now this will focus on track content, with car updates coming at a later date. We have been working hard to upgrade our tools and documentation to help make that possible. Tools will be made available including 3ds Max 2021 plugins and an independent Material Editor, and full documentation will be released for the shaders, as well as some guides and tips for getting setup. This will represent a significant step forward in the way content can be created and the options available to modders, with all the latest features, including improving night-time effects, tree shading and road and terrain blending options. To support this, we will release an updated Loch Drummond that will be included in ModDev by default. This track is a small fantasy circuit that has been updated to make full use of the various options from our work on recent tracks.
In recent updates, we made adjustments to old content to help it be compatible with lighting updates. We will add a few options here to help modders, including the ability to disable these changes on a per-material basis if required. Also with this update, we will allow modders to customize the atmospherics in tracks again. This will now be in the form of scalars to adjust the density of haze in different conditions and also to set the amount of air pollution. This should result in an easier to use system and help us keep effects consistent across the game.
This information will all be made available on our Developers Guide: https://docs.studio-397.com/developers-guide/
So that's the immediate future of rFactor 2 covered, just left to remind you that the studio recently deployed a new update to the simulation that includes the liveries of the Le Mans 24 Hours for those who own the cars, the recent free Portland track, various BOP improvements, announced the Ferrari 488 GT3 and a further, as yet unannounced GT3 car alongside a nice update coming the way of the existing models, Silverstone updates and plenty more besides.
A good time to be a sim racer and rFactor 2 fan it seems....
Original Source: Studio 397
rFactor 2 is available exclusively on PC.
Want to know how to get the best from the sim? Start a thread in the rFactor 2 sub forum and let our community offer you the benefit of their massive combined experience.
Last edited: