Release 1

Part 3 - Ethnicity and Names

Ethnicity is a kind of value. The ethnicities are non-Hispanic white, non-Hispanic black, Hispanic, Asian-Pacific Islander, native American, and indeterminate.

A person has an ethnicity. The ethnicity of a person is usually indeterminate.

An ethnicity has a number called the weighting.

The weighting of non-Hispanic white is usually 71.

The weighting of non-Hispanic black is usually 13.

The weighting of Hispanic is usually 11.

The weighting of Asian-Pacific Islander is usually 4.

The weighting of native American is usually 1.

To determine the ethnicity:

if the current person is not the player and the current person is an NPC:

if the relationship of the current person is child:

now the ethnicity of the current person is the ethnicity of the player;

otherwise if the current person is blood-relation:

now (the weighting of the ethnicity of the player) is (the weighting of the ethnicity of the player + 50);

while the ethnicity of the current person is indeterminate:

repeat with temporary ethnicity running through the ethnicities:

if a random chance of (the weighting of the temporary ethnicity) in 100 succeeds:

now the ethnicity of the current person is the temporary ethnicity;

if the current person is not the player and the current person is an NPC:

if the current person is blood-relation:

now (the weighting of the ethnicity of the player) is (the weighting of the ethnicity of the player - 50).

Name is a kind of value.

To name the character:

if the current person is blood-relation and a random chance of 3 in 4 succeeds:

now the surname of the current person is the surname of the player;

otherwise:

sort the common surname list of the ethnicity of the current person in random order;

now the surname of the current person is entry 1 in the common surname list of the ethnicity of the current person;

let the current age group be age-0-9;

if the (age of the current person > 9) and (the age of the current person < 20):

now the current age group is age-10-19;

otherwise if the age of the current person > 19 and the age of the current person < 30:

now the current age group is age-20-29;

otherwise if the age of the current person > 29 and the age of the current person < 40:

now the current age group is age-30-39;

otherwise if the age of the current person > 39 and the age of the current person < 50:

now the current age group is age-40-49;

otherwise if the age of the current person > 49 and the age of the current person < 60:

now the current age group is age-50-59;

otherwise if the age of the current person > 59 and the age of the current person < 70:

now the current age group is age-60-69;

otherwise if the age of the current person > 69 and the age of the current person < 80:

now the current age group is age-70-79;

otherwise if the age of the current person > 79 and the age of the current person < 90:

now the current age group is age-80-89;

otherwise if the age of the current person > 89 and the age of the current person < 100:

now the current age group is age-90-99;

otherwise if the age of the current person > 99 and the age of the current person < 110:

now the current age group is age-100-109;

otherwise if the age of the current person > 109 and the age of the current person < 121:

now the current age group is age-110-120;

if the current person is male:

sort the male given name list of the current age group in random order;

now the given name of the current person is entry 1 of the male given name list of the current age group;

remove entry 1 from the male given name list of the current age group;

otherwise:

sort the female given name list of the current age group in random order;

now the given name of the current person is entry 1 of the female given name list of the current age group;

remove entry 1 from the female given name list of the current age group.

To determine nicknames:

if the relationship of the current person is work rival or the relationship of the current person is hobby rival or the relationship of the current person is mentor or the relationship of the current person is apprentice or the relationship of the current person is colleague or the relationship of the current person is instructor:

if a random chance of 1 in 2 succeeds:

if the current person is female:

now the nickname of the current person is "Ms. [surname of the current person]";

otherwise:

now the nickname of the current person is "Mr. [surname of the current person]";

otherwise:

now the nickname of the current person is "[given name of the current person]";

if a random chance of 1 in 2 succeeds:

if the player is female:

now the reverse nickname of the current person is "Ms. [surname of the player]";

otherwise:

now the reverse nickname of the current person is "Mr. [surname of the player]";

otherwise:

now the reverse nickname of the current person is "[given name of the player]";

otherwise if the relationship of the current person is friend:

if a random chance of 5 in 6 succeeds:

if the current person is female:

now the nickname of the current person is "Ms. [surname of the current person]";

otherwise:

now the nickname of the current person is "Mr. [surname of the current person]";

otherwise:

now the nickname of the current person is "[given name of the current person]";

if a random chance of 5 in 6 succeeds:

if the player is female:

now the reverse nickname of the current person is "Ms. [surname of the player]";

otherwise:

now the reverse nickname of the current person is "Mr. [surname of the player]";

otherwise:

now the reverse nickname of the current person is "[given name of the player]";

otherwise if the relationship of the current person is supervisor:

let M be a random number between 1 and 3;

if M is 1:

if the current person is female:

now the nickname of the current person is "Ms. [surname of the current person]";

otherwise:

now the nickname of the current person is "Mr. [surname of the current person]";

otherwise if M is 2:

now the nickname of the current person is "[given name of the current person]";

otherwise if M is 3:

now the nickname of the current person is "Boss";

if a random chance of 1 in 2 succeeds:

if the player is female:

now the reverse nickname of the current person is "Ms. [surname of the player]";

otherwise:

now the reverse nickname of the current person is "Mr. [surname of the player]";

otherwise:

now the reverse nickname of the current person is "[given name of the player]";

otherwise if the relationship of the current person is employee:

if a random chance of 1 in 2 succeeds:

if the current person is female:

now the nickname of the current person is "Ms. [surname of the current person]";

otherwise:

now the nickname of the current person is "Mr. [surname of the current person]";

otherwise:

now the nickname of the current person is "[given name of the current person]";

let M be a random number between 1 and 3;

if M is 1:

if the player is female:

