267 lines
7.6 KiB
Markdown
267 lines
7.6 KiB
Markdown
# BitBurner - Scripts
|
|
These scripts are for playing the [open source](https://github.com/danielyxie/bitburner) game [BitBurner](https://danielyxie.github.io/bitburner/)
|
|
|
|
## Table of Contents
|
|
- [BitBurner - Scripts](#bitburner-scripts)
|
|
- [Table of Contents](#table-of-contents)
|
|
- [Quick Start](#quick-start)
|
|
- [Scripts](#scripts)
|
|
- [botnet-manager.js (WIP)](#botnetmanagerjswip)
|
|
- [connect.js](#connectjs)
|
|
- [copy.js](#copyjs)
|
|
- [crawler.js](#crawlerjs)
|
|
- [find-target.js](#besttargetjs)
|
|
- [hacknet-manager.js](#hacknet-managerjs)
|
|
- [miner.js](#minerjs)
|
|
- [network-graph.js](#network-graphjs)
|
|
- [rootkit.js](#rootkitjs)
|
|
- [update.js](#updatejs)
|
|
|
|
## Quick Start
|
|
|
|
```bash
|
|
# Download the update script in-game
|
|
wget https://gitlab.zakscode.com/ztimson/BitBurner/-/raw/develop/scripts/update.js scripts/update.js
|
|
|
|
# Run the update script (Repeat this to pull this repository in the future)
|
|
run scripts/update.js
|
|
|
|
# Start the node manager with 8 nodes
|
|
run scripts/node-manager.js 8
|
|
|
|
# Chain the crawler, rootkit & miner to hack everything on the network
|
|
alias hackAll="run scripts/crawler.js /scripts/rootkit.js {{TARGET}} /scripts/miner.js"
|
|
hackAll
|
|
|
|
# Identify & install a backdoor on CSEC
|
|
run scripts/network-graph.js -f CSEC
|
|
run scripts/rootkit.js CSEC
|
|
run scripts/connect.js CSEC
|
|
backdoor
|
|
```
|
|
|
|
Learn more about the [availible scripts](#scripts) bellow or pass the `--help` flag to any of the included scripts in-game.
|
|
|
|
## Scripts
|
|
|
|
### [botnet-manager.js (WIP)](./scripts/botnet-manager.js)
|
|
**RAM:** GB
|
|
|
|
Connect & manage a network of devices to launch distributed attacks.
|
|
```
|
|
|
|
```
|
|
|
|
### [connect.js](./scripts/connect.js)
|
|
**RAM:** 1.85 GB
|
|
|
|
Search the network for a device and connect to it.
|
|
```
|
|
[home ~/]> run /scripts/connect.js --help
|
|
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
|
/scripts/connect.js:
|
|
|
|
Search the network for a device and connect to it.
|
|
|
|
Usage: run connect.js DEVICE
|
|
run connect.js --help
|
|
|
|
DEVICE Device to connect to
|
|
|
|
Options:
|
|
-h --help Display this help message
|
|
```
|
|
|
|
### [copy.js](./scripts/copy.js)
|
|
**RAM:** 3.50 GB
|
|
|
|
Copy a file/script to a device along with any dependencies.
|
|
```
|
|
[home ~/]> run scripts/copy.js --help
|
|
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
|
/scripts/copy.js:
|
|
|
|
Copy a file/script to a device along with any dependencies.
|
|
|
|
Usage: run copy.js [OPTIONS] FILE DEVICE
|
|
run copy.js --help
|
|
|
|
FILE File to copy
|
|
DEVICE Device to copy file(s) to
|
|
|
|
Options:
|
|
-d --no-deps Skip copying dependencies
|
|
-s --silent Surpress program output
|
|
-h --help Display this help message
|
|
```
|
|
|
|
### [crawler.js](./scripts/crawler.js)
|
|
**RAM:** 4.10 GB
|
|
|
|
Search the network for devices to execute a script against.
|
|
```
|
|
[home ~/]> run scripts/crawler.js --help
|
|
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
|
/scripts/crawler.js:
|
|
|
|
Search the network for devices to execute a script against.
|
|
|
|
Usage: run crawler.js [OPTIONS] SCRIPT [ARGS]...
|
|
run crawler.js --help
|
|
|
|
SCRIPT Script to copy & execute
|
|
ARGS Arguments for script. Forward the current target with: {{TARGET}}
|
|
|
|
Options:
|
|
-c --cpu Number of CPU threads to use with script
|
|
-d --depth Depth to scan to, defaults to 3
|
|
-l --level Exclude targets with higher hack level, defaults to current hack level
|
|
-p --ports Exclute targets with too many closed ports
|
|
-s --silent Surpress program output
|
|
-h --help Display this help message
|
|
```
|
|
|
|
### [find-target.js](./scripts/find-target.js)
|
|
**RAM:** 6.00 GB
|
|
|
|
Scan the network for the best device(s) to mine.
|
|
```
|
|
[home ~/]> run scripts/find-target.js --help
|
|
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
|
/scripts/find-target.js:
|
|
|
|
Scan the network for the best device(s) to mine.
|
|
|
|
Usage: run find-target.js [OPTIONS]
|
|
run find-target.js --help
|
|
|
|
Options:
|
|
-c --count Number of devices to return in order from best to worst
|
|
-r --rooted Filter to devices that have been rooted
|
|
-n --not-rooted Filter to devices that have not been rooted
|
|
-v --verbose Display the estimated income per minute per core
|
|
-h --help Display this help message
|
|
```
|
|
|
|
### [hacknet-manager.js](./scripts/hacknet-manager.js)
|
|
**RAM:** 5.70 GB
|
|
|
|
Buy, upgrade & manage Hacknet nodes automatically. Tail for live updates.
|
|
```
|
|
[home ~/]> run scripts/hacknet-manager.js --help
|
|
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
|
/scripts/hacknet-manager.js:
|
|
|
|
Buy, upgrade & manage Hacknet nodes automatically. Tail for live updates.
|
|
|
|
Usage: run hacknet-manager.js [OPTIONS] [LIMIT]
|
|
run hacknet-manager.js --help
|
|
|
|
LIMIT Limit the number of nodes the manager will buy, defaults to 8
|
|
|
|
Options:
|
|
-b --balance Prevent spending bellow point
|
|
-s --sleep Amount of time to wait between purchases, defaults to 1 (second)
|
|
-h --help Display this help message
|
|
```
|
|
|
|
### [miner.js](./scripts/miner.js)
|
|
**RAM:** 2.45 GB
|
|
|
|
Weaken, Grow, Hack loop to "mine" device for money. Tail for live updates.
|
|
```
|
|
[home ~/]> run scripts/miner.js --help
|
|
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
|
/scripts/miner.js:
|
|
|
|
Weaken, Grow, Hack loop to "mine" device for money. Tail for live updates.
|
|
|
|
Usage: run miner.js [DEVICE]
|
|
run miner.js --help
|
|
|
|
DEVICE Device to mine, defaults to current machine
|
|
|
|
Options:
|
|
-h --help Display this help message
|
|
```
|
|
|
|
### [network-graph.js](./scripts/network-graph.js)
|
|
**RAM:** 3.85 GB
|
|
|
|
Scan the network for devices and display as an ASCII tree.
|
|
```
|
|
[home ~/]> run /scripts/network-graph.js --help
|
|
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
|
/scripts/network-graph.js:
|
|
|
|
Scan the network for devices and display as an ASCII tree:
|
|
home
|
|
├─ n00dles (ROOTED)
|
|
| └─ max-hardware (80|1)
|
|
| └─ neo-net (50|1)
|
|
├─ foodnstuff (ROOTED)
|
|
└─ sigma-cosmetics (ROOTED)
|
|
|
|
Usage: run network-graph.js [OPTIONS] [DEVICE]
|
|
run network-graph.js --help
|
|
|
|
DEVICE Point to start scan from, defaults to current machine
|
|
|
|
Options:
|
|
-d --depth Depth to scan to, defaults is 3
|
|
-f --filter Filter to device matching name
|
|
-e --regex Filter to devices matching pattern
|
|
-r --rooted Filter to devices that have been rooted
|
|
-n --not-rooted Filter to devices that have not been rooted
|
|
-v --verbose Display the required hack level & number of ports to root: (level|port)
|
|
-h --help Display this help message
|
|
```
|
|
|
|
### [rootkit.js](./scripts/rootkit.js)
|
|
**RAM:** 4.75 GB - 4.90 GB <small>(depending on un-commented programs)</small>
|
|
|
|
Automatically gain root on a target machine. A file can also be uploaded & executed.
|
|
|
|
Programs can be commented out to lower the cost of running.
|
|
```
|
|
[home ~/]> run scripts/rootkit.js --help
|
|
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
|
/scripts/rootkit.js:
|
|
|
|
Automatically gain root access to a device. A file can also be uploaded & executed.
|
|
|
|
Usage: run rootkit.js [OPTIONS] [DEVICE] [SCRIPT] [ARGS]...
|
|
run rootkit.js --help
|
|
|
|
DEVICE Device to root, defaults to current machine
|
|
SCRIPT Script to copy & execute
|
|
ARGS Arguments for script. Forward the current target with: {{TARGET}}
|
|
|
|
Options:
|
|
-c --cpu Number of CPU threads to use with script
|
|
-s --silent Surpress program output
|
|
-h --help Display this help message
|
|
```
|
|
|
|
### [update.js](./scripts/update.js)
|
|
**RAM:** 2.65 GB
|
|
|
|
Download the latest script updates from the repository using wget.
|
|
```
|
|
[home ~/]> run scripts/update.js --help
|
|
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
|
/scripts/update.js:
|
|
|
|
Download the latest script updates from the repository using wget.
|
|
|
|
Usage: run update.js [OPTIONS] [DEVICE]
|
|
run update.js --help
|
|
|
|
DEVICE Device to update, defaults to current machine
|
|
|
|
Options:
|
|
--skip-self Skip updating self (for debugging & used internally)
|
|
--no-banner Hide the banner (Used internally)
|
|
-h --help Display this help message
|
|
```
|