It sounds like you are talking more about the normative aspects of the problem; what the mechanic ought to be, rather than the positive aspect of the problem; what the mechanic is and actually does. Your point is still very much within the scope of the conversation. However, there is no indication that the breeding formula ever meant to produce a horse with best possible average of all stats. The formula is applied once for each stat of the new horse and only uses the same stats from the parents; e.g. jump is from the parents average jumped plus some noise averaged in. If all three stats (jump,health, and speed) drift close together through the generations, it is only because the same noise source is applied to all three. There is no interaction between these three stats. Not saying there shouldn't be, I think its a good idea and something I'm planning on exploring.
It sounds like you are talking more about the normative aspects of the problem; what the mechanic ought to be, rather than the positive aspect of the problem; what the mechanic is and actually does. Your point is still very much within the scope of the conversation. However, there is no indication that the breeding formula ever meant to produce a horse with best possible average of all stats. The formula is applied once for each stat of the new horse and only uses the same stats from the parents; e.g. jump is from the parents average jumped plus some noise averaged in. If all three stats (jump,health, and speed) drift close together through the generations, it is only because the same noise source is applied to all three. There is no interaction between these three stats. Not saying there shouldn't be, I think its a good idea and something I'm planning on exploring.
my point is that based on the previous numbers, if i can find two horses with .95 in one stat, I SHOULD be able to generate foals with .8 in that stat 50% of the time. if i start with three pairs of horses, each pair specializing in one stat.... after about 20 breedings, i think i'll be able to generate foals with 80% in ALL THREE stats virtually at-will.
ok, I created a spreadsheet to simulate breeding horses.
The spreadsheet lists all horses currently available, and picks what i consider the best two. Then it generates a random 'third' horse, using the correct probability distribution. (each stat is generated as the average of three uniform random numbers)
After creating a new horse, that horse is added to the list of possible candidates, and the cycle repeats.
This was my definition of the two 'best' horses:
Parent 1 is the horse with the highest AVERAGE stats. Variable "W" is the weakest stat for that horse.
Parent 2 is the horse with the highest result for (Var_W * Average stat)
the way the program was written, it's possible for the same horse to be chosen as both parents simultanously. I decided not to worry about it.
The goal of this breeding program is to create a situation where you can reliably breed new horses with 70%-80% in all three stats. I specify four starting horses collected from the wild, and let the program run.
Scenario 1:
Four starting horses with the following stats:
(0.99, 0.3, 0.3)
(0.3, 0.99, 0.3)
(0.3, 0.3, 0.99)
(0.5, 0.5, 0.5)
Result: from horses 5-100, the 'average' stat oscilated between 0.45-0.55. no significant long-term improvement.
Scenario 2:
Four starting horses with the following stats:
(0.99, 0.3, 0.3)
(0.3, 0.99, 0.3)
(0.3, 0.3, 0.99)
(0.6, 0.6, 0.6)
Result: from horses 5-100, the 'average' stat oscilated between 0.55-0.60. no significant long-term improvement.
Scenario 3:
Four starting horses with the following stats:
(0.99, 0.3, 0.3)
(0.3, 0.99, 0.3)
(0.3, 0.3, 0.99)
(0.7, 0.7, 0.7)
Result: from horses 5-100, the 'average' stat oscilated between 0.65-0.70. no significant long-term improvement.
Scenario 4:
Four starting horses with the following stats:
(0.99, 0.3, 0.3)
(0.3, 0.99, 0.3)
(0.3, 0.3, 0.99)
(0.8, 0.8, 0.8)
Result: from horses 5-100, the 'average' stat oscilated between 0.65-0.75. no significant long-term improvement.
Scenario 5:
Four starting horses with the following stats:
(0.99, 0.3, 0.3)
(0.3, 0.99, 0.3)
(0.3, 0.3, 0.99)
(0.9, 0.9, 0.9)
Result: from horses 5-100, the 'average' stat oscilated between 0.75-0.80. no significant long-term improvement.
Scenario 6:
Four starting horses with the following stats:
(0.99, 0.3, 0.3)
(0.3, 0.99, 0.3)
(0.3, 0.3, 0.99)
(0.99, 0.99, 0.99)
Result: from horses 5-100, the 'average' stat oscilated between 0.8-0.85. no significant long-term improvement.
Conclusion: If you want a large number of horses with high stats in all categories, you need to tame wild horses, choose the ones with the highest average score, and use them as breeding stock.
the horses you breed will consistently be 10-15 points worse than their parents. How good that result is depends on how much time and effort you spend on finding INCREDIBLY good wild horses.
Conclusion: If you want a large number of horses with high stats in all categories, you need to tame wild horses, choose the ones with the highest average score, and use them as breeding stock.
Atter reading this, I wasn't sure what you were working at. If you are starting from the notion that the breeding mechanic may or may not be broken, e.g. it dosnt allow you to breed progressively better horses, then you certainly proved the case it is broken in a round-about way. If, however, your making the case that the breeding mechanic inst broken, that it was never meant to produce progressively better horses, then I'm not really that convinced. If the idea was to only allow players to build breeding programs limited to what they could find in the wild, then why average the stats from each parent at all? Why not simple pick a new random one between the two contributions?
I think that except in scenario 1, the last horse is always chosen as both parents, so... big problem !
(the last: I mean, the one with the three equal stats)
Moreover, "the highest AVERAGE stats" is not a good measure of "high stats in all categories", and I don't see clearly what "the highest result for (Var_W * Average stat)" measures exactly. Just to make sure, is "average stat" = (stat1 + stat2 + stat3)/3 ? Is Var_W the kind of stat rather than the value, so that if say, the weakest parent1 stat was speed, then (Var_W*average_stat) for a candidate parent is (its speed * its average) ?
Correct. if parent 1's lowest stat is speed, parent 2 will be chosen as (stat1+stat2+stat3)/3 *speed
in most of the simulations, horse 4 was chosen as both parents the first 3-5 times, by which time a new horse had been generated as a suitable candidate for at least one of the parent slots.
for my purposes, it didn't really matter how parents were chosen, i just wanted to see how different breeding strategies would play out over time. The rule of thumb seems to be that no matter what you do, you're going to get a new horse that's 10-20% points worse than than its parents, 95% of the time.
Which, if you find two incredibly good horses, means you can generate above-average horses for cannon fodder more or less at will, but other than that, the only reason to try breeding seems to be to get an entire line of above-average, but not great, horses, who are bred to be a specific color or pattern for aesthetic purposes.
Atter reading this, I wasn't sure what you were working at. If you are starting from the notion that the breeding mechanic may or may not be broken, e.g. it dosnt allow you to breed progressively better horses, then you certainly proved the case it is broken in a round-about way. If, however, your making the case that the breeding mechanic inst broken, that it was never meant to produce progressively better horses, then I'm not really that convinced. If the idea was to only allow players to build breeding programs limited to what they could find in the wild, then why average the stats from each parent at all? Why not simple pick a new random one between the two contributions?
Basically, I'm just trying to find out if there's any scenario where the current mechanic might in some way be useful.
It looks like the answer is "Only if you run out of wild horses, or want to breed an entire line of slightly above-average horses with specific coloring"
in-game, my current horse strategy is to capture wild horses, measure them, and sort them. the worst 50% gets killed for leather, the next 30% gets penned for future use in jumping lava or taunting creepers, and the top 20% gets reserved as breeding stock. I've only bred a few horses as proof-of-concept, since bred horses are about as good as my cannon fodder stock anyway, and I still have plenty of cannon fodder.
So it stands that the breeding mechanic does let you selectively breed better horses, but it puts out too-much drag in the form of increasingly stronger noise for it to be considered fun and progressive, and therefore is "broken".
As I said before, going to take a stab at modeling alternative breeding schemes, and I'll check back here when I have something.
Basically, I'm just trying to find out if there's any scenario where the current mechanic might in some way be useful.
It looks like the answer is "Only if you run out of wild horses, or want to breed an entire line of slightly above-average horses with specific coloring"
in-game, my current horse strategy is to capture wild horses, measure them, and sort them. the worst 50% gets killed for leather, the next 30% gets penned for future use in jumping lava or taunting creepers, and the top 20% gets reserved as breeding stock. I've only bred a few horses as proof-of-concept, since bred horses are about as good as my cannon fodder stock anyway, and I still have plenty of cannon fodder.
This is just an attempt at a different selection method than "all three stats better at once". And your conclusion is "this particular selection method fails at doing its purpose".
A weird one, to be honest. To me it is rather clear from the start this couldnt lead to a good selection.
Summary : this is because the weird way of selecting parent2 screws the chances for no benefit
For one parent, you take the one with the highest number of total stats
(the thing you call the average - lets call it p = (stat1+stat2+stat3)/3).
Then, in what looks like an attempt to "equalize" stats while keeping p high for the baby coming soon, you select a horse with high (p*the stat that is the weak point of parent1). But it doesn't do that.
It is very clear this is not a horse with more total stats than parent1, otherwise it would have been selected as parent1, but worse, it's not even the horse with second best total stats (at least not necessarily).
It means you screw your chances compared to just, say, taking the horse with second best p as parent2.
So (p*weak parent1 stat) is a weird indicator with a very unclear meaning.
I reproduced your simulation (I hope ) with this starting set:
(0.99, 0.3, 0.3)
(0.3, 0.99, 0.3)
(0.3, 0.3, 0.99)
(0.6, 0.6, 0.6)
I did it with 100 generations, 500 and 1000 (and 10k times for each to get a good average - it looked like you only did it once for each set, not sure! At the end of each run I looked in the pool for the horse with highest p
100 gens : average best p = 0.6253
500 gens : average best p = 0.649
1000 gens: average best p = 0.66651
So, there is an improvement with more gens, but it is painfully slow. Just to mention it, it is easier to get a better-p horse than the 100-gen and 500-gen WITHOUT any kind of selection, just by breeding repeatedly two 0.6, 0.6, 0.6 horses (not to mention wild horse taming ofc)! So this is definitely a bad way of selecting.
For comparison, here's what I get if, instead of selecting parent2 with the weird indicator, I just use the second highest p in the pool
100 gens : average best p = 0.6774
500 gens : average best p = 0.7319
1000 gens : average best p = 0.75215
Better, but still above my patience limit :=). Bumping into the greedy breeding system again. Anyways, need to compare that to wild horse p-distribution and to 'all at once' selection method to make it meaningful, but I'm lazy, after all I'm not the fan of p-selection!
Glad to see your interested... in a day or so, i'll redo my spreadsheet as something more user-friendly, and post it.... or if you want to, feel free to beat me to it. It sounds like your speadsheet is better written than mine, I'd love to see it.
You're correct that for each model, i ran a hundred generations, once, and reported the result. I wasn't trying for anything fancy at the time, so it sounds like your spreadsheet is better written.
I should probably also do report on the stat distribution of the 50 horses i tamed from the wild... I have it written down somewhere....
Sounds like a big amount of job doing statistics on the actual wild horses Don't you trust the distributions in the wiki talk pages ? Well; it's not like being skeptic is unhealthy, but the guys got them from the source code so I guessed they were ok and that's what I used in my previous posts when comparing something to wild horses. Now that I think of it, I used the values but didnt show the actual distributions (well, that was not really the subject)
I haven't found a precise link that describes the current mechanic, i was just using your word of mouth statement that they're distributed as the average of 3 uniform random numbers, and i wasn't certain that i understood you correctly when you said that.
Do you have the link to the page with the actual formula?
I find it funny how the fact that mojang updates the game really often causes problems like this to have unupdated 'affected versions' which in turn leaves a bunch of bugs behind. :/
I just now got around to horse breeding, and I was surprised and disappointed to find this out. I bred about 10-15 horses and only got ones worse than both parents in all areas. I know this is a small sample size, but it just verifies to me that the whole process is true. I waste quite a bit of gold before I finally gave up found this thread.
The numbers don't lie and it's clear there's a problem. But my experience has been telling me stats differences between parents and offspring aren't even visibly noticeable in game. The differences are minute and unimportant.
Of course, if for some reason you like to explore the horse breeding mechanics to its fullest, this bug is a showstopper. But most players simply don't care that much about the mechanics. They'll get two or three horses, breed another two or three and consider their stables finished. And this is possibly the reason why this isn't at the top of Mojang concerns.
Rollback Post to RevisionRollBack
I was trying to think of a signature and this is what came up.
Yeah, that may have sounded wrong. But if you look objectively at your experience, you won't think this as a priority among the game many bugs. It's affects what is quite possibly a minute number of players and doesn't have any real noticeable effect on the game.
I do consider many game server economies complete disasters. One of the examples is exactly the price you have on those horses, considering this bug effect on gameplay (how high a horse jumps or how fast a horse runs in comparison to another) is negligible, often even imperceptible. The only thing driving that price up is the scarcity of high stats. Which makes this pretty much a luxury, as opposed to functional, price. And consequently one that shouldn't drive a large proportion of the player base. But such are in-game economies in multiplayer games since I remember, well back into the MUD days. One of the primary reasons game economies are rarely good representatives of sustainable long term economies.
But I'm digressing. Sorry. I think that in any case you folks should start ganging on Jeb twitter to fix this. The thing is that I don't recall ever seeing this mentioned there. This issue is assigned to him.
Also, if you check the ticket in Mojira, you folks need to sharpen up if you want this fixed. It's cool to discuss it here, but it isn't cool to let the Mod waiting for a reply to an important question since November, 27. Assault Jeb (nicely) and keep the ticket live in Mojira, and you folks will get your problem solved. I'm sure.
I just want to craft a saddle in stead of randomly finding one and breed a horse with just a regulare old apple since they are hard enough to come by as it is. I have like 16 I think so about 8 babies and only 4 gold bars. Why is it gold apples?
As this thread is 5 pages long, I haven't read through all of it. But, I do 100% agree that the current horse breeding mechanic is utterly terrible. The sheer rate of stat decay when breeding makes the whole process virtually worthless. I seriously hope that Mojang changes the system here very soon.
I agree. I did a bit of digging and discovered a few things.
The average value of the random number for health is 23. Therefore if (MotherHealth+FatherHealth)/2 is less than 23 you have an above average chance of getting better health in your foal if it's greater you have a worse chance of getting better health. (and a better chance of getting worse health).
Now based off of your results the min possible random speed has to be under 0.3, so I' going to take a guess mojang changed the random number formula since the above link was made.
Anywho, though that might be useful, but now I realize it's probably old...
Whatever...
Maybe a better formula would be something like:
Mo = Mother's score
Fa = Father's score
rand = random number either negative or positive
Speed: (Mo + Fa + ((Mo + Fa)/2 + rand))/3
Health: (Mo + Fa + ((Mo + Fa)/2 + rand))/3
Jump: (Mo + Fa + ((Mo + Fa)/2 + rand))/3
Benefits are that regardless of the stats of the parents, there's still an equal chance of getting a better or worse horse. Also there's no caps so you could have a horse of any possible speed given enough time resources. Naturally the better the stats the harder/longer it would take.
Mo = Mother's score
Fa = Father's score
rand = random number either negative or positive
Speed: (Mo + Fa + ((Mo + Fa)/2 + rand))/3
Health: (Mo + Fa + ((Mo + Fa)/2 + rand))/3
Jump: (Mo + Fa + ((Mo + Fa)/2 + rand))/3
Benefits are that regardless of the stats of the parents, there's still an equal chance of getting a better or worse horse. Also there's no caps so you could have a horse of any possible speed given enough time resources. Naturally the better the stats the harder/longer it would take.
What exactly is the RNG interval you propose there? Those formulas can't be right as the result would greatly increase the stats of the foal if it was added to the foal base stats, But if they were used not to add -- and instead determine the actual final stats -- you couldn't have a negative random number.
Anyways, I don't think Mojang has any shortage of mathematics background to come up with a reasonable graph that can accommodate the fact horses can breed more than once and so any advances in pedigree need to be very slow and sometimes show even a decline.
Rollback Post to RevisionRollBack
I was trying to think of a signature and this is what came up.
What exactly is the RNG interval you propose there? Those formulas can't be right as the result would greatly increase the stats of the foal if it was added to the foal base stats, But if they were used not to add -- and instead determine the actual final stats -- you couldn't have a negative random number.
Anyways, I don't think Mojang has any shortage of mathematics background to come up with a reasonable graph that can accommodate the fact horses can breed more than once and so any advances in pedigree need to be very slow and sometimes show even a decline.
I was thinking the random number would be the average of the mother and father's value plus/minus a number. Although now that I think about it, the possibility of someone getting a 100 speed horse after breeding a lot is kinda scary. I'm thinking it would be better if the added/subtracted number would be an asymptote. It would calculate where it was on the asymptotic graph and then choose a number in a range between it's value and it's negative value. That way one could continue to make there horse faster without it getting out of hand.
Sorry if that's hard to understand, my math lingo stinks. Summed up the number would be the average of the mother and father's plus/minus a number that shrinks the higher the combined score of the mother's and fathers is, (alternatively the higher the number of times the parents have been breed).
Edit: Yeah, mojang could probably come up with a much better formula. I just like inventing formula's in general.
my point is that based on the previous numbers, if i can find two horses with .95 in one stat, I SHOULD be able to generate foals with .8 in that stat 50% of the time. if i start with three pairs of horses, each pair specializing in one stat.... after about 20 breedings, i think i'll be able to generate foals with 80% in ALL THREE stats virtually at-will.
The spreadsheet lists all horses currently available, and picks what i consider the best two. Then it generates a random 'third' horse, using the correct probability distribution. (each stat is generated as the average of three uniform random numbers)
After creating a new horse, that horse is added to the list of possible candidates, and the cycle repeats.
This was my definition of the two 'best' horses:
Parent 1 is the horse with the highest AVERAGE stats. Variable "W" is the weakest stat for that horse.
Parent 2 is the horse with the highest result for (Var_W * Average stat)
the way the program was written, it's possible for the same horse to be chosen as both parents simultanously. I decided not to worry about it.
The goal of this breeding program is to create a situation where you can reliably breed new horses with 70%-80% in all three stats. I specify four starting horses collected from the wild, and let the program run.
Scenario 1:
Four starting horses with the following stats:
(0.99, 0.3, 0.3)
(0.3, 0.99, 0.3)
(0.3, 0.3, 0.99)
(0.5, 0.5, 0.5)
Result: from horses 5-100, the 'average' stat oscilated between 0.45-0.55. no significant long-term improvement.
Scenario 2:
Four starting horses with the following stats:
(0.99, 0.3, 0.3)
(0.3, 0.99, 0.3)
(0.3, 0.3, 0.99)
(0.6, 0.6, 0.6)
Result: from horses 5-100, the 'average' stat oscilated between 0.55-0.60. no significant long-term improvement.
Scenario 3:
Four starting horses with the following stats:
(0.99, 0.3, 0.3)
(0.3, 0.99, 0.3)
(0.3, 0.3, 0.99)
(0.7, 0.7, 0.7)
Result: from horses 5-100, the 'average' stat oscilated between 0.65-0.70. no significant long-term improvement.
Scenario 4:
Four starting horses with the following stats:
(0.99, 0.3, 0.3)
(0.3, 0.99, 0.3)
(0.3, 0.3, 0.99)
(0.8, 0.8, 0.8)
Result: from horses 5-100, the 'average' stat oscilated between 0.65-0.75. no significant long-term improvement.
Scenario 5:
Four starting horses with the following stats:
(0.99, 0.3, 0.3)
(0.3, 0.99, 0.3)
(0.3, 0.3, 0.99)
(0.9, 0.9, 0.9)
Result: from horses 5-100, the 'average' stat oscilated between 0.75-0.80. no significant long-term improvement.
Scenario 6:
Four starting horses with the following stats:
(0.99, 0.3, 0.3)
(0.3, 0.99, 0.3)
(0.3, 0.3, 0.99)
(0.99, 0.99, 0.99)
Result: from horses 5-100, the 'average' stat oscilated between 0.8-0.85. no significant long-term improvement.
Conclusion: If you want a large number of horses with high stats in all categories, you need to tame wild horses, choose the ones with the highest average score, and use them as breeding stock.
the horses you breed will consistently be 10-15 points worse than their parents. How good that result is depends on how much time and effort you spend on finding INCREDIBLY good wild horses.
Atter reading this, I wasn't sure what you were working at. If you are starting from the notion that the breeding mechanic may or may not be broken, e.g. it dosnt allow you to breed progressively better horses, then you certainly proved the case it is broken in a round-about way. If, however, your making the case that the breeding mechanic inst broken, that it was never meant to produce progressively better horses, then I'm not really that convinced. If the idea was to only allow players to build breeding programs limited to what they could find in the wild, then why average the stats from each parent at all? Why not simple pick a new random one between the two contributions?
Correct. if parent 1's lowest stat is speed, parent 2 will be chosen as (stat1+stat2+stat3)/3 *speed
in most of the simulations, horse 4 was chosen as both parents the first 3-5 times, by which time a new horse had been generated as a suitable candidate for at least one of the parent slots.
for my purposes, it didn't really matter how parents were chosen, i just wanted to see how different breeding strategies would play out over time. The rule of thumb seems to be that no matter what you do, you're going to get a new horse that's 10-20% points worse than than its parents, 95% of the time.
Which, if you find two incredibly good horses, means you can generate above-average horses for cannon fodder more or less at will, but other than that, the only reason to try breeding seems to be to get an entire line of above-average, but not great, horses, who are bred to be a specific color or pattern for aesthetic purposes.
Basically, I'm just trying to find out if there's any scenario where the current mechanic might in some way be useful.
It looks like the answer is "Only if you run out of wild horses, or want to breed an entire line of slightly above-average horses with specific coloring"
in-game, my current horse strategy is to capture wild horses, measure them, and sort them. the worst 50% gets killed for leather, the next 30% gets penned for future use in jumping lava or taunting creepers, and the top 20% gets reserved as breeding stock. I've only bred a few horses as proof-of-concept, since bred horses are about as good as my cannon fodder stock anyway, and I still have plenty of cannon fodder.
So it stands that the breeding mechanic does let you selectively breed better horses, but it puts out too-much drag in the form of increasingly stronger noise for it to be considered fun and progressive, and therefore is "broken".
As I said before, going to take a stab at modeling alternative breeding schemes, and I'll check back here when I have something.
LoL
Glad to see your interested... in a day or so, i'll redo my spreadsheet as something more user-friendly, and post it.... or if you want to, feel free to beat me to it. It sounds like your speadsheet is better written than mine, I'd love to see it.
You're correct that for each model, i ran a hundred generations, once, and reported the result. I wasn't trying for anything fancy at the time, so it sounds like your spreadsheet is better written.
I should probably also do report on the stat distribution of the 50 horses i tamed from the wild... I have it written down somewhere....
I haven't found a precise link that describes the current mechanic, i was just using your word of mouth statement that they're distributed as the average of 3 uniform random numbers, and i wasn't certain that i understood you correctly when you said that.
Do you have the link to the page with the actual formula?
Of course, if for some reason you like to explore the horse breeding mechanics to its fullest, this bug is a showstopper. But most players simply don't care that much about the mechanics. They'll get two or three horses, breed another two or three and consider their stables finished. And this is possibly the reason why this isn't at the top of Mojang concerns.
I do consider many game server economies complete disasters. One of the examples is exactly the price you have on those horses, considering this bug effect on gameplay (how high a horse jumps or how fast a horse runs in comparison to another) is negligible, often even imperceptible. The only thing driving that price up is the scarcity of high stats. Which makes this pretty much a luxury, as opposed to functional, price. And consequently one that shouldn't drive a large proportion of the player base. But such are in-game economies in multiplayer games since I remember, well back into the MUD days. One of the primary reasons game economies are rarely good representatives of sustainable long term economies.
But I'm digressing. Sorry. I think that in any case you folks should start ganging on Jeb twitter to fix this. The thing is that I don't recall ever seeing this mentioned there. This issue is assigned to him.
Also, if you check the ticket in Mojira, you folks need to sharpen up if you want this fixed. It's cool to discuss it here, but it isn't cool to let the Mod waiting for a reply to an important question since November, 27. Assault Jeb (nicely) and keep the ticket live in Mojira, and you folks will get your problem solved. I'm sure.
Now based off of your results the min possible random speed has to be under 0.3, so I' going to take a guess mojang changed the random number formula since the above link was made.
Anywho, though that might be useful, but now I realize it's probably old...
Whatever...
Maybe a better formula would be something like:
Mo = Mother's score
Fa = Father's score
rand = random number either negative or positive
Speed: (Mo + Fa + ((Mo + Fa)/2 + rand))/3
Health: (Mo + Fa + ((Mo + Fa)/2 + rand))/3
Jump: (Mo + Fa + ((Mo + Fa)/2 + rand))/3
Benefits are that regardless of the stats of the parents, there's still an equal chance of getting a better or worse horse. Also there's no caps so you could have a horse of any possible speed given enough time resources. Naturally the better the stats the harder/longer it would take.
What exactly is the RNG interval you propose there? Those formulas can't be right as the result would greatly increase the stats of the foal if it was added to the foal base stats, But if they were used not to add -- and instead determine the actual final stats -- you couldn't have a negative random number.
Anyways, I don't think Mojang has any shortage of mathematics background to come up with a reasonable graph that can accommodate the fact horses can breed more than once and so any advances in pedigree need to be very slow and sometimes show even a decline.
I was thinking the random number would be the average of the mother and father's value plus/minus a number. Although now that I think about it, the possibility of someone getting a 100 speed horse after breeding a lot is kinda scary. I'm thinking it would be better if the added/subtracted number would be an asymptote. It would calculate where it was on the asymptotic graph and then choose a number in a range between it's value and it's negative value. That way one could continue to make there horse faster without it getting out of hand.
Sorry if that's hard to understand, my math lingo stinks. Summed up the number would be the average of the mother and father's plus/minus a number that shrinks the higher the combined score of the mother's and fathers is, (alternatively the higher the number of times the parents have been breed).
Edit: Yeah, mojang could probably come up with a much better formula. I just like inventing formula's in general.