Setup and Use
Requirements
Section titled “Requirements”You will need the following dependencies:
- Python >= 3.13 (Download) And one of the following Browsers:
- Google Chrome (Download)
- Chromium (Download)
Installation
Section titled “Installation”1. Download the Repository
Section titled “1. Download the Repository”You can either download the ZIP file directly or clone it via Git.
Download ZIP (Recommended for most users)
https://codeberg.org/Discord-OTP-Forcer/Discord-OTP-Forcer/archive/refs/heads/main.zip
Clone via Git
If you prefer using the command line, you can clone the repository instead:
git clone https://codeberg.org/Discord-OTP-Forcer/Discord-OTP-Forcer.gitcd Discord-OTP-Forcer2. System Setup
Section titled “2. System Setup”Choose your operating system below to continue the setup process:
Windows
Section titled “Windows”- Go to the folder where you extracted the repository.
- Double-click and run
scripts/Windows/setup.cmd. - The requisite dependencies will install automatically. Once finished, the
config/account.ymlandconfig/program.ymlfiles will open in Notepad. - fill out the necessary details (see the Configuration section below) then save the files and close Notepad.
- If you are ready to start a forcer session now, type
Yat the prompt. A new window will open starting a forcer session.
macOS or Linux
Section titled “macOS or Linux”- Open your terminal and navigate to the repository folder.
- Create and activate a Python virtual environment:
Via Pip
python -m venv .venvsource .venv/bin/activate- Install the requisite dependencies:
pip install .Via UV
uv venv --python 3.14source .venv/bin/activate- Install the requisite dependencies:
uv sync- Open the
config/account.ymlfile in your preferred text editor and fill out the necessary credentials. - Open the
config/program.ymlfile and fill out the necessary program configuration options.
Configuration
Section titled “Configuration”program.yml
Section titled “program.yml”The program has two modes: Reset and Login. Set programMode to one of these.
programMode: Reset: Will set the program to password reset mode. It will log in to your account using the password reset tokenresetToken, enter your desirednewPassword, and then start codes. (the reset token usually expires after 6 hours, keep that in mind)programMode: Login: Will set the program to login mode. This is a normal email+password login which will then (usually) ask you for a hCaptcha, then start Forcing codes.
Advanced Configuration
Section titled “Advanced Configuration”| Option | Description | Default |
|---|---|---|
sensitiveDebug | If True, hides sensitive info (passwords, tokens) from logs using a CensoredStr class. | True |
logCreation | If True, saves logs to a file in the log/ directory. | False |
headless | Runs the browser without a GUI. Not recommended as you cannot solve captchas. | False |
logLevel | Minimum level of logs to show (DEBUG, INFO, SUCCESS, WARNING, ERROR, SENSITIVE). | INFO |
elementLoadTolerance | Seconds to wait for UI elements to appear before timing out. | 3 |
usualAttemptDelayMin | Minimum seconds to wait between normal attempts. | 6 |
usualAttemptDelayMax | Maximum seconds to wait between normal attempts. | 8 |
ratelimitedAttemptDelayMin | Minimum seconds to wait when rate limited. | 7 |
ratelimitedAttemptDelayMax | Maximum seconds to wait when rate limited. | 11 |
Code Modes
Section titled “Code Modes”codeMode: Normal: Generates a 6-digit numeric ‘normal’ code.codeMode: Backup: Generates an 8-digit alphanumeric ‘backup’ code.codeMode: "aqzi[a-z0-9]{2}(p|q)[3-5]": Special regex mode. Generates a backup code conforming to your given regex template. (e.g. If you only remember parts of it).
account.yml
Section titled “account.yml”Fill in your account’s email and password in the email and password fields (in quotes).
If using Reset mode, you’ll also need to fill out newPassword and resetToken (password is not needed).
How to Get Your Reset Token
Section titled “How to Get Your Reset Token”- Go to discord.com/login and enter the email for the account, then click “Forgot your password?”.
- Find the password reset email and click “Reset Password”.
- Your token will be in the URL for the password reset page.
Example:
https://discord.com/reset#token=YOUR_TOKEN_HERE
Note: You only need the part aftertoken=. The program will not work if you put the entire URL.
Running the Program
Section titled “Running the Program”Windows
Section titled “Windows”Via .cmd Script
- Go to scripts/Windows/ folder
- Doble click on
start.cmd
Via CMD + Python
- Open CMD
- Go to the path where you decompress the program
- Execute:
python main.pyMacOS or Linux
Section titled “MacOS or Linux”- Open your terminal
- Go to the path where you decompress / clone the program
- Execute:
Via Python
python main.pyVia UV
uv run main.pyWhat will happen on both Operative Systems
Section titled “What will happen on both Operative Systems”- An automated Google Chrome window will open. When the hCaptcha appears, complete it as normal.
- Wait for either a successful login or a closed browser window (failure).
- Success: The program will print your account token to the console and save it to
secret/token.txt. - Important: The automated browser window will stay open after the program finishes. You will need to press Enter in the terminal to close it. This allows you to manually verify the login or perform further actions.
- WARNING: Do not run this where someone else could access the log. Save this token safely!
- CRITICAL: Do NOT log out, log in from a different device, or change account settings. Doing so invalidates your currently obtained token.
- Using the token, log into your account via browser console:
- Go to
discord.com/login, open the developer tools console. - Paste a token login script (like this one).
- Wait for it to log in.
- Go to
- Go to User Settings > My Account > Authenticator App > View Backup Codes.
- Save your backup codes! Then click “Remove Authenticator App” and enter one of your new backup codes.
Updating Dependencies
Section titled “Updating Dependencies”To update all installed dependencies, you can run the update script:
Windows
Section titled “Windows”Run scripts/Windows/update_dependencies.cmd to update all Python packages that this program uses.
macOS or Linux
Section titled “macOS or Linux”Via Python
python install .Via UV
uv syncUninstalling Dependencies
Section titled “Uninstalling Dependencies”To remove all installed dependencies, you can run the uninstall script:
Windows
Section titled “Windows”Run scripts/Windows/uninstall_dependencies.cmd to uninstall all Python packages that this program uses.
macOS or Linux
Section titled “macOS or Linux”rm -r .venv