System Requirements & Prerequisites
Ensure your computer is configured with these settings before extracting files to avoid startup crashes.
Windows OS Version
Windows 10 (Pro version recommended) is required to run the bot and manager software cleanly.
Disable Windows Update & Firewall
Ensure that both Windows Update and Windows Firewall are disabled to prevent software blocks or automatic updates from resetting configurations.
System Language (Recommended)
Setting your PC display language to English is highly recommended for optimal OCR template matching. (Other display languages still work, but English is preferred).
VGA Driver & Runtime Files
Update to the latest VGA drivers via Nvidia GeForce Experience. If your RemotePlay client does not open or shows errors, install the Visual C++ Redistributable packages below, then restart your PC.
Step 1: Download & Install Bot Files
Download and extract the files strictly into the correct path on your C: drive.
Download Bot Full Package
Download the bot package files from the mirror below. The ZIP contains all required configuration, updater, and manager tools.
Extract to Root C:\
Extract the files directly into the root folder of your C:\ drive. Do not nest it under other folders.
Verify Execution Path
Ensure that the Manager executable is located exactly at:
C:\Bot Manager RP v2\ManagerBot.exe. If this path is wrong, configuration bindings will fail to load.
Run AutoUpdate.exe
Run AutoUpdate.exe inside the bot folder to update the bot to the latest files.
Step 2: Get HWID & Register License Key
Your bot requires a license file locked to your PC Hardware ID (HWID) to operate.
Download HWID Grabber Tool
Download the official HWID tool to generate your hardware key.
Run & Get HWID
Open GetHWIDkeyFBH_Protected.exe, fill in your information, and click "Get HWID". Wait until the message shows "Completed".
Retrieve and Place Key File
Send a message to developer @NewBieT on Telegram to obtain your key file. Once received, copy the key file into: C:\Bot Manager RP v2\.
Step 3: Account Database & LoginData.txt
Configure your account credentials in the tab-delimited LoginData.txt database file.
LoginData.txt Column Specifications
Open C:\Bot Manager RP v2\LoginData.txt and populate it. Separate each column using a single TAB (\t) character. Columns 8-15 are optional.
| Col | Field | Req | Description |
|---|---|---|---|
| 0 | PSNo |
Yes | PS machine index (e.g. 1, 2, 12) |
| 1 | AccNo |
Yes | Slot index. Normal: 1-10. Plus: 98. Digital: 99. (See AccNo rules below) |
| 2 | PSNEmail |
Yes | PS Network account email |
| 3 | PSNPass |
Yes | PS Network account password |
| 4 | PSNGAuth |
Opt | PSN Google Authenticator secret (for automated 2FA) |
| 5 | EAEmail |
Opt | EA account email |
| 6 | EAPass |
Opt | EA account password |
| 7 | EAGAuth |
Opt | EA Google Authenticator secret |
| 8 | PsnID |
Opt | PSN Username (e.g. PlayerOne) |
| 9 | RefreshToken |
Opt | PSN OAuth token |
| 10 | MacID |
Opt | Console MAC address (hex, no colons, e.g. bc60a7f25d55) |
| 11 | RegistKey |
Opt | Remote Play registration key (ASCII string, e.g. 80fd6184abcd1234) |
| 12 | RpKey |
Opt | Remote Play key (Base64, 16 bytes, e.g. abc123RPkey==) |
| 13 | IsPS5 |
Opt | Console type: 1 = PS5, 0 or empty = PS4 |
| 14 | PS IP |
Opt | PS LAN IP address (for direct LAN connection, optional) |
| 15 | PS5 Game version |
Opt | Game executable: 1 = PS5 version game, 0 or empty = PS4 version |
AccNo Slot Index Rules
The account slot number dictates the role of the profile on the PlayStation console:
- 1: Primary main account. (Must be paired and have
LoginedPSchecked. Automatically logged in first). - 2 – 10: Sub accounts on the same console.
- 98: PlayStation Plus sharing account. Uses Plus mode.
- 99: Digital sharing account. Used for digital primary unlock.
- ⚠️ Slot values 11 – 89 are strictly not allowed and will throw errors on database load.
Sbnumber Naming Format
The system automatically calculates the Sbnumber from PSNo and AccNo using the format: sb{PSNo:D2}{AccNo:D2} (padding to 2 digits):
| PSNo | AccNo | Sbnumber | Meaning |
|---|---|---|---|
1 |
1 |
sb0101 |
Main profile of PS console 1 |
1 |
2 |
sb0102 |
Sub-account 2 of PS console 1 |
1 |
98 |
sb0198 |
Plus account of PS console 1 |
1 |
99 |
sb0199 |
Digital primary account of PS console 1 |
12 |
1 |
sb1201 |
Main profile of PS console 12 |
Example Line Formats
Minimal Format (8 columns separated by tabs):
1 1 [email protected] password123 GAUTHSECRET123 [email protected] eapass456 EAGAUTHSECRET
With PsnID + RefreshToken (10 columns):
1 1 [email protected] password123 GAUTHSECRET123 [email protected] eapass456 EAGAUTHSECRET PlayerOne eyJhbGci...
Full with CustomRP configurations (14 columns):
1 99 [email protected] pass999 [email protected] eapass DigiGamer bc60a7123456 80fd6184abcd1234 abc123RPkey== 0
Load Account Database
Go to the Acc Manage tab, click Load LoginData. For any accounts already logged in on PS, check Logged In to skip them, and click Save to bind configurations.
Old Tutorial Reference
There is also an old tutorial link for more info: docs.google.com/spreadsheets
Step 4: Pairing Bots to PS
Bind your automated bot profiles to the PS4/PS5 Remote Play client using one of three methods.
Method 1: Auto GetToken and Pair (Recommended)
In ManagerBot, select the account row and click AutoGetToken. The manager will launch a browser, fill in credentials, and bypass 2FA. Do not move your mouse during this sequence. Once the RefreshToken is successfully generated, click PairToken to complete linking.
Method 2: Pair URL (Manual Login fallback)
If Auto Pairing fails or if you are configuring from a remote PC:
- Click GenURL. A secure login URL is automatically generated and copied to your clipboard.
- Open any web browser, paste the URL, and log into your PSN account manually.
- Once logged in, the browser page will go blank or redirect. Copy the entire redirect link URL from the address bar.
- Back in ManagerBot, click GetToken and paste the redirect link. Once the token loads, click PairToken.
Method 3: PairAccID (Pairing via PIN & AccountID)
Ideal for manual pairings and working around automated browser block screens:
- First, fill in the **NPSSO Token** (see the retrieval guide below).
- In the PS console, go to Remote Play Connection Settings -> Add Device to display an 8-digit PIN on screen.
- In ManagerBot, click PairAccID. The bot will automatically query your Account ID from your PSN ID using the NPSSO token, input the PIN code, and complete linking.
How to retrieve NPSSO Token:
- Open a new browser tab, visit playstation.com, click Sign In in the top right, and log into your account.
- Open another new tab in the exact same browser window.
- Visit the Sony SSO API page by pasting this exact URL:
https://ca.account.sony.com/api/v1/ssocookie - You will see a text block on screen. Copy the 64-character value of the
npssofield:{"npsso": "64_character_combination_of_letters_and_numbers"}
Step 5: PS4 Console & Host PC Settings
Adjust settings on your consoles and review the recommended hardware requirements for your host PC.
PS4 Console Calibration
To ensure pixel detection and OCR engines read the screen layout correctly, configure these parameters on your consoles:
- System language must be set to English.
- If using an Asian PS4 console, change the button settings so that X is mapped to OK (confirm).
- Ensure Enable Remote Play is checked under connection settings.
- Set the Display Area to Minimum in the screen area settings.
- Your PSN account name and display character set must use standard English letters.
Recommended Host PC Specs
For running large scale operations (supporting up to 32 concurrent PS instances), we recommend:
| Component | Recommended Spec |
|---|---|
| Processor | AMD Ryzen 5 2600 (or equivalent) |
| Memory | 16 GB DDR4 RAM |
| Graphics Card | Nvidia GTX 1050 or GTX 1030 |
| Storage | 256 GB SSD |
Step 6: Dashboard Settings & Checkbox FAQ
An overview of what fbhbot's primary control checkboxes do in the Bot Config tab.
| Checkbox | Function Description |
|---|---|
AccLogin |
Automates logging profiles into the PS4. Skips accounts with "Logged In" checked. |
Schedular |
Runs each profile slot automatically based on the hours set in the Calendar tab. |
PlayUnlock |
Plays a configured number of daily Squad Battles matches to unlock the Web App Transfer Market. |
APImode |
Enables the coin-transfer API search and buy loop. Matches cards and prices dynamically. |
OnlineMatch |
Plays Division Rivals matches. Matches against other bot accounts on our system in the same region. |
PlayChampions |
Plays Champions (Weekend League) matches. Must be checked in combination with OnlineMatch. |
MixOLSB |
Runs 3 Squad Battle matches daily before automatically switching to online Rivals matches. |
OpenPack |
Opens daily preview packs, claims rewards, and lists valuable players onto the market. |
ObjectUnlock2/4 |
Completes core gameplay objectives (New Begin, Venturing Out, Diving In) to unlock the console market. |
Step 7: CustomRP Scheduler (Schedular2) User Guide
Automate starting and stopping bots on a time-based schedule per PS instance.
Overview & Activation Checkboxes
The CustomRP Scheduler automatically starts and stops bots on a per-PS time-based schedule, eliminating the need to launch bots manually. Each PS runs its own independent scheduling loop. Activate the following checkboxes in your Manager dashboard to enable it:
- ✅ Use CustomRP checkbox (
isUseCustomRP) - ✅ Schedular CustomRP checkbox (
Schedular2) - ✅ IsUse (select) checkbox for the target PS
- ✅ IsLoop checkbox for the target PS
Schedule Column & Slot Formats (BotSchedularPlayTime)
Configure the schedule string in your configuration settings. Columns are separated by Tab (\\t) characters. The structure consists of 8 columns: 1 slot name column + 7 day columns (Sunday through Saturday):
sbname\t[Sun]\t[Mon]\t[Tue]\t[Wed]\t[Thu]\t[Fri]\t[Sat]
Time Slot Format: mode_HH:MM-HH:MM
mode: ScriptMode number (see reference table below).HH:MM-HH:MM: Start time – Stop time. (Start and stop times should not use 24:00 or 00:00).- Multiple slots in one day: separated by a vertical bar pipe
|.
Example Config:
| sbname | Sun | Mon | Tue / Wed / Thu / Fri / Sat |
|---|---|---|---|
sb0101 |
1_09:00-10:00 |
1_09:00-10:00 |
1_09:00-10:00 |
sb0199 |
31_00:01-00:02|32_10:00-10:01 |
31_00:01-00:02|32_10:00-10:01 |
31_00:01-00:02|32_10:00-10:01 |
💡 sb0101: Every day from 09:00–10:00, run ScriptMode 1 (PlayUnlock, 3 matches).
💡 sb0199: Every day at 00:01–00:02 run mode 31 (Activate digital account); at 10:00–10:01 run mode 32 (Deactivate digital account). Both run exactly once per day.
ScriptMode Reference Table
Modes dictate what workflow the bot executes during the scheduled time window. Prefix the mode number to your time slot (e.g. 22_12:00-15:00).
| Group | Mode | Description |
|---|---|---|
| Play Unlock | 1 | PlayUnlock SB — 3 matches |
| 11 | PlayUnlock SB — 3 matches + sell cards via API | |
| 12 | PlayUnlock SB — 3 matches + sell cards via API + open packs | |
| Online Match | 2 | Online Match — Rivals only |
| 22 | Online Match — Rivals + Champions | |
| 23 | Online Match — Rivals + Champions + sell cards via API | |
| 24 | Online Match — Rivals + Champions + sell cards via API + open packs | |
| Sell Only | 28 | Sell Mode — sell cards via API |
| 29 | Sell Mode — sell cards via API + open packs | |
| Special Group | 31 | Activate account (Digital/plus) |
| 32 | Deactivate account | |
| 33 | PS enter rest mode |
31_00:01-00:02).
Special Modes Persistence File
To track if a special script (modes 30-39) has run for the day, the scheduler logs executions in:
C:\\Bot Manager RP v2\\SpecialScriptLastRun.txt
File Layout (Tab separated):
sb0199_31\t2026-04-02\nsb0199_32\t2026-04-02
How to Force Re-run a Special Mode:
- Open
SpecialScriptLastRun.txtin Notepad. - Delete the line corresponding to the mode you want to re-run (e.g., delete the
sb0199_31line). - Save the file. The scheduler will automatically catch up and run the job on the next poll.
- Or, delete the entire file to force reset special modes for all accounts.
Scheduling Priority Flow & Loop Behavior
Every 1 second, the scheduler evaluates active and pending jobs in the following order:
1️⃣ Missed Special (Guaranteed-once mode missed or pending. Runs only when NO bot is currently active on this PS)
↓
2️⃣ Active Slot (Regular playtime window is open. Wait if a bot is already active)
↓
3️⃣ Idle (No active playtimes. Status shows "NoAcc in this playtime")
Loop State Reference:
| State / Event | Action Taken | Cooldown |
|---|---|---|
IsUse = false |
Stop the scheduler loop permanently (exits task). | — |
IsLoop = false |
Pause scheduler loop, status updates to "Pause Loop". | 3 sec |
| Bot process exited | Clean up residual processes, enter cooldown buffer. | 10 sec |
| Bot currently active | Wait for natural stopTime exit (pass stopTime argument). | 5 sec |
| Bot just launched | Stablize system components. | 5 sec |
| No active slot found | Set status to "NoAcc in this playtime". | 10 sec |
Plus / Digital Account Mapping (sb98 / sb99)
Plus accounts (e.g. sb0198) and Digital accounts (e.g. sb0199) do not have their own CustomRP scheduler slots. Instead, they automatically **share the CustomRP instance configuration** of sb{PS}01 on the same PS machine. The scheduler handles this mapping in the background; no extra setup is required.
Important Integration Notes
- Single Instance Enforcement: Only one bot instance runs per PS machine at a time. The scheduler enforces this lock.
- ScriptMode 0: If no mode number prefix is defined in the slot, the bot runs with the default checkbox flags checked in the Manager UI.
- Auto-Exit: The
stopTimeis automatically passed to the bot executable as a runtime argument. The bot closes itself when the time is reached, eliminating manual process kills. - API Configuration Forwarding: Key settings (such as API keys and price thresholds) are forwarded automatically from the current Manager config database.
- No Spaces in Delimiters: Ensure your scheduler configuration uses strict Tabs and not spaces. Some text editors automatically convert Tabs to spaces, which will break the scheduler parsing.
Step 8: API Integration & Limits (DGN/UBuy)
Configure coin-selling APIs and manage distribution limits across your bot network.
Centralized API Management
ManagerBot centrally manages and distributes API cards to idle worker bots. Unlike older versions where bots managed their own connections, this centralized approach provides load balancing and security.
API Slot Setup: To add slots, enter the Site (DGN/UBuy), User ID, and API Key. The system will auto-generate an ID for tracking.
Priority & Looping Controls
- Priority Order: ManagerBot polls API slots from top to bottom. Reorder priority by selecting a row and using the **Move Up** / **Move Down** buttons. Always click **Save API Config** afterward.
- Poll Timeout: Sets the looping interval (in milliseconds) for how frequently ManagerBot queries DGN/UBuy.
- Smart IgnoreHash Routing: If a card is pulled but the assigned bot previously purchased from the exact same client, the system routes the card to a different bot, avoiding spamming identical ignore hashes.
Daily Limit Reset
Define the maximum number of cards a Bot can buy per day for both normal and Cycle (infinite loop) modes. Once hit, the Manager sends a NO_API signal, prompting the bot to rest. Limits reset globally across the entire system automatically every midnight (00:00) without requiring a restart.
Auditing & Fail Reason Mapping
Track logs under the dedicated API Logs window. You can filter historical records by Date (e.g. 2026-04-11.json) and bot name. If a bot fails a purchase, specific codes (e.g. OutBid, Expired, TM_MaxTarget) are logged and reported back to DGN/UBuy.
Worker Engine & Safety watchdogs
- Multi-Buy Loop: In cycle API mode, the bot will rapidly attempt to buy up to 5 consecutive times during a single API burst.
- Smart Expiry OCR: When multiple identical cards are present, the bot uses OCR to verify the card's exact expiration timer on the console screen against the server timestamp.
- Smart Retries: If the expiry time doesn't match, the bot hits D-Pad Right (up to 4 times) to scan neighboring cards, guaranteeing it picks the correct API-listed card.
- Watchdog Recovery: If a worker bot crashes during card analysis, the API lock is automatically forcibly released after exactly 3 minutes.
FAQ & Troubleshooting
Resolve common operational issues and understand advanced dashboard features.
Advanced Checkbox Functions
| Checkbox | Advanced Function |
|---|---|
ActiveDigital |
Used when sharing a single digital game + PS Plus license account across 2 PS consoles. Activates the license on the console for the current run, renewing it if the last active session was more than 10 hours ago. Ensure both consoles are not scheduled to run simultaneously. (No need to check if each console has its own Plus subscription). |
Fc25 toUT |
Automatically enters the EA 2FA verification code, launches the game, and navigates straight into Ultimate Team (UT), bypassing manual screen entries. |
Rival Match & PSN ID OCR Verification
On a new PC setup, you should verify if all PSN Online IDs are correctly recognized by the OCR engine. If the OCR misreads a PSN ID, the matchmaker will not recognize the account, preventing bot matchups.
MatchData Re-Generation
Every time you replace accounts, consoles, or edit the LoginData.txt file, you must reload the configurations. Go to the Acc Manage tab, click Load LoginData, and then click **CreateNewMatchData**. If MatchData is out of sync or contains wrong info, bots will fail to run matches.
Why is my new bot account stuck looping in the L2 menu?
Check if the account has console market access unlocked. The bot will always attempt to relist transfer list cards before launching a match. If the console transfer market is locked, the bot will get stuck. Enable ObjectUnlock2 to finish objectives and unlock console market access.
Unlock WebApp Market Workflow: Fresh accounts must complete 2 objectives (New Begin, Venturing Out) via ObjectUnlock2. Afterward, run daily 3 Squad Battle matches (check PlayUnlock, set UnlockMatch = 3 and MatchLimit = 3).
Acc Manage Tab utility
The **Acc Manage** tab is used to load accounts for AccLogin (adding secondary profiles to the PS4 console), automate retrieving decimal AccountIDs from PSNIDs, and simplify clipboard actions for Method 2 browser pairing URLs.
Ticking disableLoop during Pairing
The bot manages pairing configuration files at each individual slot folder level. If you perform manual pairing on a slot while other bot processes are running, always tick **disableLoop** in ManagerBot first to prevent file lock write collisions.
Control Keys
All buttons located in the Control panel send real-time controller simulation commands (like pressing buttons) to all active bots. You can uncheck **Select** for specific PS instances if you want to exclude them from receiving global inputs.