rFactor 2 | Taking Stock And What Comes Next

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.
  • 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.

rF2 Le Mans 2.jpg


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.

rF2 Le Mans.jpg


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/

rf2 portland.jpg


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.

rF2 Footer.jpg
 
Last edited:
Cheaper? Let's see... Example: 488 GTE, 5€/$. Let's assume:
20% VAT
30% for Steam
25% flat company tax on net earnings

This is 2.10€/$ per sale. You need to sell this a lot of times to cover the costs.
What is the price now for LM24, Sebring, The Ring & Azure? 18,50? I guess we all know what it takes to laser-scan a track and make something from this point cloud - and we still think it needs to be even cheaper?
The laserscan is only part of the story, licenses to the greatest tracks and cars on earth cost shitloads of money. So you choose for a real hardcore simulator and the price is a bit higher per customer.
Or you make a game for a broader audience or a big publisher steps invests a ton of money.
Than starts adjusting the goals and in the end ruins the sim.

Than rather pay a few euros extra for content that gets updated far beyond what most gaming studios would do.

While my son thinks it's perfectly fine to pay 20,- euro on a rare fornite skin with a silly dance, that gets stored in his fault with the other 50 skins he never uses.
 
Last edited:
It would cheap for you in Euro but I am not earning in Euro. The price I see is essentially 50 per track and it is absurd for the quality at that price when I can literally buy another game. If Kunos, SMS, Reiza and so on are happy to sell at lower price and still make money, why is S397 so expensive?

Not to mention, the quality is crap. The cars and tracks have so many issues like the 488GTE was using the GT3's LED lights and position or Vantage GTE interior was still written GT3. Or the Reiza cars all glowing in fluorescence white after the shader changes. It is esports and esports, the offline AI races are getting more and more bugged in each build. The new UI is literally a joke as it took them so long to get it out. I think they really need to think about some maintenance patches to fix up some of the long standing issues than keep flogging that Le Mans event.

I generally pay for R3E content happily even at similar price because I know it generally will work. rF2 content is overpriced as hell for the low quality.
So you complain about Reiza cars looking wierd after the shaderupdate and praise them for cheap DLC prizes? You are hopefully aware that it is Reizas business to maintain the rF2 DLCs and not S397. I am not sure if that will happen anytime soon though, when they are working full steam on AMS2.
 
It would cheap for you in Euro but I am not earning in Euro. The price I see is essentially 50 per track and it is absurd for the quality at that price when I can literally buy another game. If Kunos, SMS, Reiza and so on are happy to sell at lower price and still make money, why is S397 so expensive?

Not to mention, the quality is crap. The cars and tracks have so many issues like the 488GTE was using the GT3's LED lights and position or Vantage GTE interior was still written GT3. Or the Reiza cars all glowing in fluorescence white after the shader changes. It is esports and esports, the offline AI races are getting more and more bugged in each build. The new UI is literally a joke as it took them so long to get it out. I think they really need to think about some maintenance patches to fix up some of the long standing issues than keep flogging that Le Mans ****.

I generally pay for R3E content happily even at similar price because I know it generally will work. rF2 content is overpriced as hell for the low quality.

So I understand that this is not a question of price but for what we expect to get for it. Example:
If I'm interested in Endurance content, that would mean GTEs, Prototypes. It would mean LM24h and Sebring. Those don't even exist for R3E so there is nothing to compare. I accept that others like ACC and it's great. I'm just not into GT3. So: Nothing to compare (for me).
I still don't think that rf2 content is overpriced in any way. Hell, I just got Sprints and will try to get a good DD. And a wheel... THIS is where the money goes. Software/content costs almost vanish in the full context.
 
So I understand that this is not a question of price but for what we expect to get for it. Example:
If I'm interested in Endurance content, that would mean GTEs, Prototypes. It would mean LM24h and Sebring. Those don't even exist for R3E so there is nothing to compare. I accept that others like ACC and it's great. I'm just not into GT3. So: Nothing to compare (for me).
I still don't think that rf2 content is overpriced in any way. Hell, I just got Sprints and will try to get a good DD. And a wheel... THIS is where the money goes. Software/content costs almost vanish in the full context.

I can not agree more with you, the resistance content of rfactor 2 is magnificent, the quality of the cars in terms of handling, sound, ffb is incredible, so is le mans track and sebring, and the quality comes at a price .
PS: If the quality is good I am willing to pay its price
 
