import random
# change these variables to choose name settings
pCiv = ('CIVILIZATION_KURGAN')
pReligion = ('RELIGION_CHAOS')
pAlign = ('ALIGNMENT_EVIL')
for z in range (1, 20):
lPre=["ta","go","da","bar","arc","ken","an","ad","mi","kon","kar","mar","wal","he", "ha", "re", "ar", "bal", "bel", "bo", "bri", "car","dag","dan","ma","ja","co","be","ga","qui","sa"]
lMid=["ad","z","the","and","tha","ent","ion","tio","for","tis","oft","che","gan","an","en","wen","on","d","n","g","t","ow","dal"]
lEnd=["ar","sta","na","is","el","es","ie","us","un","th", "er","on","an","re","in","ed","nd","at","en","le","man","ck","ton","nok","git","us","or","a","da","u","cha","ir"]
lEpithet=["red","black","grey","white","proud","elder","younger","lesser","renowned","great","bold","wanderer","wayfarer","clever"]
lNoun=["Longshanks","Foehammer","Widowmaker","Longstaff","Longknife","Winterborn","Autumnborn","Wintersun","Undermoon","Redblade","Morningstar","Oathtaker","Greymantle","Redmantle","Bluemantle","Greycloak","Redcloak","Longtooth","Hammerhand","of the Tower","Mountainkin","Stonehand","Longblade","Quickblade","Nimblefingers","Nimbleshins","Quickfingers"]
lSchema=["CPME","CPMESCPME","CPESCPE","CPE","CPMME","CPMDCME","CPMAME","KCPMESCUM","CPMME[ the ]CX", "CPMESCXN", "CPMME[ of ]CPMME", "CNNSCXN"]
if pCiv == ('CIVILIZATION_BRETONNIA'):
lPre = ["baron","duc","comte","vicomte","chevalier","marquis","seneschal"]
lMid = ["Abelard","Guillaume","Jean","François","Luc","Renard","Hugues","Ghislain","Henri","Guy","Thibaut","Etienne","Guillemin","Bernart","Gervais","Archimbaud","Aubert","Yves","Olivier","Païen","Alain","Guillemot","Charles","Didier","Blaise","Aymeric"]
lEnd = ["Sanzier","Couronne","Artois","Lyonesse","Mousillon","Gisoreaux","Montfort","Bastonne","Dahaut","Bordeleaux","Aquitaine","Brionne","Quenelles","Carcassonne","Chimay","Vergerac","Ganet","Chalons","Naizon","la Tour","Soubeyrand","Montmorency","Gaön","Hauterive"]
lEpithet = lEpithet + ["bald","fair","chaste","pure","lionhearted"]
lSchema = ["CP[ de ]E","[Sieur ]CM[ de ]E","CM[ de ]E","[Jean-]CM[ de ]E","CM[ the ]CX"]
if pCiv == ('CIVILIZATION_EMPIRE'):
lPre = ["Berzelius","Heinrich","Hermann","Heinz","Wilhelm","Werner","Albertus","Dietmar","Hartmut","Wiegand","Rudiger","Friedrich","Theodoric","Gerhard","Eberhard","Johan","Johannes","Ludwig","Dietrich","Hans","Konrad","Klaus","Klausius","Ulrich","Kaspar","Melchior","Balthazar","Ambrosius","Stefan","Jurgen","Albrecht","Justus","Engelbert","Hanskristian","Sebastian","Henning","Erasmus","Anselm","Benedict","Bonifacius","Klement","Benno","Sigismund","Gottlieb","Siegfried","Theodosius","Leopold","Joachim","Uwe"]
lMid = ["weiss","feuer","gelt","heim","pfalz","stein","kriegs","krausz","silber","schwartz","hammer","reich","gesang","holtz","brecht","faust","licht","breit","vogel","zwei","krupp","kampf","berg"]
lEnd = ["Altdorf","Wissenland","Hochland","Stirland","Middenland","Nordland","Ostermark","Middenheim","Lüdenhof","Leitdorf","Talabecland","Freistadt","Krieglitz","Helmgart","Ubersreik","Feuerbach","Klingelfuss","Schultheiß","Breitbach","Nuln","Salzenmund","Weissbrück","Carroburg","Kleindorf"]
lEpithet = lEpithet + ["bald","elector","fat","hammer","rich"]
lNoun = lNoun + ["Heldenhammer"]
lSchema = ["CP[ von ]E","CPSE[er]","CPSCMM","CPSCMM[en]","CP[ the ]CX","[Count ]CP[ von ]E","[Herr ]CPSCM[en]","CPSCM"]
if pCiv == ('CIVILIZATION_ESTALIA'):
lPre = ["Caballero","Conde","Vizconde","Marqués","Hidalgo","Duque"]
lMid = ["Pedro","César","Severino","Heitor","Pablo","Juanpablo","Diosdado","Rafael","Sancho","Diego","Hernán","Ruy","Lope","Álvaro","Salvador","Gaspar","Rodrigo","Luis","Cristóbal","Santiago","Juan"]
lEnd = ["Arcas","Paez","Oros","Pascual","Miraflores","Malagrima","Rivarios","Saavedra","Tejeda","Santillán","Merced","Calatrava","Alquezaro","Barboza","Muros","Magritta","Bilbali","Borgas","Zaragoz","Moleno","Almagora","Solsona"]
lEpithet = lEpithet + ["Pious","Navigator","Inquisitor","Witchkiller","Conquistador"]
lSchema = ["CP[ de ]E","CP[ de ]E[ y ]E","CM[ de ]E","[Don ]CM[ de ]E","CM[ the ]CX","CM[ de ]E[ y ]E","[Don ]CM[ the ]CX"]
if pCiv == ('CIVILIZATION_TILEA'):
lPre = ["Lorenzo","Piero","Francesco","Iacopo","Bartolomeo","Niccolo","Domenico","Andrea","Giovanni","Alessandro","Daniele","Piero","Federico","Corrado","Giuliano","Enzio","Furio","Donato","Giustiniano","Marco","Michele","Taddeo","Perugino","Dandolo","Cosimo","Gianni","Marioluigi"]
lEnd = ["cavalcant","stracc","perugin","sforzat","tobar","amargh","chiar","luccin","lucan","remas","sartos","miraglian","pavon","trant","verezz","montecastell","loropian"]
lEpithet = lEpithet + ["magnificent","rich","wealthy","courtier","sycophant","openhanded","serene","poisoner","usurper","sellsword"]
lSchema = ["CPSCE[etto]","CPSCE[ino]","CPSCE[ese]","CP[ di ]CE[i]","CP[ dei ]CE[e]","CP[ della ]CE[a]","CP[ the ]CX","[Doge dio ]CE[o]"]
if pCiv == ('CIVILIZATION_KISLEV'):
lPre = ["Aleksandr","Boris","Grigor","Mikhail","Feodor","Aleksey","Pavel","Ivan","Iakov","Kyril","Leonid","Ygor","Yevgeny","Stjepan","Taras","Roman"]
lMid = ["Slava","Pyotr","Sasha","Mstislav","Boleslav","Alyosha","Lev","Stanislav","Dmitri","Ruslan","Pavel","Oleg","Yuri","Dima"]
lEnd = ["Ilych","Drubetskoi","Drubin","Kalugin","Chenchik","Orodoy","Ilyets","Orov","Dorodenko","Erengradskiy","Preslavskiy","Bolgasgradiy","Omenskiy","Ursunov","Tchorniy","Medvedev","Tomortovo"]
lEpithet = lEpithet + ["trollslayer","terrible","fierce","proud","wolf","bear"]
lSchema = ["CMSCP[evich]","CMSCP[ovich]SCP[ov]","CPSCE","CMSCE","CMSCP[ovich ]CE","CP[ the ]CX","[Count ]CPSCE"]
if pCiv == ('CIVILIZATION_NIPPON'):
lPre = ["Susano","Hideo","Morimoto","Minamoto","Taisho","Naruhito","Hiro","Tadataka","Yamato","Shouhei","Daisuke","Ichiro","Jiro","Nobu","Ryu","Taro","Takashi","Nobunaga","Ito","Takotsubo","Shoyu"]
lMid = ["yoshi","yumi","kami","nori","yashi","kara","tori","masu","naga","shima","shide","mura","taka","wara","shige","nobu"]
lEnd = ["mikoto","arima","hirobumi","takotsubo","aeyama","yamato"]
lEpithet = lEpithet + ["calligrapher","calm","serene","devoted","oathbearer","honorable"]
lSchema = ["CP[ o no ]CE","CP[ o no ]CM[moto]","CP[ no ]CMM","CP[ o ]CMM","CMM[ ]CMM","CM[ the ]CX","CEM[-sama]","CMM[ no ]CMM"]
if pCiv == ('CIVILIZATION_CATHAY'):
lPre = ["wu","yin","xie","xi","xu","jiang","li","liu","tsou","jing","yan","min","mian","chou","chu","chen","wang","yang","ming","tze","zhe","liou","chiang","wen","jing","gong","guan"]
lEpithet = lEpithet + ["calligrapher","calm","serene","magistrate","highborn","warlord","learned","mandarin","steadfast","honorable"]
lSchema = ["CPSCPP","CPPSCP","CP[ the ]CX","CPP[ the ]CX"]
if pCiv == ('CIVILIZATION_IND'):
lPre = ["krishan","krishna","desh","pradesh","hari","srinivas","dinesh","indra","anand","inder","ravi","jehan","arun","raj","rama","lakshman","govind","arvind","ahilan","das","kaushal","rajesh"]
lMid = ["svara","rama","gopal","svati","mantra","krishna","jaira","gupta","kumar","chira","swami","raja","pandhya","bhartiya"]
lEnd = ["ndasi","pinder","ya","bhat","vinder","vasan","i","vishnu","nandra"]
lSchema = ["CPSCME","CPSCMM","[Maharaja ]CMM","CMM[ Khan]","[Raja ]CPSCME","CP[ Singh Khalsa]"]
if pCiv == ('CIVILIZATION_ARABY'):
lPre = ["Haji","Hashem","Ahmad","Yasin","Fahmy","Hamid","Farid","Jubayr","Jafar","Kamal","Yusuf","Idris","Husayn","Zahir","Zuhayr","Yaqub","Ridwan","Nasr","Daoud","Ali","Musa","Hasan","Nur","Abbas","Yahya","Asad","Amr","Akbar"]
lMid = ["malik","razaq","rahman","aziz","azim","jalil","qadr","masr","salam","samad","hafiz","sabah","nur","bakr","shafi","karim","latif","malik"]
lEpithet = lEpithet + ["calligrapher","calm","serene","devout","bedouin","oathbearer","honorable"]
lSchema = ["CP[ al-]CM","CP[ Abdul]M","[Sheik ]CP[ al-]CM","[Abdul]M[ Pasha]","[Abdul]M[ Khan]","CP[ ibn ]CP[ al-]CM","CP[ ibn ]CP","CP[ the ]CX","CP[ al-]CM[ Abu]M","[Emir ]CP[ Abdul]M"]
if pCiv == ('CIVILIZATION_HUNG'):
lPre = ["wu","yin","xie","xi","xu","jiang","li","liu","tsou","jing","yan","min","mian","chou","chu","chen","wang","yang","ming","tze","zhe","liou","chiang","wen","jing","gong","guan"]
lEpithet = lEpithet + ["horselord","scalptaker","ravener","raider","warlord"]
lSchema = ["CPSCPP","CPPSCP","CP[ the ]CX","CPP[ the ]CX"]
if pCiv == ('CIVILIZATION_NORSCA'):
lPre = ["snorri","skorri","yngvar","yngve","sölveig","styrkár","snæbjörn","grímm","svein","skjöldr","hjalmar","hákon","geir","grímr","karl","grettir","kjetil","björn","jørund","leif","einar","thor","torbjörn","torvald","ulf","asgeir","grímnir","skeggi","Øyvind","hróald","gunnar","finn","olaf","dagmær","erling","halvard","harald"]
lEpithet = lEpithet + ["crow","shiptaker","terrible","seafarer","fierce","raven","wolf","scalptaker"]
lNoun = lNoun + ["Fjordling","Northling","Longship","Skaeling","Sortsvinær","Redbeard"]
lSchema = ["CPSCP[sson]","CPSCP[sen]","CP[ the ]CX","CPSN"]
if pCiv == ('CIVILIZATION_KURGAN'):
lPre = ["ar","grom","khar","shar","khal","zhak","phaal","amar","crom"]
lMid = ["gha","zha","kho","a","o","u","va","zho","kumar","chira"]
lEnd = ["tai","dar","tar","shar","phaan","i","l","kai","kar","ghai"]
lEpithet = lEpithet + ["scalptaker","ravener","raider","warlord"]
lSchema = ["CPMESN","CPME[ the ]CX","CPME[ Khan]","CMME[ the ]CX","CPMPE"]
if pCiv == ('CIVILIZATION_ASUR'):
lPre = ["yl","amar","anar","anad","ilith","el","celad","llor","loth","teth","ulth","asur"]
lMid = ["ar","el","sil","uor","il","or","ann","wë","tor","cor","eth"]
lEnd = ["iel","ion","ien","ieth","anann","uan","wë","iendel","anar","uel","andis","ian"]
lEpithet = lEpithet + ["navigator","seafarer","arbiter","pure","princeling","fair","wise","steadfast","knowing","archer","seafarer"]
lNoun = ["Fairhair","Silverhair","Starbrow","Brightwine","Clearwine","Heartywine","Starmantle","Starcrown","Brightmantle","Silvermantle","Silverblade","Tallwain","Tallhelm","Silverhelm","Brighthelm","Shiningblade","Quickblade","Warwain","of the White Tower","Evenstar"]
lSchema = ["CPE[ the ]CX","CPESN","CPME[ the ]CX","CPMMESN","CPMESN","[Bel-]CPE[ the ]CX","[Prince ]CPMSN"]
if pCiv == ('CIVILIZATION_ASRAI'):
lPre = ["yl","amar","anar","anad","ilith","el","celad","llor","loth","teth","athel"]
lMid = ["ar","el","sil","uor","il","or","ann","wë","tor","cor","eth"]
lEnd = ["iel","ion","ien","ieth","anann","uan","wë","iendel","anar","uel","loren","athel","andis","wen"]
lEpithet = lEpithet + ["archer","gladewarden","wardancer","watcher","preserver","steadfast","silent","strider","forester"]
lNoun = ["Thornbrow","Vinecrown","Thornmantle","Vinemantle","Ashenleaves","Thorngarland","Shiningsap","Silverleaf","Shiningleaf","Autumnwine","Treefriend","Thornmantle","Thistlecrown","Leafmantle","Silverblade","Tallwain","Gladerider","Oakenstaff","Longbow","Meadowmeet","of the Oak","Warwain","of the Aspens","of the Yews","of the Pines","Greencloak"]
lSchema = ["CPE[ the ]CX","CPESN","CPME[ the ]CX","CPMESN"]
if pCiv == ('CIVILIZATION_DRUCHII'):
lPre = ["mal","shar","khain","shab","mor","akh","ar","nar","klar","khan","shaar","ith","loth","teth"]
lMid = ["ar","el","sil","e","i","or","an","tor","khor","ka","ak"]
lEnd = ["kath","reth","wen","kath","sharr","ath","sheth","sith","khain","aal","shaan","xarr","tar","khan","khal","loth","beth","karond","khor"]
lEpithet = lEpithet + ["seafarer","slaver","slavedriver","lizardtamer","beastmaster","cruel","vigilant","ruthless","merciless","glorious","rich","black","dark","kinslayer"]
lSchema = ["CPE[ the ]CX","CPME[ the ]CX","CPE[i the ]CX","CPESCPME","CPMESN"]
if pCiv == ('CIVILIZATION_AMAZON'):
lPre = ["arist","nik","aret","strat","leon","iph","desm","eus","sok","petr","dem","th","eud","fot","soph","athen"]
lMid = ["a","e","i","ei","o"]
lEnd = ["geneia","kleia","kleïs","phane","ia","i","na","axa","konda","ena","thena","zoë","mache","loga","keï"]
lSchema = ["CPME","CPEE","CPMPM","CPE[ the ]CX","CPMESN"]
if pCiv == ('CIVILIZATION_ORK'):
lPre = ["gaz","jaz","mak","daz","skar","gral","grim","shaz","baz","grack","gob","ork","snik","grish"]
lMid = ["raz","waz","zik","nik","z","raz","za","snak"]
lEnd = ["za","dak","snik","snak","dik","lik","lok","claw","blak","drok","zak","zik"]
lEpithet = ["howla","yowla","smasha","grabba","gulpa","killa","twista","toofless","shiv","boss","bigboss","snagga","bagga","pounda","grinda","sneaka","snappa","cracka","cruncha","masha","muncha","chewa","spitta","belcha","WAAAGHa","nobbla","gobbla","scalpa","twist","shank","knife","paunch"]
lNoun = ["Nubnose","Fathead","Yellowtooth","Snagtooth","Elfiebones","Fatfingaz","Yellowspit","Slobberfangs","Bonebreff","Rattlebags","Humiebones","Elfkilla","Stuntiesmasha","Goldgrabba","Shinyfings","Cragclaw","Jibjabba","Longnose","Twoteef","Twentyteef"]
lSchema = ["CP[ da ]CX","CPMESCN","CPE[ da ]CX","CPESCPME","CPME[ da ]CX"]
if pCiv == ('CIVILIZATION_GOBLIN'):
lPre = ["gaz","jaz","mak","daz","skar","gral","grim","shaz","baz","grack","gob","snik","grish","gob"]
lMid = ["raz","waz","zik","nik","z","raz","za","snak","gob"]
lEnd = ["za","dak","snik","snak","dik","lik","lok","claw","blak","drok","zak","zik","gob"]
lEpithet = ["howla","yowla","smasha","grabba","gulpa","killa","twista","toofless","shiv","boss","bigboss","snagga","bagga","pounda","grinda","sneaka","snappa","cracka","cruncha","masha","muncha","chewa","spitta","belcha","WAAAGHa","nobbla","gobbla","scalpa","twist","shank","knife","paunch"]
lNoun = ["Nubnose","Fathead","Yellowtooth","Snagtooth","Elfiebones","Fatfingaz","Yellowspit","Slobberfangs","Bonebreff","Rattlebags","Humiebones","Elfkilla","Stuntiesmasha","Goldgrabba","Shinyfings","Cragclaw","Jibjabba","Spiderskin","Longnose","Twoteef","Twentyteef"]
lSchema = ["CP[ da ]CX","CPMESCN","CPE[ da ]CX","CPESCPME","CPME[ da ]CX"]
if pCiv == ('CIVILIZATION_HOBGOB'):
lPre = ["hob","gaz","jaz","mak","daz","skar","gral","grim","shaz","baz","grack","gob","snik","grish"]
lMid = ["rab","wab","bik","hob","bakh","z","baz","zba","snak"]
lEnd = ["bai","ba","za","dak","snik","snak","dik","bik","bok","claw","blak","drok","bak","zik"]
lEpithet = ["howla","yowla","smasha","grabba","gulpa","killa","twista","toofless","shiv","boss","bigboss","snagga","bagga","pounda","grinda","sneaka","snappa","cracka","cruncha","masha","muncha","chewa","spitta","belcha","WAAAGHa","nobbla","gobbla","scalpa","twist","shank","knife","paunch"]
lNoun = ["Nubnose","Fathead","Yellowtooth","Snagtooth","Elfiebones","Fatfingaz","Yellowspit","Slobberfangs","Bonebreff","Rattlebags","Humiebones","Elfkilla","Stuntiesmasha","Goldgrabba","Shinyfings","Cragclaw","Jibjabba","Spiderskin","Longnose","Twoteef","Twentyteef"]
lSchema = ["CP[ da ]CX","CPMESCN","CPE[ da ]CX","CPESCPME","CPME[ da ]CX","CPME[ Khan]","CPME[ Pasha]"]
if pCiv == ('CIVILIZATION_OGRE'):
lPre = ["hob","gaz","jaz","mak","daz","skar","gral","grim","shaz","baz","grack","gob","snik","grish"]
lMid = ["rab","wab","bik","hob","bakh","z","baz","zba","snak"]
lEnd = ["bai","ba","za","dak","snik","snak","dik","bik","bok","claw","blak","drok","bak","zik"]
lEpithet = ["howla","yowla","smasha","grabba","gulpa","killa","twista","toofless","shiv","boss","bigboss","snagga","bagga","pounda","grinda","sneaka","snappa","cracka","cruncha","masha","muncha","chewa","spitta","belcha","WAAAGHa","nobbla","gobbla","scalpa","twist","shank","knife","paunch"]
lNoun = ["Nubnose","Fathead","Yellowtooth","Snagtooth","Elfiebones","Fatfingaz","Yellowspit","Slobberfangs","Bonebreff","Rattlebags","Humiebones","Elfkilla","Stuntiesmasha","Goldgrabba","Shinyfings","Cragclaw","Jibjabba","Spiderskin","Longnose","Twoteef","Twentyteef"]
lSchema = ["CP[ da ]CX","CPMESCN","CPE[ da ]CX","CPESCPME","CPME[ da ]CX","CPME[ Khan]","CPME[ Pasha]"]
if pCiv == ('CIVILIZATION_LIZ'):
lPre = ["apoc","zoch","coua","nahua","ich","ix","chal","chan","huitz","poch"]
lMid = ["tli","tla","tep","tec","chac","xo"]
lEnd = ["tepec","tl","tli","tlique","que","lotl","itl","tlan","mictlan","huatl","ualti","cuhtli","loc","temoc"]
lEpithet = ["astronomer","astrologer","mathematician","mystic","greenscaled","redscaled","bluescaled","iridescent","mottled","piebald","lustrous","shining","yellow"]
lSchema = ["CPM[ the ]CX","CPME","CPE[ the ]CX","CPMPE"]
if pAlign == ('ALIGNMENT_EVIL'):
lNoun = lNoun + ["Illwinter","Illwind","Kinslayer","Maneater","Suneater","Souleater","Oathbreaker","Falsefriend","Iceblood"]
lEpithet = lEpithet + ["dark","black","white","cruel","foul","merciless","curseling","unbending","cold","cunning","vile","kinslayer","oathbreaker","faithless","despised","treacherous","infamous","dreaded","unavoidable","assassin","usurper"]
if pAlign == ('ALIGNMENT_GOOD'):
lNoun = lNoun + ["Lawbringer","Daemonbane"]
lEpithet = lEpithet + ["just","lawbringer","white","pure"]
if pReligion == ('RELIGION_CHAOS'):
lEpithet = lEpithet + ["fallen","leechlord","debauched","profane","cannibal","pustulent","fetid","tainted","boneless","bloody","sanguine","forsaken","changer","magnificent","unearthly","glorious","beast","beautiful","twisted","everchanging","unbound","ravener","diseased","bloody","sanguine"]
lNoun = lNoun + ["Manyfaces","Ninehands","Blackblood","Slackmaw","Manyfavored","Maneater","Undivided","Spindleshanks","of the Raven","of the Eight Ways"]
if pReligion == ('RELIGION_IMMORTALITY'):
lEpithet = lEpithet + ["deathless","white","calm","reborn","serene","gaunt","undying","deathless","pallid","pale","ancient","bloodless","graverobber","returned","morbid","immortal","ashen","unearthly","endless","bonepicker","reaper","silent","Infinitely Prolonged"]
lNoun = lNoun + ["Ashenhand","Nineskulls","of the Bones","Undying","Graveborn","ap Mortis","Deathbringer","Corpsedust","Skullface","Bonemaw"]
if pReligion == ('RELIGION_SPIRITUALITY'):
lEpithet = lEpithet + ["calm","transcendent","serene","wise","philosopher","pious","calligrapher","hermit","abstemious","venerable","inscrutable","ascetic","silent","distant","enlightened","breatharian"]
lNoun = lNoun + ["Orangerobes","of the Monastery"]
if pReligion == ('RELIGION_SALVATION'):
lEpithet = lEpithet + ["bold","pious","magnanimous","dauntless","great","brave","orkslayer","proud","witchkiller"]
lNoun = lNoun + ["Lawgiver","Hardhand"]
# # #
# Pick a Schema
sSchema = random.choice(lSchema)
sFull = ""
sKeep = ""
iUpper = 0
iKeep = 0
iSkip = 0
# Run through each character in schema to generate name
for iCount in range (0,len(sSchema)):
sAdd=""
iDone = 0
sAction = sSchema[iCount]
if iSkip == 1:
if sAction == "]":
iSkip = 0
else:
sAdd = sAction
iDone = 1
else: # MAIN SECTION
if sAction == "P": # Pre : beginnings of names
sAdd = random.choice(lPre)
iDone = 1
if sAction == "M": # Mid : middle syllables
sAdd = random.choice(lMid)
iDone = 1
if sAction == "E": # End : end of names
sAdd = random.choice(lEnd)
iDone = 1
if sAction == "X": # Epithet : epithet word part
#epithets ("e" was taken!)
sAdd = random.choice(lEpithet)
iDone = 1
if sAction == "N": # Noun : noun word part
#noun
sAdd = random.choice(lNoun)
iDone = 1
if sAction == "S": # Space : a space character. (Introduced before [ ] was possible )
sAdd = " "
iDone = 1
if sAction == "D": # Dash : a - character. Thought to be common and useful enough to warrant inclusion : Introduced before [-] was possible
sAdd = "-"
iDone = 1
if sAction == "A": # ' : a ' character - as for -, introduced early
sAdd = "'"
iDone = 1
if sAction == "C": # Caps : capitalizes first letter of next phrase generated. No effect on non-letters.
iUpper = 1
if sAction == "K": # Keep : stores the next phrase generated for re-use with U
iKeep = 1
if sAction == "U": # Use : re-uses a stored phrase.
sAdd = sKeep
iDone = 1
if sAction == "[": # Print : anything between [] is added to the final phrase "as is". Useful for [ the ] and [ of ] among others.
iSkip = 1
# capitalizes phrase once.
if iUpper == 1 and iDone == 1:
sAdd = sAdd.capitalize()
iUpper = 0
# stores the next phrase generated.
if iKeep == 1 and iDone == 1:
sKeep = sAdd
iKeep = 0
# only adds the phrase if a new bit was actally created.
if iDone == 1:
sFull = sFull + sAdd
# trim name length
# if len(sFull) > 25:
# sFull = sFull[:25]
print sFull