Skip to content

August 19, 2017

Creating a bias towards character generation.

by Criss Davis

Capture.PNG

While working on my Fiction Generator and creating Characters I noticed that I was indeed getting a randomized type of character. This ended up not being realistic and so I started working on finding a way to make the randomized character be biased towards generic. Thanks to Brad and John for last nights conversation.

In the characters class I have a variable that has nine levels. I am using the Enneagram model however in the first instance the first nine levels are from Good to Evil and not personality types.  I wanted to create a bias towards the median when generating a random characters. This means that I will generate more moderate characters and fewer extreme characters.  I will later add a second Enneagram attribute for their personality type.

The levels and percentages are categorized as follows.
Heroic to Altruistic – levels 1 through 3
Average – levels 4 through 6
Thief to Villain – levels 7 through 9

1 – 2% Hero
2 – 3% Benevolent
3 – 10% Meritorious
4 – 20% Intellectual
5 – 30% Average Joe
6 – 20% Meat Head
7 – 10% Criminal
8 – 3% Tyrant
9 – 2% Villain

I ended up going with the following model because it allows me to easily adjust the percentages for each level individually. I generate a random int between 0 and 100 and compare it to the following stack:

Capture

Here is output from generating some random characters. Yes, there is also a bias set for gender generation that can be easily changed.

Capture.PNG

You will also notice that they each have random names. I used the existing names package and added a middle name function to it and I will also be adding other functions for webscraping names and adding them to the list. To-easy. Inside my class you can create characters with the same First, Middle, Last, or any combination of names. Here is an example.

Capture.PNG

That’s all for now folks. Keep on writing code.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Note: HTML is allowed. Your email address will never be published.

Subscribe to comments

%d bloggers like this: