Compare commits
24 Commits
laptop-bac
...
develop
Author | SHA1 | Date | |
---|---|---|---|
c316643787 | |||
4e6b125db7 | |||
9f867d9372 | |||
e16e56741a | |||
fa384b41ab | |||
0f450f23b8 | |||
e25e4f989c | |||
207fe642d4 | |||
4c151dc301 | |||
ef915b69ba | |||
b961919274 | |||
865372fa9e | |||
54e53cbfbb | |||
67732b8dcd | |||
24699af95d | |||
7844d1467c | |||
e9569b24f9 | |||
e664ae3ebc | |||
f5615e985e | |||
d46e4dfa34 | |||
c77e320550 | |||
40415c3a0d | |||
72d00c1d4b | |||
0e15103d31 |
30
.github/issue_template/bug.md
vendored
Normal file
30
.github/issue_template/bug.md
vendored
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
---
|
||||||
|
|
||||||
|
name: "Bug report"
|
||||||
|
about: "Encountered an issue"
|
||||||
|
ref: "develop"
|
||||||
|
labels:
|
||||||
|
- Type/Bug
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Bug Report
|
||||||
|
<!-- Description of problem -->
|
||||||
|
I tried to ...
|
||||||
|
|
||||||
|
But instead ...
|
||||||
|
|
||||||
|
## Steps to Reproduce
|
||||||
|
<!-- How can developers replicate & test the problem? -->
|
||||||
|
1.
|
||||||
|
2.
|
||||||
|
3.
|
||||||
|
|
||||||
|
## Logs
|
||||||
|
<!-- Any logs that accompenied the error -->
|
||||||
|
```
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
## Screenshots
|
||||||
|
<!-- Screenshots (annoted if possible) of the problem -->
|
22
.github/issue_template/enhancement.md
vendored
Normal file
22
.github/issue_template/enhancement.md
vendored
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
---
|
||||||
|
|
||||||
|
name: "Enhancement"
|
||||||
|
about: "Request a feature"
|
||||||
|
ref: "develop"
|
||||||
|
labels:
|
||||||
|
- Type/Enhancement
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Feature Request
|
||||||
|
<!-- Detailed description -->
|
||||||
|
...
|
||||||
|
|
||||||
|
## Requirements
|
||||||
|
<!-- Bullet list of requirments -->
|
||||||
|
1. ...
|
||||||
|
2. ...
|
||||||
|
|
||||||
|
## Notes
|
||||||
|
<!-- Any additional considerations, solutions or design choices -->
|
||||||
|
...
|
14
.github/pull_request_template.md
vendored
Normal file
14
.github/pull_request_template.md
vendored
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
## Description
|
||||||
|
<!-- Adition information & context -->
|
||||||
|
...
|
||||||
|
|
||||||
|
## Issues
|
||||||
|
<!-- Issues this PR will address -->
|
||||||
|
- closes #___
|
||||||
|
- owner/repo#___
|
||||||
|
|
||||||
|
## Checklist
|
||||||
|
<!-- Compelte after creating PR -->
|
||||||
|
- [ ] Linked issues
|
||||||
|
- [ ] Reviewed changes
|
||||||
|
- [ ] Updated comments/documentation
|
7
LICENSE
Normal file
7
LICENSE
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
Copyright (c) 2023 Zakary Timson
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
916
README.md
916
README.md
@ -1,411 +1,505 @@
|
|||||||
# BitBurner - Scripts
|
<!-- Header -->
|
||||||
A collection of scripts & information pertaining to the [open source](https://github.com/danielyxie/bitburner) game
|
<div id="top" align="center">
|
||||||
[BitBurner](https://danielyxie.github.io/bitburner/).
|
<br />
|
||||||
|
|
||||||
## Table of Contents
|
<!-- Logo -->
|
||||||
- [BitBurner - Scripts](#bitburner-scripts)
|
<img src="https://git.zakscode.com/repo-avatars/9b25b57330ba3a1d9da80dad4051be68373e52c4bfffc6f6ba9e89f7392f5f7d" alt="Logo" width="200" height="200">
|
||||||
- [Table of Contents](#table-of-contents)
|
|
||||||
- [Quick Start](#quick-start)
|
<!-- Title -->
|
||||||
- [Guide](#guide)
|
### Bitburner
|
||||||
- [BitNode 1](#bitnode-1)
|
|
||||||
- [Scripts](#scripts)
|
<!-- Description -->
|
||||||
- [banner.js](#bannerjs)
|
Collection of Bitburner scipts
|
||||||
- [botnet-manager.js (WIP)](#botnet-managerjs-wip)
|
|
||||||
- [connect.js](#connectjs)
|
<!-- Repo badges -->
|
||||||
- [copy.js](#copyjs)
|
[![Version](https://img.shields.io/badge/dynamic/json.svg?label=Version&style=for-the-badge&url=https://git.zakscode.com/api/v1/repos/ztimson/bitburner/tags&query=$[0].name)](https://git.zakscode.com/ztimson/bitburner/tags)
|
||||||
- [crawler.js](#crawlerjs)
|
[![Pull Requests](https://img.shields.io/badge/dynamic/json.svg?label=Pull%20Requests&style=for-the-badge&url=https://git.zakscode.com/api/v1/repos/ztimson/bitburner&query=open_pr_counter)](https://git.zakscode.com/ztimson/bitburner/pulls)
|
||||||
- [find-target.js](#find-targetjs)
|
[![Issues](https://img.shields.io/badge/dynamic/json.svg?label=Issues&style=for-the-badge&url=https://git.zakscode.com/api/v1/repos/ztimson/bitburner&query=open_issues_count)](https://git.zakscode.com/ztimson/bitburner/issues)
|
||||||
- [hacknet-manager.js](#hacknet-managerjs)
|
|
||||||
- [miner.js](#minerjs)
|
<!-- Links -->
|
||||||
- [network-graph.js](#network-graphjs)
|
|
||||||
- [rm.js](#rmjs)
|
---
|
||||||
- [rootkit.js](#rootkitjs)
|
<div>
|
||||||
- [server-manager.js](#server-managerjs)
|
<a href="https://git.zakscode.com/ztimson/bitburner/releases" target="_blank">Release Notes</a>
|
||||||
- [update.js](#updatejs)
|
• <a href="https://git.zakscode.com/ztimson/bitburner/issues/new?template=.github%2fissue_template%2fbug.md" target="_blank">Report a Bug</a>
|
||||||
|
• <a href="https://git.zakscode.com/ztimson/bitburner/issues/new?template=.github%2fissue_template%2fenhancement.md" target="_blank">Request a Feature</a>
|
||||||
## Quick Start
|
</div>
|
||||||
|
|
||||||
```bash
|
---
|
||||||
# Download the update script in-game & run it
|
</div>
|
||||||
wget https://gitlab.zakscode.com/ztimson/BitBurner/-/raw/develop/scripts/update.js scripts/update.js
|
|
||||||
run scripts/update.js # Repeat to pull the latest
|
## Table of Contents
|
||||||
|
- [Bitburner](#top)
|
||||||
# View the network
|
- [About](#about)
|
||||||
run scripts/network-graph.js --verbose
|
- [Built With](#built-with)
|
||||||
run scripts/netowkr-graph.js -v --filter CSEC # Find path to a specific device
|
- [Quick Start](#qiuck-start)
|
||||||
|
- [Scripts](#scripts)
|
||||||
# Start the node manager in auto-mode
|
- [banner.js](#banner)
|
||||||
run scripts/node-manager.js -a
|
- [botnet-manager.js (WIP)](#botnet)
|
||||||
|
- [connect.js](#connect)
|
||||||
# Chain the crawler & rootkit to root all devices on the network
|
- [copy.js](#copy)
|
||||||
run scripts/crawler.js --not-rooted /scripts/rootkit.js {{TARGET}}
|
- [crawler.js](#crawler)
|
||||||
|
- [find-target.js](#find-target)
|
||||||
# Find the most profitable server & use the crawler to deploy miners on the network targeting it
|
- [hacknet-manager.js](#hacknet)
|
||||||
run scripts/find-target.js # Output: n00dles
|
- [miner.js](#miner)
|
||||||
run scriipts/crawler.js --rooted --remote-exec /scripts/miner.js n00dles
|
- [network-graph.js](#network-graph)
|
||||||
|
- [rm.js](#rm)
|
||||||
# Install backdoor on CSEC
|
- [rootkit.js](#rootkit)
|
||||||
run scripts/rootkit.js CSEC
|
- [server-manager.js](#server-manager)
|
||||||
run scripts/connect.js CSEC
|
- [update.js](#update)
|
||||||
backdoor
|
- [License](#license)
|
||||||
```
|
|
||||||
|
## About
|
||||||
Learn more about the [available scripts](#scripts) bellow or pass the `--help` flag to any of the included scripts in-game.
|
A collection of scripts & information pertaining to the [open source](https://github.com/danielyxie/bitburner) game [Bitburner](https://danielyxie.github.io/bitburner/)
|
||||||
|
|
||||||
## Guide
|
### Built with
|
||||||
This guide documents how you can use this repository to progress through the game. You should complete the tutorial
|
[![JavaScript](https://img.shields.io/badge/JavaScript-000000?style=for-the-badge&logo=javascript)](https://javascript.com/)
|
||||||
first if you haven't already.
|
|
||||||
|
## Quick Start
|
||||||
### BitNode 1
|
|
||||||
1. First you need to download this repo into the game. Manually download `update.js` & run it:
|
```bash
|
||||||
`wget https://gitlab.zakscode.com/ztimson/BitBurner/-/raw/develop/scripts/update.js scripts/update.js; run scripts/update.js`
|
# Download the update script in-game & run it
|
||||||
2. Scan the network to figure out your bearings, take note of discovered server's required hack level:
|
wget https://gitlab.zakscode.com/ztimson/Bitburner/-/raw/develop/scripts/update.js scripts/update.js
|
||||||
`run scripts/network-graph.js -vd 3`
|
run scripts/update.js # Repeat to pull the latest
|
||||||
3. Root the lowest level server (probably n00dles) & make it hack itself for money. You should repeat this step when
|
|
||||||
ever your hack level is high enough to hack another a new server. `run scripts/rootkit.js n00dles /scripts/miner.js`
|
# View the network
|
||||||
4. Start `hacknet-manger.js`. You won't have enough *RAM* in the beginning to run the manager & hack servers. It's
|
run scripts/network-graph.js --verbose
|
||||||
recommended you `tail` the manager, so you can easily start/stop it as needed. `run script/hacknet-manager.js -a`
|
run scripts/netowkr-graph.js -v --filter CSEC # Find path to a specific device
|
||||||
5. Once you have enough money ($??,???.??), upgrade your home severs *RAM*:
|
|
||||||
`City > alpha ent. > Upgrade 'home' RAM (8.00GB -> 16.00GB)`
|
# Start the node manager in auto-mode
|
||||||
6. At this point you have enough *RAM* to use `crawler.js` to automatically discover servers & hack them. Continue to
|
run scripts/node-manager.js -a
|
||||||
run this periodically as your hack level increases & you unlock more exploits:
|
|
||||||
`run scripts/crawler.js -n /scripts/rootkit.js {{TARGET}} /scripts/miner.js`
|
# Chain the crawler & rootkit to root all devices on the network
|
||||||
|
run scripts/crawler.js --not-rooted /scripts/rootkit.js {{TARGET}}
|
||||||
## Scripts
|
|
||||||
|
# Find the most profitable server & use the crawler to deploy miners on the network targeting it
|
||||||
### [banner.js](./scripts/banner.js)
|
run scripts/find-target.js # Output: n00dles
|
||||||
**RAM:** 1.60 GB
|
run scriipts/crawler.js --rooted --remote-exec /scripts/miner.js n00dles
|
||||||
|
|
||||||
Aesthetic & serves no real purpose. Prints a banner to the terminal & can repeat after game restarts.
|
# Install backdoor on CSEC
|
||||||
```
|
run scripts/rootkit.js CSEC
|
||||||
[home ~/]> run scripts/banner.js --help
|
run scripts/connect.js CSEC
|
||||||
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
backdoor
|
||||||
/scripts/banner.js:
|
```
|
||||||
|
|
||||||
Display an ASCII banner.
|
## Scripts
|
||||||
|
|
||||||
Usage: run banner.js [OPTIONS]
|
<details>
|
||||||
run banner.js --help
|
<summary>
|
||||||
|
<h3 id="banner" style="display: inline">banner.js</h3>
|
||||||
Options:
|
</summary>
|
||||||
-r, --reboot Automatically display after game reboots
|
<br />
|
||||||
-h, --help Display this help message
|
|
||||||
```
|
**RAM:** 1.60 GB | [Code](./src/banner.js)
|
||||||
|
|
||||||
### [botnet-manager.js (WIP)](./scripts/botnet-manager.js)
|
Aesthetic & serves no real purpose. Prints a banner to the terminal & can repeat after game restarts.
|
||||||
**RAM:** 7.15 GB
|
```
|
||||||
|
[home ~/]> run scripts/banner.js --help
|
||||||
Late-game solution to hack servers. It orchestrates an unlimited number of servers to carry out distributed batched
|
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
||||||
attacks against targets. It includes a bunch of utilities to quickly dispatch single commands to all workers. Manger
|
/scripts/banner.js:
|
||||||
can be tailed for live updates.
|
|
||||||
```
|
Display an ASCII banner.
|
||||||
[home ~/]> run /scripts/botnet-manager.js --help
|
|
||||||
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
Usage: run banner.js [OPTIONS]
|
||||||
/scripts/botnet-manager.js:
|
run banner.js --help
|
||||||
|
|
||||||
Connect & manage a network of devices to launch distributed attacks.
|
Options:
|
||||||
|
-r, --reboot Automatically display after game reboots
|
||||||
Usage: run botnet-manager.js [OPTIONS]
|
-h, --help Display this help message
|
||||||
run botnet-manager.js [OPTIONS] COMMAND
|
```
|
||||||
run botnet-manager.js --help [COMMAND]
|
</details>
|
||||||
|
|
||||||
Options:
|
<details>
|
||||||
-s, --silent Suppress program output
|
<summary>
|
||||||
-h, --help Display this help message
|
<h3 id="botnet" style="display: inline">botnet-manager.js (WIP)</h3>
|
||||||
|
</summary>
|
||||||
Commands:
|
<br />
|
||||||
copy Copy file & dependencies to swarm nodes
|
|
||||||
join Connect device as a worker node to the swarm
|
**RAM:** 7.15 GB | [Code](./scripts/botnet-manager.js)
|
||||||
kill Kill any scripts running on worker nodes
|
|
||||||
leave Disconnect worker node from swarm
|
Late-game solution to hack servers. It orchestrates an unlimited number of servers to carry out distributed batched
|
||||||
run Copy & run script on all worker nodes
|
attacks against targets. It includes a bunch of utilities to quickly dispatch single commands to all workers. Manger
|
||||||
start Start this device as the swarm manager
|
can be tailed for live updates.
|
||||||
```
|
```
|
||||||
|
[home ~/]> run /scripts/botnet-manager.js --help
|
||||||
### [connect.js](./scripts/connect.js)
|
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
||||||
**RAM:** 1.85 GB
|
/scripts/botnet-manager.js:
|
||||||
|
|
||||||
The built in `connect` command only allows you to connect to devices in the immediate vicinity or servers that have
|
Connect & manage a network of devices to launch distributed attacks.
|
||||||
backdoors installed requiring you to make several jumps. This script will automatically find a path & connect you saving
|
|
||||||
you some time.
|
Usage: run botnet-manager.js [OPTIONS]
|
||||||
```
|
run botnet-manager.js [OPTIONS] COMMAND
|
||||||
[home ~/]> run /scripts/connect.js --help
|
run botnet-manager.js --help [COMMAND]
|
||||||
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
|
||||||
/scripts/connect.js:
|
Options:
|
||||||
|
-s, --silent Suppress program output
|
||||||
Connect to a server anywhere in the network without a backdoor.
|
-h, --help Display this help message
|
||||||
|
|
||||||
Usage: run connect.js [OPTIONS] SERVER
|
Commands:
|
||||||
run connect.js --help
|
copy Copy file & dependencies to swarm nodes
|
||||||
|
join Connect device as a worker node to the swarm
|
||||||
SERVER Server to connect to
|
kill Kill any scripts running on worker nodes
|
||||||
|
leave Disconnect worker node from swarm
|
||||||
Options:
|
run Copy & run script on all worker nodes
|
||||||
-h, --help Display this help message
|
start Start this device as the swarm manager
|
||||||
```
|
```
|
||||||
|
</details>
|
||||||
### [copy.js](./scripts/copy.js)
|
|
||||||
**RAM:** 4.20 GB
|
<details>
|
||||||
|
<summary>
|
||||||
Scripts often import other scripts requiring multiple `scp` calls before it can be run on a remote machine. This script
|
<h3 id="connect" style="display: inline">connect.js</h3>
|
||||||
will automatically scan the file being copied for imports & recursively scan & copy the dependencies. Plus it has a
|
</summary>
|
||||||
fancy animated loading bar.
|
<br />
|
||||||
```
|
|
||||||
[home ~/]> run scripts/copy.js --help
|
**RAM:** 1.85 GB | [Code](./scripts/connect.js)
|
||||||
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
|
||||||
/scripts/copy.js:
|
The built in `connect` command only allows you to connect to devices in the immediate vicinity or servers that have
|
||||||
|
backdoors installed requiring you to make several jumps. This script will automatically find a path & connect you saving
|
||||||
Copy a file & it's dependencies to a server.
|
you some time.
|
||||||
|
```
|
||||||
Usage: run copy.js [OPTIONS] FILE SERVER [ARGS]...
|
[home ~/]> run /scripts/connect.js --help
|
||||||
run copy.js --help
|
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
||||||
|
/scripts/connect.js:
|
||||||
FILE File to copy
|
|
||||||
SERVER Server to copy file(s) to
|
Connect to a server anywhere in the network without a backdoor.
|
||||||
ARGS Arguments to start file/script with
|
|
||||||
|
Usage: run connect.js [OPTIONS] SERVER
|
||||||
Options:
|
run connect.js --help
|
||||||
-c, --cpu Number of CPU threads to start script with, will use maximum if not specified
|
|
||||||
-e, --execute Start script after copying
|
SERVER Server to connect to
|
||||||
-n, --no-deps Skip copying dependencies
|
|
||||||
-q, --quite Suppress program output
|
Options:
|
||||||
-h, --help Display this help message
|
-h, --help Display this help message
|
||||||
```
|
```
|
||||||
|
</details>
|
||||||
### [crawler.js](./scripts/crawler.js)
|
|
||||||
**RAM:** 5.80 GB
|
<details>
|
||||||
|
<summary>
|
||||||
Mid-game solution to distribute & run scripts across the network.
|
<h3 id="copy" style="display: inline">copy.js</h3>
|
||||||
```
|
</summary>
|
||||||
[home ~/]> run scripts/crawler.js --help
|
<br />
|
||||||
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
|
||||||
/scripts/crawler.js:
|
**RAM:** 4.20 GB | [Code](./scripts/copy.js)
|
||||||
|
|
||||||
Search the network for servers to execute a script against.
|
Scripts often import other scripts requiring multiple `scp` calls before it can be run on a remote machine. This script
|
||||||
|
will automatically scan the file being copied for imports & recursively scan & copy the dependencies. Plus it has a
|
||||||
Usage: run crawler.js [OPTIONS] SCRIPT [ARGS]...
|
fancy animated loading bar.
|
||||||
run crawler.js --help
|
```
|
||||||
|
[home ~/]> run scripts/copy.js --help
|
||||||
SCRIPT Script to copy & execute
|
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
||||||
ARGS Arguments for script. Forward the discovered server with: {{SERVER}}
|
/scripts/copy.js:
|
||||||
|
|
||||||
Options:
|
Copy a file & it's dependencies to a server.
|
||||||
-c, --cpu Number of CPU threads to start script with, will use maximum if not specified
|
|
||||||
-d, --depth Depth to scan to, defaults to 3
|
Usage: run copy.js [OPTIONS] FILE SERVER [ARGS]...
|
||||||
-k, --kill Kill all running scripts on the server
|
run copy.js --help
|
||||||
--level Skip servers with higher hack level, defaults to current hack level
|
|
||||||
-e, --remote-exec Execute script on remote server
|
FILE File to copy
|
||||||
-r, --rooted Only servers that have been rooted
|
SERVER Server to copy file(s) to
|
||||||
-n, --not-rooted Only servers that have not been rooted
|
ARGS Arguments to start file/script with
|
||||||
-p, --ports Skip servers with too many closed ports
|
|
||||||
-q, --quite Suppress program output
|
Options:
|
||||||
-v, --verbose Display the server names in the final report
|
-c, --cpu Number of CPU threads to start script with, will use maximum if not specified
|
||||||
-h, --help Display this help message
|
-e, --execute Start script after copying
|
||||||
```
|
-n, --no-deps Skip copying dependencies
|
||||||
|
-q, --quite Suppress program output
|
||||||
### [find-target.js](./scripts/find-target.js)
|
-h, --help Display this help message
|
||||||
**RAM:** 4.05 GB
|
```
|
||||||
|
</details>
|
||||||
A utility to help figure out which server is worth hacking the most. It does this by estimating the financial yield per
|
|
||||||
minute for each server & returns the servers in a sorted list.
|
<details>
|
||||||
```
|
<summary>
|
||||||
[home ~/]> run scripts/find-target.js --help
|
<h3 id="crawler" style="display: inline">crawler.js</h3>
|
||||||
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
</summary>
|
||||||
/scripts/find-target.js:
|
<br />
|
||||||
|
|
||||||
Scan the network for the best servers(s) to hack.
|
**RAM:** 5.80 GB | [Code](./scripts/crawler.js)
|
||||||
|
|
||||||
Usage: run find-target.js [OPTIONS]
|
Mid-game solution to distribute & run scripts across the network.
|
||||||
run find-target.js --help
|
```
|
||||||
|
[home ~/]> run scripts/crawler.js --help
|
||||||
Options:
|
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
||||||
-c, --count Number of servers to return
|
/scripts/crawler.js:
|
||||||
-r, --rooted Only servers that have been rooted
|
|
||||||
-n, --not-rooted Only servers that have not been rooted
|
Search the network for servers to execute a script against.
|
||||||
-v, --verbose Display the estimated income per minute per core
|
|
||||||
-h, --help Display this help message
|
Usage: run crawler.js [OPTIONS] SCRIPT [ARGS]...
|
||||||
```
|
run crawler.js --help
|
||||||
|
|
||||||
### [hacknet-manager.js](./scripts/hacknet-manager.js)
|
SCRIPT Script to copy & execute
|
||||||
**RAM:** 5.70 GB
|
ARGS Arguments for script. Forward the discovered server with: {{SERVER}}
|
||||||
|
|
||||||
An early game solution to automate the hacknet & get easy money.
|
Options:
|
||||||
```
|
-c, --cpu Number of CPU threads to start script with, will use maximum if not specified
|
||||||
[home ~/]> run scripts/hacknet-manager.js --help
|
-d, --depth Depth to scan to, defaults to 3
|
||||||
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
-k, --kill Kill all running scripts on the server
|
||||||
/scripts/hacknet-manager.js:
|
--level Skip servers with higher hack level, defaults to current hack level
|
||||||
|
-e, --remote-exec Execute script on remote server
|
||||||
Buy, upgrade & manage Hacknet nodes automatically. Tail for live updates.
|
-r, --rooted Only servers that have been rooted
|
||||||
|
-n, --not-rooted Only servers that have not been rooted
|
||||||
Usage: run hacknet-manager.js [OPTIONS] [LIMIT]
|
-p, --ports Skip servers with too many closed ports
|
||||||
run hacknet-manager.js --help
|
-q, --quite Suppress program output
|
||||||
|
-v, --verbose Display the server names in the final report
|
||||||
LIMIT Limit the number of nodes the manager will buy, defaults to 8 or the current number of nodes
|
-h, --help Display this help message
|
||||||
|
```
|
||||||
Options:
|
</details>
|
||||||
-a, --auto-limit Automatically increase the node limit when there is nothing to do
|
|
||||||
-b, --balance Prevent spending bellow point
|
<details>
|
||||||
-s, --sleep Amount of time to wait between purchases, defaults to 1 (second)
|
<summary>
|
||||||
-h, --help Display this help message
|
<h3 id="find-target" style="display: inline">find-target.js</h3>
|
||||||
```
|
</summary>
|
||||||
|
<br />
|
||||||
### [miner.js](./scripts/miner.js)
|
|
||||||
**RAM:** 2.45 GB
|
**RAM:** 4.05 GB | [Code](./scripts/find-target.js)
|
||||||
|
|
||||||
An early-game HGW script to steal money from servers. You can deploy this on each server and have them hack themselves,
|
A utility to help figure out which server is worth hacking the most. It does this by estimating the financial yield per
|
||||||
or they can all target the server with the most money which is more efficient (see [find-target.js](#find-targetjs)).
|
minute for each server & returns the servers in a sorted list.
|
||||||
```
|
```
|
||||||
[home ~/]> run scripts/miner.js --help
|
[home ~/]> run scripts/find-target.js --help
|
||||||
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
||||||
/scripts/miner.js:
|
/scripts/find-target.js:
|
||||||
|
|
||||||
Buy, upgrade & manage Hacknet nodes automatically. Tail for live updates.
|
Scan the network for the best servers(s) to hack.
|
||||||
|
|
||||||
Usage: run hacknet-manager.js [OPTIONS] [LIMIT]
|
Usage: run find-target.js [OPTIONS]
|
||||||
run hacknet-manager.js --help
|
run find-target.js --help
|
||||||
|
|
||||||
LIMIT Limit the number of nodes the manager will buy, defaults to 8 or the current number of nodes
|
Options:
|
||||||
|
-c, --count Number of servers to return
|
||||||
Options:
|
-r, --rooted Only servers that have been rooted
|
||||||
-a, --auto-limit Automatically increase the node limit when there is nothing to do
|
-n, --not-rooted Only servers that have not been rooted
|
||||||
-b, --balance Prevent spending bellow point
|
-v, --verbose Display the estimated income per minute per core
|
||||||
-s, --sleep Amount of time to wait between purchases, defaults to 1 (second)
|
-h, --help Display this help message
|
||||||
-h, --help Display this help message
|
```
|
||||||
```
|
</details>
|
||||||
|
|
||||||
### [network-graph.js](./scripts/network-graph.js)
|
<details>
|
||||||
**RAM:** 3.85 GB
|
<summary>
|
||||||
|
<h3 id="hacknet" style="display: inline">hacknet-manager.js</h3>
|
||||||
A utility to scan the network & build a visual tree of all the devices. It comes with lots of flags to narrow down the
|
</summary>
|
||||||
results. It's useful for figuring out where you are, manually finding targets & discovering the path to a server &
|
<br />
|
||||||
connecting to it.
|
|
||||||
```
|
**RAM:** 5.70 GB | [Code](./scripts/hacknet-manager.js)
|
||||||
[home ~/]> run /scripts/network-graph.js --help
|
|
||||||
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
An early game solution to automate the hacknet & get easy money.
|
||||||
/scripts/network-graph.js:
|
```
|
||||||
|
[home ~/]> run scripts/hacknet-manager.js --help
|
||||||
Scan the network for servers and display as an ASCII tree. Servers with root access are highlighted & bold. Click to
|
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
||||||
automatically connect.
|
/scripts/hacknet-manager.js:
|
||||||
|
|
||||||
Usage: run network-graph.js [OPTIONS] [SERVER]
|
Buy, upgrade & manage Hacknet nodes automatically. Tail for live updates.
|
||||||
run network-graph.js --help
|
|
||||||
|
Usage: run hacknet-manager.js [OPTIONS] [LIMIT]
|
||||||
SERVER Point to start scan from, defaults to local server
|
run hacknet-manager.js --help
|
||||||
|
|
||||||
Options:
|
LIMIT Limit the number of nodes the manager will buy, defaults to 8 or the current number of nodes
|
||||||
-d, --depth Depth to scan to
|
|
||||||
-f, --filter Filter to servers matching name
|
Options:
|
||||||
-e, --regex Filter to servers matching pattern
|
-a, --auto-limit Automatically increase the node limit when there is nothing to do
|
||||||
-l, --level Display the required hack level & number of ports to root: [level|port]
|
-b, --balance Prevent spending bellow point
|
||||||
-n, --not-rooted Filter to servers that have not been rooted
|
-s, --sleep Amount of time to wait between purchases, defaults to 1 (second)
|
||||||
-r, --rooted Filter to servers that have been rooted
|
-h, --help Display this help message
|
||||||
-s, --specs Display the server specifications: {CPU|RAM}
|
```
|
||||||
-u, --usage Display the server utilization: (USG%)
|
</details>
|
||||||
-v, --verbose Display level, specs & usage in that order: [HL|P] {CPU|RAM} (USG%)
|
|
||||||
-h, --help Display this help message
|
<details>
|
||||||
```
|
<summary>
|
||||||
|
<h3 id="miner" style="display: inline">miner.js</h3>
|
||||||
### [rm.js](./scripts/rm.js)
|
</summary>
|
||||||
**RAM:** 2.85 GB
|
<br />
|
||||||
|
|
||||||
[BitBurner-Connector](https://plugins.jetbrains.com/plugin/18338-bitburner-connector) would occasionally push my IDE
|
**RAM:** 2.45 GB | [Code](./scripts/miner.js)
|
||||||
files to the game, so I created this simple script to recursively search & delete files from a directory to save me
|
|
||||||
from having to delete files one-by-one.
|
An early-game HGW script to steal money from servers. You can deploy this on each server and have them hack themselves,
|
||||||
```
|
or they can all target the server with the most money which is more efficient (see [find-target.js](#find-target)).
|
||||||
[home ~/scripts]> run /scripts/rm.js --help
|
```
|
||||||
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
[home ~/]> run scripts/miner.js --help
|
||||||
/scripts/rm.js:
|
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
||||||
|
/scripts/miner.js:
|
||||||
Recursively delete files inside a directory
|
|
||||||
|
Buy, upgrade & manage Hacknet nodes automatically. Tail for live updates.
|
||||||
Usage: run rm.js [OPTIONS] PATH [SERVER]
|
|
||||||
run rm.js --help
|
Usage: run hacknet-manager.js [OPTIONS] [LIMIT]
|
||||||
|
run hacknet-manager.js --help
|
||||||
PATH Path to recursively search
|
|
||||||
SERVER Run on remote server
|
LIMIT Limit the number of nodes the manager will buy, defaults to 8 or the current number of nodes
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
-f, --force Remove game files (.exe, .lit, .msg)
|
-a, --auto-limit Automatically increase the node limit when there is nothing to do
|
||||||
-r, --recursive Delete everything inside directory
|
-b, --balance Prevent spending bellow point
|
||||||
-h, --help Display this help message
|
-s, --sleep Amount of time to wait between purchases, defaults to 1 (second)
|
||||||
```
|
-h, --help Display this help message
|
||||||
|
```
|
||||||
### [rootkit.js](./scripts/rootkit.js)
|
</details>
|
||||||
**RAM:** 4.65 GB
|
|
||||||
|
<details>
|
||||||
Automatically gains root on the local or remote server. A script can be passed as an additional argument; it will be
|
<summary>
|
||||||
copied and automatically executed with the maximum number of threads after being rooted.
|
<h3 id="network-graph" style="display: inline">network-graph.js</h3>
|
||||||
```
|
</summary>
|
||||||
[home ~/]> run scripts/rootkit.js --help
|
<br />
|
||||||
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
|
||||||
/scripts/rootkit.js:
|
**RAM:** 3.85 GB | [Code](./scripts/network-graph.js)
|
||||||
|
|
||||||
Scan the network for servers and display as an ASCII tree. Servers with root access are highlighted & bold.
|
A utility to scan the network & build a visual tree of all the devices. It comes with lots of flags to narrow down the
|
||||||
|
results. It's useful for figuring out where you are, manually finding targets & discovering the path to a server &
|
||||||
Usage: run network-graph.js [OPTIONS] [SERVER]
|
connecting to it.
|
||||||
run network-graph.js --help
|
```
|
||||||
|
[home ~/]> run /scripts/network-graph.js --help
|
||||||
SERVER Point to start scan from, defaults to local server
|
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
||||||
|
/scripts/network-graph.js:
|
||||||
Options:
|
|
||||||
-d, --depth Depth to scan to
|
Scan the network for servers and display as an ASCII tree. Servers with root access are highlighted & bold. Click to
|
||||||
-f, --filter Filter to servers matching name
|
automatically connect.
|
||||||
-e, --regex Filter to servers matching pattern
|
|
||||||
-l, --level Display the required hack level & number of ports to root: [level|port]
|
Usage: run network-graph.js [OPTIONS] [SERVER]
|
||||||
-n, --not-rooted Filter to servers that have not been rooted
|
run network-graph.js --help
|
||||||
-r, --rooted Filter to servers that have been rooted
|
|
||||||
-s, --specs Display the server specifications: {CPU|RAM}
|
SERVER Point to start scan from, defaults to local server
|
||||||
-u, --usage Display the server utilization: (USG%)
|
|
||||||
-v, --verbose Display level, specs & usage in that order: [HL|P] {CPU|RAM} (USG%)
|
Options:
|
||||||
-h, --help Display this help message
|
-d, --depth Depth to scan to
|
||||||
```
|
-f, --filter Filter to servers matching name
|
||||||
|
-e, --regex Filter to servers matching pattern
|
||||||
### [server-manager.js](./scripts/server-manager.js)
|
-l, --level Display the required hack level & number of ports to root: [level|port]
|
||||||
**RAM:** 11.35 GB
|
-n, --not-rooted Filter to servers that have not been rooted
|
||||||
|
-r, --rooted Filter to servers that have been rooted
|
||||||
Mid-game script to handle purchasing and upgrading servers for more computer power. You can also set a script to run
|
-s, --specs Display the server specifications: {CPU|RAM}
|
||||||
automatically after purchase. Useful to chain with `miner.js` or `botnet.js`.
|
-u, --usage Display the server utilization: (USG%)
|
||||||
```
|
-v, --verbose Display level, specs & usage in that order: [HL|P] {CPU|RAM} (USG%)
|
||||||
[home ~/]> run /scripts/server-manager.js --help
|
-h, --help Display this help message
|
||||||
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
```
|
||||||
/scripts/server-manager.js:
|
</details>
|
||||||
|
|
||||||
Automate the buying & upgrading of servers. Automatically starts script after purchase. Tail for live updates.
|
<details>
|
||||||
|
<summary>
|
||||||
Usage: run server-manager.js [OPTIONS] [SCRIPT] [ARGS]...
|
<h3 id="rm" style="display: inline">rm.js</h3>
|
||||||
run server-manager.js --help
|
</summary>
|
||||||
|
<br />
|
||||||
SCRIPT Script to copy & execute
|
|
||||||
ARGS Arguments for script. Forward the discovered server with: {{SERVER}}
|
**RAM:** 2.85 GB | [Code](./scripts/rm.js)
|
||||||
|
|
||||||
Options:
|
[bitburner-connector](https://plugins.jetbrains.com/plugin/18338-bitburner-connector) would occasionally push my IDE
|
||||||
-b, --balance Prevent spending bellow point
|
files to the game, so I created this simple script to recursively search & delete files from a directory to save me
|
||||||
-c, --cpu Number of CPU threads to start script with, will use maximum if not specified
|
from having to delete files one-by-one.
|
||||||
-l, --limit Limit the number of servers that can be purchased, defaults to 25
|
```
|
||||||
-r, --ram Amount of RAM to purchase new servers with, defaults to 8 GB
|
[home ~/scripts]> run /scripts/rm.js --help
|
||||||
-s, --sleep Amount of time to wait between purchases, defaults to 1 (second)
|
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
||||||
-h, --help Display this help message
|
/scripts/rm.js:
|
||||||
```
|
|
||||||
|
Recursively delete files inside a directory
|
||||||
### [update.js](./scripts/update.js)
|
|
||||||
**RAM:** 2.65 GB
|
Usage: run rm.js [OPTIONS] PATH [SERVER]
|
||||||
|
run rm.js --help
|
||||||
Uses the in-game `wget` to download all the scripts in this repository. Can target remote servers to quickly copy the
|
|
||||||
entire toolkit to the target.
|
PATH Path to recursively search
|
||||||
```
|
SERVER Run on remote server
|
||||||
[home ~/]> run scripts/update.js --help
|
|
||||||
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
Options:
|
||||||
/scripts/update.js:
|
-f, --force Remove game files (.exe, .lit, .msg)
|
||||||
|
-r, --recursive Delete everything inside directory
|
||||||
Download the latest script updates from the repository using wget.
|
-h, --help Display this help message
|
||||||
|
```
|
||||||
Usage: run update.js [OPTIONS] [DEVICE]
|
</details>
|
||||||
run update.js --help
|
|
||||||
|
<details>
|
||||||
DEVICE Device to update, defaults to current machine
|
<summary>
|
||||||
|
<h3 id="rootkit" style="display: inline">rootkit.js</h3>
|
||||||
Options:
|
</summary>
|
||||||
--skip-self Skip updating self (for debugging & used internally)
|
<br />
|
||||||
--no-banner Hide the banner (Used internally)
|
|
||||||
-h, --help Display this help message
|
**RAM:** 4.65 GB | [Code](./scripts/rootkit.js)
|
||||||
```
|
|
||||||
|
Automatically gains root on the local or remote server. A script can be passed as an additional argument; it will be
|
||||||
|
copied and automatically executed with the maximum number of threads after being rooted.
|
||||||
|
```
|
||||||
|
[home ~/]> run scripts/rootkit.js --help
|
||||||
|
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
||||||
|
/scripts/rootkit.js:
|
||||||
|
|
||||||
|
Scan the network for servers and display as an ASCII tree. Servers with root access are highlighted & bold.
|
||||||
|
|
||||||
|
Usage: run network-graph.js [OPTIONS] [SERVER]
|
||||||
|
run network-graph.js --help
|
||||||
|
|
||||||
|
SERVER Point to start scan from, defaults to local server
|
||||||
|
|
||||||
|
Options:
|
||||||
|
-d, --depth Depth to scan to
|
||||||
|
-f, --filter Filter to servers matching name
|
||||||
|
-e, --regex Filter to servers matching pattern
|
||||||
|
-l, --level Display the required hack level & number of ports to root: [level|port]
|
||||||
|
-n, --not-rooted Filter to servers that have not been rooted
|
||||||
|
-r, --rooted Filter to servers that have been rooted
|
||||||
|
-s, --specs Display the server specifications: {CPU|RAM}
|
||||||
|
-u, --usage Display the server utilization: (USG%)
|
||||||
|
-v, --verbose Display level, specs & usage in that order: [HL|P] {CPU|RAM} (USG%)
|
||||||
|
-h, --help Display this help message
|
||||||
|
```
|
||||||
|
</details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>
|
||||||
|
<h3 id="server-miner" style="display: inline">server-miner.js</h3>
|
||||||
|
</summary>
|
||||||
|
<br />
|
||||||
|
|
||||||
|
**RAM:** 11.35 GB | [Code](./scripts/server-manager.js)
|
||||||
|
|
||||||
|
Mid-game script to handle purchasing and upgrading servers for more computer power. You can also set a script to run
|
||||||
|
automatically after purchase. Useful to chain with `miner.js` or `botnet.js`.
|
||||||
|
```
|
||||||
|
[home ~/]> run /scripts/server-manager.js --help
|
||||||
|
Running script with 1 thread(s), pid 1 and args: ["--help"].
|
||||||
|
/scripts/server-manager.js:
|
||||||
|
|
||||||
|
Automate the buying & upgrading of servers. Automatically starts script after purchase. Tail for live updates.
|
||||||
|
|
||||||
|
Usage: run server-manager.js [OPTIONS] [SCRIPT] [ARGS]...
|
||||||
|
run server-manager.js --help
|
||||||
|
|
||||||
|
SCRIPT Script to copy & execute
|
||||||
|
ARGS Arguments for script. Forward the discovered server with: {{SERVER}}
|
||||||
|
|
||||||
|
Options:
|
||||||
|
-b, --balance Prevent spending bellow point
|
||||||
|
-c, --cpu Number of CPU threads to start script with, will use maximum if not specified
|
||||||
|
-l, --limit Limit the number of servers that can be purchased, defaults to 25
|
||||||
|
-r, --ram Amount of RAM to purchase new servers with, defaults to 8 GB
|
||||||
|
-s, --sleep Amount of time to wait between purchases, defaults to 1 (second)
|
||||||
|
-h, --help Display this help message
|
||||||
|
```
|
||||||
|
</details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>
|
||||||
|
<h3 id="update" style="display: inline">update.js</h3>
|
||||||
|
</summary>
|
||||||
|
<br />
|
||||||
|
|
||||||
|
**RAM:** 2.65 GB | [Code](./scripts/update.js)
|
||||||
|
|
||||||
|
Uses the in-game `wget` to download all the scripts in this repository. Can target remote servers to quickly copy the
|
||||||
|
entire toolkit to the target.
|
||||||
|
```
|
||||||
|
[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
|
||||||
|
```
|
||||||
|
</details>
|
||||||
|
|
||||||
|
## License
|
||||||
|
Copyright © 2023 Zakary Timson | Available under MIT Licensing
|
||||||
|
|
||||||
|
See the [license](./LICENSE) for more information.
|
||||||
|
@ -183,7 +183,7 @@ export async function main(ns) {
|
|||||||
{name: 'no-banner', desc: 'Hide the banner (Used internally)', flags: ['--no-banner'], default: false}
|
{name: 'no-banner', desc: 'Hide the banner (Used internally)', flags: ['--no-banner'], default: false}
|
||||||
]);
|
]);
|
||||||
const args = argParser.parse(ns.args || []);
|
const args = argParser.parse(ns.args || []);
|
||||||
const src = 'https://gitlab.zakscode.com/ztimson/BitBurner/-/raw/develop/scripts/';
|
const src = 'https://raw.githubusercontent.com/PointyTrident/Bitburner/develop/scripts/';
|
||||||
const dest = '/scripts/';
|
const dest = '/scripts/';
|
||||||
const fileList = [
|
const fileList = [
|
||||||
'lib/arg-parser.js',
|
'lib/arg-parser.js',
|
||||||
|
Loading…
Reference in New Issue
Block a user