A simple control system for running multiple Minecraft bots at once.
Use this project only where you have explicit permission and in compliance with applicable laws, the Minecraft EULA, and server terms. You assume all risk and responsibility for use. See disclaimer.md for full terms.
- Runs multiple bots together as a group.
- Lets you control the group from a simple web page.
- Supports basic group actions like coming to you, chatting, attacking, and status reports.
For architecture, flow, API, and debugging guides, see docs/README.md.
This README is written for anyone who wants to run the tool, even with limited coding experience.
You need:
- A Windows, macOS, or Linux machine.
- Node.js installed.
- A Minecraft server you are allowed to test on.
- Account and proxy info prepared in the included files.
- Open this project folder.
- Install dependencies:
npm install mineflayer mineflayer-pathfinder mineflayer-pvp proxy-agent minecraft-dataOr just run:
npm installaccounts.json: Your bot accounts.proxies.txt: Your proxies (one per line).disclaimer.md: Full legal and responsibility notice.
[
{
"username": "AltOne",
"uuid": "00000000-0000-0000-0000-000000000001",
"accessToken": "MICROSOFT_ACCESS_TOKEN_HERE",
"clientToken": "CLIENT_TOKEN_HERE",
"auth": "microsoft"
},
{
"username": "AltTwo",
"auth": "microsoft",
"password": "OPTIONAL_FALLBACK_PASSWORD"
}
]socks5://127.0.0.1:1080
socks5://127.0.0.1:1081
127.0.0.1:1082:user:pass
127.0.0.1:1083You can customize behavior using environment variables:
MC_HOST(default:localhost)MC_PORT(default:25565)MC_VERSION(default: auto)CMD_PREFIX(default:!)AUTH_MODE(default:microsoft, options:microsoftoroffline)OFFLINE_NAME_STYLE(default:mixed, options:gaming,human,mixed)JOIN_DELAY_MS(default:2000)MASTER_USERNAME(default:MasterPlayer)MASTER_UUID(default: empty)WEB_HOST(default:0.0.0.0)WEB_PORT(default:3000)WEB_TOKEN(default: empty, optional API auth token)SAVED_NAMES_PATH(default:data/saved-names.json)BOT_COUNT_WARNING_THRESHOLD(default:200, warning only)RECONNECT_ENABLED(default:true)RECONNECT_MAX_RETRIES(default:5)RECONNECT_BASE_DELAY_MS(default:5000)
Start the swarm:
npm startThen open the web control panel:
- Open
http://localhost:3000(or yourWEB_PORT) - Follow the beginner flow in the dashboard:
- Step 1: Setup Connection (host, port, version, join delay, bot count, auth mode)
- Step 2: Run Commands (start/stop swarm and quick actions)
- Step 3: Monitor Health (bot fleet cards and live logs)
- Save settings from Step 1 using
Save Settings - If the swarm is already running, changed settings reconnect bots automatically
- Use the command box to send:
come,spam hello,attack zombie,status - View bot activity and live logs
- Switch between grayscale light and dark themes
- Toggle bot authentication mode between Microsoft and Offline from the control panel
- In Offline mode, choose random username style:
gamingexamples:DoggyGamer2331,PixelHunter827humanexamples:TomFelton,Tom_Feltonmixedrandomizes between both styles
- Use
Save Namesto store the current generated offline names in a list in the panel, and delete saved entries when needed - Saved names are persistent and loaded from disk at startup (default file:
data/saved-names.json) - Control bots one-by-one from each bot card (
Start,Stop,Come,Status, and per-botSay) - Bot count has no hard maximum in code; the UI only shows a performance warning at high values
All commands must be prefixed (default !):
!come: Bots pathfind to master position.!spam <message>: All bots repeat the message.!attack <target>: All bots chase and attack matching entity.!status: Each bot reports health and coordinates.
- If the page does not open, check that the app is running and your
WEB_PORTis correct. - If bots do not join, recheck
accounts.jsonvalues. - If some bots fail but others work, inspect
proxies.txtfor invalid entries.
Use this responsibly and only in places where automation is allowed.