Game Development Reference
relationship score. The ''we needed that'' bonus term adds an average of half of
one point every interaction. We know that the first person in every pair was
picked on the basis of need. Because our needs average to 0, we expect the first
person to nearly always have an unmet need. Because the person's partner is
picked at random, that partner is equally likely to have any need be met as unmet.
So half of the time, we expect to see the ''we needed that'' bonus to apply. In the
absence of strong personality matches or conflicts, the bonus gently eases our
simulation toward positive relationships. We can think of this as ''most people
get along, even if they don't actually like each other.''
Another influence on our system is that our people have a full set of preferences
that are picked without bias. This means that on the average, any given person's
net preference value is near 0. It also means that with so many pairs of potential
interactions available, we will see a good deal of cancelations. Statistically, this is
known as ''reversion to the mean.'' We could change our people so that they only
held strong opinions or did not care. In the code, we would turn any þ 1or 1
values for preferences to 0.
Along that same line, our range of preferences is notably constrained. If we
increased the range from the current 2to þ 2to 3to þ 3 or even more, we will
see different results. Note that this would completely change the scaling of the
compatibility number; simulations with one range would be tuned differently
than with the expanded range. The expanded range can also be combined with
the preceding idea of strong opinions only.
Another driver toward the mean is our cruise director. By pushing toward full
coverage of all the possible interactions, we suppress weaker trends that might
appear if our people had a chance to pick who they interacted with and what
interactions they tried. The flip side of this is that the strong trends we see—those
between people with compatibility scores in double digits—indicate that our
simulation does deliver what we expect. If you do not see these trends, try
different sets of people. Just click the People button and dump the new roster.
Repeat until you see one or more compatibility scores in the teens, positive or
negative. A value of 17 or higher is especially informative.
A final note on tuning is that this whole process is driven purely by numbers and
simple equations. These numbers belong in a spreadsheet and on charts for better
clarity. Statistical analysis may seem to be far removed from emotions, but for
game AI, these heartless tools are a warmly welcomed help.