Seeking Insight into F1GP "Random" Opposition

59 views
Skip to first unread message

DIVVS ·IVLIVS

unread,
Aug 1, 2023, 6:24:21 AM8/1/23
to Formula One Grand Prix / World Circuit
Hello all:

I've been delving deep into the F1GP PC videogame and have become quite intrigued by the way the random opposition level works. I'm hoping some of you might have some insights or knowledge to share on this topic.

Specifically, I'm curious about two main aspects:

Random Opposition: I'm trying to understand how the game determines the opposition levels for AI drivers in the game. Is there a specific algorithm used to generate these levels at the beginning of a season? Or is it purely random with no set pattern?

Fixed Opposition Levels throughout the Season: Additionally, I'm wondering if there is a way to ensure that the opposition levels assigned at the beginning of a season remain fixed throughout the entire season. It would be interesting for the player to discover which of their opponents are the best ones during a season.

If any of you have information, experience, or even speculations regarding these aspects, I'd be grateful if you could share your insights. Perhaps someone has tinkered with decompiled game files or has access to developer documentation that sheds light on this matter.

Thank you all in advance for your time and expertise. Looking forward to your responses!

Divus

F1GP Archive

unread,
Aug 2, 2023, 11:27:02 AM8/2/23
to Formula One Grand Prix / World Circuit
Hello and welcome to the community.
It's nice to see someone so interested in the game.

I've dug up the following information from some old conversations with the other developers:
For All the Same and Random opposition spread, the game goes through all of the teams BHP settings and finds the highest BHP setting that is used (716 by default). This highest value is used.

All the Same:
- Nominal BHP of all teams is set to the highest value.
- Driver Skill is set to 0 for all drivers.

Random:
- Nominal BHP of each team is set to a random value (random value between 0 and 31 is subtracted from the highest BHP value for each team).
- Not sure about the Driver Skill.

Another random BHP subtraction is performed for each team, regardless of the opposition spread setting (1991 Levels, All the Same, Random).


As a side note, GPLapTim disables the randomization of the player's BHP value.
This is done to ensure a fixed BHP value for lap time competitions, among other things.


We have a disassembled version of the game executable, with some comments. There is also additional documentation and tools.
Theoretically, the information you are seeking could be extracted from the disassembled executable by someone who knows how to do it.

We have a tool that can set a fixed random seed for each game instance or for each event.
I guess this is similar to what you're aiming for, in order to achieve fixed BHP values over a season.

There were some efforts made to completely disable randomization in the game, to get the theoretical lap times like the ones for LapCalc, without having to run a huge number of test repetitions. 
However, the physics of the game works in such a way that it relies on the random seeds for some things and won't work otherwise.


This is my general understanding from the information provided by the other developers. I'm no expert in this area.

You're welcome if you want to join the development community.



Cheers,
Hrvoje

DIVVS ·IVLIVS

unread,
Aug 3, 2023, 6:57:11 AM8/3/23
to Formula One Grand Prix / World Circuit
Thanks for your quick and comprehensive answer! Now I have a much clearer understanding of how the game generates opposition levels.

I'm just a simple computer science aficionado, no more, no less. How could I actively participate and collaborate with the development efforts? I am intrigued.

Thanks again,
Divus

Endeavour

unread,
Aug 3, 2023, 9:48:04 AM8/3/23
to f1g...@googlegroups.com
Hey Divus, 

How did you get into the game? It's quite old now and the enduring appeal among new generations interests me :) 

Depending on your skills, there are various development paths you could choose. I'll contact you shortly with my recent thoughts on it :)

Regards, 

Barrie

--
You received this message because you are subscribed to the Google Groups "Formula One Grand Prix / World Circuit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to f1gpwc+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/f1gpwc/35276ddb-44c9-4fc8-8b9b-73f5928948cbn%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages