====== RANDOM GENERATION ====== Random Generation primarily creates starting Attribute Scores for Adventurers: * Roll 2d6 - 2d6 for each of the 12 [[:salvage_space:Attributes]]. Players may also choose to surprise themselves with Random Generation for: * [[:salvage_space:Species]] * [[:salvage_space:Origins]] * [[:salvage_space:Backgrounds]] * [[:salvage_space:Education]] * [[:salvage_space:Professions]] * [[:salvage_space:Skills]] Once generated, Guides may optionally apply the Templates for these, which may have a cost to be paid from a starting pool in order to purchase them. Guides may also place limits on the amounts or selections of Templates which may be chosen from to suit the particular story or setting. Each Template may modify different combinations of the following elements of the Adventurer: * [[:salvage_space:Attributes]] * [[:salvage_space:Attribute Reserves]] * [[:salvage_space:advantages_and_disadvantages|Advantages and Disadvantages]] * [[:salvage_space:Skills]] * [[:salvage_space:Special Effects]] (SFX) abilities * [[Starting Resources]] * [[Starting Equipment]] * [[Starting Connections]] Adventurers usually will not use Random Generation for: * [[Goals]] * [[Motivations]] * [[Attitudes]] ===== Automation ===== Here is a simple Python code for quick Adventurer Attribute generation: #!/usr/bin/env python3 """ Chronology Quick Attribute Roller """ import random def roll(): """ Roll 2d6 - 2d6 """ white_1 = random.randint(1, 6) white_2 = random.randint(1, 6) red_1 = random.randint(1, 6) red_2 = random.randint(1, 6) return (white_1+white_2)-(red_1+red_2) strength = roll() endurance = roll() agility = roll() dexterity = roll() speed = roll() appearance = roll() intelligence = roll() willpower = roll() awareness = roll() ingenuity = roll() reflexes = roll() charisma = roll() total = strength + endurance + agility + dexterity + speed + appearance total += intelligence + willpower + awareness + ingenuity + reflexes + charisma print("Physical Mental") print(f"Strength ..... {strength:3} \t Intelligence ... {intelligence:3}") print(f"Endurance .... {endurance:3} \t Willpower ...... {willpower:3}") print(f"Agility ...... {agility:3} \t Awareness ...... {awareness:3}") print(f"Dexterity .... {dexterity:3} \t Ingenuity ...... {ingenuity:3}") print(f"Speed ........ {speed:3} \t Reflexes ....... {reflexes:3}") print(f"Appearance ... {appearance:3} \t Charisma ....... {charisma:3}") print(f"... Balance Total: {total:4}") The Python script also totals up the Attributes generated and gives an indication of how "balanced" the Attributes are toward the center average or away from it. Here is a simple Bourne-Again Shell code for a simple quick character creator: #!/bin/bash export D1 D2 D3 D4 RESULT roll() { D1=$RANDOM let "D1 %= 6" D2=$RANDOM let "D2 %= 6" D3=$RANDOM let "D3 %= 6" D4=$RANDOM let "D4 %= 6" let "RESULT = (D1 + D2) - (D3 + D4)" echo -n "$RESULT" } for ATTRIBUTE in Strength Endurance Agility Dexterity Speed Appearance Intelligence Will Ingenuity Awareness Reflexes Charisma do printf " %s: " ${ATTRIBUTE} roll done echo " " ▲ [[:Chronology:]] ~~DISCUSSION~~