The AdjustXXX Mess

The time has come to tackle that damned AdjustXXX mess. This comprises the problems of the relationships, the moods, their acceder values, and the adjuster routines that handle them. There are five issues:

 

1. Some variables take the range -100 to +100; others take the range 0 to +100. We need to clearly define, once and for all, what those ranges will be.

 

2. Acceder values are not defined for all moods and relationships. We need to define them all.

 

3. The effect of acceder values has shifted from a volatility factor to an inclination factor. For example, Gullibility is not the volatility in Trust, it is biased towards positive values of Trust. We need to clearly differentiate between volatility and bias.

 

4. The AdjustXXX routines are no longer functioning properly. In their original form they worked perfectly with ±100 range variables with acceders operating as volatility factors, but now with the incremental changes we have made, they no longer perform as expected.

 

5. Laura has requested a modification to AdjustXXX that allows her to assign the adjustment to any character.

 

Variable Bottom Acceder OPTIONS

Relationships:

Affection -100 Magnanimity Acceder = Nurturing

Trust -100 Gullibility

Submission -100 Timidity

Commitment 0 Loyalty delete entirely

Obligation -100 Dutifulness

Approval -100 Acceder = 50

Envy -100 Enviousness

Kinship 0 logical range, nonadjustable

CustomReln -100 Acceder = 50

Moods:

Anger 0 Temper

Arousal 0 Libido

Joy 0 Acceder = 50

Fear 0 Acceder = 50

CustomMood 0 Acceder = 50

Discussion

I have a problem with the relationship Commitment; I believe that its meaning is covered by Affection, Submission, and Obligation. What is there about Commitment that is not covered by some combination of these three relationships? Let's look at it from the point of view of acceders: Affection:Magnanimity; Submission:Timidity; Obligation:Dutifulness; Commitment:Loyalty. What is it about Loyalty that is not covered by some combination of Dutifulness, Timidity, and Magnanimity?

 

Moreover, Commitment has a serious problem with negative values: what is the meaning of negative Commitment? I can see no meaning here. Because of all these considerations, I am proposing the elimination of Commitment from the personality model.

 

Since Kinship is not adjustable, I think it should become a logical.

 

Adjustment algorithm for Relationships (-100 to +100):

I have redesigned this algorithm from scratch and here it is, in a form that is more self-explanatory:

 

Inputs:

Relationship (current value of relationship, -100 to +100)

Change (amount of change desired, -100 to +100)

Acceder (value of acceder)

 

if (Change > 0)

DistanceFromEdge = 10,000 - Relationship

Acceder = 100 - Acceder

Signum = 1

else

Signum = -1

Change = -Change

DistanceFromEdge = 10,000 + Relationship

BufferedAcceder = 100 + Acceder

MovementFactor = (10,000 * BufferedAcceder) / (BufferedAcceder + Change)

ChangeInRelationship =

(Signum * DistanceFromEdge * (10,000 - MovementFactor)) / 10,000

Relationship = Relationship + ChangeInRelationship

 

Adjustment algorithm for Moods (0 to +100):

This uses the same algorithm that is used for relationships, with a simple change in the algorithm:

 

Inputs:

Mood (current value of mood, 0 to +100)

Change (amount of change desired, -100 to +100)

Acceder (value of acceder)

 

if (Change > 0)

DistanceFromEdge = 10,000 - Mood

Acceder = 100 - Acceder

Signum = 1

else

Signum = -1

Change = -Change

DistanceFromEdge = Mood ***this is the only real change***

BufferedAcceder = 100 + Acceder

MovementFactor = (10,000 * BufferedAcceder) / (BufferedAcceder + Change)

ChangeInMood =

(Signum * DistanceFromEdge * (10,000 - MovementFactor)) / 10,000

Mood = Mood + ChangeInMood