Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import random
- import os
- from random import choice
- #this is just some word generator that you can ignore
- baseGoods = ['grain', 'wool', 'wine', 'wool', 'cloth', 'fish', 'fur', 'salt']
- metalGoods = ['iron', 'copper', 'gold', 'slaves']
- rareGoods = ['ivory', 'tea', 'chinaware', 'spices', 'coffee', 'cotton', 'sugar', 'tobacco']
- seaGoods = ['fish', 'salt']
- start = ['pro', 'eka', 'ela', 'eda', 'eqa', 'eva', 'ema', 'deca', 'penta', 'tetra','mono', 'di', 'octo', 'nono', 'nio', 'sevo', 'plevo', 'gevo','ube','ubi']
- general = ['cuv','fux', 'moh', 'sad', 'num', 'ur', 'del', 'pon', 'hap', 'ni', 'uvi', 'lud', 'drom', 'gel', 'wut', 'dar', 'bla',
- 'sub', 'mud', 'bv', 'nue', 'nub', 'meh', 're', 'hdo', 'ossi', 'tasi', 'felr', 'ris', 'uli', 'lite','sto', 'wum', 'go',
- 'du', 'mu', 'yuno', 'yuki', 'fluvi', 'kol']
- end = ['stan', 'vie', 'vino', 'led', 'stad', 'grad', 'frad', 'lox', 'klop', 'clox', 'krax', 'prad', 'detm', 'blr', 'vlad', 'wan','dron', 'phron']
- start = start
- middle = general
- end = end
- def genword():
- herp = random.choice(start)+random.choice(middle)+random.choice(end)
- return herp
- #province stuff really starts here
- class Province:
- def __init__(self, tag, religion, culture, techgroup = [], hre = False, sea = None, rare = None, avgtax = 7, vartax = 4):
- #strings:
- #tag, religion, culture
- #bool:
- #hre, sea, rare
- #int:
- #avgtax, vartax
- #list:
- #techgroups
- self.discover = techgroup
- self.tag = tag
- self.religion = religion
- self.culture = culture
- self.hre = hre
- self.sea = sea
- self.rare = rare
- self.taxVariation = vartax
- self.taxAverage = avgtax
- #sea as in touching the ocean
- #rare as in rare goods
- #avgtax is average tax, var tax is variation
- def provRare(self):
- if self.rare is None:
- raretest = random.randint(0,5)
- if raretest == 0:
- self.rare = True
- elif raretest != 0:
- self.rare = False
- def provSea(self):
- if self.sea is None:
- self.sea = False
- def provPossesion(self):
- self.add_core = self.tag
- self.owner = self.tag
- self.controller = self.tag
- #defines who posseses the province and stuff
- def provTax(self):
- self.tax = int(random.gauss(7,4))
- if self.tax < 1 or self.tax > 15:
- self.tax = self.taxAverage
- #figures out the base tax of the province
- def provGood(self):
- if self.rare is True:
- self.good = random.choice(rareGoods)
- elif self.sea is True and random.randint(0,3) == 0:
- self.good = random.choice(seaGoods)
- elif random.randint(0,1) == 0:
- self.good = random.choice(metalGoods)
- else:
- self.good = random.choice(baseGoods)
- def provManpower(self):
- self.manpower = int(random.gauss(3,2))
- if self.manpower < 1 or self.manpower > 6:
- self.manpower = 3
- def provCitysize(self):
- self.citysize = int(random.gauss(2000,5000))
- if self.citysize < 100:
- self.citysize = 2000
- def provCapital(self):
- self.capital = genword() #hook up your favorite word generator here or something.
- def provBuilding(self):
- self.fort1 = True
- if self.sea is True:
- if random.randint(0,2) == 0:
- self.dock = True
- else:
- self.dock = False
- else:
- self.dock = False
- if random.randint(0,5) == 0:
- self.temple = True
- else:
- self.temple = False
- if random.randint(0,5) == 0:
- self.armory = True
- else:
- self.armory = False
- if random.randint(0,5) == 0:
- self.constable = True
- else:
- self.constable = False
- if random.randint(0,5) == 0:
- self.marketplace = True
- else:
- self.marketplace = False
- if random.randint(0,5) == 0:
- self.workshop = True
- else:
- self.workshop = False
- def provAssembly(self):
- self.province = []
- self.province.append('add_core = ' + self.add_core)
- self.province.append('\n')
- self.province.append('owner = ' + self.owner)
- self.province.append('\n')
- self.province.append('controller = ' + self.controller)
- self.province.append('\n'+'\n')
- self.province.append('culture = ' + self.culture)
- self.province.append('\n')
- self.province.append('religion = ' + self.religion)
- self.province.append('\n')
- if self.hre is True:
- self.province.append('hre = yes')
- elif self.hre is False:
- self.province.append('hre = no')
- self.province.append('\n')
- self.province.append('base_tax = ' + str(self.tax))
- self.province.append('\n')
- self.province.append('trade_goods = ' + str(self.good))
- self.province.append('\n')
- self.province.append('manpower = ' + str(self.manpower))
- self.province.append('\n')
- self.province.append('citysize = ' + str(self.citysize))
- self.province.append('\n')
- self.province.append('capital = ' + '"'+self.capital+'"')
- self.province.append('\n')
- if self.fort1 is True:
- self.province.append('fort1 = yes')
- self.province.append('\n')
- if self.temple is True:
- self.province.append('temple = yes')
- self.province.append('\n')
- if self.dock is True:
- self.province.append('dock = yes')
- self.province.append('\n')
- if self.constable is True:
- self.province.append('constable = yes')
- self.province.append('\n')
- if self.workshop is True:
- self.province.append('workshop = yes')
- self.province.append('\n')
- if self.marketplace is True:
- self.province.append('marketplace = yes')
- self.province.append('\n')
- if self.armory is True:
- self.province.append('armory = yes')
- self.province.append('\n')
- if random.randint(0,8) == 1:
- self.province.append('university = yes')
- self.province.append('\n')
- for string in self.discover:
- self.province.append('discovered_by = ' + string)
- self.province.append('\n')
- self.province = ''.join(self.province)
- #everything after here is irrelevant to the overall scheme
- def kallistoProvince():
- randprov = Province('KAL', 'aethist', 'kolokian', techgroup = ['kolokia', 'lysteriok'], hre = False, sea = None, rare = None, avgtax = 7, vartax = 4)
- randprov.provRare()
- randprov.provSea()
- randprov.provPossesion()
- randprov.provTax()
- randprov.provGood()
- randprov.provManpower()
- randprov.provCitysize()
- randprov.provCapital()
- randprov.provBuilding()
- randprov.provAssembly()
- randprovfile = randprov.province
- return randprovfile
- for x in xrange(0,10):
- print kallistoProvince()
- print '########'
- os.system('pause')
Advertisement
Add Comment
Please, Sign In to add comment