#!/usr/bin/env python3
# Simple "How many days assuming I do dailies and use all my resin (180 per day) I need until AR X"
# fill out these variables
MY_AR_EXP = 290120 #your current AR LEVEL
MY_AR = 58 #YOUR CURRENT ADVENTURE RANK
WANTED_AR = 60 #THE AR YOU WANT TO GET TO
# ignore everything after this just hit "Run"
ADVENTURE_RANK_EXP_TABLE = {
40: 145375,
41: 155925,
42: 167450,
43: 179925,
44: 193375,
45: 207775,
46: 223125,
47: 239450,
48: 256725,
49: 274975,
50: 294175,
51: 320575,
52: 349375,
53: 380575,
54: 414175,
55: 450175,
56: 682525,
57: 941500,
58:1227250,
59:1540075,
60:1880200
}
RESIN_USAGE_PER_DAY = 180
EXP_PER_20_RESIN = 100
RESIN_USAGE_PER_DAY_T = 180 + (60 / 7)
RESIN_USAGE_PER_DAY_T_BP = 180 + (60 / 7) + ((5 * 40) / 42)
RESIN_USAGE_PER_DAY_T_BP_EXTD = 180 + (60 / 7) + (((5 + 5) * 40) / 42)
RESIN_EXP_PER_DAY = RESIN_USAGE_PER_DAY / 20 * EXP_PER_20_RESIN
DAILY_COMMISION_EXP = 500 + (4 * 250)
RESIN_EXP_PER_DAY_T = RESIN_USAGE_PER_DAY_T / 20 * EXP_PER_20_RESIN
RESIN_EXP_PER_DAY_T_BP = RESIN_USAGE_PER_DAY_T_BP / 20 * EXP_PER_20_RESIN
RESIN_EXP_PER_DAY_T_BP_EXTD = RESIN_USAGE_PER_DAY_T_BP_EXTD / 20 * EXP_PER_20_RESIN
EXP_GAIN_PER_DAY = DAILY_COMMISION_EXP + RESIN_EXP_PER_DAY
EXP_GAIN_PER_DAY_T = DAILY_COMMISION_EXP + RESIN_EXP_PER_DAY_T
EXP_GAIN_PER_DAY_T_BP = DAILY_COMMISION_EXP + RESIN_EXP_PER_DAY_T_BP
EXP_GAIN_PER_DAY_T_BP_EXTD = DAILY_COMMISION_EXP + RESIN_EXP_PER_DAY_T_BP_EXTD
TOTAL_EXP_REQUIRED = ADVENTURE_RANK_EXP_TABLE[WANTED_AR] - ADVENTURE_RANK_EXP_TABLE[MY_AR] - MY_AR_EXP
print("Total Exp required:", TOTAL_EXP_REQUIRED)
print("Est. days until goal AR", TOTAL_EXP_REQUIRED / EXP_GAIN_PER_DAY)
print("\n")
print("Transient Resin")
print("Est. days until goal AR", TOTAL_EXP_REQUIRED / EXP_GAIN_PER_DAY_T)
print("\n")
print("Transient Resin and Battle Pass")
print("Est. days until goal AR", TOTAL_EXP_REQUIRED / EXP_GAIN_PER_DAY_T_BP)
print("\n")
print("Transient Resin and Extended Battle Pass")
print("Est. days until goal AR", TOTAL_EXP_REQUIRED / EXP_GAIN_PER_DAY_T_BP_EXTD)
print("\n")