Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # import random so we can generate a random number
- import random
- chance_of_leggy = []
- total_voter_keys_used = []
- total_common_keys_used = []
- total_rare_keys_used = []
- total_epic_keys_used = []
- total_leggy_keys_received = []
- all_keys = []
- trials = 1000
- trial_hold = trials
- while trials > 0:
- trials -= 1
- # Set the default amounts of each type of key we have available to us
- vote_keys_available = 1000000
- start_keys = vote_keys_available
- common_keys_available = 0
- rare_keys_available = 0
- epic_keys_available = 0
- leggy_keys_available = 0
- vote_keys_used = 0
- common_keys_used = 0
- rare_keys_used = 0
- epic_keys_used = 0
- def rand():
- return random.uniform(0, 100)
- # % for voters
- voter_voter_x2 = 5.67
- voter_common = voter_voter_x2 + 4.05
- voter_rare = voter_common + 3.24
- # % for common
- common_common_x2 = 5.48
- common_rare = common_common_x2 + 3.13
- # % for rare
- rare_rare_x2 = 5.6
- rare_epic = rare_rare_x2 + 0.56
- # % for epic
- epic_epic_x2 = 9.61
- epic_leggy = epic_epic_x2 + 2.4
- # General
- voter_gotten = 0
- common_gotten = 0
- rare_gotten = 0
- epic_gotten = 0
- # Spin voter keys
- while vote_keys_available > 0:
- vote_keys_available -= 1
- spin = rand()
- if spin <= voter_voter_x2:
- voter_gotten += 2
- vote_keys_available += 2
- elif spin <= voter_common:
- common_gotten += 1
- common_keys_available += 1
- elif spin <= voter_rare:
- rare_gotten += 1
- rare_keys_available += 1
- vote_keys_used += 1
- # Spin common keys
- while common_keys_available > 0:
- common_keys_available -= 1
- spin = rand()
- if spin <= common_common_x2:
- common_gotten += 2
- common_keys_available += 2
- elif spin <= common_rare:
- rare_gotten += 1
- rare_keys_available += 1
- common_keys_used += 1
- # Spin rare keys
- while rare_keys_available > 0:
- rare_keys_available -= 1
- spin = rand()
- if spin <= rare_rare_x2:
- rare_gotten += 2
- rare_keys_available += 2
- elif spin <= rare_epic:
- epic_gotten += 1
- epic_keys_available += 1
- rare_keys_used += 1
- # Spin epic keys
- while epic_keys_available > 0:
- epic_keys_available -= 1
- spin = rand()
- if spin <= epic_epic_x2:
- epic_gotten += 2
- epic_keys_available += 2
- elif spin <= epic_leggy:
- leggy_keys_available += 1
- epic_keys_used += 1
- # Calculations
- all_keys.append(vote_keys_used + common_keys_used + rare_keys_used + epic_keys_used)
- sim_chance_of_leggy = leggy_keys_available/total_keys_used
- chance_of_leggy.append(sim_chance_of_leggy)
- total_voter_keys_used.append(vote_keys_used)
- total_common_keys_used.append(common_keys_used)
- total_rare_keys_used.append(rare_keys_used)
- total_epic_keys_used.append(epic_keys_used)
- total_leggy_keys_received.append(leggy_keys_available)
- def avg(list):
- return sum(list)/len(list)
- final_avg = avg(chance_of_leggy)
- final_voters = avg(total_voter_keys_used)
- final_commons = avg(total_common_keys_used)
- final_rares = avg(total_rare_keys_used)
- final_epics = avg(total_epic_keys_used)
- final_leggy = avg(total_leggy_keys_received)
- final_keys = avg(all_keys)
- print('Simulation run {} times\nAverage keys opened (starting with {:,.2f}): {:,.2f}\nAverage amount of VOTER keys opened: {:,.2f}\nAverage amount of COMMON keys opened: {:,.2f}\nAverage amount of RARE keys opened: {:,.2f}\nAverage amount of EPIC keys opened: {:,.2f}\nAverage amount of LEGENDARY keys received: {}\n% Chance of receiving a legendary key from a voter key: {}'.format(
- trial_hold, start_keys, final_keys, final_voters, final_commons, final_rares, final_epics, final_leggy, final_avg))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement