├── accounts ├── hulu.txt ├── nitro.txt ├── disney.txt ├── netflix.txt ├── nordvpn.txt ├── spotify.txt ├── creditcard.txt ├── expressvpn.txt └── minecraft.txt ├── .gitignore ├── config.json ├── README.md └── LinkGen.py /accounts/hulu.txt: -------------------------------------------------------------------------------- 1 | Paste hulu accounts here -------------------------------------------------------------------------------- /accounts/nitro.txt: -------------------------------------------------------------------------------- 1 | Paste nitro accounts here -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | config.json 2 | /logs 3 | /accounts -------------------------------------------------------------------------------- /accounts/disney.txt: -------------------------------------------------------------------------------- 1 | Paste disney accounts here -------------------------------------------------------------------------------- /accounts/netflix.txt: -------------------------------------------------------------------------------- 1 | Paste netflix accounts here -------------------------------------------------------------------------------- /accounts/nordvpn.txt: -------------------------------------------------------------------------------- 1 | Paste nordvpn accounts here -------------------------------------------------------------------------------- /accounts/spotify.txt: -------------------------------------------------------------------------------- 1 | Paste spotify accounts here -------------------------------------------------------------------------------- /accounts/creditcard.txt: -------------------------------------------------------------------------------- 1 | Paste creditcard accounts here -------------------------------------------------------------------------------- /accounts/expressvpn.txt: -------------------------------------------------------------------------------- 1 | Paste expressvpn accounts here -------------------------------------------------------------------------------- /accounts/minecraft.txt: -------------------------------------------------------------------------------- 1 | Paste minecraft accounts here -------------------------------------------------------------------------------- /config.json: -------------------------------------------------------------------------------- 1 | { 2 | "guild_id": "", 3 | "gen_role": "", 4 | "gen_channel": "", 5 | "log_channel": "", 6 | "token": "" 7 | } -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # LinkGen Account Generator 2 | 3 | Version 2 is coming soon. This is an open source account generator bot. 4 | 5 | ## Features 6 | - `/generate` command 7 | - `/help` command 8 | - Automatic `/stock` command 9 | - Log channel 10 | - Generator channel 11 | - Generator role 12 | 13 | ## Installation 14 | 1. Delete `discord.py` if it is installed. 15 | 2. LinkGen will install `Pycord` automatically. 16 | 3. Accounts folder and files will be created automatically. 17 | 4. Put your configuration in `config.json`. 18 | 5. Start the bot with `python LinkGen.py`. 19 | 20 | Make sure to invite the bot with `applications.commands` enabled in the URL generator from the developer portal. Otherwise, the slash commands will not work. 21 | 22 | ## How it works 23 | 1. Put your Discord bot token in `config.json`. 24 | 2. Create a `Free Gen` role and a `Premium Gen` role. 25 | 3. Create a generator channel. 26 | 4. Make sure you have Python 3.9 installed. 27 | 5. Add accounts to the `/accounts` folder. 28 | 29 | If you have any problems or suggestions, please join my support server and create a ticket: https://discord.gg/gfmmBQB4tR. 30 | -------------------------------------------------------------------------------- /LinkGen.py: -------------------------------------------------------------------------------- 1 | # Imports 2 | 3 | try: 4 | import json, os, platform, time, discord 5 | except Exception: 6 | if platform.system() == "Windows": os.system("cls") 7 | else: os.system("clear") 8 | print("LinkGen uses Pycord, Try to remove discord.py when installed") 9 | time.sleep(3) 10 | if platform.system() == "Windows": os.system("cls") 11 | else: os.system("clear") 12 | print("Pycord not found - Installing...\n") 13 | os.system("pip install py-cord==2.0.0b4") 14 | os._exit(0) 15 | 16 | client = discord.Bot() 17 | 18 | # Check if correctly setup 19 | 20 | if os.path.exists("accounts"): pass 21 | else: os.mkdir("accounts") 22 | if platform.system() == "Windows": os.system("cls") 23 | else: os.system("clear") 24 | try: json.loads(open("config.json", "r").read()) 25 | except Exception: print("[ERROR] Config File missing") 26 | try:json.loads(open("config.json", "r").read())["token"] 27 | except Exception: print("[ERROR] Discord Token not set") 28 | try:json.loads(open("config.json", "r").read())["guild_id"] 29 | except Exception: print("[ERROR] Guild ID not set") 30 | try:json.loads(open("config.json", "r").read())["log_channel"] 31 | except Exception: print("[ERROR] Log Channel not set") 32 | 33 | # When bot is logged in 34 | 35 | @client.event 36 | async def on_ready(): 37 | print(f"Logged in as: {client.user.name}") 38 | print(f"Using guild: {client.guilds[0].name}") 39 | print("LinkGen Ready", "\n") 40 | await client.change_presence(activity=discord.Game(name="LinkGen V2.0")) 41 | try: client.guilds[0].get_role(int(json.loads(open("config.json", "r").read())["gen_role"])) 42 | except Exception: print("[ERROR] Gen Role not set") 43 | try: client.guilds[0].get_channel(int(json.loads(open("config.json", "r").read())["gen_channel"])) 44 | except Exception: print("[ERROR] Gen Channel not set") 45 | services = ["nordvpn", "hulu", "expressvpn", "nitro", "creditcard", "spotify", "netflix", "disney", "minecraft"] 46 | for service in services: 47 | if os.path.exists(f"accounts/{service}.txt"): pass 48 | else: 49 | open(f"accounts/{service}.txt", "a").write(f"Paste {service} accounts here") 50 | print(f"[WARNING] No Accounts found for {service} - Creating file...") 51 | 52 | # Generate Command 53 | 54 | @client.slash_command(name="generate", guild_ids=[json.loads(open("config.json", "r").read())["guild_id"]]) 55 | async def generate(ctx, service_name): 56 | if str(ctx.channel.id) != json.loads(open("config.json", "r").read())["gen_channel"]: 57 | await ctx.respond(f"You can only gen in: <#{json.loads(open('config.json', 'r').read())['gen_channel']}>", ephemeral=True) 58 | else: 59 | services = ["NordVPN", "Hulu", "ExpressVPN", "Nitro", "CreditCard", "Spotify", "Netflix", "Disney", "Minecraft"] 60 | for service in services: 61 | if service_name.lower() == service.lower(): 62 | if str(json.loads(open("config.json", "r").read())["gen_role"]) in str(ctx.author.roles): 63 | if os.path.exists(f"accounts/{service.lower()}.txt"): 64 | with open(f"accounts/{service.lower()}.txt", "r+") as accounts: 65 | data = accounts.readlines() 66 | accounts.seek(0) 67 | accounts.truncate() 68 | accounts.writelines(data[1:]) 69 | try: 70 | embed = discord.Embed(title=f"{service} Account Generated", description="LinkGen Account Generator", color=0x46a9f0) 71 | embed.add_field(name="Login Credentials", value=f"```{data[0]}```", inline=True) 72 | embed.set_thumbnail(url="https://cdn.discordapp.com/attachments/773133136929226763/797204521997828106/777514274829893683.gif") 73 | user = await client.fetch_user(int(ctx.author.id)) 74 | await user.send(embed=embed) 75 | log = client.guilds[0].get_channel(int(json.loads(open("config.json", "r").read())["log_channel"])) 76 | embed = discord.Embed(title=f"{ctx.author.name} has genned 1 {service}", description=f"**Account**\n```{data[0]}```", color=0x46a9f0) 77 | await log.send(embed=embed) 78 | await ctx.respond("Account Generated, check your DM") 79 | except Exception: 80 | await ctx.respond(f"We are currently out of {service}!", ephemeral=True) 81 | else: 82 | await ctx.respond(f"We are currently out of {service}!", ephemeral=True) 83 | else: 84 | await ctx.respond(f"You cannot gen {service}!", ephemeral=True) 85 | 86 | # Help Command 87 | 88 | @client.slash_command(name="help", guild_ids=[json.loads(open("config.json", "r").read())["guild_id"]]) 89 | async def help(ctx): 90 | embed = discord.Embed(title="LinkGen help command", description="Usage: /generate , /stock", color=0x46a9f0) 91 | embed.add_field(name="All Services", value="``nordvpn``, ``hulu``, ``expressvpn``, ``nitro``, ``creditcard``, ``spotify``, ``netflix``, ``disney``, ``minecraft``") 92 | embed.set_footer(text="Made by Snikker#1337") 93 | await ctx.respond(embed=embed) 94 | 95 | # Stock Command 96 | 97 | @client.slash_command(name="stock", guild_ids=[json.loads(open("config.json", "r").read())["guild_id"]]) 98 | async def stock(ctx): 99 | services = ["NordVPN", "Hulu", "ExpressVPN", "Nitro", "CreditCard", "Spotify", "Netflix", "Disney", "Minecraft"] 100 | stocklist = [] 101 | for service in services: 102 | if os.path.exists(f"accounts/{service.lower()}.txt"): 103 | stocklist.append(f"{service} stock: {len(open(f'accounts/{service}.txt', 'r').readlines())} accounts") 104 | embed = discord.Embed(title="LinkGen Stock", description="Display's stock of all services", color=0x46a9f0) 105 | embed.add_field(name="Stock", value="\n".join(stocklist)) 106 | embed.set_footer(text="Made by Snikker#1337") 107 | await ctx.respond(embed=embed) 108 | 109 | client.run(json.loads(open("config.json", "r").read())["token"]) 110 | 111 | --------------------------------------------------------------------------------