DiRT Rally Road Book – 18/12/15



December 18, 2015

Hi everyone, I’m back from my holiday and it’s time for another Road Book. Suffice to say I had an awesome break from things and managed to get a lot of rest after what has been a pretty hectic year.



One of the best things about coming back has been seeing the amazing buzz going round the studio and the game getting a fantastic critical reception. Getting good reviews from magazines and websites is something that means a lot to us as Game Developers but one of the most incredibly satisfying things about DiRT Rally has been seeing that the User Scores are also scoring very high. I guess its proof that making a game for you guys has paid off and we are very grateful for the amazing feedback you have given us along the way.

I now want to take this opportunity to hand over to our AI programmer to tell you how we have created our virtual AI times in DiRT Rally. We’ve spotted a few people saying that we are just randomly generating the times but we did things in much greater detail to try and capture the sense of a rally event unfolding. So, here is Jason Callis with the low down on our virtual AI systems.


These are the AI you are looking for

For Dirt Rally we have changed how we simulate the virtual AI times you see as split times and in the results table. Rather than using an automated system to generate AI lap times over a variety of difficulties we now run a simulation per driver to calculate each split section factoring in ongoing damage events and punctures. This simulation is also used to complete finished rallycross events, and the other group and semi-final events you are not racing in.

We start with the best possible split time per section for every track and car combination. This is called the Bogey Time and we use our fastest racer on the team, Michael Robson (who you might have seen demonstrating the latest cars and tracks in our Dirt twitch shows!). This gives us a consistent starting point for calculating each driver’s split time throughout a rally/hillclimb/rallycross competition. The generated AI driver split times will always be slower than the bogey times, so we know they should be beatable by skilled Players.

For Dirt Rally we currently have 75 levels of driver skill, and these are used to setup the spread of driver abilities you see in the various championship tier and custom event difficulties. As you have already figured out, our designers include a higher skilled AI driver in each tier but the spread of difficulties should vary enough to challenge you to reach a podium finish. When setting up a championship each AI driver can further modify their skill level with a bonus to reflect a specific country they are good or bad in.

Each driver skill level consists of 8 variables that can be tweaked by a designer:

  • Min variation – Minimum percentage variation of Bogey Time.
  • Min variation – Minimum percentage variation of Bogey Time.
  • Max variation – Maximum percentage variation of Bogey Time.
  • Wet percentage – Percentage change for wet stages.
  • Night percentage – Percentage change for night stages.
  • Damage probability – Probability per split section of a damage event.
  • Puncture probability – Probability per split section of a puncture.
  • Min damage level – Minimum damage level event that can be rolled.
  • Max damage level – Maximum damage level event that can be rolled.

Once we have the final skill level for every AI driver each stage is simulated as follows:

  • If in service area
    • Check to repair punctures (Checks if driver has any spares available)
    • Check to repair damage (Not all damage events can be repaired fully in the time available)
  • For each split section in order:
    • If not retired and no current damage event then roll against damage probability to see if driver has damaged vehicle
  • If damaged
    • Roll a damage level between min and max from driver skill table.
    • Roll a random damage event type (This is the description you see in the results screen).
    • A retirement damage level will end the race for the AI driver here.
  • If not damaged then roll for puncture against the puncture probability from the driver skill table.
    • Calculate final split time
      • Set split time to current Bogey Time for that section based on car and track combination.
      • Add a random percentage to split time between min and max variation from the driver skill table. (This is the main difficulty modifier)
      • Add a percentage to split time for any wet race bonus, if applicable.
      • Add a percentage to split time for any night race bonus, if applicable.
      • Add a percentage to split time depending on number of punctures and any penalties for carrying unused spare tires.
      • Add a percentage to split time for any current damage event level.

With this system we can balance both the speed and the risks of higher level damage to AI drivers of different difficulties. Having a simulation for generating virtual AI driver times allows us more flexibility to model opponents over a full championship, and to add in future variables which would not be possible with a more basic database of times approach.

Awesome, thanks for that Jase.

Screenshot of the week

Here is a very cool shot of a bit of ditch hooking in the VW Polo from Driftdraft.


Video of the week

This is a very cool comparison video by Jimmy Broadbent who is putting the 306 Maxi up against the 2001 Ford Focus and reliving those epic battles from the late 90s.

Well, this will be the last Road Book for this year so I want to take this opportunity to thank you all so very much for being the incredible community that you are. Your passion and enthusiasm has kept us going through the tough times and the good. Please stay safe over the holiday period and have fantastic time with family and friends.

@Hatward and I will see you next week for a DiRT Show Christmas special so you can have a bit of a headstart thinking of questions over the weekend.

Until then keep it lit!

  • Share

About Paul Coleman

Chief Game Designer of DiRT and Rally Co Driver. Lover of all Motorsports.

View all posts by Paul Coleman

You might also like