Advertisement
Guest User

Untitled

a guest
May 22nd, 2019
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.67 KB | None | 0 0
  1. import random
  2. import sys
  3.  
  4. print("One Click NPC Common Generator\n")
  5. """print("Press Enter to run.  Type 'quit' to exit.")"""
  6.  
  7. race = ["Dwarf", "Elf", "Halfling", "Human", "Human", "Gnome", "Half-Elf", "Half-Orc"]
  8. gender = ["Male", "Female", "Male", "Female"]
  9. adjective = ["Tattooed/Pierced/Unusual", "Long/Large/Loud/Extravagant", "Short/Small/Quiet/Simple",
  10.              "Missing/Injured/Damaged", "Beautiful/Ugly", "Colourful/Dyed/Painted"]
  11. feature = ["Nose/Voice", "Eyes/Eyebrows/Stare", "Beard/Hair/Sideburns", "Ears/Hearing", "Mouth/Lips/Laugh",
  12.        "Head/Forehead/Face", "Clothing", "Skin/Scar", "Shoes/Hat", "Teeth/Nails/Hands"]
  13.  
  14. first_parts = [
  15.     ["Dal", "Taer", "Mar", "Dyl", "Eth", "Clad", "Gal", "Bok"],
  16.     ["Hour", "Keth", "Dan", "Eth", "La", "Ged", "Ari", "Gun"],
  17.     ["Kal", "ELin", "San", "Jord", "Gab", "Dap", "Fae", "Ton"],
  18.     ["Gat", "Ay", "Tar", "Gab", "Zach", "Jip", "Avil", "Tar"],
  19.     ["Brot", "Lae", "Wil", "Zach", "Hay", "Cos", "Tyr", "Kez"],
  20.     ["Har", "Sil", "Fin", "Al", "Dyl", "Glon", "Yen", "Vug"],
  21.     ["Strom", "Arth", "Elk", "La", "Iv", "Smid", "Rad", "No"],
  22.     ["Glor", "Sca", "Jop", "Iv", "Jord", "Jen", "Ven", "Kir"],
  23.     ["Thog", "Evin", "Ric", "Kar", "Al", "Tin", "Lan", "Bro"],
  24.     ["Demm", "Kyr", "Bel", "Hay", "Kar", "Deb", "Dan", "Gor"]
  25. ]
  26. second_parts = [
  27.     ["omma", "ryl", "", "", "", "li", "tu", "og"],
  28.     ["ogg", "tha", "", "", "", "mer", "ana", "oto"],
  29.     ["osgra", "ina", "ow", "", "", "wun", "dra", "ust"],
  30.     ["ed", "ala", "em", "", "", "men", "ado", ""],
  31.     ["tirl", "yni", "", "", "", "alv", "la", "g"],
  32.     ["wod", "arun", "", "", "", "ip", "reg", "ak"]
  33. ]
  34. third_parts = [
  35.     ["rut", "en", "os", "an", "in", "ak", "il", "ik"],
  36.     ["lynn", "lia", "ra", "ley", "ina", "eth", "lia", "nor"],
  37.     ["li", "al", "er", "as", "riel", "urt", "on", "org"],
  38.     ["na", "aya", "yn", "na", "ila", "na", "tha", "gri"]
  39. ]
  40.  
  41.  
  42. def d4():
  43.     return random.randint(0, 3)
  44.  
  45. def d6():
  46.     return random.randint(0, 5)
  47.  
  48. def d8():
  49.     return random.randint(0, 7)
  50.  
  51. def d10():
  52.     return random.randint(0, 9)
  53.  
  54. def generate_npc():
  55.     name1 = first_parts[d10()][d8()]
  56.     name2 = second_parts[d6()][d8()]
  57.     name3 = third_parts[d4()][d8()]
  58.  
  59.     print("Name: {}{}{}".format(name1, name2, name3))
  60.     print("Gender: {}".format(gender[d4()]))
  61.     print("Race: {}".format(race[d8()]))
  62.     print("Feature: {} {}".format(adjective[d6()], feature[d10()]))
  63.  
  64. if __name__ == '__main__':
  65.     # If user provides number of npcs they want, make that many, otherwise just make one
  66.     if len(sys.argv) > 1:
  67.         num_of_npcs = int(sys.argv[1])
  68.         for i in range(num_of_npcs):
  69.             generate_npc()
  70.     else:
  71.         generate_npc()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement