ep4_charts v1 (probably) #91
							
								
								
									
										36
									
								
								tools/print_drop_rates.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								tools/print_drop_rates.py
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,36 @@ | ||||
| #!/usr/bin/env python3 | ||||
| 
 | ||||
| import toml, os | ||||
| 
 | ||||
| # TODO | ||||
| # print summary of all drops (all eps/diffs/ids) | ||||
| # figure out a format for summary | ||||
| # print specific monster info (ie: all falz drops for all ids, or only a specific id, or only an episode) | ||||
| # search for specific item drop rate across all eps/diffs/ids | ||||
| # search for specific item in a specific criteria (ie: only look for vjaya drops in ep1, or only for specific section id, or specific episode | ||||
| 
 | ||||
| episodes = ['ep1', 'ep2', 'ep4'] | ||||
| difficulties = ['normal', 'hard', 'veryhard', 'ultimate'] | ||||
| sectionids = ['viridia', 'greenill', 'skyly', 'bluefull', 'purplenum', 'pinkal', 'redria', 'oran', 'yellowboze', 'whitill'] | ||||
| base_dir = '../data/drops/' # assumes script is running from /path/to/elseware/tools | ||||
| 
 | ||||
| def print_all_drops(): | ||||
|     for episode in episodes: | ||||
|         for difficulty in difficulties: | ||||
|             for sectionid in sectionids: | ||||
|                 rare_rates = toml.load('{}/{}/{}/{}/rare_rate.toml'.format(base_dir, episode, difficulty, sectionid)) | ||||
|                 dar_rates = toml.load('{}/{}/{}/{}/monster_dar.toml'.format(base_dir, episode, difficulty, sectionid)) | ||||
|                 for key in rare_rates.keys(): | ||||
|                     monster = key | ||||
|                     item = rare_rates[key][0]['item'] | ||||
|                     droprate = rare_rates[key][0]['rate'] * (dar_rates[key]['dar']/100) | ||||
|                     print('{},{},{},{},{},{:.4f}'.format(episode, difficulty, sectionid, monster, item, droprate * 100)) | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| def main(): | ||||
|     print_all_drops() | ||||
| 
 | ||||
| 
 | ||||
| if __name__ == '__main__': | ||||
|     main() | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user