Kyile you have it completely. Though I think what food you feed them should also have an effect.
I have been thinking about alternatives to the equation and dealing with mutations. Here are some (not necessarily all good) that should provide some food for thought.
Firstly,
let p1, p2 be the names and statistics of the two parents.
let c be the child
1) c = (p1 + p2)/2. This is probably the worst equation because you literally cannot increase past the best horse.
2) c = (p1 + p2 + rand(horse))/3. This is the current one, and makes it extremely hard to get anything good.
3) c = (p1 + p2 + randInt(-range, range))/2. This is getting better but has two problems. The first is that it is still linear and doesn't tend towards an average breading of average horses very well. The second is that all items in the range are possible equally.
4) c = (p1 + p2 + mod(randInt(-1, range+1) range))/2. This is better than the last one in two ways. It always for a varying breeding difficulty and the outcome tends toward the mean more often. It is also non-linear.
5) Let us treat p1, p2 as vectors in R3. let x = p1(dot)p2. If randInt(1, 100) >= x/100 then c = (p1+ p2 + k) /2 where k is some increase to the values of p1, p2. Else c = (p1+p2)/2. This equation naturally makes it harder to get better horses. The v could be based on the world difficulty. This makes having two weak horses breed up decently fast at the beginning.
I like the current ideas but why not take a little leaf from biology's book? Instead of one value for each attribute, why not two and the actual is the average of them (rather crude but it should be fine). With breeding, you take a random one of each parent and those are the two values. For some more variance, we could add in a +1 to -1 range of randomly chosen values to each.
To my understanding, when you bread any animal to get a very good one in return it takes a long time. You breed the offspring as well. I noticed in your first image that no horse has less than 1 minus the amount of health of the first, so you breed a horse that get more than the healthier horse and continue to breed with the better horse. You do this for each statistic and then start breading the three horses together.
still in 14w30c
I have 3 gb allocated.
When I do "java -version" I get
java version "1.6.0_31"
OpenJDK Runtime Environment (IcedTea6 1.13.3) (6b31-1.13.3-1~deb7u1)
OpenJDK 64-Bit Server VM (build 23.25-b01, mixed mode)
Is this not 64-bit?
Can confirm
Patrick you may think that the breeding is fine but the devs have already said that the system doesn't work as intended and they plan on changing it. What we are doing here is discussing possible new formulas for them.