|
@@ -0,0 +1,75 @@
|
|
|
+
|
|
|
+
|
|
|
+import random
|
|
|
+
|
|
|
+def d(n):
|
|
|
+ return random.randint(1, n)
|
|
|
+
|
|
|
+STAT_OUTCOMES = [
|
|
|
+ [4,3,2,2],
|
|
|
+ [4,3,3,2],
|
|
|
+ [4,4,3,2],
|
|
|
+ [5,4,3,2],
|
|
|
+ [5,5,3,2],
|
|
|
+ [4,4,4,3],
|
|
|
+ [5,4,4,3],
|
|
|
+ [5,5,4,3],
|
|
|
+ [6,5,4,3],
|
|
|
+ [6,5,5,4],
|
|
|
+]
|
|
|
+
|
|
|
+STATS = ['Acuity', 'Body', 'Heart', 'Will']
|
|
|
+
|
|
|
+TRAIT_OUTCOMES = [
|
|
|
+ '2d4',
|
|
|
+ 'd4',
|
|
|
+ 'd6',
|
|
|
+ 'd8',
|
|
|
+ 'd10',
|
|
|
+ '2d6',
|
|
|
+ '2d8',
|
|
|
+ '2d10',
|
|
|
+]
|
|
|
+
|
|
|
+REL_OUTCOMES = [
|
|
|
+ '2d4',
|
|
|
+ '1d4',
|
|
|
+ '1d6',
|
|
|
+ '1d8',
|
|
|
+ '1d10',
|
|
|
+ '2d6',
|
|
|
+ '2d8',
|
|
|
+ '2d10',
|
|
|
+ '3d6',
|
|
|
+ '3d8',
|
|
|
+]
|
|
|
+
|
|
|
+FREE_DICE = [
|
|
|
+ '2d4',
|
|
|
+ '2d6',
|
|
|
+ '4d6',
|
|
|
+ '1d8',
|
|
|
+ '2d8',
|
|
|
+ '1d10',
|
|
|
+]
|
|
|
+
|
|
|
+def main():
|
|
|
+ print('Name ' + '_'*12)
|
|
|
+ outcomes = random.choice(STAT_OUTCOMES)
|
|
|
+ random.shuffle(outcomes)
|
|
|
+ print(end=' ')
|
|
|
+ for (stat, value) in zip(outcomes, STATS):
|
|
|
+ print('{0} {1} '.format(stat, value), end='')
|
|
|
+ print('\nTraits')
|
|
|
+ for _ in range(4):
|
|
|
+ print(' - {0}: ________'.format(random.choice(TRAIT_OUTCOMES)))
|
|
|
+ print('Relationships')
|
|
|
+ print(' - 1d6: blood')
|
|
|
+ for _ in range(4):
|
|
|
+ print(' - {0}: ________'.format(random.choice(REL_OUTCOMES)))
|
|
|
+ print('Free dice')
|
|
|
+ for _ in range(3):
|
|
|
+ print(' - {0}: ________'.format(random.choice(FREE_DICE)))
|
|
|
+
|
|
|
+if __name__ == '__main__':
|
|
|
+ main()
|