now the reverse nickname of the current person is "Ms. [surname of the player]";

otherwise:

now the reverse nickname of the current person is "Mr. [surname of the player]";

otherwise if M is 2:

now the reverse nickname of the current person is "[given name of the player]";

otherwise if M is 3:

now the reverse nickname of the current person is "Boss";

otherwise if the relationship of the current person is lover or the relationship of the current person is fiancee or the relationship of the current person is spouse:

let M be a random number between 1 and 10;

if M is 1:

now the nickname of the current person is "honey";

otherwise if M is 2:

now the nickname of the current person is "sweetheart";

otherwise if M is 3:

now the nickname of the current person is "darling";

otherwise if M is 4:

now the nickname of the current person is "beloved";

otherwise if M is 5:

now the nickname of the current person is "babe";

otherwise:

now the nickname of the current person is "[given name of the current person]";

let M be a random number between 1 and 10;

if M is 1:

now the reverse nickname of the current person is "honey";

otherwise if M is 2:

now the reverse nickname of the current person is "sweetheart";

otherwise if M is 3:

now the reverse nickname of the current person is "darling";

otherwise if M is 4:

now the reverse nickname of the current person is "beloved";

otherwise if M is 5:

now the reverse nickname of the current person is "babe";

otherwise:

now the reverse nickname of the current person is "[given name of the player]";

otherwise if the relationship of the current person is grandparent:

let M be a random number between 1 and 4;

if M is 1:

if the current person is female:

now the nickname of the current person is "Grandmother";

otherwise:

now the nickname of the current person is "Grandfather";

otherwise if M is 2:

if the current person is female:

now the nickname of the current person is "Grandma";

otherwise:

now the nickname of the current person is "Grandpa";

otherwise if M is 3:

if the current person is female:

now the nickname of the current person is "Grandmama";

otherwise:

now the nickname of the current person is "Grandpapa";

otherwise if M is 4:

if the current person is female:

now the nickname of the current person is "Gramma";

otherwise:

now the nickname of the current person is "Granda";

let M be a random number between 1 and 10;

if M is 1:

if the player is female:

now the reverse nickname of the current person is "sunny girl";

otherwise:

now the reverse nickname of the current person is "sunny boy";

otherwise if M is 2:

now the reverse nickname of the current person is "sweetie";

otherwise if M is 3:

now the reverse nickname of the current person is "pumpkin";

otherwise if M is 4:

now the reverse nickname of the current person is "doodlebug";

otherwise if M is 5:

now the reverse nickname of the current person is "kiddo";

otherwise:

now the reverse nickname of the current person is "[given name of the player]";

otherwise if the relationship of the current person is parent:

let M be a random number between 1 and 4;

if M is 1:

if the current person is female:

now the nickname of the current person is "Mother";

otherwise:

now the nickname of the current person is "Father";

otherwise if M is 2:

if the current person is female:

now the nickname of the current person is "Mom";

otherwise:

now the nickname of the current person is "Dad";

otherwise if M is 3:

if the current person is female:

now the nickname of the current person is "Mama";

otherwise:

now the nickname of the current person is "Papa";

otherwise if M is 4:

if the current person is female:

now the nickname of the current person is "Momma";

otherwise:

now the nickname of the current person is "Daddy";

let M be a random number between 1 and 10;

if M is 1:

now the reverse nickname of the current person is "honey";

otherwise if M is 2:

now the reverse nickname of the current person is "angel";

otherwise if M is 3:

now the reverse nickname of the current person is "pumpkin";

otherwise if M is 4:

now the reverse nickname of the current person is "kitten";

otherwise if M is 5:

now the reverse nickname of the current person is "goose";

otherwise:

now the reverse nickname of the current person is "[given name of the player]";

otherwise if the relationship of the current person is sibling:

if a random chance of 1 in 5 succeeds:

if the current person is female:

now the nickname of the current person is "sis";

otherwise:

now the nickname of the current person is "bro";

otherwise:

now the nickname of the current person is "[given name of the current person]";

if a random chance of 1 in 5 succeeds:

if the player is female:

now the reverse nickname of the current person is "sis";

otherwise:

now the reverse nickname of the current person is "bro";

otherwise:

now the reverse nickname of the current person is "[given name of the player]";

otherwise if the relationship of the current person is child:

let M be a random number between 1 and 10;

if M is 1:

now the nickname of the current person is "kid";

otherwise if M is 2:

now the nickname of the current person is "good luck charm";

otherwise if M is 3:

now the nickname of the current person is "tomato";

otherwise if M is 4:

now the nickname of the current person is "sunshine";

otherwise if M is 5:

now the nickname of the current person is "dear";

otherwise:

now the nickname of the current person is "[given name of the current person]";

let M be a random number between 1 and 4;

if M is 1:

if the player is female:

now the reverse nickname of the current person is "Mother";

otherwise:

now the reverse nickname of the current person is "Father";

otherwise if M is 2:

if the player is female:

now the reverse nickname of the current person is "Mom";

otherwise:

now the reverse nickname of the current person is "Dad";

otherwise if M is 3:

if the player is female:

now the reverse nickname of the current person is "Mama";

otherwise:

now the reverse nickname of the current person is "Papa";

otherwise if M is 4:

if the player is female:

now the reverse nickname of the current person is "Momma";

otherwise:

now the reverse nickname of the current person is "Daddy";

otherwise:

now the nickname of the current person is "[given name of the current person]";

now the reverse nickname of the current person is "[given name of the player]";

DM "The PC refers to this character as [nickname of the current person]. The character refers to the PC as [reverse nickname of the current person].[line break]"