Skip to content

Instantly share code, notes, and snippets.

@cbarraford
Created April 20, 2020 01:23
Show Gist options
  • Save cbarraford/05da10db414f8ee05c2d9adcb2c74b66 to your computer and use it in GitHub Desktop.
Save cbarraford/05da10db414f8ee05c2d9adcb2c74b66 to your computer and use it in GitHub Desktop.
#!/usr/bin/env python
# add rune per block
add_rune = 100000000
blocks_per_year = 6311390
blocks_per_day = 17280
total_nodes = 100
for emission_curve in range(1, 11):
reserve = 22000000000000000
count = 0
last_total_rewards = 0
node_rewards = 0
while True:
reserve += add_rune
total_rewards = reserve / emission_curve / blocks_per_year
if total_rewards / total_nodes == 0: # not enough rewards to pay evenly amongst our nodes
break
reserve -= total_rewards
if last_total_rewards == total_rewards:
node_rewards = total_rewards / total_nodes
break
last_total_rewards = total_rewards
if count % 10000000 == 0:
pass # print("Remaining Reserve:", reserve)
count += 1
print "Emission Curve:", emission_curve
print "Blocks:", count
print "Years:", float(count) / blocks_per_year
print "Node Rewards:", node_rewards / 100000000
print "Total Reserve:", reserve / 100000000
print
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment