So the thing yesterday.
i'll just put up all the info and people can make their own minds up...
Every now and then people will say well the purrs cant be random because there's never a string of three consecutive highs/lows. My reply is well there's a difference between true-random and pseudo-random, the bulk of ED is procedurally generated and it would not surprise me if they just have a few api calls that pull numbers from procedurally generated pools.
Of course this is just guess work, we have no idea how Frontier go about generating pseudo-random (if indeed this is what they do).
But then last night this appeared, it's about turrets of all things....
https://forums.frontier.co.uk/showthread.php?t=160794&p=2456434&viewfull=1#post2456434
Specifically this :
There's then a semi-random harmonic oscillator (summation of a handful of sine waves with different frequencies/amplitudes) that's multiplied by the current level of confusion to work out how much to delay the tracking by (whenever the oscillator outputs low numbers the weapon catches back up to its target - this is one of the changes that came in 1.3). There's a second 2-dimensional oscillator that applies the minor continuous wobble that gimbals share. Once this direction is figure out we go into the shared AimAtTarget code to do its thing.
Let that sink in for a sec.
To generate something random they take add a number of differing sine waves together then adjust for whatever is required.
It seems to fit perfectly.
This for me explains why we never see groups of three or more, yet there's no apparent pattern.
If you don't know what I'm talking about it's this sort of thing :
That's a simple example but two sine(ish) waves combining into a third wave. Of course Frontier's will be out of sync so less regular but the point is there will be a semi-regular oscillating pattern there.
At this point I'm thinking that has to be it, but is it provable?
So my line of thinking is, well if we graph the points can we visually see this effect?
And here's the result, this is the high/low state and the time of each purr :
+1 = high -1 = low.
The zeros (the orange ones) are where there would be purrs but theyre missing or quietened, the gaps, those would be either a 1 or a -1, I've just set them to zero.
It's hard to be exact as the zeros change the curve but roughly it almost looks like two waves, a faster one and another maybe half the wavelength.
And given the pattern is essentially a combination of 2 or more sine waves my thinking was it may actually now be possible to infer the missing purrs.
Here's a Google spreadsheet, feel free to mess, the idea was I can drop 1 or -1 into the orange zero bits to "rebuild" the wave and therefore find the missing purrs. For example in the above I think you can say with a high certainty that at least one of the 3rd/4th 0 points would be a -1.
https://docs.google.com/spreadsheets/d/1hYabz1D5HUsmj45kl0gdr_7aCMoqKspwHGwcZDyvA4E/edit?usp=sharing
^^ On this it seemed a good idea at 4:30am this morning! Today I'm not sure it's doable though. Still too much guesswork but it's fun to try and see what comes out - give it a go! Add in the missing 1,-1s.
There's also something called fourier analysis which takes data points and tells you what combination of waves would produce the pattern (and could therefore possibly fill in the missing purrs) but that's way beyond my ability.
So yeah that's it, make your own minds up, I might be wrong but the above combined with the evidence showing that it looks like CMDRs hear differing purrs :
https://forums.frontier.co.uk/showthread.php?t=162998&p=2541551&viewfull=1#post2541551
I think is a pretty strong argument that the purrs are pseudo-randomly generated, separately on each CMDRs ED client, from an algorithm with is essentially a combination of two or more sine waves.
I don't want to completely write the purrs off because there may still be something in them but I think if there is something to see there, then it will be something common to all CMDRs viewing a given UA. (cycle length for example)
Addendum....
So on from that and a little bit madcap. There's another theory which I think's interesting, is rather unlikely but would be very cool and could be another way to fill in the missing purrs.
It goes like this....
Assuming the purrs are generated from a pseudo-random generator as described above, and we KNOW the the turrets wavering motion is pseudo-randomly generated (since a dev has explicitly said so).
Then are the purrs and the turrets using the SAME generator or different ones?
Heh, do you see where I'm going?
It may be possible (but I think really unlikely) that the wavering of a turret's targeting reticule may align with the high/lows of the purrs. =p And that when the purrs go silent the turret (like a compass) will tell us what they would have been. =p
I've finally lost it haven't I.