A creaking legacy monolith with no unit tests. Ouch, that sounds masochistic to me. As much as I have loved rF2 I think for the devs own sanity they should seriously consider moving on to a more modern and healthy platform. Good luck!
 
  • Deleted member 526227

The laserscan is only part of the story, licenses to the greatest tracks and cars on earth cost shitloads of money. So you choose for a real hardcore simulator and the price is a bit higher per customer.
Or you make a game for a broader audience or a big publisher steps invests a ton of money.
Than starts adjusting the goals and in the end ruins the sim.

Than rather pay a few euros extra for content that gets updated far beyond what most gaming studios would do.

While my son thinks it's perfectly fine to pay 20,- euro on a rare fornite skin with a silly dance, that gets stored in his fault with the other 50 skins he never uses.

Thank god it's possible to pay a higher price...:)
 
A creaking legacy monolith with no unit tests. Ouch, that sounds masochistic to me. As much as I have loved rF2 I think for the devs own sanity they should seriously consider moving on to a more modern and healthy platform. Good luck!

Unit tests are of no use to find out bugs like in the 24 hours event which are mainly concurrency/load related. Also nothing odd with having a monolithic codebase, that's exactly how most small and even several bigger companies like Facebook and Google operate. Maintaining several codebases often adds lots of overhead to development.
 
Unit tests are of no use to find out bugs like in the 24 hours event which are mainly concurrency/load related. Also nothing odd with having a monolithic codebase, that's exactly how most small and even several bigger companies like Facebook and Google operate. Maintaining several codebases often adds lots of overhead to development.

True but I was more generally referring to difficulties in maintaining an enormous monolith since "the rFactor 2 codebase consists of millions of lines of code". Tests aren't just for ensuring code quality but to provide living documentation of the code. The way it's described really illustrates why the pace of development is so slow.
 
i wish they'd just make a new game, all they are doing is continuously polishing this turd

start a fresh and take the physics into a new package that's actually worth playing with decent multiplayer

Whats wrong with that by updating Rfactor 2, People are always saying why dont they just improve Project cars 2 like they are doing now with Rfactor 2.

One problem I see with this idea with going to a new. better, and different Rfactor game is - if it is like all the other newer games coming out, no more major 3rd party modding. You will be locked into whatever limited tracks and cars they decide to give us. Not complaining this is a fact with new games, I enjoy what the people have done with all the older games to keep the life going in them such as AMS1, Assetto Corsa, and the 2 Rfactor games. You will never see favorite local tracks done by the developers, you will just the major known tracks. Times have changed in modding in games.

I also enjoy the new games, the track and car content, and adapt to what they give us.

No matter what developers do even to move to a new package, there will always be complainers and will never be satisfied.
 
I do like Rf2! Not using it much anymore, but still find it a good sim.
Just do not understand what businesses they are in.
Looks like GT3 and Endurance online!
Endurance online!
How many really want to do that?
I do like endurance racing but against Ai when I feel like it and with the time acceleration I like to use.

Think Studio 397 completely missed what was the Rf2 core market. The historic cars.
Had always hoped a modern take on GT legends or a complete F1 196x season cars and tracks to high standard.
But no can't even be bothered fixing the historic content or put it out in public domain to have users fix it.
And now they mess up Reiza content by changing the underlying shaders.
Would be surprised if Reiza would compete with itself and fix Studio -397 mess!

Studio-397 should have bought into the Madness engine and Reiza should have bought the rf2 engine.
We would all have been happier users and both studios would have had the better engine for them.
 
I do like Rf2! Not using it much anymore, but still find it a good sim.
Just do not understand what businesses they are in.
Looks like GT3 and Endurance online!
Endurance online!
How many really want to do that?
I do like endurance racing but against Ai when I feel like it and with the time acceleration I like to use.

Think Studio 397 completely missed what was the Rf2 core market. The historic cars.
Had always hoped a modern take on GT legends or a complete F1 196x season cars and tracks to high standard.
But no can't even be bothered fixing the historic content or put it out in public domain to have users fix it.
And now they mess up Reiza content by changing the underlying shaders.
Would be surprised if Reiza would compete with itself and fix Studio -397 mess!

Studio-397 should have bought into the Madness engine and Reiza should have bought the rf2 engine.
We would all have been happier users and both studios would have had the better engine for them.
You do know, reiza have said themselves, they are content creators, and not developers, that's why they have always took an existing game, and added content to it, they have never once made their own game from scratch.
It's upto reiza to update their content in rf2, when rf2 advances, they get the money for the content, so why should S397 fix their content
 
Back
Top