Magic Data Discussion

Posted by TomMK 
Re: Magic Data Discussion
Date: January 25, 2018 09:17PM
Posted by: RHill
Sounds interesting, do tell!
Re: Magic Data Discussion
Date: January 26, 2018 12:14AM
Posted by: Atticus.
Will do, but I'm still testing things.

I've learned how to use the Text Logging feature of GPxPatch - well, to be honest, I've just managed to construct a few meaningful Excel functions which help me filter the data that we need from the logs, laptimes, top speeds, minimum speeds, etc. so I can do some rather robust tests on a lot of assumptions and figures.



My workthread - [www.grandprixgames.org]
Full of classic F1/non-F1 track layouts

My blog about F1 performance analysis - [thef1formbook.wordpress.com]




Edited 2 time(s). Last edit at 01/26/2018 12:15AM by Atticus..
Re: Magic Data Discussion
Date: January 26, 2018 02:21AM
Posted by: pauloderpich
solving the unsolved? Great!

Paulo.
Re: Magic Data Discussion
Date: January 26, 2018 02:36AM
Posted by: SchueyFan
Re: Magic Data Discussion
Date: January 26, 2018 12:56PM
Posted by: klausfeldmann
Wow, it's quite surprising to see GP4's secrets still being revealed. Thanks, Atticus, for making this work for this community!
Re: Magic Data Discussion
Date: February 03, 2018 12:05PM
Posted by: Atticus.
Here's a quick update for you on how testing is going.

I've found the logic behind 3 of the 4 values previously labelled "player wet?" besides clarifying a lot of the others, although I'm still dumbfounded by the "slipstream" figure.

In total, there are only 8 numbers of which we have no idea what they do still.

(Including the two "segment nrs" of 6 which effectively close a range, meaning they are not used in any case, and the "cc race grip?" value which makes no difference either as it's always 256. So, in a way, it's only 5.)



My workthread - [www.grandprixgames.org]
Full of classic F1/non-F1 track layouts

My blog about F1 performance analysis - [thef1formbook.wordpress.com]
Re: Magic Data Discussion
Date: February 03, 2018 01:25PM
Posted by: klausfeldmann
Nice to hear some results of your work!

But which value are you meaning by 'the two "segment nrs" of 6'? Which line number is it in GP4Builder?
Re: Magic Data Discussion
Date: February 03, 2018 01:39PM
Posted by: Atticus.
klausfeldmann Wrote:
-------------------------------------------------------
> Nice to hear some results of your work!
>
> But which value are you meaning by 'the two
> "segment nrs" of 6'? Which line number is it in
> GP4Builder?


Thanks.

Desc79 and desc80 in the .md3 files.

"segment nr (start of some range) related to pit in/out"
"segment nr (end of some range) related to pit in/out"



My workthread - [www.grandprixgames.org]
Full of classic F1/non-F1 track layouts

My blog about F1 performance analysis - [thef1formbook.wordpress.com]
Re: Magic Data Discussion
Date: February 04, 2018 11:52PM
Posted by: salvasirignano
Looking forward to hearing your findings!

===================================================================================
Tahitian GP Circuit
[www.grandprixgames.org]
Easter Island Circuit
[www.grandprixgames.org]
Re: Magic Data Discussion
Date: February 06, 2018 08:57AM
Posted by: munnzy
is that the marker at the start of pit lane to slow the car down or let in speed up from pit lane ?
Re: Magic Data Discussion
Date: February 06, 2018 12:34PM
Posted by: klausfeldmann
munnzy schrieb:
-------------------------------------------------------
> is that the marker at the start of pit lane to
> slow the car down or let in speed up from pit lane
> ?


No, that are the lines #67 and #68.
Re: Magic Data Discussion
Date: February 07, 2018 01:10AM
Posted by: Atticus.
Hi All,

So I have undertaken a massive amount of tests using GPxPatch’s logging feature to find out more about lots of magic data values in general.

The tests were being conducted on a fresh GP4 install without any mods, in 100% non-championship races with 0% rain chance at Silverstone. The only thing I have had switched on was the Player car performance team dependent option, which was set to Power and grip – but I let the AI do the driving whenever possible anyways. For convenience's sake, I often turned off tyre wear (CC shuffler) and pitstops as well.

In the logfiles, I applied basic Excel functions to filter for a given driver’s (usually DC’s or MSC’s) laptimes, maximum speed (end of Hangar Straight, used to assess effects on top speed) and minimum speed (either at the exit of the Vale chicane or at Luffield, used to assess effects on cornering speed and mechanical grip) around the lap.

Please find below the values about which I found out something new. Former names are from CMagic; they're not their CSM equivalents.

Drag (lower, more) formerly Downforce? – Odd to see this one not recognized earlier. Has a dramatic effect on top speed and a bit smaller one on cornering speeds. It cannot be downforce because they go in the same direction, so lower top speed goes with lower cornering speeds. In reality, more drag usually means at least a bit more downforce (even the least effective point of downforce is downforce, even if it generates huge drag), but not here, so consider this a 'superficial' drag and drag only value, unlike…

Player downforce and drag (CC drag) formerly Ride height – This is a simple master downforce setting for the player car – the higher it is, the more speed you can carry around the corners, but the slower you are on the straights. On 1400, you are literally flat from Copse to the Vale. Beware, however, that it seems it simply doesn’t provide the downforce benefit for the AI, so it basically acts as another drag value for that. It cannot be ride height as that would have no or minimal effect on top speed, unless it causes the car to bottom out which it does not.

Player tyre wear factor, formerly Tyre wear player – I can confirm that this is a tyre wear % value for the player that adjusts the player’s tyre wear in % of the master tyre wear value, i.e. the CC shuffler. So if tyre wear is 0, you get no wear for the player even if the player tyre wear factor is positive, but if you increase tyre wear, the player is affected as well – up to how much the player tyre wear factor allows it. Conversely, regardless of whether the player tyre wear factor is 0 or not, the CC cars are not affected at all. The new info here is the % bit, all in all.

CC aggressiveness (added to car.field_108. related to cc grip factor, 32769 low, 65536 & 0 mid, 32768 high) formerly AI grip and “track improvement value” – This value regulates how sensitive the CC cars are to direction changes in the CC-line. Near its minimum (so around 32769-45000), the AI almost stops for the low-speed corners while near its maximum (so around 20000-32768; I know, it’s tricky), the AI is spinning off everywhere. You can see it is CC-line dependent, because at really low values the AI adjusts its speed at every single change of direction in the line. Likely affects the auto brakes driving aid as well, not tested yet.

CC aggressiveness finetune, formerly AI grip finetune – Just a confirmation that this one, like its “parent” is related to the CC-line and not grip in general.

Tyre wear, formerly CC shuffler – This is still the big one. We already postulated that there seems to be an odd upper limit coded into tyre wear in GP4 (maybe 2.0 or 3.0 on the plank / tyre wear monitor) after which laptimes don’t fall any further. Perhaps nowhere is this clearer to see than in 100% race trim without pitstops – at around 1/3 distance, if it’s set to high, the cars are simply starting to get faster again as the fuel burns. (And it’s no use decreasing fuel / player fuel consumption / cc fuel consumption because it’d mess up the weight effect.) And there is no way the AI is going to box because of tyre wear only – although you can trial and error a pitstop strategy where most cars pit just before the laptimes hit the 'ceiling,' off course, for a pseudo-designed to degrade world. Affects CC cars and player car in equal measure, but can adjust the latter with the player tyre wear factor, see above.

CC crossover point (higher, sooner) formerly Change for drys/wets timing AI finetune? – The only new info here is the fact that it’s actually what we previously thought was the finetune value (desc77) that is driving the crossover points and not the main figure (desc76). CC only – the player car gets the automatic pit signal to pit for a different tyre at the same point of the race in changing conditions.

CC engine mapping wet (higher, more detuned) formerly unk (dw) AI wet? – This is another easy one. It affects top speed and top speed only and only in the wet, so no cornering speed difference, no dry running effect, etc. We know wet engine mappings were beginning to become a thing around 2001 so this is a natural conclusion.

CC tyre wear and grip factor wet (higher, more) formerly unk (dw) AI wet? – This is a lot trickier. It affects top speed in the wet from the get go (the more water there is on the track, the more) and acts as a master tyre wear factor for wet weather tyres with a constantly and clearly steeper drop-off in cornering speeds if set to higher than its default setting. The assumption is that the worse minimum speeds mean the drivers carry comparatively lower top speeds onto the upcoming straights, hence the grip factor nature.

CC tyre wear factor wet (lower, more) formerly unk (dw) AI wet? – This seems to influence wet weather tyre wear only, in much the same way as the previous value, but without the top speed drop. Also be wary as it works in the opposite way – decrease it for more wear, increase it for less.

CC grip factor wet (lower, more) formerly unk (dw) AI wet? – You guessed it, the fourth one of the previously unknown values sets CC grip in the wet. (And grip only.) It causes huge shifts in laptimes and cornering speeds with top speeds less affected – again, probably only due to carrying different amounts of speed on the exits – but it does so in a consistent manner, so no trace of extra tyre wear unlike in the case the previous two values.

That’s it for now – thank you for your patience and for bearing with me during this long post. :-) Next up, I’m going to discuss what I have tried for the remaining 7 (!) values that remain unknown for now.

The value in this investigation was obviously to enable you to change more specific values if you have a specific issue. (E. g. if the AI suddenly becomes much slower in the wet on a custom track with the original “AI wet?” values, or the AI keeps spinning off on a custom track due it being too aggressive with the original aggressiveness values.)



My workthread - [www.grandprixgames.org]
Full of classic F1/non-F1 track layouts

My blog about F1 performance analysis - [thef1formbook.wordpress.com]




Edited 10 time(s). Last edit at 02/21/2018 01:44PM by Atticus..
Re: Magic Data Discussion
Date: February 07, 2018 01:11AM
Posted by: Atticus.
The following values are likely to remain unknown even after my most recent investigations. The upshot is that it is only 7 (!) values that we are talking about here, which is a lot less than what we’ve had before.

Slipstream? (subtracted from diff between field_e2 of 2 cars and then compared to speed of first car) – A surprising amount of information is known about this value despite not being cracked yet. We know that field_e2 of a car is NumFeetIntoLap, in other words where the car is on the track at any given moment, so if (NumFeetIntoLap)Car1 – (NumFeetIntoLap)Car2 – Slipstream? > (Speed)Car2 then something is triggered. See this post for reference.

[www.grandprixgames.org]

Comparing distance to speed looks odd at first, but it can make sense, e. g. 320 feet is comparable with 310kph which is exactly around the mark where slipstream begins to kick in. Note that this is NOT the slipstream effect itself – that was modified in the 1.02 patch, according to the GP4 patch readme file, but I haven’t found any changes to these values in the original tracks’ magic data from 1.00 to 1.02, so it simply cannot be it. (Thank you, SchueyFan again for re-uploading CMagic4 1.00 that allowed me to to come up with this proof.) This is, in effect, just the trigger, potentially for dirty air, but we cannot know for sure. Tested 0-65536 and some values in between for both player and AI, but no luck so far.

Helps decide if a tyre set needs changing? (dw) – So desc76 is back in the unknown column after it had precisely zero effect on crossover points during my tests. (And we know it should do what desc77, the actual crossover point, does because that’s what the original descriptions said and we have no reason to discard them here for now.) Not player-related and it’s not a value to influence CC cars to stop for excessive (dry) tyre wear either. (Tested both.)

Segment nr (start of some range) related to pit in/out – Still have no idea what this does. I did notice something very odd: basically, if I rebuild a pitlane in a .dat and create the .bin files and put them into the game, the dynamic tarmac map is always showing 6 pit sectors less at the beginning and at the end of the pitlane. (Properly built, so it doesn’t merge into the track in a way that it disappears below or something.) It does the same for the vanilla tracks, it doesn’t show the first and last 6 sectors. (Regardless of the pitlane flags.) It’s there physically, it can be felt while driving and it also “drives” the cars, as it's supposed to do, it just doesn’t show up on the screen visually. The original .dats doesn’t contain magic data, of course, and I have no idea how the .bin files would know how many sectors to show in the process of being created from the .dat otherwise. (So without input from the GP4.exe which has these values be default.) Not tested yet what happens if I create the .bins from a .dat that has magic data.

Segment nr (end of some range) related to pit in/out – Same.

CC race grip? (another perf factor) – Again, I have found no changes in-game by changing this value. Not in performance, nor otherwise.

Unk (dw) player wet? – I tested if it’s something similar to the “AI wet” values, but it made no difference while driving in the wet.

Unk (dw) player grip? – Same here.



My workthread - [www.grandprixgames.org]
Full of classic F1/non-F1 track layouts

My blog about F1 performance analysis - [thef1formbook.wordpress.com]




Edited 5 time(s). Last edit at 02/21/2018 01:53PM by Atticus..
Re: Magic Data Discussion
Date: February 07, 2018 01:12AM
Posted by: Atticus.
Finally, please find below my most recent, most up-to-date descriptions for each value. Besides adding all the new information, I have revised a lot of the other comments as well to make them more consistent with the original terms. (I.e. I used “cc” instead of “AI” and structured the descriptions as “cc/player [value name] dry/wet” wherever possible/necessary.)

You can copy this list into your cmagic4.ini file to update it quickly and efficiently. (Do create a backup first.)

desc1=cc fw dry
desc2=rw
desc3=1st
desc4=2nd
desc5=3rd
desc6=4th
desc7=5th
desc8=6th
desc9=cc fw wet
desc10=rw
desc11=1st
desc12=2nd
desc13=3rd
desc14=4th
desc15=5th
desc16=6th
desc17=player fw dry
desc18=rw
desc19=1st
desc20=2nd
desc21=3rd
desc22=4th
desc23=5th
desc24=6th
desc25=brake balance dry
desc26=player fw wet
desc27=rw
desc28=1st
desc29=2nd
desc30=3rd
desc31=4th
desc32=5th
desc33=6th
desc34=brake balance wet
desc35=soft tyre (52-55, higher, softer)
desc36=hard tyre (52-55, higher, softer)
desc37=tyretype (>= 50 tyretype 1 else 2)
desc38=
desc39=
desc40=
desc41=
desc42=track grip
desc43=
desc44=
desc45=drag (lower, more)
desc46=player downforce and drag (cc drag)
desc47=air pressure
desc48=fuel (kg/lap*2979 for 1.0 lap worth of fuel)
desc49=????? - subtracted from diff between field_e2 of 2 cars and then compared to speed of first car
desc50=player tyre wear factor
desc51=cc aggressiveness (added to car.field_108. related to cc grip factor, 32769 low, 65536 & 0 mid, 32768 high)
desc52=cc aggressiveness finetune
desc53=cc power factor ace
desc54=cc grip factor ace 
desc55=cc power factor pro
desc56=cc grip factor pro
desc57=cc power factor semi-pro
desc58=cc grip factor semi-pro
desc59=cc power factor amateur
desc60=cc grip factor amateur
desc61=cc power factor rookie
desc62=cc grip factor rookie
desc63=cc random perf range min
desc64=cc random perf range max
desc65=cc error chance (some chance. same chance multiplied with race perc.)
desc66=spin recovery range (segment count, range 1 to 256, nr of sectors checked by cc after spin)
desc67=sectors to pit in
desc68=sectors to pit out
desc69=pre pit speed limit
desc70=player fuel consumption
desc71=cc fuel consumption
desc72=tyre wear
desc73='rail-line' length at the start (a segment nr before which flag 0x80 in car.flags_ce is not cleared)
desc74=laptime (e. g. 70800 equals 1:10.800)
desc75=laptime finetune (+/-1000 equals +/- 1.0)
desc76=????? - helps decide if a tyre set needs changing? (dw)
desc77=cc crossover point (higher, sooner)
desc78=rain chance
desc79=????? - segment nr (start of some range) related to pit in/out
desc80=????? - segment nr (end of some range) related to pit in/out
desc81=????? - cc race grip? (another perf factor)
desc82=????? - unk (dw) player wet?
desc83=????? - unk (dw) player grip?
desc84=black flag penalty
desc85=black flag (1024=80kph)
desc86=cc engine mapping wet (higher, more detuned)
desc87=cc tyre wear and grip factor wet (higher, more)
desc88=cc tyre wear factor wet (lower, more)
desc89=cc grip factor wet (lower, more)
desc90='handbrake' (at -312)
desc91=player garage pos depth
desc92=cc garage pos depth
desc93=orientation in garage
desc94=pit stall depth
desc95=pit stall depth finetune
desc96=
desc97=
desc98=
desc99=
desc100=
desc101=
desc102=pitstop group 1 %
desc103=stop 1
desc104=pit window 1
desc105=
desc106=
desc107=
desc108=
desc109=
desc110=pitstop group 2 %
desc111=stop 1
desc112=pit window 1
desc113=stop 2
desc114=pit window 2
desc115=
desc116=
desc117=
desc118=pitstop group 3 %
desc119=stop 1
desc120=pit window 1
desc121=stop 2
desc122=pit window 2
desc123=stop 3
desc124=pit window 3
desc125=
desc126=failure chance: suspension
desc127=failure chance: loosewheel
desc128=failure chance: puncture
desc129=failure chance: engine
desc130=failure chance: transmission
desc131=failure chance: oilleak/waterleak
desc132=failure chance: throttle/brake
desc133=failure chance: electrics
desc134=
desc135=
desc136=
desc137=
desc138=bump factor
desc139=bump shift

Thank you once more for following these developments – use it well and let’s hope we can find out the last bits of mystery as well, eventually. :-)

Cheers,
Atticus



My workthread - [www.grandprixgames.org]
Full of classic F1/non-F1 track layouts

My blog about F1 performance analysis - [thef1formbook.wordpress.com]




Edited 4 time(s). Last edit at 02/21/2018 01:55PM by Atticus..
Re: Magic Data Discussion
Date: February 07, 2018 02:59PM
Posted by: klausfeldmann
Thanks for your nice investigations and for the descriptions of the new findings. It must have been a lot of work for you. It reminds me on my investigations regarding the ccshuffler a few years ago.

I'm looking forward for your cmagic4.ini description. In an overview it might get even more clearer to us, what value has which effect, I think.
Re: Magic Data Discussion
Date: February 07, 2018 11:57PM
Posted by: Atticus.
klausfeldmann Wrote:
-------------------------------------------------------
> Thanks for your nice investigations and for the
> descriptions of the new findings. It must have
> been a lot of work for you. It reminds me on my
> investigations regarding the ccshuffler a few
> years ago.
>
> I'm looking forward for your cmagic4.ini
> description. In an overview it might get even more
> clearer to us, what value has which effect, I
> think.


Thank you. Good times indeed. :-)

I've grown so much since then as a person, but here I am still deciphering this mystery, haha.

*

Added content to the two placeholder posts as well, including the updated cmagic4.ini descriptions.



My workthread - [www.grandprixgames.org]
Full of classic F1/non-F1 track layouts

My blog about F1 performance analysis - [thef1formbook.wordpress.com]




Edited 1 time(s). Last edit at 02/07/2018 11:57PM by Atticus..
Re: Magic Data Discussion
Date: February 10, 2018 12:42AM
Posted by: TomMK
:-o:-o:-o

[Stands]

[Applauds]

=====================================================


Intel NUC 8i3, 8GB RAM, MS Sidewinder Wheel
Re: Magic Data Discussion
Date: February 10, 2018 08:24PM
Posted by: Turbo Lover
+1 :)



My Grand Prix 4 Files

I'm a total dick. How many people can say that?
Re: Magic Data Discussion
Date: February 13, 2018 08:40PM
Posted by: RHill
Great findings. I'm particularly interested in the following

CC crossover point (higher, sooner) formerly Change for drys/wets timing AI finetune? – The only new info here is the fact that it’s actually what we previously thought was the finetune value (desc77) that is driving the crossover points and not the main figure (desc76). CC only – the player car gets the automatic pit signal to pit for a different tyre at the same point of the race in changing conditions.


Do you have a value you can recommend for realistic crossover?
Re: Magic Data Discussion
Date: February 13, 2018 11:33PM
Posted by: Atticus.
RHill Wrote:
-------------------------------------------------------
> Great findings. I'm particularly interested in the
> following
>
> CC crossover point (higher, sooner) formerly
> Change for drys/wets timing AI finetune? – The
> only new info here is the fact that it’s
> actually what we previously thought was the
> finetune value (desc77) that is driving the
> crossover points and not the main figure (desc76).
> CC only – the player car gets the automatic pit
> signal to pit for a different tyre at the same
> point of the race in changing conditions.
>
>
> Do you have a value you can recommend for
> realistic crossover?


I think the default values are quite realistic - e.g. they are by far the lowest for Spa, which is a long track and is known for it's weird rain patterns geographically-speaking, so that seems realistic.

In terms of track building, one has to consider the length and footprint of his custom track and choose a value similar to the respective value of a similar original track.



My workthread - [www.grandprixgames.org]
Full of classic F1/non-F1 track layouts

My blog about F1 performance analysis - [thef1formbook.wordpress.com]
Sorry, only registered users may post in this forum.

Click here to login

Maintainer: mortal, stephan | Design: stephan, Lo2k | Moderatoren: mortal, TomMK, Noog, stephan | Downloads: Lo2k | Supported by: Atlassian Experts Berlin | Forum Rules | Policy