mirror of
https://github.com/bitburner-official/bitburner-src.git
synced 2026-04-16 06:18:42 +02:00
Compare commits
397 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a564957092 | ||
|
|
4b8e63f342 | ||
|
|
4de20f8cce | ||
|
|
4b38d296a8 | ||
|
|
6561413137 | ||
|
|
b67c03ff8a | ||
|
|
ee5a70901b | ||
|
|
63b2c77907 | ||
|
|
474befa091 | ||
|
|
cd1c1ce145 | ||
|
|
5aa24f22c4 | ||
|
|
f02c6443cc | ||
|
|
4497143785 | ||
|
|
0b3c48827b | ||
|
|
86de11e794 | ||
|
|
fb87385704 | ||
|
|
b1caea796a | ||
|
|
2dfd19c9e0 | ||
|
|
0e24020796 | ||
|
|
ed62a3ebc2 | ||
|
|
258716388e | ||
|
|
73ec97db87 | ||
|
|
567c5dc230 | ||
|
|
980665b77c | ||
|
|
dcddc0c2d5 | ||
|
|
6e1100750e | ||
|
|
df457a0c6e | ||
|
|
ee3530d9b9 | ||
|
|
1a1a43c1ce | ||
|
|
d6b349b6ff | ||
|
|
5c92360310 | ||
|
|
1fbb971d6f | ||
|
|
fa78b3f421 | ||
|
|
9af9bf58b6 | ||
|
|
99afb156fa | ||
|
|
8d550157bc | ||
|
|
4865563f26 | ||
|
|
cc8de58cff | ||
|
|
58ada6d128 | ||
|
|
ae6f95b59a | ||
|
|
99d4f17cdb | ||
|
|
33f0efd49c | ||
|
|
988ca37764 | ||
|
|
0e9d7450c9 | ||
|
|
78cd319c21 | ||
|
|
7367167019 | ||
|
|
392f164f8e | ||
|
|
e4b2a6853d | ||
|
|
697a8119b0 | ||
|
|
b31b3dc735 | ||
|
|
5848fa53b7 | ||
|
|
539b206cb5 | ||
|
|
0f92890f0c | ||
|
|
056f0213dd | ||
|
|
41871de26c | ||
|
|
5803ddc613 | ||
|
|
99263309ba | ||
|
|
8a78ee4cf6 | ||
|
|
af46324c6d | ||
|
|
42aa6525a6 | ||
|
|
05b1b55e9a | ||
|
|
febf0835c2 | ||
|
|
94ea0d253c | ||
|
|
31cf02e8e4 | ||
|
|
97fdf7cb7f | ||
|
|
2c7fbc03cf | ||
|
|
07cca48a17 | ||
|
|
43d0fcb9f9 | ||
|
|
99b8dfa0c1 | ||
|
|
4cdd65e96c | ||
|
|
9e345b1375 | ||
|
|
9466017906 | ||
|
|
9c24f1325f | ||
|
|
26401fbb93 | ||
|
|
69dfbb6673 | ||
|
|
5863797b03 | ||
|
|
25f546c691 | ||
|
|
67e5e413e4 | ||
|
|
796d91835c | ||
|
|
be8d56ced9 | ||
|
|
0671c48c86 | ||
|
|
94388ba6af | ||
|
|
306fe97ed8 | ||
|
|
c9b47ac3a6 | ||
|
|
8c9f78394b | ||
|
|
643d2525c5 | ||
|
|
cb6e7ef5e9 | ||
|
|
f7f9065472 | ||
|
|
1e3af43ab3 | ||
|
|
e18aa08eeb | ||
|
|
5a75581b38 | ||
|
|
0d3bc1ea1f | ||
|
|
547324a813 | ||
|
|
fa64186120 | ||
|
|
9b593758c3 | ||
|
|
a55fd5046b | ||
|
|
0e177841ac | ||
|
|
0cd17cd3b3 | ||
|
|
04c0c87242 | ||
|
|
43b09a2459 | ||
|
|
8731a02ef0 | ||
|
|
30abcec74a | ||
|
|
ae15914efa | ||
|
|
1aa141b87e | ||
|
|
55d1ebd0e4 | ||
|
|
06ac63aece | ||
|
|
f706fee3d1 | ||
|
|
f554398a7f | ||
|
|
abe204109e | ||
|
|
434dd2b58d | ||
|
|
4c8d0acbd9 | ||
|
|
96847b5d27 | ||
|
|
8facdd2b49 | ||
|
|
8e2b5cfccb | ||
|
|
2c7a4f4ce6 | ||
|
|
1ca52e2b77 | ||
|
|
2248c083c8 | ||
|
|
37ec5c733f | ||
|
|
321dca4993 | ||
|
|
19f51b684b | ||
|
|
39b4048603 | ||
|
|
2b1ec7d573 | ||
|
|
2b13b5329f | ||
|
|
6661473adc | ||
|
|
d6a7471e0b | ||
|
|
9996232751 | ||
|
|
cdd376f2ae | ||
|
|
00a5085cdf | ||
|
|
4cd17607e6 | ||
|
|
1b734be895 | ||
|
|
6a8aa79396 | ||
|
|
34b3843e18 | ||
|
|
dd75c1b2d2 | ||
|
|
6d072d766d | ||
|
|
7875d1ba93 | ||
|
|
0e458a8142 | ||
|
|
8ab571d54d | ||
|
|
d9da1a8568 | ||
|
|
b946886295 | ||
|
|
3bb74ceebe | ||
|
|
e24c5b3cce | ||
|
|
527455bada | ||
|
|
efdd8482d7 | ||
|
|
4180ceae17 | ||
|
|
9e04aef8d2 | ||
|
|
0fc6f90863 | ||
|
|
0cb821b50d | ||
|
|
14af88c3fc | ||
|
|
61dded637d | ||
|
|
4623bb3a0b | ||
|
|
4f7fb1cd62 | ||
|
|
0b401ba83b | ||
|
|
40813d5c4f | ||
|
|
687a2f8852 | ||
|
|
150a3b03f4 | ||
|
|
42935a217d | ||
|
|
2c2548f856 | ||
|
|
141f2a8331 | ||
|
|
5b9d2e36c6 | ||
|
|
80125d1521 | ||
|
|
ed041743c2 | ||
|
|
f9ff45fbed | ||
|
|
fc5e0ea6a0 | ||
|
|
66ff040e38 | ||
|
|
49cc25479e | ||
|
|
4bd1813b45 | ||
|
|
8259c1a5b9 | ||
|
|
c793a076db | ||
|
|
e320a8339a | ||
|
|
1427a0f1ae | ||
|
|
17315733a7 | ||
|
|
29d7134859 | ||
|
|
4ac91f5599 | ||
|
|
a3496cdfa9 | ||
|
|
b88990444b | ||
|
|
e9eae40891 | ||
|
|
0ec05f3fe2 | ||
|
|
21611ec571 | ||
|
|
e7fde38bf9 | ||
|
|
c47990ef56 | ||
|
|
23cefed8d4 | ||
|
|
d86fb0262a | ||
|
|
aef0cc815e | ||
|
|
e0436a4314 | ||
|
|
1ad0fbe2e1 | ||
|
|
db21010fe4 | ||
|
|
0535a0c49b | ||
|
|
6314000bd0 | ||
|
|
a05335d6e2 | ||
|
|
54114dc6d0 | ||
|
|
1b6058dd0a | ||
|
|
75227233f3 | ||
|
|
8d80ecffd4 | ||
|
|
57ab1d885b | ||
|
|
34c2c70a2b | ||
|
|
0ef09a1c73 | ||
|
|
264e0b2e1a | ||
|
|
5755db4979 | ||
|
|
84b49bb5e9 | ||
|
|
fb89b824d9 | ||
|
|
fee661b451 | ||
|
|
a40d0bb6e0 | ||
|
|
f7f22ac7ef | ||
|
|
8fba3c3fa4 | ||
|
|
a72560bf25 | ||
|
|
21211e7d08 | ||
|
|
d627890047 | ||
|
|
a1e0d40963 | ||
|
|
ca8fc54400 | ||
|
|
cf67213c36 | ||
|
|
51b2175c35 | ||
|
|
531c0ce5c0 | ||
|
|
ad9c01ac50 | ||
|
|
0f266eaa42 | ||
|
|
674ce17834 | ||
|
|
e611ab7bc7 | ||
|
|
60d6d49c43 | ||
|
|
75b2806c93 | ||
|
|
04b57f07a9 | ||
|
|
a2d924e1c6 | ||
|
|
f14f65814a | ||
|
|
04921520d8 | ||
|
|
9d1e132d11 | ||
|
|
eb84652e19 | ||
|
|
7fedd1f1f5 | ||
|
|
ba4169268c | ||
|
|
5bf21c0ab2 | ||
|
|
670587a07d | ||
|
|
4dc206bb3e | ||
|
|
a7389f63b8 | ||
|
|
8ba63f4951 | ||
|
|
b28f607056 | ||
|
|
218a9dd250 | ||
|
|
7a1fdd6c28 | ||
|
|
b69a262faf | ||
|
|
66c87b1f64 | ||
|
|
9bc1a4a895 | ||
|
|
7a0d0b3fec | ||
|
|
dd077152f4 | ||
|
|
2347e0b1fd | ||
|
|
188dcbad89 | ||
|
|
eb7004feaa | ||
|
|
062cd2dc38 | ||
|
|
2f3e5c79e7 | ||
|
|
bd172434d1 | ||
|
|
afc1347d3a | ||
|
|
b9c292f7cf | ||
|
|
6df824613e | ||
|
|
de113a7b92 | ||
|
|
4ec14460b6 | ||
|
|
3f63d91448 | ||
|
|
2ae9a3d2a7 | ||
|
|
ae04b7357e | ||
|
|
bf141c7eb0 | ||
|
|
1503d82e35 | ||
|
|
a75efd9c62 | ||
|
|
299e964e2b | ||
|
|
69fbfe87c0 | ||
|
|
60a229030b | ||
|
|
e27b19ffae | ||
|
|
5e2c40ea23 | ||
|
|
8411de8e42 | ||
|
|
525c0ada55 | ||
|
|
0e06565e27 | ||
|
|
5e517d1671 | ||
|
|
1b57c1f7e0 | ||
|
|
0cb2fd1a87 | ||
|
|
08b0c7710d | ||
|
|
f8a085af7a | ||
|
|
c95a926154 | ||
|
|
5af10c8406 | ||
|
|
0f2b7517b4 | ||
|
|
ac8565d820 | ||
|
|
2adcf79264 | ||
|
|
2bd4892fa8 | ||
|
|
46862d30fd | ||
|
|
fccf2b5cb4 | ||
|
|
f6af61d15b | ||
|
|
b35d8475e3 | ||
|
|
04e8bc944e | ||
|
|
d96ad9fa6e | ||
|
|
5dd32ef4e4 | ||
|
|
6dde89f3c4 | ||
|
|
9a9d2e1f81 | ||
|
|
d347bf568e | ||
|
|
62e2f0582a | ||
|
|
68eb68a89e | ||
|
|
13206a8c3e | ||
|
|
cfd78e2d36 | ||
|
|
8b7f140115 | ||
|
|
16c8c78b54 | ||
|
|
cbb47772db | ||
|
|
0642491402 | ||
|
|
c7e34d4a56 | ||
|
|
8be63be17b | ||
|
|
08207ac79b | ||
|
|
6747a509ff | ||
|
|
c7c86240db | ||
|
|
ce0c3d71f4 | ||
|
|
5bb6a72c90 | ||
|
|
5a06c60c27 | ||
|
|
764c2533b4 | ||
|
|
a9cee6f907 | ||
|
|
a10100bf60 | ||
|
|
cedac23dfa | ||
|
|
f7c1d64033 | ||
|
|
7d6d0eac32 | ||
|
|
34768591b7 | ||
|
|
827c79f70c | ||
|
|
0415c7aa7c | ||
|
|
0c744d98b9 | ||
|
|
11cbda6974 | ||
|
|
e284f49747 | ||
|
|
7777c400a5 | ||
|
|
dae0448744 | ||
|
|
02a4e85353 | ||
|
|
3cbf225c98 | ||
|
|
8006e976a5 | ||
|
|
5613d371c9 | ||
|
|
7c9d6669f7 | ||
|
|
c6f0551709 | ||
|
|
f57eed4de1 | ||
|
|
b99711788f | ||
|
|
08aac8e35d | ||
|
|
e3579b7229 | ||
|
|
662d0dd5fb | ||
|
|
77c40b5d67 | ||
|
|
ee759a8dd6 | ||
|
|
ad9c7ec696 | ||
|
|
c9b5aaa2f7 | ||
|
|
b554328a77 | ||
|
|
c421c57e56 | ||
|
|
fb42d5cd79 | ||
|
|
6203d8d6f4 | ||
|
|
d422028737 | ||
|
|
136d769d55 | ||
|
|
daaab1d6f1 | ||
|
|
4f7befb639 | ||
|
|
9976ed136c | ||
|
|
8c2e661e08 | ||
|
|
e6e598eeb4 | ||
|
|
4d9439a007 | ||
|
|
9951c8b18f | ||
|
|
800c673839 | ||
|
|
065544909b | ||
|
|
4eaf68c940 | ||
|
|
a14a694df3 | ||
|
|
3ab61cbaf3 | ||
|
|
f49aff05d7 | ||
|
|
e2371a0ef6 | ||
|
|
6a2b3ee52e | ||
|
|
5a45e3584d | ||
|
|
56ce83cce5 | ||
|
|
d126b6d8c5 | ||
|
|
7172ef6dae | ||
|
|
a8d0b6e13d | ||
|
|
d2d6453a78 | ||
|
|
89cdecb05f | ||
|
|
81fdff9068 | ||
|
|
34a20802c9 | ||
|
|
6d53ff109b | ||
|
|
8eab9f3b59 | ||
|
|
f40faadcc4 | ||
|
|
fb129198a6 | ||
|
|
3eecff1de6 | ||
|
|
d745150c45 | ||
|
|
abe0330dc3 | ||
|
|
3fad505096 | ||
|
|
b2ac383b69 | ||
|
|
77cb63e36a | ||
|
|
7df4aac8e6 | ||
|
|
50b490ba8d | ||
|
|
15bd8a6233 | ||
|
|
20c593b236 | ||
|
|
52a80ad236 | ||
|
|
b2aafea656 | ||
|
|
135df8703c | ||
|
|
4743801e86 | ||
|
|
4e5ebcfe6f | ||
|
|
80b703639e | ||
|
|
0afdba8f38 | ||
|
|
925e96345d | ||
|
|
db2bf79e3b | ||
|
|
6f330efc44 | ||
|
|
708c73fa0f | ||
|
|
c7febd5551 | ||
|
|
ddbdf66d00 | ||
|
|
e572c6dad8 | ||
|
|
ff097db1e2 | ||
|
|
ad12f0e551 | ||
|
|
93f8785ec6 | ||
|
|
8e79658e67 | ||
|
|
9840e1f4eb | ||
|
|
d170693da4 | ||
|
|
8f30e60d08 | ||
|
|
101834fcaf | ||
|
|
63da8d709a |
14
.dockerignore
Normal file
14
.dockerignore
Normal file
@@ -0,0 +1,14 @@
|
||||
node_modules/
|
||||
|
||||
.git
|
||||
.gitattributes
|
||||
.gitignore
|
||||
.editorconfig
|
||||
|
||||
.dockerignore
|
||||
Dockerfile
|
||||
docker-compose.yml
|
||||
|
||||
*.md
|
||||
Quotes.txt
|
||||
netscript_tests/
|
||||
@@ -2,3 +2,7 @@ node_modules/
|
||||
doc/build/
|
||||
dist/
|
||||
tests/*.bundle.*
|
||||
src/ThirdParty/*
|
||||
src/ScriptEditor/CodeMirrorNetscriptMode.js
|
||||
src/ScriptEditor/CodeMirrorNetscriptLint.js
|
||||
src/JSInterpreter.js
|
||||
627
.eslintrc.js
627
.eslintrc.js
File diff suppressed because it is too large
Load Diff
35
Dockerfile
Normal file
35
Dockerfile
Normal file
@@ -0,0 +1,35 @@
|
||||
FROM node:15.14.0 AS base
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
# Scripts used in the npm preinstall hook
|
||||
COPY scripts/engines-check.js scripts/semver.js scripts/
|
||||
|
||||
# Adding our dependencies and install before adding the rest of the files
|
||||
# This prevents reinstallation of npm packages for every subsequent code modification
|
||||
ENV npm_config_update_notifier=false
|
||||
COPY package.json package-lock.json ./
|
||||
RUN npm ci --loglevel=error --no-audit --no-fund && npm rebuild node-sass
|
||||
|
||||
# Adding all the remaining source files
|
||||
COPY . .
|
||||
|
||||
# We need more than the default 512MB otherwise webpack will throw 'heap out of memory' exceptions
|
||||
# https://nodejs.org/api/cli.html#cli_max_old_space_size_size_in_megabytes
|
||||
ENV NODE_OPTIONS=--max-old-space-size=1536
|
||||
|
||||
FROM base AS dev
|
||||
# This is the main development build using the file watcher if you mount volumes
|
||||
USER node
|
||||
EXPOSE 8000
|
||||
CMD npm run start:container
|
||||
|
||||
FROM base AS prod-dist
|
||||
# We'll simply build the production dist files here to later reuse in a simple webserver
|
||||
RUN npm run build
|
||||
|
||||
FROM nginx:1.20.0-alpine AS prod
|
||||
WORKDIR /usr/share/nginx/html
|
||||
COPY --from=prod-dist /app/dist ./dist
|
||||
COPY --from=prod-dist /app/index.html /app/favicon.ico /app/license.txt ./
|
||||
EXPOSE 80
|
||||
@@ -1,13 +1,13 @@
|
||||
Collection of Quotes
|
||||
|
||||
The past is relevant only as data
|
||||
The past is relevant only as data.
|
||||
|
||||
Pull on the new flesh like borrowed gloves and burn your fingers once again.
|
||||
|
||||
A weapon is a tool. A tool for killing and destroying. And there will be times
|
||||
when you must kill and destroy. Then you will choose and equip yourself with the tools
|
||||
that you need. But remember the weakness of weapons. They are an extension --
|
||||
You are the killer and destroyer. You are whole, with or without them.
|
||||
you are the killer and destroyer. You are whole, with or without them.
|
||||
|
||||
For all that we have done, as a civilization, as individuals, the universe is
|
||||
not stable, and nor is any single thing within it. Stars consume themselves,
|
||||
|
||||
23
README_contribution.md
Normal file
23
README_contribution.md
Normal file
@@ -0,0 +1,23 @@
|
||||
Deploying a new version
|
||||
-----------------------
|
||||
|
||||
Update the following
|
||||
- `src/Constants.ts` `Version` and `LatestUpdate`
|
||||
- `package.json` `version`
|
||||
- `doc/source/conf.py` `version` and `release`
|
||||
- `doc/source/changelog.rst`
|
||||
- post to discord
|
||||
- post to reddit.com/r/Bitburner
|
||||
|
||||
Deploying `dev` to the Beta Branch
|
||||
----------------------------------
|
||||
|
||||
TODO
|
||||
|
||||
Development Workflow Best Practices
|
||||
-----------------------------------
|
||||
|
||||
- Work in a new branch forked from the `dev` branch to isolate your new code
|
||||
- Keep code-changes on a branch as small as possible. This makes it easier for code review. Each branch should be its own independent feature.
|
||||
- Regularly rebase your branch against `dev` to make sure you have the latest updates pulled.
|
||||
- When merging, always merge your branch into `dev`. When releasing a new update, then merge `dev` into `master`
|
||||
@@ -27,5 +27,4 @@
|
||||
button {
|
||||
padding: 4px;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -80,7 +80,7 @@
|
||||
transform: rotate(-45deg);
|
||||
}
|
||||
}
|
||||
input[type=checkbox] {
|
||||
input[type="checkbox"] {
|
||||
margin: 3px;
|
||||
visibility: hidden;
|
||||
&:checked + label:after {
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
@import "mixins";
|
||||
@import "theme";
|
||||
@import "styles";
|
||||
|
||||
/**
|
||||
* Styling for all buttons
|
||||
@@ -16,6 +17,7 @@ button {
|
||||
|
||||
.a-link-button,
|
||||
.std-button {
|
||||
@extend .noselect;
|
||||
text-decoration: none;
|
||||
background-color: #555;
|
||||
color: #fff;
|
||||
@@ -23,11 +25,6 @@ button {
|
||||
margin: 5px;
|
||||
border: 1px solid #333;
|
||||
|
||||
-moz-user-select: none;
|
||||
-ms-user-select: none;
|
||||
-khtml-user-select: none;
|
||||
-webkit-user-select: none;
|
||||
|
||||
&:hover {
|
||||
background-color: #666;
|
||||
}
|
||||
@@ -68,6 +65,7 @@ button {
|
||||
|
||||
.a-link-button-bought,
|
||||
.std-button-bought {
|
||||
@extend .noselect;
|
||||
text-decoration: none;
|
||||
background-color: #0a0;
|
||||
color: #fff;
|
||||
|
||||
24
css/casino.scss
Normal file
24
css/casino.scss
Normal file
@@ -0,0 +1,24 @@
|
||||
.casino-card {
|
||||
padding: 10px;
|
||||
border: solid 1px #808080;
|
||||
background-color: white;
|
||||
display: inline-block;
|
||||
border-radius: 10px;
|
||||
font-size: 14pt;
|
||||
text-align: center;
|
||||
margin: 3px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.casino-card .value {
|
||||
font-size: 15pt;
|
||||
font-family: sans-serif;
|
||||
}
|
||||
|
||||
.casino-card.red {
|
||||
color: red;
|
||||
}
|
||||
|
||||
.casino-card.black {
|
||||
color: black;
|
||||
}
|
||||
@@ -43,14 +43,8 @@
|
||||
background-color: #444;
|
||||
}
|
||||
|
||||
.character-stat-cell {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
#character-hack-wrapper td,
|
||||
#character-agi-wrapper td {
|
||||
border-bottom: 1px #aaa solid;
|
||||
padding-bottom: 10px;
|
||||
.character-stat-cell {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
#character-str-wrapper td,
|
||||
@@ -58,6 +52,11 @@
|
||||
padding-top: 10px;
|
||||
}
|
||||
|
||||
.character-divider td {
|
||||
border-top: 1px #aaa solid;
|
||||
padding-top: 10px;
|
||||
}
|
||||
|
||||
#character-hp-wrapper { color: $my-stat-hp-color; }
|
||||
.character-hp-cell { color: $my-stat-hp-color; }
|
||||
#character-money-wrapper { color: $my-stat-money-color; }
|
||||
@@ -69,6 +68,8 @@
|
||||
#character-int-wrapper { color: $my-stat-int-color; }
|
||||
.character-int-cell { color: $my-stat-int-color; }
|
||||
.character-combat-cell { color: $my-stat-physical; }
|
||||
#character-work-wrapper { color: $my-stat-hack-color; }
|
||||
.character-work-cell { color: $my-stat-hack-color; }
|
||||
|
||||
.character-overview-btn {
|
||||
@include borderRadius(12px);
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
#codemirror-form-wrapper {
|
||||
height: 80%;
|
||||
margin: 10px 0px 0px 6px;
|
||||
margin: 10px 0 0 6px;
|
||||
}
|
||||
|
||||
.CodeMirror {
|
||||
@@ -22,11 +22,11 @@
|
||||
* Highlight matches
|
||||
*/
|
||||
.cm-matchhighlight {
|
||||
background-color: #8F908A;
|
||||
background-color: #8f908a;
|
||||
}
|
||||
|
||||
.CodeMirror-selection-highlight-scrollbar {
|
||||
background-color: #8F908A;
|
||||
background-color: #8f908a;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -35,7 +35,7 @@
|
||||
.cm-whitespace::before {
|
||||
position: absolute;
|
||||
pointer-events: none;
|
||||
color: #404F7D;
|
||||
color: #404f7d;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,36 +1,32 @@
|
||||
.add-exp-button {
|
||||
margin-right: 0px;
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
.remove-exp-button {
|
||||
margin-left:0px;
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
.exp-input {
|
||||
margin-right: 0px;
|
||||
margin-left:0px;
|
||||
|
||||
margin-top: 5px;
|
||||
margin-bottom: 5px;
|
||||
margin: 5px 0 5px 0;
|
||||
|
||||
padding: 2px 5px;
|
||||
padding: 2px 5px;
|
||||
}
|
||||
|
||||
.text-center {
|
||||
margin: auto;
|
||||
text-align: center;
|
||||
vertical-align: middle;
|
||||
margin: auto;
|
||||
text-align: center;
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
.touch-right {
|
||||
margin-right: 0px;
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
.touch-left {
|
||||
margin-left: 0px;
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
.touch-sides {
|
||||
margin-left: 0px;
|
||||
margin-right: 0px;
|
||||
}
|
||||
margin-left: 0;
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
3
css/grid.min.css
vendored
3
css/grid.min.css
vendored
File diff suppressed because one or more lines are too long
56
css/infiltration.scss
Normal file
56
css/infiltration.scss
Normal file
@@ -0,0 +1,56 @@
|
||||
@import "theme";
|
||||
|
||||
.blinking-cursor {
|
||||
font-weight: 100;
|
||||
color: #2E3D48;
|
||||
-webkit-animation: 1s cursorblink step-end infinite;
|
||||
-moz-animation: 1s cursorblink step-end infinite;
|
||||
-ms-animation: 1s cursorblink step-end infinite;
|
||||
-o-animation: 1s cursorblink step-end infinite;
|
||||
animation: 1s cursorblink step-end infinite;
|
||||
}
|
||||
|
||||
@keyframes "cursorblink" {
|
||||
from, to {
|
||||
color: transparent;
|
||||
}
|
||||
50% {
|
||||
color: $hacker-green;
|
||||
}
|
||||
}
|
||||
|
||||
@-moz-keyframes cursorblink {
|
||||
from, to {
|
||||
color: transparent;
|
||||
}
|
||||
50% {
|
||||
color: $hacker-green;
|
||||
}
|
||||
}
|
||||
|
||||
@-webkit-keyframes "cursorblink" {
|
||||
from, to {
|
||||
color: transparent;
|
||||
}
|
||||
50% {
|
||||
color: $hacker-green;
|
||||
}
|
||||
}
|
||||
|
||||
@-ms-keyframes "cursorblink" {
|
||||
from, to {
|
||||
color: transparent;
|
||||
}
|
||||
50% {
|
||||
color: $hacker-green;
|
||||
}
|
||||
}
|
||||
|
||||
@-o-keyframes "cursorblink" {
|
||||
from, to {
|
||||
color: transparent;
|
||||
}
|
||||
50% {
|
||||
color: $hacker-green;
|
||||
}
|
||||
}
|
||||
@@ -69,3 +69,22 @@
|
||||
float: right;
|
||||
padding: 4px;
|
||||
}
|
||||
|
||||
.interactive-tutorial-command {
|
||||
background-color: #000;
|
||||
color: $hacker-green;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.interactive-tutorial-code {
|
||||
background-color: #272822;
|
||||
color: white;
|
||||
padding: 3px;
|
||||
}
|
||||
|
||||
.interactive-tutorial-tab {
|
||||
background-color: #555;
|
||||
color: #e6e6e6;
|
||||
padding: 3px;
|
||||
box-shadow: 0 0 3px #000;
|
||||
}
|
||||
@@ -150,39 +150,6 @@
|
||||
/* Infiltration */
|
||||
#infiltration-container {
|
||||
position: fixed;
|
||||
padding: 6px;
|
||||
|
||||
span {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
}
|
||||
|
||||
#infiltration-left-panel,
|
||||
#infiltration-right-panel {
|
||||
display: inline-block;
|
||||
border: 1px solid #fff;
|
||||
width: 35%;
|
||||
height: 75%;
|
||||
top: 10px;
|
||||
overflow-y: auto;
|
||||
overflow-x: auto;
|
||||
}
|
||||
|
||||
#infiltration-faction-select {
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
#infiltration-left-panel p,
|
||||
#infiltration-right-panel p {
|
||||
margin: 4px;
|
||||
}
|
||||
|
||||
#infiltration-buttons {
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
#infiltration-buttons .a-link-button {
|
||||
display: inline;
|
||||
width: 25%;
|
||||
margin: 5px;
|
||||
width: 70%;
|
||||
}
|
||||
|
||||
5
css/milestones.scss
Normal file
5
css/milestones.scss
Normal file
@@ -0,0 +1,5 @@
|
||||
#milestones-container {
|
||||
position: fixed;
|
||||
padding: 6px;
|
||||
width: 60%;
|
||||
}
|
||||
@@ -1,5 +1,6 @@
|
||||
@import "mixins";
|
||||
@import "theme";
|
||||
@import "styles";
|
||||
|
||||
/* Pop-up boxes */
|
||||
.popup-box-container {
|
||||
@@ -12,7 +13,6 @@
|
||||
justify-content: center;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
overflow: auto;
|
||||
background-color: rbga(var(--my-background-color), 0.4);
|
||||
}
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
width: 70%;
|
||||
max-height: 80%;
|
||||
overflow-y: auto;
|
||||
z-index: 11; /* Sit on top of the container */
|
||||
color: var(--my-font-color);
|
||||
}
|
||||
|
||||
@@ -56,8 +57,7 @@
|
||||
background-color: #000;
|
||||
}
|
||||
|
||||
.dialog-box-container,
|
||||
#log-box-container {
|
||||
.dialog-box-container {
|
||||
display: block;
|
||||
position: absolute;
|
||||
z-index: 10;
|
||||
@@ -72,8 +72,47 @@
|
||||
border: 5px solid var(--my-highlight-color);
|
||||
}
|
||||
|
||||
.dialog-box-content,
|
||||
#log-box-content {
|
||||
|
||||
.log-box-container {
|
||||
display: flex;
|
||||
flex-flow: column;
|
||||
background-color: gray;
|
||||
width: 50%;
|
||||
position: absolute;
|
||||
left: 50%;
|
||||
top: 40%;
|
||||
margin: -10% 0 0 -25%;
|
||||
height: auto;
|
||||
max-height: 50%;
|
||||
z-index: 10;
|
||||
background-color: var(--my-background-color);
|
||||
border: 2px solid var(--my-highlight-color);
|
||||
}
|
||||
|
||||
.log-box-header {
|
||||
background-color: #333;
|
||||
border: 1px solid var(--my-highlight-color);
|
||||
display: flex;
|
||||
flex: row nowrap;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.log-box-log-container {
|
||||
overflow-y: auto;
|
||||
}
|
||||
|
||||
.log-box-button {
|
||||
color: #aaa;
|
||||
font-size: $defaultFontSize;
|
||||
font-weight: bold;
|
||||
padding: 2px;
|
||||
margin: 6px;
|
||||
border: 1px solid #fff;
|
||||
background-color: #000;
|
||||
}
|
||||
|
||||
.dialog-box-content {
|
||||
z-index: 2;
|
||||
background-color: var(--my-background-color);
|
||||
padding: 10px;
|
||||
@@ -87,6 +126,7 @@
|
||||
.dialog-box-close-button {
|
||||
@include borderRadius(12px);
|
||||
@include boxShadow(1px 1px 3px #000);
|
||||
@extend .noselect;
|
||||
|
||||
float: right;
|
||||
color: #aaa;
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
}
|
||||
|
||||
&.level-2 {
|
||||
color: #48D1CC;
|
||||
color: #48d1cc;
|
||||
}
|
||||
|
||||
&.level-3 {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/**
|
||||
/**
|
||||
* Styling for the Re-Sleeving Page
|
||||
*/
|
||||
@import "theme";
|
||||
@@ -15,7 +15,7 @@
|
||||
|
||||
.resleeve-panel {
|
||||
display: inline-block;
|
||||
margin: 0px;
|
||||
margin: 0;
|
||||
padding: 2px;
|
||||
}
|
||||
|
||||
|
||||
@@ -9,19 +9,6 @@
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
#ace-editor {
|
||||
margin: 10px;
|
||||
height: 80%;
|
||||
width: 100%;
|
||||
margin-left: 6px;
|
||||
padding-left: 6px;
|
||||
padding-top: 6px;
|
||||
padding-bottom: 6px;
|
||||
border: 2px solid var(--my-highlight-color);
|
||||
z-index: 1;
|
||||
font-family: $fontFamily;
|
||||
}
|
||||
|
||||
/* This temp element is used for auto adjusting filename field */
|
||||
.tmp-element {
|
||||
visibility: hidden;
|
||||
@@ -47,7 +34,6 @@
|
||||
|
||||
#script-editor-filename-wrapper {
|
||||
background-color: #555;
|
||||
margin-left: 6px;
|
||||
margin-right: 0;
|
||||
padding-left: 6px;
|
||||
width: 100%;
|
||||
@@ -108,17 +94,14 @@
|
||||
}
|
||||
}
|
||||
|
||||
/* Specific overrides for Ace Editor */
|
||||
.ace_line,
|
||||
.ace_line * {
|
||||
background-color: transparent;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
.editor-options-container {
|
||||
display: flex;
|
||||
flex-flow: column;
|
||||
}
|
||||
|
||||
.ace_text-input {
|
||||
font-size: $defaultFontSize;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
/* Specified overrides for Code mirror Editor are defined in codemirror-override.scss */
|
||||
.editor-options-line {
|
||||
display: flex;
|
||||
flex: row nowrap;
|
||||
align-items: center;
|
||||
justify-content: start;
|
||||
}
|
||||
@@ -20,7 +20,7 @@
|
||||
|
||||
.sleeve-panel {
|
||||
display: inline-block;
|
||||
margin: 0px;
|
||||
margin: 0;
|
||||
padding: 2px;
|
||||
|
||||
select {
|
||||
|
||||
@@ -17,6 +17,8 @@ body {
|
||||
p,
|
||||
pre,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
.text,
|
||||
td {
|
||||
color: var(--my-font-color);
|
||||
@@ -36,6 +38,10 @@ li {
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
br {
|
||||
@extend .noselect;
|
||||
}
|
||||
|
||||
#entire-game-container {
|
||||
background-color: transparent;
|
||||
}
|
||||
@@ -228,14 +234,15 @@ a:visited {
|
||||
}
|
||||
|
||||
.status-text {
|
||||
display: inline-block;
|
||||
position: fixed;
|
||||
z-index: 2;
|
||||
-webkit-animation: status-text 3s 1;
|
||||
}
|
||||
|
||||
#status-text-container {
|
||||
background-color: transparent;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 50%;
|
||||
}
|
||||
|
||||
#status-text {
|
||||
@@ -356,43 +363,68 @@ a:visited {
|
||||
color: $my-stat-cha-color;
|
||||
}
|
||||
|
||||
.reputation {
|
||||
color: $light-yellow;
|
||||
}
|
||||
|
||||
.smallfont {
|
||||
font-size: $defaultFontSize * 0.8125;
|
||||
}
|
||||
|
||||
input[type=checkbox] {
|
||||
.samefont {
|
||||
font-size: inherit;
|
||||
}
|
||||
|
||||
.noscrollbar {
|
||||
-ms-overflow-style: none; /* IE and Edge */
|
||||
/* stylelint-disable-next-line property-no-unknown */
|
||||
scrollbar-width: none; /* Firefox https://developer.mozilla.org/en-US/docs/Web/CSS/scrollbar-width */
|
||||
}
|
||||
|
||||
.noscrollbar::-webkit-scrollbar {
|
||||
display: none;
|
||||
}
|
||||
|
||||
input[type="checkbox"] {
|
||||
filter: invert(1) sepia(1) hue-rotate(41deg) brightness(100%) saturate(10);
|
||||
}
|
||||
|
||||
.optionCheckbox {
|
||||
margin: 5px;
|
||||
float: right;
|
||||
margin: 5px;
|
||||
float: right;
|
||||
}
|
||||
|
||||
.optionRange {
|
||||
-webkit-appearance: none;
|
||||
background: #777;
|
||||
outline: none;
|
||||
opacity: 0.7;
|
||||
height: 10px;
|
||||
-webkit-transition: .2s;
|
||||
transition: opacity .2s;
|
||||
margin: 3px;
|
||||
-webkit-appearance: none;
|
||||
background: #777;
|
||||
outline: none;
|
||||
opacity: 0.7;
|
||||
height: 10px;
|
||||
-webkit-transition: 0.2s;
|
||||
transition: opacity 0.2s;
|
||||
margin: 3px;
|
||||
}
|
||||
|
||||
|
||||
.optionRange::-webkit-slider-thumb {
|
||||
-webkit-appearance: none;
|
||||
appearance: none;
|
||||
width: 10px;
|
||||
height: 10px;
|
||||
background: var(--my-font-color);
|
||||
cursor: pointer;
|
||||
-webkit-appearance: none;
|
||||
appearance: none;
|
||||
width: 10px;
|
||||
height: 10px;
|
||||
background: var(--my-font-color);
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.optionRange::-moz-range-thumb {
|
||||
width: 10px;
|
||||
height: 10px;
|
||||
background: var(--my-font-color);
|
||||
cursor: pointer;
|
||||
}
|
||||
width: 10px;
|
||||
height: 10px;
|
||||
background: var(--my-font-color);
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.noselect {
|
||||
-moz-user-select: -moz-none;
|
||||
-khtml-user-select: none;
|
||||
-webkit-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
left: 50%;
|
||||
transform: translate(-100%, -100%);
|
||||
|
||||
/* Backwards compatibility */
|
||||
/* Backwards compatibility */
|
||||
-webkit-transform: translate(-100%, -100%);
|
||||
-moz-transform: translate(-100%, -100%);
|
||||
-o-transform: translate(-100%, -100%);
|
||||
@@ -85,3 +85,45 @@
|
||||
.tooltip:hover .tooltiptextlow {
|
||||
visibility: visible;
|
||||
}
|
||||
|
||||
.copy_tooltip {
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.copy_tooltip_copied {
|
||||
color: #fff;
|
||||
transition: color 0.3s;
|
||||
}
|
||||
|
||||
.copy_tooltip .copy_tooltip_text {
|
||||
visibility: hidden;
|
||||
font-size: 15px;
|
||||
padding: 5px;
|
||||
background-color: var(--my-background-color);
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
position: absolute;
|
||||
z-index: 1;
|
||||
top: 120%;
|
||||
left: 5%;
|
||||
opacity: 0;
|
||||
border: 2px solid var(--my-highlight-color);
|
||||
}
|
||||
|
||||
.copy_tooltip .copy_tooltip_text::after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
bottom: 100%;
|
||||
left: 50%;
|
||||
margin-left: -6px;
|
||||
border-width: 8px;
|
||||
border-style: solid;
|
||||
border-color: transparent transparent white transparent;
|
||||
}
|
||||
|
||||
.copy_tooltip .copy_tooltip_text_visible {
|
||||
visibility: visible;
|
||||
opacity: 1;
|
||||
transition: opacity 0.3s;
|
||||
}
|
||||
|
||||
@@ -7,16 +7,16 @@
|
||||
.Treant.Treant-loaded .pseudo { visibility: visible; }
|
||||
.Treant > .pseudo { width: 0; height: 0; border: none; padding: 0; }
|
||||
.Treant .collapse-switch { width: 3px; height: 3px; display: block; border: 1px solid black; position: absolute; top: 1px; right: 1px; cursor: pointer; }
|
||||
.Treant .collapsed .collapse-switch { background-color: #868DEE; }
|
||||
.Treant .collapsed .collapse-switch { background-color: #868dee; }
|
||||
.Treant > .node img { border: none; float: left; }
|
||||
.Treant > .node {
|
||||
cursor: pointer;
|
||||
padding: 4px;
|
||||
min-width: 60px;
|
||||
text-align: center;
|
||||
border: 2px solid #E8E8E3;
|
||||
border-radius: 2px;
|
||||
box-shadow: 1px 1px 1px rgba(0,0,0,.5);
|
||||
padding: 4px;
|
||||
min-width: 60px;
|
||||
text-align: center;
|
||||
border: 2px solid #e8e8e3;
|
||||
border-radius: 2px;
|
||||
box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
margin: 10px;
|
||||
}
|
||||
|
||||
#work-in-progress-cancel-button {
|
||||
.work-button {
|
||||
@include borderRadius(12px);
|
||||
@include boxShadow(1px 1px 3px #000);
|
||||
|
||||
@@ -39,8 +39,8 @@
|
||||
border: 3px solid #fff;
|
||||
}
|
||||
|
||||
#work-in-progress-cancel-button:hover,
|
||||
#work-in-progress-cancel-button:focus {
|
||||
.work-button:hover,
|
||||
.work-button:focus {
|
||||
color: #fff;
|
||||
text-decoration: none;
|
||||
cursor: pointer;
|
||||
|
||||
4
dist/engine.bundle.js
vendored
4
dist/engine.bundle.js
vendored
File diff suppressed because one or more lines are too long
2
dist/engineStyle.bundle.js
vendored
2
dist/engineStyle.bundle.js
vendored
@@ -1,2 +1,2 @@
|
||||
!function(n){function t(t){for(var e,i,f=t[0],c=t[1],l=t[2],p=0,s=[];p<f.length;p++)i=f[p],u[i]&&s.push(u[i][0]),u[i]=0;for(e in c)Object.prototype.hasOwnProperty.call(c,e)&&(n[e]=c[e]);for(a&&a(t);s.length;)s.shift()();return r.push.apply(r,l||[]),o()}function o(){for(var n,t=0;t<r.length;t++){for(var o=r[t],e=!0,f=1;f<o.length;f++){var c=o[f];0!==u[c]&&(e=!1)}e&&(r.splice(t--,1),n=i(i.s=o[0]))}return n}var e={},u={1:0},r=[];function i(t){if(e[t])return e[t].exports;var o=e[t]={i:t,l:!1,exports:{}};return n[t].call(o.exports,o,o.exports,i),o.l=!0,o.exports}i.m=n,i.c=e,i.d=function(n,t,o){i.o(n,t)||Object.defineProperty(n,t,{enumerable:!0,get:o})},i.r=function(n){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(n,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(n,"__esModule",{value:!0})},i.t=function(n,t){if(1&t&&(n=i(n)),8&t)return n;if(4&t&&"object"==typeof n&&n&&n.__esModule)return n;var o=Object.create(null);if(i.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:n}),2&t&&"string"!=typeof n)for(var e in n)i.d(o,e,function(t){return n[t]}.bind(null,e));return o},i.n=function(n){var t=n&&n.__esModule?function(){return n.default}:function(){return n};return i.d(t,"a",t),t},i.o=function(n,t){return Object.prototype.hasOwnProperty.call(n,t)},i.p="";var f=window.webpackJsonp=window.webpackJsonp||[],c=f.push.bind(f);f.push=t,f=f.slice();for(var l=0;l<f.length;l++)t(f[l]);var a=c;r.push([380,0]),o()}({323:function(n,t,o){},325:function(n,t,o){},327:function(n,t,o){},329:function(n,t,o){},331:function(n,t,o){},333:function(n,t,o){},335:function(n,t,o){},337:function(n,t,o){},339:function(n,t,o){},341:function(n,t,o){},343:function(n,t,o){},345:function(n,t,o){},347:function(n,t,o){},349:function(n,t,o){},351:function(n,t,o){},353:function(n,t,o){},355:function(n,t,o){},357:function(n,t,o){},359:function(n,t,o){},361:function(n,t,o){},363:function(n,t,o){},365:function(n,t,o){},367:function(n,t,o){},369:function(n,t,o){},371:function(n,t,o){},373:function(n,t,o){},375:function(n,t,o){},377:function(n,t,o){},380:function(n,t,o){"use strict";o.r(t);o(379),o(377),o(375),o(373),o(371),o(369),o(367),o(365),o(363),o(361),o(359),o(357),o(355),o(353),o(351),o(349),o(347),o(345),o(343),o(341),o(339),o(337),o(335),o(333),o(331),o(329),o(327),o(325),o(323)}});
|
||||
!function(n){function t(t){for(var e,i,f=t[0],c=t[1],l=t[2],p=0,s=[];p<f.length;p++)i=f[p],u[i]&&s.push(u[i][0]),u[i]=0;for(e in c)Object.prototype.hasOwnProperty.call(c,e)&&(n[e]=c[e]);for(a&&a(t);s.length;)s.shift()();return r.push.apply(r,l||[]),o()}function o(){for(var n,t=0;t<r.length;t++){for(var o=r[t],e=!0,f=1;f<o.length;f++){var c=o[f];0!==u[c]&&(e=!1)}e&&(r.splice(t--,1),n=i(i.s=o[0]))}return n}var e={},u={1:0},r=[];function i(t){if(e[t])return e[t].exports;var o=e[t]={i:t,l:!1,exports:{}};return n[t].call(o.exports,o,o.exports,i),o.l=!0,o.exports}i.m=n,i.c=e,i.d=function(n,t,o){i.o(n,t)||Object.defineProperty(n,t,{enumerable:!0,get:o})},i.r=function(n){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(n,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(n,"__esModule",{value:!0})},i.t=function(n,t){if(1&t&&(n=i(n)),8&t)return n;if(4&t&&"object"==typeof n&&n&&n.__esModule)return n;var o=Object.create(null);if(i.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:n}),2&t&&"string"!=typeof n)for(var e in n)i.d(o,e,function(t){return n[t]}.bind(null,e));return o},i.n=function(n){var t=n&&n.__esModule?function(){return n.default}:function(){return n};return i.d(t,"a",t),t},i.o=function(n,t){return Object.prototype.hasOwnProperty.call(n,t)},i.p="";var f=window.webpackJsonp=window.webpackJsonp||[],c=f.push.bind(f);f.push=t,f=f.slice();for(var l=0;l<f.length;l++)t(f[l]);var a=c;r.push([863,0]),o()}({800:function(n,t,o){},802:function(n,t,o){},804:function(n,t,o){},806:function(n,t,o){},808:function(n,t,o){},810:function(n,t,o){},812:function(n,t,o){},814:function(n,t,o){},816:function(n,t,o){},818:function(n,t,o){},820:function(n,t,o){},822:function(n,t,o){},824:function(n,t,o){},826:function(n,t,o){},828:function(n,t,o){},830:function(n,t,o){},832:function(n,t,o){},834:function(n,t,o){},836:function(n,t,o){},838:function(n,t,o){},840:function(n,t,o){},842:function(n,t,o){},844:function(n,t,o){},846:function(n,t,o){},848:function(n,t,o){},850:function(n,t,o){},852:function(n,t,o){},854:function(n,t,o){},856:function(n,t,o){},858:function(n,t,o){},860:function(n,t,o){},863:function(n,t,o){"use strict";o.r(t);o(862),o(860),o(858),o(856),o(854),o(852),o(850),o(848),o(846),o(844),o(842),o(840),o(838),o(836),o(834),o(832),o(830),o(828),o(826),o(824),o(822),o(820),o(818),o(816),o(814),o(812),o(810),o(808),o(806),o(804),o(802),o(800)}});
|
||||
//# sourceMappingURL=engineStyle.bundle.js.map
|
||||
1366
dist/engineStyle.css
vendored
1366
dist/engineStyle.css
vendored
File diff suppressed because it is too large
Load Diff
131
dist/vendor.bundle.js
vendored
131
dist/vendor.bundle.js
vendored
File diff suppressed because one or more lines are too long
5527
dist/vendor.css
vendored
5527
dist/vendor.css
vendored
File diff suppressed because one or more lines are too long
@@ -56,8 +56,3 @@ through destroying BitNodes is:
|
||||
|
||||
* Source-Files
|
||||
* Scripts on the home computer
|
||||
|
||||
BitNode Details
|
||||
^^^^^^^^^^^^^^^
|
||||
|
||||
TODO
|
||||
|
||||
@@ -50,7 +50,7 @@ Duplicate Sleeves. It is a numeral value between 1 and 100, and it affects how m
|
||||
is earned when the sleeve is performing a task.
|
||||
|
||||
Let N be the sleeve's synchronization. When the sleeve earns experience by performing
|
||||
a task, both the sleeve and the player's original host consciousness of N% of the
|
||||
a task, both the sleeve and the player's original host consciousness gain N% of the
|
||||
amount of experience normally earned by the task. All of the player's other sleeves
|
||||
earn ((N/100)^2 * 100)% of the experience.
|
||||
|
||||
|
||||
@@ -15,73 +15,53 @@ of level 3.
|
||||
List of all Source-Files
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
+------------------------------------+-------------------------------------------------------------------------------------+
|
||||
| BitNode-1: Source Genesis | * Lets the player start with 32 GB of RAM on home computer |
|
||||
| | * Increases all of the player's multipliers by 16%/24%/28% |
|
||||
| BitNode-1: Source Genesis | * Lets the player start with 32 GB of RAM on home computer. |
|
||||
| | * Increases all of the player's multipliers by 16%/24%/28%. |
|
||||
+------------------------------------+-------------------------------------------------------------------------------------+
|
||||
| BitNode-2: Rise of the Underworld | * Increases the player's crime success rate, crime money, and |
|
||||
| | charisma multipliers by 24%/36%/42% |
|
||||
| BitNode-2: Rise of the Underworld | * Lets the player create Gangs in other BitNodes (although some |
|
||||
| | BitNodes will disable this mechanic). |
|
||||
| | * Increases the player's crime success rate, crime money, and |
|
||||
| | charisma multipliers by 24%/36%/42%. |
|
||||
+------------------------------------+-------------------------------------------------------------------------------------+
|
||||
| BitNode-3: Corporatocracy | * Lets the player create Corporations in other BitNodes (although some |
|
||||
| | BitNodes will disable this mechanic) |
|
||||
| | * Increases the player's charisma and company salary multipliers by 8%/12%/14% |
|
||||
| | BitNodes will disable this mechanic). |
|
||||
| | * Increases the player's charisma and company salary multipliers by 8%/12%/14%. |
|
||||
+------------------------------------+-------------------------------------------------------------------------------------+
|
||||
| BitNode-4: The Singularity | * Lets the player access and use Netscript Singularity Functions in other BitNodes. |
|
||||
| | * Each level of this Source-File opens up more of the Singularity Functions to use |
|
||||
| | * Each level of this Source-File opens up more of the Singularity Functions to use. |
|
||||
+------------------------------------+-------------------------------------------------------------------------------------+
|
||||
| BitNode-5: Artificial Intelligence | * Unlocks :ref:`gameplay_intelligence` |
|
||||
| | * Unlocks :js:func:`getBitNodeMultipliers` Netscript function |
|
||||
| | * Increases all of the player's hacking-related multipliers by 8%/12%/14% |
|
||||
| BitNode-5: Artificial Intelligence | * Unlocks :ref:`gameplay_intelligence`. |
|
||||
| | * Unlocks :js:func:`getBitNodeMultipliers` and :js:func:`getServer` |
|
||||
| | Netscript functions, as well as :ref:`netscriptformulas`. |
|
||||
| | * Increases all of the player's hacking-related multipliers by 8%/12%/14%. |
|
||||
+------------------------------------+-------------------------------------------------------------------------------------+
|
||||
| BitNode-6: Bladeburners | * Unlocks the Bladeburner feature in other BitNodes |
|
||||
| BitNode-6: Bladeburners | * Unlocks the Bladeburner feature in other BitNodes. |
|
||||
| | * Increases all of the player's level and experience gain rate multipliers for |
|
||||
| | combat stats by 8%/12%/14% |
|
||||
| | combat stats by 8%/12%/14%. |
|
||||
+------------------------------------+-------------------------------------------------------------------------------------+
|
||||
| BitNode-7: Bladeburners 2079 | * Allows the player to access the :ref:`netscript_bladeburnerapi` in other BitNodes |
|
||||
| | * Increases all of the player's Bladeburner multipliers by 8%/12%/14% |
|
||||
| BitNode-7: Bladeburners 2079 | * Allows the player to access the :ref:`netscript_bladeburnerapi` in other BitNodes.|
|
||||
| | * Increases all of the player's Bladeburner multipliers by 8%/12%/14%. |
|
||||
+------------------------------------+-------------------------------------------------------------------------------------+
|
||||
| BitNode-8: Ghost of Wall Street | * Increases the player's hacking growth multiplier by 12%/18%/21% |
|
||||
| BitNode-8: Ghost of Wall Street | * Increases the player's hacking growth multiplier by 12%/18%/21%. |
|
||||
| | * Level 1 grants permanent access to :ref:`WSE <gameplay_stock_market>` and |
|
||||
| | :ref:`TIX API <netscript_tixapi>` |
|
||||
| | * Level 2 grants permanent access to shorting stocks |
|
||||
| | * Level 3 grants permanent access to use limit/stop orders |
|
||||
| | :ref:`TIX API <netscript_tixapi>`. |
|
||||
| | * Level 2 grants permanent access to shorting stocks. |
|
||||
| | * Level 3 grants permanent access to use limit/stop orders. |
|
||||
+------------------------------------+-------------------------------------------------------------------------------------+
|
||||
| BitNode-9: Coming Soon | |
|
||||
| BitNode-9: Hacktocracy | * Level 1 permanently unlocks the Hacknet Server in other BitNodes. |
|
||||
| | * Level 2 lets the player start with 128 GB of RAM on home computer. |
|
||||
| | * Level 3 grants a highly-upgraded Hacknet Server when entering a new BitNode (it |
|
||||
| | will be lost after installing augments). |
|
||||
+------------------------------------+-------------------------------------------------------------------------------------+
|
||||
| BitNode-10: Digital Carbon | * Each level of this grants a Duplicate Sleeve |
|
||||
| | * Allows the player to access the :ref:`netscript_sleeveapi` in other BitNodes |
|
||||
| BitNode-10: Digital Carbon | * Each level of this grants a Duplicate Sleeve. |
|
||||
| | * Allows the player to access the :ref:`netscript_sleeveapi` in other BitNodes. |
|
||||
+------------------------------------+-------------------------------------------------------------------------------------+
|
||||
| BitNode-11: The Big Crash | * Company favor increases both the player's salary and reputation gain at that |
|
||||
| | company by 1% per favor (rather than just the reputation gain) |
|
||||
| | company by 1% per favor (rather than just the reputation gain). |
|
||||
| | * Increases the player's company salary and reputation gain multipliers by |
|
||||
| | 24%/36%/42% |
|
||||
| | 32%/48%/56%. |
|
||||
+------------------------------------+-------------------------------------------------------------------------------------+
|
||||
| BitNode-12: The Recursion | * There is no maximum level for this Source-File |
|
||||
| | * Each level of this Source-File increases all of the player's multipliers by 1%. |
|
||||
| | * This affect is multiplicative with itself. This means that level N of this |
|
||||
| | Source-File will result in a multiplier of 1.01^N (or 0.99^N for multipliers |
|
||||
| | that decrease) |
|
||||
+------------------------------------+-------------------------------------------------------------------------------------+
|
||||
| | |
|
||||
+------------------------------------+-------------------------------------------------------------------------------------+
|
||||
| | |
|
||||
+------------------------------------+-------------------------------------------------------------------------------------+
|
||||
| | |
|
||||
+------------------------------------+-------------------------------------------------------------------------------------+
|
||||
| | |
|
||||
+------------------------------------+-------------------------------------------------------------------------------------+
|
||||
| | |
|
||||
+------------------------------------+-------------------------------------------------------------------------------------+
|
||||
| | |
|
||||
+------------------------------------+-------------------------------------------------------------------------------------+
|
||||
| | |
|
||||
+------------------------------------+-------------------------------------------------------------------------------------+
|
||||
| | |
|
||||
+------------------------------------+-------------------------------------------------------------------------------------+
|
||||
| | |
|
||||
+------------------------------------+-------------------------------------------------------------------------------------+
|
||||
| | |
|
||||
+------------------------------------+-------------------------------------------------------------------------------------+
|
||||
| | |
|
||||
+------------------------------------+-------------------------------------------------------------------------------------+
|
||||
| | |
|
||||
| BitNode-12: The Recursion | * There is no maximum level for this Source-File. |
|
||||
| | * Lets the player start with Neuroflux Governor equal to the level of this |
|
||||
| | Source-File. |
|
||||
+------------------------------------+-------------------------------------------------------------------------------------+
|
||||
|
||||
@@ -11,7 +11,7 @@ user's physical and mental faculties.
|
||||
Augmentations provide persistent upgrades in the form of multipliers.
|
||||
These multipliers apply to a wide variety of things such as stats,
|
||||
experience gain, and hacking, just to name a few. Your multipliers
|
||||
can be viewed in the 'Character' page (:ref:`keyboard shortcut <shortcuts>` Alt + c)
|
||||
can be viewed in the 'Character' page (:ref:`keyboard shortcut <shortcuts>` Alt + c).
|
||||
|
||||
How to acquire Augmentations
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
@@ -35,7 +35,7 @@ List of Factions and their Requirements
|
||||
| Early Game | Faction Name | Requirements | Joining this Faction prevents |
|
||||
| Factions | | | you from joining: |
|
||||
+ +----------------+-----------------------------------------+-------------------------------+
|
||||
| | CyberSec | * Hack CSEC Manually | |
|
||||
| | CyberSec | * Install a backdoor on the CSEC server | |
|
||||
+ +----------------+-----------------------------------------+-------------------------------+
|
||||
| | Tian Di Hui | * $1m | |
|
||||
| | | * Hacking Level 50 | |
|
||||
@@ -74,13 +74,16 @@ List of Factions and their Requirements
|
||||
| | | | * New Tokyo |
|
||||
| | | | * Ishima |
|
||||
+---------------------+----------------+-----------------------------------------+-------------------------------+
|
||||
| Hacking | NiteSec | * Hack avmnite-02h manually | |
|
||||
| Groups | | * Home Computer RAM of at least 32GB | |
|
||||
| Hacking | NiteSec | * Install a backdoor on the avmnite-02h | |
|
||||
| Groups | | server | |
|
||||
| | | * Home Computer RAM of at least 32GB | |
|
||||
+ +----------------+-----------------------------------------+-------------------------------+
|
||||
| | The Black Hand | * Hack I.I.I.I manually | |
|
||||
| | The Black Hand | * Install a backdoor on the I.I.I.I | |
|
||||
| | | server | |
|
||||
| | | * Home Computer RAM of at least 64GB | |
|
||||
+ +----------------+-----------------------------------------+-------------------------------+
|
||||
| | Bitrunners | * Hack run4theh111z manually | |
|
||||
| | Bitrunners | * Install a backdoor on the run4theh111z| |
|
||||
| | | server | |
|
||||
| | | * Home Computer RAM of at least 128GB | |
|
||||
+---------------------+----------------+-----------------------------------------+-------------------------------+
|
||||
| Megacorporations | ECorp | * Have 200k reputation with | |
|
||||
@@ -112,7 +115,8 @@ List of Factions and their Requirements
|
||||
+ +----------------+-----------------------------------------+-------------------------------+
|
||||
| | Fulcrum Secret | * Have 250k reputation with | |
|
||||
| | Technologies | the Corporation | |
|
||||
| | | * Hack fulcrumassets manually | |
|
||||
| | | * Install a backdoor on the | |
|
||||
| | | fulcrumassets server | |
|
||||
+---------------------+----------------+-----------------------------------------+-------------------------------+
|
||||
| Criminal | Slum Snakes | * All Combat Stats of 30 | |
|
||||
| Organizations | | * -9 Karma | |
|
||||
|
||||
@@ -124,6 +124,6 @@ Gain experience by:
|
||||
|
||||
* Committing certain crimes
|
||||
* Infiltration
|
||||
* Working out at a gym
|
||||
* Studying at a university
|
||||
* Working a relevant job at a company
|
||||
* Doing Field work for a Faction
|
||||
|
||||
@@ -148,6 +148,14 @@ has root access, what ports are opened/closed, and also hacking-related informat
|
||||
such as an estimated chance to successfully hack, an estimate of how much money is
|
||||
available on the server, etc.
|
||||
|
||||
backdoor
|
||||
^^^^^^^^
|
||||
|
||||
Installs a backdoor on the current server. Root access is required to do this.
|
||||
|
||||
Servers will give different bonuses when you install a backdoor.
|
||||
This can pass faction tests or give bonsues such as discounts from companies.
|
||||
|
||||
buy
|
||||
^^^
|
||||
|
||||
|
||||
@@ -3,6 +3,679 @@
|
||||
Changelog
|
||||
=========
|
||||
|
||||
v0.52.7 - 2021-07-21 Fixing the previous patch tbh (hydroflame)
|
||||
-------------------------------------------
|
||||
|
||||
** Netscript **
|
||||
|
||||
* API BREAKING CHANGE: getActionEstimatedSuccessChance now returns a pair of
|
||||
value to reflect the UI changes. I'm very sorry.
|
||||
|
||||
** Bladeburner **
|
||||
|
||||
* General actions now display time required.
|
||||
* Recruitment now displays success chance.
|
||||
* All other success chance now display a range instead of a single value
|
||||
The real value is guaranteed to be within that range.
|
||||
|
||||
** Misc. **
|
||||
|
||||
* Fix tutorial not working after Monaco upate
|
||||
* Fix logbox logs not taking up the whole logbox
|
||||
* Fix script editor shortcut (ctrl+b)
|
||||
* Fix Corporation popup appearing in the wrong order, hiding one of them
|
||||
* Fix error when loading Corp
|
||||
* Fix logbox dragging (smoother now)
|
||||
* Fix logbox name collision
|
||||
* Fix logbox allowing to open the same box multiple times
|
||||
* Fix netscript write.
|
||||
* nerf noodle bar
|
||||
|
||||
v0.52.6 - 2021-07-21 Logboxes and VS-code (hydroflame)
|
||||
-------------------------------------------
|
||||
|
||||
** Text Editor **
|
||||
|
||||
* Ace and Codemirror have been removed in favor of monaco (web version of
|
||||
vs-code). The options are a bit lackluster but more will be added as
|
||||
feedback comes.
|
||||
|
||||
** Log boxes **
|
||||
|
||||
* Multiple log boxes can be opened at once. They can be moved around the
|
||||
screen. (but the movement behavior is a bit weird.)
|
||||
|
||||
** Misc. **
|
||||
|
||||
* Job promotion now correctly updates the UI.
|
||||
* Milestones now call the faction CyberSec instead of CSEC
|
||||
* Can no longer create file that break the filesystem.
|
||||
* Remove dollar sign in blade contract UI element
|
||||
* nerf noodle bar
|
||||
|
||||
v0.52.5 - 2021-07-19 CPU cores are useful!? (hydroflame)
|
||||
-------------------------------------------
|
||||
|
||||
** Terminal **
|
||||
|
||||
* When executing 'run SCRIPT' any script can now add '--tail' to
|
||||
automatically bring up the logs.
|
||||
|
||||
** Netscript **
|
||||
|
||||
* The 'flags' function now works with single letter flags but they only take
|
||||
one dash.
|
||||
* Fix several broken bladeburner netscript functions.
|
||||
* Fix gang.getMemberInformation returning inconsistent data after the gang
|
||||
rework.
|
||||
|
||||
** CPU Cores **
|
||||
|
||||
* CPU Cores on the home computer now provide a bonus to grow() money gain
|
||||
and makes weaken lower more security. Only for scripts running on 'home'
|
||||
|
||||
** Misc. **
|
||||
|
||||
* Fix weird scrolling in the new Bladeburner React console.
|
||||
* nerf noodle bar
|
||||
|
||||
v0.52.4 - 2021-07-19 Bladeburner in React (hydroflame)
|
||||
-------------------------------------------
|
||||
|
||||
** Bladeburner **
|
||||
|
||||
* The entire UI was rebuild in React. It should be more responsive
|
||||
|
||||
** Hacknet **
|
||||
|
||||
* Displays how many time each hash upgrade was bought.
|
||||
* Displays cummulative effect of the upgrade.
|
||||
* Removed "Close" button from hash upgrade menu.
|
||||
|
||||
** Misc. **
|
||||
|
||||
* More popup/modals have dark background, can be dismissed by clicking
|
||||
outside, or by pressing escape.
|
||||
* Small reword in the guide.
|
||||
* Fix several typos in the bladeburner documentation.
|
||||
* Linting (no one cares except the dev)
|
||||
* nerf noodle bar
|
||||
|
||||
v0.52.3 - 2021-07-15 Gangs were OP (hydroflame)
|
||||
-------------------------------------------
|
||||
|
||||
** Gang **
|
||||
|
||||
* Significant rework. Ascension is now based on exp gained.
|
||||
* All upgrades give exp bonuses.
|
||||
* Maximum gang members reduced to 12.
|
||||
* Respect required to recruit sharply increased.
|
||||
* Rewritten in React, the UI should be smoother and less laggy now.
|
||||
|
||||
** Infiltration **
|
||||
|
||||
* Now isTrusted protected.
|
||||
|
||||
** Misc. **
|
||||
|
||||
* Many UI element are now "noselect" protected.
|
||||
* Fixed an issue where you could join the same faction twice via script and
|
||||
UI simultaneously.
|
||||
* Factions list screen converted to React.
|
||||
* nerf noodle bar
|
||||
|
||||
v0.52.2 - 2021-07-15 Oh yeah, BN11 is a thing (drunk hydroflame tbh)
|
||||
-------------------------------------------
|
||||
|
||||
** Source-Files **
|
||||
|
||||
* Source-File 11 now also provides a small reduction to the price increase
|
||||
multiplier.
|
||||
|
||||
** Augmentations **
|
||||
|
||||
* New Augmentation offered by Aevum, themed around 777 and offers some basic
|
||||
programs.
|
||||
* Augmentation descriptions are now more concise and consistent.
|
||||
|
||||
** Misc. **
|
||||
|
||||
* nerf noodle bar
|
||||
|
||||
v0.52.1 - 2021-07-10 bugfixing (hydroflame & community)
|
||||
-------------------------------------------
|
||||
|
||||
**Misc.**
|
||||
|
||||
* Fix game crash/corruption when quitting a job while working for it unfocused.
|
||||
* Fix typo in corporation Market Data.
|
||||
* Fix typo in docs for hackPercent.
|
||||
* The tutorial encourages the players to connect to home before creating `n00dles.script`
|
||||
* The dark web `buy` command now accepts `-1` (one) and `--list` instead of just
|
||||
`-l`. Helps some confused players.
|
||||
* Character overview screen no longer hidden on the corporation screen.
|
||||
* Infiltration difficulty display is now more explicit (It's a big arrow instead
|
||||
of just one word.)
|
||||
* Fix wrong ram value in tutorial. (@MageKing17)
|
||||
* Plenty of augmentation description cleanup (@Kwazygloo)
|
||||
* Plenty of typo/description fixed (@MageKing17)
|
||||
* Cleanup description of singularity function on readthedocs (@PurePandemonium)
|
||||
* Fix bug when autolinking a server while backdooring (@schroederIT)
|
||||
* nerf noodle bar
|
||||
|
||||
v0.52.0 - 2021-06-13 Infiltration 2.0 (hydroflame & community)
|
||||
--------------------------------------------------------------
|
||||
|
||||
**Infiltration**
|
||||
|
||||
* Completely reworked. Not the same mechanic at all.
|
||||
|
||||
**Terminal**
|
||||
|
||||
* tail is smarter. It automatically assume the only possible options in some
|
||||
cases.
|
||||
|
||||
**Intelligence**
|
||||
|
||||
* Now available when starting BN5 instead of after beating it for the first
|
||||
time.
|
||||
* Nerf the effect of intelligence on reputation gain.
|
||||
|
||||
**Augmentation**
|
||||
|
||||
* Added a new augmentation, the 'Unstable Circadian Modulator', whose
|
||||
gimmick is that its stats are randomized every hour.
|
||||
|
||||
**Netscript**
|
||||
|
||||
* 'getPlayer' is not a singularity function anymore.
|
||||
* 'hacknetNodes.constants' returns the correct values.
|
||||
* 'createGang' has been added.
|
||||
* 'inGang' has been added.
|
||||
|
||||
**Tutorial**
|
||||
|
||||
* Updated the tutorial. Made it look cleaner, fixed typos, etc.
|
||||
|
||||
**Misc.**
|
||||
|
||||
* Fix many typos in literature (@kwazygloo)
|
||||
* Fix being able to unfocus from gym and university.
|
||||
* Fix being able to do hacking missions while unfocused.
|
||||
* Fix many typos in Augmentation descriptions (@kwazygloo)
|
||||
* More numbers handle absurdly large values. (@Tesseract1234567890)
|
||||
* Fix many typos (@Tesseract1234567890)
|
||||
* Fixed an issue that caused a UI desync when sleeves were set to workout
|
||||
stats other than strength at the gym.
|
||||
* Fix weird alignment of donation text box and button. (@Tesseract1234567890)
|
||||
* Fixed an issue where reputation could be transfered to new jobs when unfocused.
|
||||
* Empty stack traces should no longer appear.
|
||||
* Purchasing anything with Infinity money doesn't result in NaN.
|
||||
* nerf noodle bar
|
||||
|
||||
v0.51.10 - 2021-05-31 Focus Mark, Focus! (hydroflame)
|
||||
-----------------------------------------------------
|
||||
|
||||
**Focus**
|
||||
|
||||
* You can now use the terminal and write scripts while working for factions
|
||||
but you will gain reputation at a slower rate.
|
||||
|
||||
**SF -1**
|
||||
|
||||
* Added a new SF -1: Bypass
|
||||
|
||||
**Gang**
|
||||
|
||||
* "Vigilante justice"/"Ethical hacking" now reduces wanted level by a very
|
||||
small percentage as well an absolute value.
|
||||
|
||||
**Netscript**
|
||||
|
||||
* 'tFormat' now has a second argument to display with millisecond precision.
|
||||
* 'purchaseSleeveAug' can no longer purchase the same aug over and over for
|
||||
the same sleeve.
|
||||
* fix typo in logging for 'getServerSecurityLevel'
|
||||
* Fixed some weird issue where very rarely you would get 0 exp from 'grow'
|
||||
* 'getActionTime' now returns correct values for Diplomacy and Regeneration.
|
||||
|
||||
**Corporations**
|
||||
|
||||
* Fixed an exploit where you could get nearly infinite corporation funds by
|
||||
entering negative numbers in textboxes.
|
||||
* Fixed an exploit where shares could be sold again by clicking the
|
||||
"sell share" button via scripts.
|
||||
|
||||
**Documentation**
|
||||
|
||||
* typo fix in purchaseTor
|
||||
* typo fix in basicgameplay/stats
|
||||
|
||||
**Misc.**
|
||||
|
||||
* Very large number will no longer appear as "$NaNt"
|
||||
* Hash capacity now displays in the "big number" format.
|
||||
* nerf noodle bar
|
||||
|
||||
v0.51.9 - 2021-05-17 offline progress and exports! (hydroflame & community)
|
||||
---------------------------------------------------------------
|
||||
|
||||
**Alias**
|
||||
|
||||
* several commands can be included in 1 alias. Recursive alias now work to
|
||||
a depth of 10. (@Dawe)
|
||||
|
||||
**Offline**
|
||||
|
||||
* Offline money gain has been reworked (it is more generous)
|
||||
* If you're not working anywhere and go offline the game will work for you
|
||||
at all your factions evenly.
|
||||
|
||||
**Export**
|
||||
|
||||
* Exporting now gives +1 favor to all joined factions every 24h.
|
||||
|
||||
**Corp**
|
||||
|
||||
* Self-fund with an invalid name no longer takes away 150b anyway.
|
||||
* Can no longer export negative amount
|
||||
|
||||
**Bladeburner**
|
||||
|
||||
* No longer waste overflowing time.
|
||||
|
||||
**Text Editors**
|
||||
|
||||
* All settings will now be saved and loaded correctly.
|
||||
|
||||
**Terminal**
|
||||
|
||||
* 'scan' now works for servers that are more than 21 character long.
|
||||
|
||||
**Misc.**
|
||||
|
||||
* ls now correctly lists all files.
|
||||
* importing auto save+reloads (@Dawe)
|
||||
* Fix a bug where .fconf could not be created
|
||||
* Fix formatting inconsistencies for some logs of netscript functions.
|
||||
* Fix a bug where Cashroot starter kit would appear as [object Object] in
|
||||
confirmation dialog.
|
||||
* Fix some ram not displayed as 0.00GB
|
||||
* Fix error message throw undefined variable error
|
||||
* City hall now has some generic text if you can't create a corp yet.
|
||||
* Deleting a file without extension now returns an appropriate error message.
|
||||
* Fixed an issue where bladeburner would miscalculate the cost of hospitalization.
|
||||
* It is now possible to suppress bladeburner "action stopped" popup.
|
||||
* Updated several dependencies (big who cares, I know)
|
||||
* ls no longer prints lingering newline.
|
||||
* Money earned/spent by sleeves is now tracked under Character>Money
|
||||
* nerf noodle bar
|
||||
|
||||
|
||||
v0.51.8 - 2021-05-07 It was there all along (hydroflame & community)
|
||||
--------------------------------------------------------
|
||||
|
||||
**Servers**
|
||||
|
||||
* Update n00dles metadata
|
||||
|
||||
**Netscript**
|
||||
|
||||
* 'hashGainRate' use the correct 'usedRam' and 'maxRam'
|
||||
* Fix 'setActionAutolevel' logging.
|
||||
* Fix 'setActionLevel' not working at all.
|
||||
* Add 'installBackdoor' singularity function.
|
||||
|
||||
**Hacknet**
|
||||
|
||||
* Fix Hacknet Servers total production always displaying 0
|
||||
|
||||
**Documentation**
|
||||
|
||||
* Updated guide to no longer recommend BN12.
|
||||
* Fix documentation for maxNumNodes (@ModdedGamers)
|
||||
* Fix typo in 'sourcefiles.rst'
|
||||
* Fix typo in 'recommendedbitnodeorder.rst'
|
||||
* Fix 'getServer' documentation missing 'server' argument.
|
||||
* Fix missing ram cost in 'getData.rst'
|
||||
* Fix basic formulas examples.
|
||||
* Fix typo in BN11 description.
|
||||
* Fix formatting issue in Bladeburner (@Pimgd)
|
||||
|
||||
**Misc.**
|
||||
|
||||
* Fix negative money being displayed in full.
|
||||
* Fix Hacking Missions not working.
|
||||
* Fix Corporation tree not rendering.
|
||||
* Fix script being needlessly recompiled. This should save real ram (not game ram)
|
||||
* w0r1d_d43m0n can be backdoored
|
||||
* Coding Contracts title is click-to-copy (@Rodeth)
|
||||
* Covenant memory upgrade works better.
|
||||
* Fix Neuroflux not being correctly calculated when entering BN with SF12.
|
||||
* Delete Active Script now delete all active scripts, not just home.
|
||||
* Now you can 'cd' in directories that only contain '.txt' files.
|
||||
* Fix 'analyze' always saying players had root access
|
||||
* Passive faction rep no longer builds for special factions.
|
||||
* Donation option no longer appears for special factions.
|
||||
* Rephrased some milestones.
|
||||
* donation textbox now accepts money in the format '1b' and the like (@Dawe)
|
||||
* Fix being able to join hated factions simultaneously. (@Dawe)
|
||||
* 'ls' now displays files in multiple column. (Helps players with many files)
|
||||
* Bladeburner multiplers now appear under Character>Stats and
|
||||
Character>Augmentation when they are relevant.
|
||||
* Fix missing functions syntax highlight in codemirror.
|
||||
* Fix infiltration number formatting.
|
||||
* script income transfers to parent on death. This helps keep track of
|
||||
income for scripts that spawn short lived scripts.
|
||||
* nerf noodle bar
|
||||
|
||||
v0.51.7 - 2021-04-28 n00dles (hydroflame & community)
|
||||
-----------------------------------------
|
||||
|
||||
**Tutorial servers**
|
||||
|
||||
* All the tutorial servers have been reverted to their original value
|
||||
* The new server n00dles has been added as tutorial server.
|
||||
|
||||
**Terminal**
|
||||
|
||||
* 'tail' now accepts Pid.
|
||||
* 'analyze' now handles Hacknet Servers correctly.
|
||||
* 'ServerProfiler.exe' now handles Hacknet Servers correctly.
|
||||
|
||||
**SF12**
|
||||
|
||||
* Now makes you start with Neuroflux Governor equal to the level of the SF.
|
||||
|
||||
**Netscript**
|
||||
|
||||
* Deprecated 'getServerRam'.
|
||||
* 'getServerMaxRam' added to replace 'getServerRam'
|
||||
* 'getServerUsedRam' added to replace 'getServerRam'
|
||||
* 'getBitnodeMultipliers' is available inside BN5
|
||||
* Time logged by hack/grow/weaken now displays in human time.
|
||||
* thread count logged by hack/grow/weaken now displays with commas every
|
||||
thousands place.
|
||||
|
||||
**Donation**
|
||||
|
||||
* Always visible but locked until favor requirements are reached.
|
||||
|
||||
**Augmentations**
|
||||
|
||||
* City factions has been rebalanced to give a reason to visit them all.
|
||||
|
||||
**Sleeves**
|
||||
|
||||
* Fix sleeves not being able to work at Volhavens gym.
|
||||
|
||||
**Lint**
|
||||
|
||||
* This shouldn't change anything but was like 10h of work. So I'm logging it.
|
||||
|
||||
**Misc.**
|
||||
|
||||
* Plethora of typo fixed (@Pimgd)
|
||||
* ps documentation fix (@Dawe)
|
||||
* The dev menu now has a quick bitflume option.
|
||||
* Fix SF -1 not being as powerful as intended.
|
||||
* Fix cashroot starter kit not displaying correctly.
|
||||
* Fix DOM element 'character-overview-text' being nested twice.
|
||||
* Hacknet documentation example fix.
|
||||
* Money amount under 1000 dont display 3 decimal anymore.
|
||||
* Fix nextSourceFile flag miscalculation on the bitverse (for Bn12)
|
||||
* Faction invite text says "Decide later"/"Join!" instead of "No"/"Yes"
|
||||
* nerf noodle bar
|
||||
|
||||
|
||||
v0.51.6 - 2021-04-28 Backdoor! (hydroflame & community)
|
||||
------------------------------------------
|
||||
|
||||
**Backdoor**
|
||||
|
||||
* a new terminal command, backdoor, has been added to help differentiate
|
||||
between the terminal hack command and the netscript hack function. (@dewint)
|
||||
|
||||
**Servers**
|
||||
|
||||
* foodnstuff, sigma-cosmetics, and joesguns have been rebalanced to help new players.
|
||||
|
||||
**Milestones**
|
||||
|
||||
* A new tab under the Help menu has been added to guide players through the
|
||||
game.
|
||||
|
||||
**Casino**
|
||||
|
||||
* Blackjack has been added (@BigD)
|
||||
|
||||
**Netscript**
|
||||
|
||||
* 'prompt' now converts input to JSON.
|
||||
* 'getRunningScript' is a new netscript function that returns a bunch of
|
||||
data related to a running script.
|
||||
|
||||
**Coding contracts**
|
||||
|
||||
* trivial puzzles should no longer appear.
|
||||
|
||||
**Infiltration**
|
||||
|
||||
* All numbers are formatted like the rest of the game.
|
||||
|
||||
**Misc.**
|
||||
|
||||
* Server security is capped at 100.
|
||||
* Added option to quit a job.
|
||||
* 'cd' no longer works on unexistent folders.
|
||||
* cd with no arguments brings you back to top level folder (@Andreas)
|
||||
* 'softReset' documentation udpated.
|
||||
* Money tracker now accounts for going to the hospital manually.
|
||||
* codemirror is now the default editor (for new save files)
|
||||
* fix typo in dark web help text (@Rodeth)
|
||||
* so many documentation and typos fixes (@Pimgd)
|
||||
* A corruption visual effect has been added to location with servers that
|
||||
have backdoor installed. (@dewint)
|
||||
* nerf noodle bar
|
||||
|
||||
|
||||
v0.51.5 - 2021-04-20 Flags! (hydroflame)
|
||||
----------------------------------------
|
||||
|
||||
**Netscript**
|
||||
|
||||
* 'flags' is a new function that helps script handle flags.
|
||||
This is subject to change if it doesn't meet the need of the players.
|
||||
* 'ps' now returns the pid.
|
||||
* 'tail' now works with pid as first argument.
|
||||
* 'tail' hostname defaults to current server. (like the documentation says)
|
||||
* 'isRunning' hostname defaults to current server.
|
||||
* 'isRunning' now works with pid as first argument.
|
||||
|
||||
**Gang**
|
||||
|
||||
* Nerfed ascension mechanic once again :(
|
||||
|
||||
**Misc.**
|
||||
|
||||
* Souce-File typo fix
|
||||
* Fix 'while you were away' screen.
|
||||
* Bladeburner team size can no longer be set to negative amounts.
|
||||
* nerf noodle bar
|
||||
|
||||
v0.51.4 - 2021-04-19 Manual hacking is fun (hydroflame)
|
||||
-------------------------------------------------------
|
||||
|
||||
**Manual hacking**
|
||||
|
||||
* These bonus require an install or a soft reset to take effect.
|
||||
* Manual hacking gyms and university gives you a 10% discount.
|
||||
* Manual hacking a corporation server decreases the penalty for leaving work
|
||||
early.
|
||||
|
||||
**BladeBurner**
|
||||
|
||||
* nerfed int exp gained.
|
||||
|
||||
**Documentation**
|
||||
|
||||
* purchaseServer specifies what happens on failure.
|
||||
* Fixed typo in recommended bitnode page.
|
||||
* Removed misleading ram requirements for hacking factions.
|
||||
|
||||
**Netscript**
|
||||
|
||||
* growthAnalyze handles Infinity correctly.
|
||||
|
||||
**Misc.**
|
||||
|
||||
* Faction Augmentation will list how much reputation is required even after
|
||||
that goal has been reached.
|
||||
* Removed dollar sign in travel agency confirmation dialog box.
|
||||
* Fixed typo in alpha-omega.lit
|
||||
* the 'Game saved!' text no longer blocks the save game/options button.
|
||||
* The text editor now remembers the location of your cursor and restores it.
|
||||
* skills are recalculated instantly.
|
||||
* Fix typo in Operation Zero description.
|
||||
* nerf noodle bar
|
||||
|
||||
v0.51.3 - 2021-04-16 Y'all broke it on the first day (hydroflame)
|
||||
-----------------------------------------------------------------
|
||||
|
||||
**Passive faction reputation**
|
||||
|
||||
* Reworked, from 1 rep / 2 minute. Now is a complicated percentage of the
|
||||
reputation you'd gain working for them. It's not op but it feels a bit
|
||||
more useful.
|
||||
|
||||
**Netscript**
|
||||
|
||||
* print/tprint now take any number of arguments.
|
||||
* print/tprint will now print object as json.
|
||||
* print/tprint now handle passing in an undefined argument properly.
|
||||
|
||||
**Casino**
|
||||
|
||||
* Cannot bet negative money anymore.
|
||||
* Roulette max bet is a bit higher.
|
||||
* Coin Flip has a small cooldown.
|
||||
* All buttons reject unstrusted mouse events.
|
||||
|
||||
**Documentation**
|
||||
|
||||
* Changed a message that said nsjs only works on Chrome.
|
||||
|
||||
**Bugfix**
|
||||
|
||||
* hacknet.maxNumNodes now works for both nodes and servers.
|
||||
* Fixed a bug where the popup boxes would contain data from previous popup boxes.
|
||||
* .js files will also have the 'export async function' boilerplate.
|
||||
|
||||
**Misc.**
|
||||
|
||||
* turned off web form autocomplete for the terminal text input.
|
||||
* Fixed an issue on Windows+Firefox where pressing up on the terminal would
|
||||
bring the cursor to the begining of the line. (Issue #836)
|
||||
* Hacknet node names is easier to handle for screen readers.
|
||||
* Money spent on classes is now tracked independently of work money.
|
||||
* running coding contract from the terminal will display its name.
|
||||
* nerf noodle bar
|
||||
|
||||
v0.51.2 - 2021-04-09 Vegas, Baby! (hydroflame)
|
||||
----------------------------------------------
|
||||
|
||||
**New location: The Iker Molina Casino**
|
||||
|
||||
* A casino opened in Aevum. However the house is rumored to cheat. If only
|
||||
we could give them a taste of their own medicine.
|
||||
|
||||
**Misc.**
|
||||
|
||||
* Link to discord added under options
|
||||
* 'getMemberInformation' doc updated, oops
|
||||
* tech vendor now handle max ram and cores.
|
||||
* nerf noodle bar
|
||||
|
||||
v0.51.1 - 2021-04-06 Bugfixes because the author of the last patch sucks (it's hydroflame)
|
||||
------------------------------------------------------------------------------------------
|
||||
|
||||
**Netscript**
|
||||
|
||||
* 'getPlayer' returns players faction and tor
|
||||
* 'hospitalization' is a new singularity function.
|
||||
* 'gang.getMemberInformation' now returns more information.
|
||||
* 'hacknet.hashCapacity' is a new hacknet function that returns the maximum hash capacity.
|
||||
|
||||
**Hospitalization**
|
||||
|
||||
* Now only cost at most 10% of your money.
|
||||
|
||||
**Bugfix**
|
||||
|
||||
* confirmation dialog box no longer use previous text
|
||||
|
||||
**Accessibility**
|
||||
|
||||
* The game is a little easier to handle for screen readers (yes, there's an
|
||||
absolute legend playing this game with a screen reader)
|
||||
* Infiltration use buttons instead of a-links
|
||||
* New option to disable ASCII art. This will make the metro map and world
|
||||
map display as a list of buttons.
|
||||
|
||||
**Misc.**
|
||||
|
||||
* 'fl1ght.exe' will no longer suggest the combat path. Related faction
|
||||
requirements unchanged.
|
||||
* nerf noodle bar
|
||||
|
||||
v0.51.0 - 2021-03-31 Formulas (hydroflame)
|
||||
------------------------------------------
|
||||
|
||||
**Formulas API**
|
||||
|
||||
* A new API is introduced, this gives players access to various formulas used in the game.
|
||||
It'll help you make more informed decisions.
|
||||
|
||||
**Netscript**
|
||||
|
||||
* 'getServer' is a new function meant to be used with the formulas API.
|
||||
* 'getPlayer' is a new function meant to be used with the formulas API.
|
||||
* 'getStats' and 'getCharacterInformation' are deprecated in favor of 'getPlayer'
|
||||
* 'getCurrentServer' is a new function that returns the server the player is currently connected.
|
||||
|
||||
**Display**
|
||||
|
||||
* All money should now consistently be orange.
|
||||
* All rep should now consistently be light-yellow.
|
||||
* Most numbers should display consistently now (aka all money is formatted the same).
|
||||
|
||||
**Click to copy**
|
||||
|
||||
* Certain UI elements are now 'click-to-copy'
|
||||
|
||||
** Misc. **
|
||||
|
||||
* nerf noodle bar
|
||||
|
||||
v0.50.2 - 2021-03-25 Everyone asked for this one. (hydroflame)
|
||||
--------------------------------------------------------------
|
||||
|
||||
**BitNodeMultipliers**
|
||||
|
||||
* 'GangKarmaRequirements': a new multipler that influences how much karma is required to make a gang different bitnodes.
|
||||
|
||||
**Netscript**
|
||||
|
||||
* 'connect': a new singularity function that connects you to a server. (like the terminal command)
|
||||
* 'manualHack': a new singularity function that performs a manual hack on the players current server.
|
||||
* ns2 stack trace works on Firefox now.
|
||||
|
||||
**Misc.**
|
||||
|
||||
* New shortcut, Alt + b, brings you to bladeburner
|
||||
* New shortcut, Alt + g, brings you to gang
|
||||
* nerf noodle bar
|
||||
|
||||
v0.50.1 - 2021-03-22 (hydroflame)
|
||||
---------------------------------
|
||||
**Netscript**
|
||||
@@ -24,6 +697,7 @@ v0.50.1 - 2021-03-22 (hydroflame)
|
||||
**Misc.**
|
||||
|
||||
* Minor spacing in stats tables.
|
||||
* nerf noodle bar
|
||||
|
||||
v0.50.0 - 2021-03-20 Intelligence (hydroflame)
|
||||
----------------------------------------------
|
||||
@@ -44,6 +718,7 @@ v0.50.0 - 2021-03-20 Intelligence (hydroflame)
|
||||
* number formatting
|
||||
* remove wiki button in Hacking Missions.
|
||||
* Fix NaN displayed when very very large numbers are reached.
|
||||
* nerf noodle bar
|
||||
|
||||
v0.49.2 - 2021-03-13 (hydroflame)
|
||||
---------------------------------
|
||||
@@ -81,6 +756,7 @@ v0.49.2 - 2021-03-13 (hydroflame)
|
||||
**Misc.**
|
||||
|
||||
* Fix issue where the effective stats under Character>Stats were being calculated.
|
||||
* nerf noodle bar
|
||||
|
||||
v0.49.0 - 2021-03-11 Source-File -1 (hydroflame)
|
||||
------------------------------------------------
|
||||
@@ -108,6 +784,7 @@ v0.49.0 - 2021-03-11 Source-File -1 (hydroflame)
|
||||
|
||||
* Minor formatting under Hacking>Active Scripts
|
||||
* option menu colors now match the rest of the game, kinda.
|
||||
* nerf noodle bar
|
||||
|
||||
|
||||
v0.48.0 - ASCII - 2021-03-07 (hydroflame)
|
||||
@@ -155,6 +832,7 @@ v0.48.0 - ASCII - 2021-03-07 (hydroflame)
|
||||
has bought but not installed
|
||||
* Character>Factions has a badge indicating how many factions have pending
|
||||
invites.
|
||||
* nerf noodle bar
|
||||
|
||||
v0.47.2 - 7/15/2019
|
||||
-------------------
|
||||
|
||||
@@ -64,9 +64,9 @@ documentation_title = '{0} Documentation'.format(project)
|
||||
# built documents.
|
||||
#
|
||||
# The short X.Y version.
|
||||
version = '0.50'
|
||||
version = '0.52'
|
||||
# The full version, including alpha/beta/rc tags.
|
||||
release = '0.50.2'
|
||||
release = '0.52.7'
|
||||
|
||||
# The language for content autogenerated by Sphinx. Refer to documentation
|
||||
# for a list of supported languages.
|
||||
|
||||
@@ -634,18 +634,18 @@ This tells me that I can reach :code:`CSEC` by going through :code:`iron-gym`::
|
||||
Make sure you notice the required hacking skill for the :code:`CSEC` server.
|
||||
This is a random value between 51 and 60. Although you receive the message
|
||||
from CSEC once you hit 50 hacking, you cannot actually pass their test
|
||||
until your hacking is high enough to hack their server.
|
||||
until your hacking is high enough to install a backdoor on their server.
|
||||
|
||||
After you are connected to the :code:`CSEC` server, you can hack it. Note that this
|
||||
After you are connected to the :code:`CSEC` server, you can backdoor it. Note that this
|
||||
server requires one open port in order to gain root access. We can open the SSH port
|
||||
using the :code:`BruteSSH.exe` program we created earlier. In |Terminal|::
|
||||
|
||||
$ run BruteSSH.exe
|
||||
$ run NUKE.exe
|
||||
$ hack
|
||||
$ backdoor
|
||||
|
||||
Keep hacking the server until you are successful. After you successfully hack it, you should
|
||||
receive a faction invitation from |CyberSec| shortly afterwards. Accept it. If you accidentally
|
||||
After you successfully install the backdoor, you should receive a faction
|
||||
invitation from |CyberSec| shortly afterwards. Accept it. If you accidentally
|
||||
reject the invitation, that's okay. Just go to the :code:`Factions` tab
|
||||
(|Keyboard shortcut| Alt + f) and you should see an option that lets you
|
||||
accept the invitation.
|
||||
|
||||
@@ -278,6 +278,7 @@ Description
|
||||
hashes, which can be spent on a variety of different upgrades.
|
||||
|
||||
In this BitNode:
|
||||
|
||||
* Your stats are significantly decreased
|
||||
* You cannnot purchase additional servers
|
||||
* Hacking is significantly less profitable
|
||||
@@ -292,7 +293,7 @@ Source-File
|
||||
* Level 3: Grants a highly-upgraded Hacknet Server when entering a new BitNode
|
||||
|
||||
(Note that the Level 3 effect of this Source-File only applies when entering a new BitNode, NOT
|
||||
when installing Augmentation
|
||||
when installing Augmentations.)
|
||||
|
||||
Difficulty
|
||||
Hard
|
||||
@@ -312,6 +313,7 @@ Description
|
||||
2. Duplicate Sleeves: Duplicate your consciousness into Synthoids, allowing you to perform different tasks synchronously
|
||||
|
||||
In this BitNode:
|
||||
|
||||
* Your stats are significantly decreased
|
||||
* All methods of gaining money are half as profitable (except Stock Market)
|
||||
* Purchased servers are more expensive, have less max RAM, and a lower maximum limit
|
||||
@@ -321,7 +323,7 @@ Source-File
|
||||
:Max Level: 3
|
||||
|
||||
This Source-File unlocks Sleeve technology in other BitNodes.
|
||||
Each level of this Source-File also grants you a Duplicate Sleeve
|
||||
Each level of this Source-File also grants you a Duplicate Sleeve.
|
||||
|
||||
Difficulty
|
||||
Hard
|
||||
@@ -371,9 +373,10 @@ Description
|
||||
Source-File
|
||||
:Max Level: Infinity
|
||||
|
||||
Each level of Source-File 12 will increase all of your multipliers by 1%. This effect
|
||||
is multiplicative with itself. In other words, level N of this Source-File will result
|
||||
in a multiplier of 1.01^N (or 0.99^N for multipliers that decrease)
|
||||
Each level of Source-File 12 will let you start with Neuroflux Governor
|
||||
equal to the level of this Source-File.
|
||||
|
||||
This BitNode is meant to be done passively or when waiting for new content.
|
||||
|
||||
Difficulty
|
||||
Initially very easy, but then it (obviously) becomes harder as you continue to do it.
|
||||
@@ -394,27 +397,22 @@ For fast progression
|
||||
1. Repeat **BitNode-1: Source Genesis** until you max out its Source-File. Its Source-File
|
||||
is extremely powerful, as it raises all multipliers by a significant amount.
|
||||
|
||||
2. Repeat **BitNode-12: The Recursion** several times. This BitNode will be extremely easy the
|
||||
first few times you tackle it, and its Source-File raises all multipliers. Furthermore,
|
||||
its effect stacks multiplicatively with itself and other Source-Files/Augmentations,
|
||||
which gets better as time goes on
|
||||
|
||||
3. Do **BitNode-5: Artificial Intelligence** once or twice. The intelligence stat it unlocks
|
||||
2. Do **BitNode-5: Artificial Intelligence** once or twice. The intelligence stat it unlocks
|
||||
will gradually build up as you continue to play the game, and will be helpful
|
||||
in the future. The Source-File also provides hacking multipliers, which are
|
||||
strong because hacking is typically one of the best ways of earning money.
|
||||
|
||||
4. (Optional) Consider doing **BitNode-4: The Singularity**. Its Source-File does not directly make you
|
||||
3. (Optional) Consider doing **BitNode-4: The Singularity**. Its Source-File does not directly make you
|
||||
more powerful in any way, but it does unlock :ref:`netscript_singularityfunctions` which
|
||||
let you automate significantly more aspects of the game.
|
||||
|
||||
5. Do **BitNode-3: Corporatocracy** once to unlock the Corporation mechanic. This mechanic
|
||||
4. Do **BitNode-3: Corporatocracy** once to unlock the Corporation mechanic. This mechanic
|
||||
has high profit potential.
|
||||
|
||||
6. Do **BitNode-6: Bladeburners** once to unlock the Bladeburners mechanic. The Bladeburner
|
||||
5. Do **BitNode-6: Bladeburners** once to unlock the Bladeburners mechanic. The Bladeburner
|
||||
mechanic is useful for some of the future BitNodes (such as 9 and 10).
|
||||
|
||||
7. Do **BitNode-9: Hacktocracy** to unlock the Hacknet Server mechanic. You can
|
||||
6. Do **BitNode-9: Hacktocracy** to unlock the Hacknet Server mechanic. You can
|
||||
consider repeating it as well, as its Level 2 and 3 effects are pretty helpful as well.
|
||||
|
||||
.. todo:: To be continued as more BitNodes get added
|
||||
|
||||
@@ -30,4 +30,5 @@ to reach out to the developer!
|
||||
Gang API <netscript/netscriptgangapi>
|
||||
Coding Contract API <netscript/netscriptcodingcontractapi>
|
||||
Sleeve API <netscript/netscriptsleeveapi>
|
||||
Formulas API <netscript/netscriptformulasapi>
|
||||
Miscellaneous <netscript/netscriptmisc>
|
||||
|
||||
@@ -5,13 +5,16 @@ getBitNodeMultipliers() Netscript Function
|
||||
|
||||
:RAM cost: 4 GB
|
||||
|
||||
Returns an object containing the current BitNode multipliers. This function
|
||||
requires Source-File 5 in order to run. The multipliers are returned in
|
||||
decimal forms (e.g. 1.5 instead of 150%). The multipliers represent the
|
||||
difference between the current BitNode and the original BitNode (BitNode-1).
|
||||
For example, if the *CrimeMoney* multiplier has a value of 0.1, then that
|
||||
means that committing crimes in the current BitNode will only give 10% of
|
||||
the money you would have received in BitNode-1.
|
||||
If you are not in BitNode-5, then you must have Source-File 5-1 in order to
|
||||
run this function.
|
||||
|
||||
Returns an object containing the current BitNode multipliers. The
|
||||
multipliers are returned in decimal forms (e.g. 1.5 instead of 150%). The
|
||||
multipliers represent the difference between the current BitNode and the
|
||||
original BitNode (BitNode-1). For example, if the *CrimeMoney* multiplier
|
||||
has a value of 0.1, then that means that committing crimes in the current
|
||||
BitNode will only give 10% of the money you would have received in
|
||||
BitNode-1.
|
||||
|
||||
The structure of the returned object is subject to change as BitNode
|
||||
multipliers get added to the game. Refer to the `source code here
|
||||
|
||||
40
doc/source/netscript/advancedfunctions/getServer.rst
Normal file
40
doc/source/netscript/advancedfunctions/getServer.rst
Normal file
@@ -0,0 +1,40 @@
|
||||
getServer() Netscript Function
|
||||
==========================================
|
||||
|
||||
.. js:function:: getServer([hostname])
|
||||
|
||||
:RAM cost: 2 GB
|
||||
:param string hostname: Hostname of the server, defaults to host server.
|
||||
|
||||
If you are not in BitNode-5, then you must have Source-File 5-1 in order to run this function.
|
||||
|
||||
This function is meant to be used in conjunction with the :doc:`formulas API<../netscriptformulasapi>`.
|
||||
|
||||
Returns an object with the Server's stats. The object has the following properties::
|
||||
|
||||
{
|
||||
cpuCores
|
||||
ftpPortOpen
|
||||
hasAdminRights
|
||||
hostname
|
||||
httpPortOpen
|
||||
ip
|
||||
isConnectedTo
|
||||
maxRam
|
||||
organizationName
|
||||
ramUsed
|
||||
smtpPortOpen
|
||||
sqlPortOpen
|
||||
sshPortOpen
|
||||
baseDifficulty
|
||||
hackDifficulty
|
||||
backdoorInstalled
|
||||
minDifficulty
|
||||
moneyAvailable
|
||||
moneyMax
|
||||
numOpenPortsRequired
|
||||
openPortCount
|
||||
purchasedByPlayer
|
||||
requiredHackingSkill
|
||||
serverGrowth
|
||||
}
|
||||
@@ -7,8 +7,8 @@ brutessh() Netscript Function
|
||||
|
||||
:param string hostname: Hostname of the target server.
|
||||
|
||||
Runs the BruteSSH.exe program on the target server. BruteSSH.exe must exist
|
||||
on your home computer.
|
||||
Runs the ``BruteSSH.exe`` program on the target server. ``BruteSSH.exe``
|
||||
must exist on your home computer.
|
||||
|
||||
Examples:
|
||||
|
||||
|
||||
@@ -9,9 +9,3 @@ disableLog() Netscript Function
|
||||
|
||||
Disables logging for the given function. Logging can be disabled for
|
||||
all functions by passing 'ALL' as the argument.
|
||||
|
||||
Note that this does not completely remove all logging functionality.
|
||||
This only stops a function from logging when the function is successful. If
|
||||
the function fails, it will still log the reason for failure.
|
||||
|
||||
Notable functions that cannot have their logs disabled: run, exec, exit
|
||||
|
||||
@@ -19,9 +19,8 @@ exec() Netscript Function
|
||||
the :doc:`run<run>` function except that it can be used to run a script on any
|
||||
server, instead of just the current server.
|
||||
|
||||
.. warning:: Running this function with a ``numThreads`` argument of 0 will return 0 without
|
||||
running the script. However, running this function with a negative *numThreads*
|
||||
argument will cause a runtime error.
|
||||
.. warning:: Running this function with a ``numThreads`` argument of 0 or
|
||||
less will cause a runtime error.
|
||||
|
||||
The simplest way to use the :doc:`exec<exec>` command is to call it with
|
||||
just the script name and the target server. The following example will try
|
||||
|
||||
@@ -6,3 +6,12 @@ exit() Netscript Function
|
||||
:RAM cost: 0 GB
|
||||
|
||||
Terminates the current script immediately.
|
||||
|
||||
.. warning:: In :ref:`netscriptjs`, execution may continue past a call to
|
||||
this function; while some game-related functions (e.g. those with an
|
||||
``ns.`` prefix) will not function after this function has been called,
|
||||
there might still be unintended behavior if you assume ``exit`` will
|
||||
immediately halt execution, like it does in :ref:`netscript1`. To be
|
||||
safe, you should probably ``return`` from the main function instead
|
||||
of/in addition to calling ``ns.exit()`` when halting a NetscriptJS
|
||||
script.
|
||||
|
||||
46
doc/source/netscript/basicfunctions/flags.rst
Normal file
46
doc/source/netscript/basicfunctions/flags.rst
Normal file
@@ -0,0 +1,46 @@
|
||||
flags() Netscript Function
|
||||
============================
|
||||
|
||||
.. js:function:: flags(data)
|
||||
|
||||
:RAM cost: 0 GB
|
||||
:param data array of pairs of strings: Flags definition.
|
||||
:returns: Object containing all the flags that were parsed or default.
|
||||
|
||||
This function allows for a more flexible way of parsing script arguments
|
||||
than to just pass a fixed list in a fixed order. Options can be given
|
||||
names, and passed in any order, while having defined default values.
|
||||
|
||||
The flag definition is an array of pairs of values: the first value is the
|
||||
name of the flag, and the 2nd value is the default value for that flag.
|
||||
|
||||
The return object is a map containing flag names to the value. It also
|
||||
contains the special field '_', which contains all arguments that were not
|
||||
flags.
|
||||
|
||||
Example:
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
// example.script
|
||||
var data = flags([
|
||||
['delay', 0], // a default number means this flag is a number
|
||||
['server', 'foodnstuff'], // a default string means this flag is a string
|
||||
['exclude', []], // a default array means this flag is a default array of string
|
||||
['help', false], // a default boolean means this flag is a boolean
|
||||
]);
|
||||
tprint(data);
|
||||
/*
|
||||
[home ~/]> run example.script
|
||||
{"_":[],"delay":0,"server":"foodnstuff","exclude":[],"help":false}
|
||||
[home ~/]> run example.script --delay 3000
|
||||
{"_":[],"server":"foodnstuff","exclude":[],"help":false,"delay":3000}
|
||||
[home ~/]> run example.script --delay 3000 --server harakiri-sushi
|
||||
{"_":[],"exclude":[],"help":false,"delay":3000,"server":"harakiri-sushi"}
|
||||
[home ~/]> run example.script --delay 3000 --server harakiri-sushi hello world
|
||||
{"_":["hello","world"],"exclude":[],"help":false,"delay":3000,"server":"harakiri-sushi"}
|
||||
[home ~/]> run example.script --delay 3000 --server harakiri-sushi hello world --exclude a --exclude b
|
||||
{"_":["hello","world"],"help":false,"delay":3000,"server":"harakiri-sushi","exclude":["a","b"]}
|
||||
[home ~/]> run example.script --help
|
||||
{"_":[],"delay":0,"server":"foodnstuff","exclude":[],"help":true}
|
||||
*/
|
||||
@@ -10,7 +10,6 @@ ftpcrack() Netscript Function
|
||||
Runs the ``FTPCrack.exe`` program on the target server. ``FTPCrack.exe``
|
||||
must exist on your home computer.
|
||||
|
||||
|
||||
Examples:
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
@@ -10,4 +10,4 @@ getFavorToDonate() Netscript Function
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
getFavorToDonate() // returns: 150
|
||||
getFavorToDonate() // returns: 150
|
||||
|
||||
@@ -13,7 +13,6 @@ getGrowTime() Netscript Function
|
||||
The function takes in an optional ``hackLvl`` parameter that can be
|
||||
specified to see what the grow time would be at different hacking levels.
|
||||
|
||||
|
||||
Example:
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
@@ -10,4 +10,4 @@ getHackingLevel() Netscript Function
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
getHackingLevel(); // returns: 124
|
||||
getHackingLevel(); // returns: 124
|
||||
|
||||
@@ -11,4 +11,3 @@ getHostname() Netscript Function
|
||||
.. code-block:: javascript
|
||||
|
||||
getHostname(); // returns: "foodnstuff"
|
||||
|
||||
|
||||
101
doc/source/netscript/basicfunctions/getPlayer.rst
Normal file
101
doc/source/netscript/basicfunctions/getPlayer.rst
Normal file
@@ -0,0 +1,101 @@
|
||||
getPlayer() Netscript Function
|
||||
==============================
|
||||
|
||||
.. js:function:: getPlayer()
|
||||
|
||||
:RAM cost: 0.5 GB
|
||||
|
||||
The result of this function can be passed to the :doc:`formulas API<../netscriptformulasapi>`.
|
||||
|
||||
Returns an object with the Player's stats. The object has the following properties::
|
||||
|
||||
{
|
||||
hacking_skill: Current Hacking skill level
|
||||
hp: Current health points
|
||||
max_hp: Maximum health points
|
||||
strength: Current Strength skill level
|
||||
defense: Current Defense skill level
|
||||
dexterity: Current Dexterity skill level
|
||||
agility: Current Agility skill level
|
||||
charisma: Current Charisma skill level
|
||||
intelligence: Current Intelligence skill level (from BitNode-5)
|
||||
hacking_chance_mult: Hacking Chance multiplier (from Source-Files and Augments)
|
||||
hacking_speed_mult: Hacking Speed multiplier (from Source-Files and Augments)
|
||||
hacking_money_mult: Hacking Money multiplier (from Source-Files and Augments)
|
||||
hacking_grow_mult: Hacking Growth multiplier (from Source-Files and Augments)
|
||||
hacking_exp: Current Hacking experience points
|
||||
strength_exp: Current Strength experience points
|
||||
defense_exp: Current Defense experience points
|
||||
dexterity_exp: Current Dexterity experience points
|
||||
agility_exp: Current Agility experience points
|
||||
charisma_exp: Current Charisma experience points
|
||||
hacking_mult: Hacking Level multiplier (from Source-Files and Augments)
|
||||
strength_mult: Strength Level multiplier (from Source-Files and Augments)
|
||||
defense_mult: Defense Level multiplier (from Source-Files and Augments)
|
||||
dexterity_mult: Dexterity Level multiplier (from Source-Files and Augments)
|
||||
agility_mult: Agility Level multiplier (from Source-Files and Augments)
|
||||
charisma_mult: Charisma Level multiplier (from Source-Files and Augments)
|
||||
hacking_exp_mult: Hacking Experience multiplier (from Source-Files and Augments)
|
||||
strength_exp_mult: Strength Experience multiplier (from Source-Files and Augments)
|
||||
defense_exp_mult: Defense Experience multiplier (from Source-Files and Augments)
|
||||
dexterity_exp_mult: Dexterity Experience multiplier (from Source-Files and Augments)
|
||||
agility_exp_mult: Agility Experience multiplier (from Source-Files and Augments)
|
||||
charisma_exp_mult: Charisma Experience multiplier (from Source-Files and Augments)
|
||||
company_rep_mult: Company reputation gain multiplier (from Source-Files and Augments)
|
||||
faction_rep_mult: Faction reputation gain multiplier (from Source-Files and Augments)
|
||||
money: Current money
|
||||
city: Name of city you are currently in
|
||||
location: Name of the last location visited
|
||||
crime_money_mult: Crime money multiplier (from Source-Files and Augments)
|
||||
crime_success_mult: Crime success multiplier (from Source-Files and Augments)
|
||||
isWorking: Boolean indicating whether the player is currently performing work
|
||||
workType: Name of the kind of work the player is performing
|
||||
currentWorkFactionName: Name of the faction the player is currently working for
|
||||
currentWorkFactionDescription: Description of the kind of work the player is currently doing
|
||||
workHackExpGainRate: Amount of Hacking experience the player will gain every cycle (fifth of a second)
|
||||
workStrExpGainRate: Amount of Strength experience the player will gain every cycle
|
||||
workDefExpGainRate: Amount of Defense experience the player will gain every cycle
|
||||
workDexExpGainRate: Amount of Dexterity experience the player will gain every cycle
|
||||
workAgiExpGainRate: Amount of Agility experience the player will gain every cycle
|
||||
workChaExpGainRate: Amount of Charisma experience the player will gain every cycle
|
||||
workRepGainRate: Amount of Reputation the player will gain every cycle
|
||||
workMoneyGainRate: Amount of Money the player will gain every cycle
|
||||
workMoneyLossRate: Amount of Money the player will lose every cycle
|
||||
workHackExpGained: Total Hacking experience gained while working thus far
|
||||
workStrExpGained: Total Strength experience gained while working thus far
|
||||
workDefExpGained: Total Defense experience gained while working thus far
|
||||
workDexExpGained: Total Dexterity experience gained while working thus far
|
||||
workAgiExpGained: Total Agility experience gained while working thus far
|
||||
workChaExpGained: Total Charisma experience gained while working thus far
|
||||
workRepGained: Total Reputation gained while working thus far
|
||||
workMoneyGained: Total Money gained while working thus far
|
||||
createProgramName: Name of the program the player is currently creating
|
||||
createProgramReqLvl: Hacking skill required to make that program
|
||||
className: Name of the class the player is currently studying
|
||||
crimeType: Name of the crime the player last started
|
||||
work_money_mult: Salary multiplier (from Source-Files and Augments)
|
||||
hacknet_node_money_mult: Hacknet Node production multiplier (from Source-Files and Augments)
|
||||
hacknet_node_purchase_cost_mult: Hacknet Node purchase cost multiplier (from Source-Files and Augments)
|
||||
hacknet_node_ram_cost_mult: Hacknet Node RAM upgrade cost multiplier (from Source-Files and Augments)
|
||||
hacknet_node_core_cost_mult: Hacknet Node Core purchase cost multiplier (from Source-Files and Augments)
|
||||
hacknet_node_level_cost_mult: Hacknet Node level upgrade cost multiplier (from Source-Files and Augments)
|
||||
hasWseAccount: Boolean indicating whether the player has a WSE Account
|
||||
hasTixApiAccess: Boolean indicating whether the player has TIX API Access
|
||||
has4SData: Boolean indicating whether the player has 4S Market Data Access
|
||||
has4SDataTixApi: Boolean indicating whether the player has 4S Market Data TIX API Access
|
||||
bladeburner_max_stamina_mult: Bladeburner Max Stamina multiplier (from Source-Files and Augments)
|
||||
bladeburner_stamina_gain_mult: Bladeburner Stamina Gain multiplier (from Source-Files and Augments)
|
||||
bladeburner_success_chance_mult: Bladeburner Success Chance multiplier (from Source-Files and Augments)
|
||||
bitNodeN: Current BitNode number
|
||||
totalPlaytime: Total amount of time the game has been running, in milliseconds
|
||||
playtimeSinceLastAug: Milliseconds since the last time Augmentations were installed
|
||||
playtimeSinceLastBitnode: Milliseconds since this BitNode was started
|
||||
jobs: A mapping of companies the player works for to the title of the player's job at that company
|
||||
factions: An array of factions the player is currently a member of
|
||||
tor: Boolean indicating whether or not you have a tor router
|
||||
}
|
||||
|
||||
Example::
|
||||
|
||||
player = getPlayer();
|
||||
print('My charisma level is: ' + player.charisma);
|
||||
@@ -10,4 +10,4 @@ getPurchasedServerLimit() Netscript Function
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
getPurchasedServerLimit() // returns: 25
|
||||
getPurchasedServerLimit() // returns: 25
|
||||
|
||||
@@ -10,4 +10,4 @@ getPurchasedServerMaxRam() Netscript Function
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
getPurchasedServerMaxRam(); // returns: 1048576
|
||||
getPurchasedServerMaxRam(); // returns: 1048576
|
||||
|
||||
88
doc/source/netscript/basicfunctions/getRunningScript.rst
Normal file
88
doc/source/netscript/basicfunctions/getRunningScript.rst
Normal file
@@ -0,0 +1,88 @@
|
||||
getRunningScript() Netscript Function
|
||||
=====================================
|
||||
|
||||
.. js:function:: getRunningScript()
|
||||
|
||||
:RAM cost: 0.3 GB
|
||||
:returns: Script object or null if not found.
|
||||
|
||||
The object has the following properties:
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
{
|
||||
// Script arguments
|
||||
args
|
||||
|
||||
// Script filename
|
||||
filename
|
||||
|
||||
// This script's logs. An array of log entries
|
||||
logs
|
||||
|
||||
// Flag indicating whether the logs have been updated since
|
||||
// the last time the UI was updated
|
||||
logUpd
|
||||
|
||||
// Total amount of hacking experience earned from this script when offline
|
||||
offlineExpGained
|
||||
|
||||
// Total amount of money made by this script when offline
|
||||
offlineMoneyMade
|
||||
|
||||
// Number of seconds that the script has been running offline
|
||||
offlineRunningTime
|
||||
|
||||
// Total amount of hacking experience earned from this script when online
|
||||
onlineExpGained
|
||||
|
||||
// Total amount of money made by this script when online
|
||||
onlineMoneyMade
|
||||
|
||||
// Number of seconds that this script has been running online
|
||||
onlineRunningTime
|
||||
|
||||
// Process ID.
|
||||
pid
|
||||
|
||||
// How much RAM this script uses for ONE thread
|
||||
ramUsage
|
||||
|
||||
// IP of the server on which this script is running
|
||||
server
|
||||
|
||||
// Number of threads that this script is running with
|
||||
threads
|
||||
}
|
||||
|
||||
Examples:
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
getRunningScript(); // get the current script.
|
||||
|
||||
.. js:function:: getRunningScript(pid)
|
||||
|
||||
:RAM cost: 0.3 GB
|
||||
:param number pid: PID of the script.
|
||||
:returns: Script object or null if not found.
|
||||
|
||||
Examples:
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
getRunningScript(42); // get the script with pid 42.
|
||||
|
||||
.. js:function:: getRunningScript(fn, hostname[, args...])
|
||||
|
||||
:RAM cost: 0.3 GB
|
||||
:param number fn: Filename of the target script.
|
||||
:param number hostname: Hostname of the server running the script.
|
||||
:param number args...: Arguments that the script is running with.
|
||||
:returns: Script object or null if not found.
|
||||
|
||||
Examples:
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
getRunningScript("example.script", "home", "foodnstuff"); // get the script called "example.script" on "home" with argument "foodnstuff"
|
||||
@@ -15,4 +15,3 @@ getScriptExpGain() Netscript Function
|
||||
|
||||
.. note:: A script is uniquely identified by both its name and its
|
||||
arguments.
|
||||
|
||||
|
||||
@@ -16,4 +16,4 @@ getScriptIncome() Netscript Function
|
||||
scripts since you last installed Augmentations.
|
||||
|
||||
.. note:: A script is uniquely identified by both its name and its
|
||||
arguments.
|
||||
arguments.
|
||||
|
||||
@@ -9,8 +9,8 @@ getScriptLogs() Netscript Function
|
||||
:param args...: Arguments to identify which scripts to get logs for
|
||||
:returns: Array of string, each line being a logged line. Chronological.
|
||||
|
||||
.. note:: There is a maximum number of lines that a script stores in its logs.
|
||||
This is configurable in the game's options.
|
||||
.. note:: There is a maximum number of lines that a script stores in its logs.
|
||||
This is configurable in the game's options.
|
||||
|
||||
If the function is called with no arguments, it will return the current
|
||||
script's logs.
|
||||
|
||||
@@ -7,10 +7,10 @@ getServerGrowth() Netscript Function
|
||||
:param string hostname: Hostname of target server.
|
||||
:returns: Server growth parameter.
|
||||
|
||||
The growth parameter is a number between 1 and 100 affects the percentage by
|
||||
which the server's money is increased when using the :doc:`grow<grow>`
|
||||
function. A higher growth parameter will result in a higher percentage
|
||||
increase.
|
||||
The growth parameter is a number, typically between 1 and 100, that affects
|
||||
the percentage by which the server's money is increased when using the
|
||||
:doc:`grow<grow>` function. A higher growth parameter will result in a
|
||||
higher percentage increase.
|
||||
|
||||
Example:
|
||||
|
||||
|
||||
@@ -5,10 +5,10 @@ getServerMaxMoney() Netscript Function
|
||||
|
||||
:RAM cost: 0.1 GB
|
||||
:param string hostname: Hostname of target server.
|
||||
:returns: Maximum amount of money that can be available on a server.
|
||||
:returns: Maximum amount of money that can be available on a server.
|
||||
|
||||
Example:
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
getServerMaxMoney('foodnstuff'); // returns: 4000000
|
||||
getServerMaxMoney('foodnstuff'); // returns: 50000000
|
||||
|
||||
15
doc/source/netscript/basicfunctions/getServerMaxRam.rst
Normal file
15
doc/source/netscript/basicfunctions/getServerMaxRam.rst
Normal file
@@ -0,0 +1,15 @@
|
||||
getServerMaxRam() Netscript Function
|
||||
====================================
|
||||
|
||||
.. js:function:: getServerMaxRam(hostname)
|
||||
|
||||
:RAM cost: 0.05 GB
|
||||
:param string hostname: Hostname of target server.
|
||||
:returns: Total ram available on that server. In GB.
|
||||
|
||||
Example:
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
maxRam = getServerMaxRam("helios"); // returns: 16
|
||||
print("helios has "+maxRam + "GB");
|
||||
@@ -16,4 +16,4 @@ getServerMoneyAvailable() Netscript Function
|
||||
.. code-block:: javascript
|
||||
|
||||
getServerMoneyAvailable("foodnstuff"); // returns: 120000
|
||||
getServerMoneyAvailable("home"); // returns: 1000
|
||||
getServerMoneyAvailable("home"); // returns: 1000
|
||||
|
||||
@@ -3,10 +3,14 @@ getServerRam() Netscript Function
|
||||
|
||||
.. js:function:: getServerRam(hostname)
|
||||
|
||||
.. warning:: This function is deprecated. It still functions, but new
|
||||
scripts should prefer :doc:`getServerMaxRam<getServerMaxRam>`
|
||||
and :doc:`getServerUsedRam<getServerUsedRam>` instead.
|
||||
|
||||
:RAM cost: 0.1 GB
|
||||
:param string hostname: Hostname of target server.
|
||||
:returns: An array of 2 number, first number is the total RAM, second the
|
||||
used RAM.
|
||||
:returns: An array of 2 numbers; the first number is the total RAM, and the
|
||||
second is the used RAM.
|
||||
|
||||
Returns an array with two elements that gives information about a server's memory (RAM). The first
|
||||
element in the array is the amount of RAM that the server has total (in GB). The second element in
|
||||
|
||||
@@ -11,4 +11,4 @@ getServerRequiredHackingLevel() Netscript Function
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
getServerRequiredHackingLevel("foodnstuff"); // returns: 5
|
||||
getServerRequiredHackingLevel("foodnstuff"); // returns: 5
|
||||
|
||||
@@ -11,4 +11,4 @@ getServerSecurityLevel() Netscript Function
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
getServerSecurityLevel("foodnstuff"); // returns: 3.45
|
||||
getServerSecurityLevel("foodnstuff"); // returns: 3.45
|
||||
|
||||
15
doc/source/netscript/basicfunctions/getServerUsedRam.rst
Normal file
15
doc/source/netscript/basicfunctions/getServerUsedRam.rst
Normal file
@@ -0,0 +1,15 @@
|
||||
getServerUsedRam() Netscript Function
|
||||
=====================================
|
||||
|
||||
.. js:function:: getServerUsedRam(hostname)
|
||||
|
||||
:RAM cost: 0.05 GB
|
||||
:param string hostname: Hostname of target server.
|
||||
:returns: Used ram on that server. In GB.
|
||||
|
||||
Example:
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
usedRam = getServerUsedRam("harakiri-sushi"); // returns: 5.6
|
||||
print("harakiri-sushi uses "+usedRam + "GB");
|
||||
@@ -10,4 +10,4 @@ getTimeSinceLastAug() Netscript Function
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
getTimeSinceLastAug(); // returns: 13912400
|
||||
getTimeSinceLastAug(); // returns: 13912400
|
||||
|
||||
@@ -13,4 +13,4 @@ hackChance() Netscript Function
|
||||
.. code-block:: javascript
|
||||
|
||||
hackChance("foodnstuff"); // returns: .5
|
||||
// So 50% chance to hack "foodnstuff"
|
||||
// So 50% chance to hack "foodnstuff"
|
||||
|
||||
@@ -6,8 +6,8 @@ httpworm() Netscript Function
|
||||
:RAM cost: 0.05 GB
|
||||
:param string hostname: Hostname of the target server.
|
||||
|
||||
Runs the HTTPWorm.exe program on the target server. HTTPWorm.exe must exist
|
||||
on your home computer.
|
||||
Runs the ``HTTPWorm.exe`` program on the target server. ``HTTPWorm.exe``
|
||||
must exist on your home computer.
|
||||
|
||||
Example:
|
||||
|
||||
|
||||
@@ -11,4 +11,4 @@ isLogEnabled() Netscript Function
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
isLogEnabled('hack'); // returns: true
|
||||
isLogEnabled('hack'); // returns: true
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
isRunning() Netscript Function
|
||||
==============================
|
||||
|
||||
.. js:function:: isRunning(filename, hostname, [args...])
|
||||
.. js:function:: isRunning(filename[, hostname=current hostname[, args...]])
|
||||
|
||||
:RAM cost: 0.1 GB
|
||||
:param string filename: Filename of script to check. case-sensitive.
|
||||
:param string hostname: Hostname of target server.
|
||||
:param string hostname: Hostname of target server. Defaults to current server
|
||||
:param args...: Arguments to specify/identify which scripts to search for
|
||||
:returns: ``true`` if that script with those args is running on that server.
|
||||
|
||||
@@ -38,3 +38,17 @@ isRunning() Netscript Function
|
||||
.. code-block:: javascript
|
||||
|
||||
isRunning("foo.script", "joesguns", 1, 5, "test");
|
||||
|
||||
|
||||
.. js:function:: isRunning(scriptPid)
|
||||
|
||||
:RAM cost: 0.1 GB
|
||||
:param number scriptPid: PID of the script to check.
|
||||
|
||||
Same as the above version but with pid.
|
||||
|
||||
Example:
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
isRunning(39);
|
||||
|
||||
@@ -14,4 +14,4 @@ killall() Netscript Function
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
killall('foodnstuff'); // returns: true
|
||||
killall('foodnstuff'); // returns: true
|
||||
|
||||
@@ -12,4 +12,4 @@ ls() Netscript Function
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
ls("home"); // returns: ["demo.script", "msg1.txt"]
|
||||
ls("home"); // returns: ["demo.script", "msg1.txt"]
|
||||
|
||||
@@ -6,7 +6,8 @@ nuke() Netscript Function
|
||||
:RAM cost: 0.05 GB
|
||||
:param string hostname: Hostname of the target server.
|
||||
|
||||
Runs the NUKE.exe program on the target server. NUKE.exe must exist on your home computer.
|
||||
Runs the ``NUKE.exe`` program on the target server. ``NUKE.exe`` must exist
|
||||
on your home computer.
|
||||
|
||||
|
||||
Example:
|
||||
|
||||
@@ -1,15 +1,16 @@
|
||||
print() Netscript Function
|
||||
===========================
|
||||
|
||||
.. js:function:: print(x)
|
||||
.. js:function:: print(args...)
|
||||
|
||||
:RAM cost: 0 GB
|
||||
:param x: Value to be printed.
|
||||
:param args: Values to be printed.
|
||||
|
||||
Prints a value or a variable to the script's logs.
|
||||
Prints any number of values to the script's logs.
|
||||
|
||||
Example:
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
print("Hello world!"); // Prints "Hello world!" in the logs.
|
||||
print("Hello world!"); // Prints "Hello world!" in the logs.
|
||||
print({a:5}); // Prints '{"a":5}' in the logs.
|
||||
|
||||
@@ -20,4 +20,4 @@ prompt() Netscript Function
|
||||
answer = prompt("Buy a server for $"+cost);
|
||||
if(answer) {
|
||||
purchaseServer("my server", 8192);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,7 +15,8 @@ ps() Netscript Function
|
||||
{
|
||||
filename: Script name,
|
||||
threads: Number of threads script is running with,
|
||||
args: Script's arguments
|
||||
args: Script's arguments,
|
||||
pid: Script's pid
|
||||
}
|
||||
|
||||
Example:
|
||||
@@ -23,7 +24,8 @@ ps() Netscript Function
|
||||
.. code-block:: javascript
|
||||
|
||||
processes = ps("home");
|
||||
for (let i = 0; i < ps.length; ++i) {
|
||||
tprint(ps[i].filename + ' ' + ps[i].threads);
|
||||
tprint(ps[i].args);
|
||||
for (let i = 0; i < processes.length; ++i) {
|
||||
tprint(processes[i].filename + ' ' + processes[i].threads);
|
||||
tprint(processes[i].args);
|
||||
tprint(processes[i].pid);
|
||||
}
|
||||
|
||||
@@ -7,7 +7,7 @@ purchaseServer() Netscript Function
|
||||
:param string hostname: Hostname of the purchased server.
|
||||
:param number ram: Amount of RAM of the purchased server. Must be a power of
|
||||
2. Maximum value of :doc:`getPurchasedServerMaxRam<getPurchasedServerMaxRam>`
|
||||
:returns: The hostname of the newly purchased server.
|
||||
:returns: The hostname of the newly purchased server. Empty string on failure.
|
||||
|
||||
Purchased a server with the specified hostname and amount of RAM.
|
||||
|
||||
|
||||
@@ -6,9 +6,8 @@ relaysmtp() Netscript Function
|
||||
:RAM cost: 0.05 GB
|
||||
:param string hostname: Hostname of the target server.
|
||||
|
||||
|
||||
Runs the relaySMTP.exe program on the target server. relaySMTP.exe must
|
||||
exist on your home computer.
|
||||
Runs the ``relaySMTP.exe`` program on the target server. ``relaySMTP.exe``
|
||||
must exist on your home computer.
|
||||
|
||||
Example:
|
||||
|
||||
|
||||
@@ -17,9 +17,8 @@ run() Netscript Function
|
||||
scripts located on the current server (the server running the script that
|
||||
calls this function).
|
||||
|
||||
.. warning:: Running this function with a ``numThreads`` argument of 0 will
|
||||
return 0 without running the script. However, running this function with
|
||||
a negative ``numThreads`` argument will cause a runtime error.
|
||||
.. warning:: Running this function with a ``numThreads`` argument of 0 or
|
||||
less will cause a runtime error.
|
||||
|
||||
The simplest way to use the :doc:`run<run>` command is to call it with just
|
||||
the script name. The following example will run ``foo.script``
|
||||
|
||||
@@ -12,4 +12,4 @@ scan() Netscript Function
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
scan("home"); // returns: ["foodnstuff", "sigma-cosmetics", "joesguns", "hong-fang-tea", "harakiri-sushi", "iron-gym"]
|
||||
scan("home"); // returns: ["foodnstuff", "sigma-cosmetics", "joesguns", "hong-fang-tea", "harakiri-sushi", "iron-gym"]
|
||||
|
||||
@@ -9,7 +9,7 @@ scp() Netscript Function
|
||||
Hostname of the source server, which is the server from which the file will be copied.
|
||||
This argument is optional and if it's omitted the source will be the current server.
|
||||
:param string destination: Hostname of the destination server, which is the server to which the file will be copied.
|
||||
:returns: ``true`` is the copy was a success.
|
||||
:returns: ``true`` if the copy was a success.
|
||||
|
||||
Copies a script or literature (.lit) file(s) to another server. The
|
||||
``files`` argument can be either a string specifying a single file to copy,
|
||||
|
||||
@@ -11,4 +11,4 @@ serverExists() Netscript Function
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
serverExists("foodnstuff"); // returns: true
|
||||
serverExists("foodnstuff"); // returns: true
|
||||
|
||||
@@ -8,9 +8,8 @@ sleep() Netscript Function
|
||||
|
||||
Suspends the script for n milliseconds.
|
||||
|
||||
|
||||
Example:
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
sleep(3000); // Will wait 3 seconds.
|
||||
sleep(3000); // Will wait 3 seconds.
|
||||
|
||||
@@ -16,6 +16,8 @@ spawn() Netscript Function
|
||||
current one. This function can only be used to run scripts on the local
|
||||
server.
|
||||
|
||||
.. warning:: Running this function with a ``numThreads`` argument of 0 or
|
||||
less will cause a runtime error.
|
||||
|
||||
Example:
|
||||
|
||||
|
||||
@@ -6,8 +6,8 @@ sqlinject() Netscript Function
|
||||
:RAM cost: 0.05 GB
|
||||
:param string hostname: Hostname of the target server.
|
||||
|
||||
Runs the SQLInject.exe program on the target server. SQLInject.exe must
|
||||
exist on your home computer.
|
||||
Runs the ``SQLInject.exe`` program on the target server. ``SQLInject.exe``
|
||||
must exist on your home computer.
|
||||
|
||||
Example:
|
||||
|
||||
|
||||
@@ -1,15 +1,17 @@
|
||||
tFormat() Netscript Function
|
||||
============================
|
||||
|
||||
.. js:function:: tFormat(milliseconds)
|
||||
.. js:function:: tFormat(milliseconds[, milliPrecision=false])
|
||||
|
||||
:RAM cost: 0 GB
|
||||
:param number milliseconds: Amount of milliseconds to format.
|
||||
:param number milliPrecision: Display time with millisecond precision.
|
||||
:returns: milliseconds in the "D M H S" format
|
||||
|
||||
Example:
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
tFormat(3000); // returns: "3 seconds"
|
||||
tFormat(10000000); // returns: "2 hours 46 minutes 40 seconds"
|
||||
tFormat(3000); // returns: "3 seconds"
|
||||
tFormat(10000000); // returns: "2 hours 46 minutes 40 seconds"
|
||||
tFormat(10000023, true); // returns: "2 hours 46 minutes 40.023 seconds"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
tail() Netscript Function
|
||||
==================================
|
||||
|
||||
.. js:function:: tail([fn[, hostname=current hostname[, [...args]]])
|
||||
.. js:function:: tail([fn[, hostname=current hostname[, ...args]])
|
||||
|
||||
:RAM cost: 0 GB
|
||||
:param string fn: Optional. Filename of script to get logs from.
|
||||
@@ -29,3 +29,30 @@ tail() Netscript Function
|
||||
|
||||
// Open logs from foo.script on the foodnstuff server that was run with the arguments [1, "test"]
|
||||
tail("foo.script", "foodnstuff", 1, "test");
|
||||
|
||||
.. js:function:: tail(scriptPid)
|
||||
|
||||
:RAM cost: 0 GB
|
||||
:param number scriptPid: PID of the script to tail.
|
||||
|
||||
Opens a script's logs by pid
|
||||
|
||||
Example:
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
// Open logs from process with id 42
|
||||
tail(42);
|
||||
|
||||
.. js:function:: tail()
|
||||
|
||||
:RAM cost: 0 GB
|
||||
|
||||
Opens the current script logs.
|
||||
|
||||
Example:
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
// Open the current script logs.
|
||||
tail();
|
||||
|
||||
@@ -1,15 +1,16 @@
|
||||
tprint() Netscript Function
|
||||
===========================
|
||||
|
||||
.. js:function:: tprint(x)
|
||||
.. js:function:: tprint(args...)
|
||||
|
||||
:RAM cost: 0 GB
|
||||
:param x: Value to be printed
|
||||
:param args: Values to be printed
|
||||
|
||||
Prints a value or a variable to the Terminal.
|
||||
Prints any number of values to the Terminal.
|
||||
|
||||
Example:
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
tprint("Hello world!"); // Prints "Hello world!" to the terminal.
|
||||
tprint("Hello world!"); // Prints "Hello world!" to the terminal.
|
||||
tprint({a:5}); // Prints '{"a":5}' to the terminal.
|
||||
|
||||
@@ -11,4 +11,4 @@ tryWrite() Netscript Function
|
||||
Attempts to write data to the specified Netscript Port. If the port is full,
|
||||
the data will not be written. Otherwise, the data will be written normally.
|
||||
|
||||
See :ref:`netscript_ports` for more details.
|
||||
See :ref:`netscript_ports` for more details.
|
||||
|
||||
@@ -8,7 +8,6 @@ write() Netscript Function
|
||||
:param string data: Data to write
|
||||
:param string mode: Defines the write mode. Only valid when writing to text files or scripts.
|
||||
|
||||
|
||||
This function can be used to either write data to a port, a text file
|
||||
(.txt), or a script (.script, .js, .ns)
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ getActionCountRemaining() Netscript Function
|
||||
This function will return 'Infinity' for actions such as 'Training' and
|
||||
'Field Analysis'.
|
||||
This function will return 1 for BlackOps not yet completed regardless of
|
||||
wether the player has the required rank to attempt the mission or not.
|
||||
whether the player has the required rank to attempt the mission or not.
|
||||
|
||||
Example:
|
||||
|
||||
|
||||
@@ -12,4 +12,4 @@ getActionCurrentLevel() Netscript Function
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
bladeburner.getActionCountRemaining("Contracts", "Tracking"); // returns: 7
|
||||
bladeburner.getActionCurrentLevel("Contracts", "Tracking"); // returns: 9
|
||||
@@ -6,10 +6,10 @@ getActionEstimatedSuccessChance() Netscript Function
|
||||
:RAM cost: 4 GB
|
||||
:param string type: Type of action. See :ref:`bladeburner_action_types`
|
||||
:param string name: Name of action. Must be an exact match
|
||||
:returns: Estimated success chance in decimal
|
||||
:returns: Array of 2 number, lower and upper bound of the action chance.
|
||||
|
||||
Example:
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
bladeburner.getActionEstimatedSuccessChance("Contracts", "Tracking"); // returns: .3
|
||||
bladeburner.getActionEstimatedSuccessChance("Contracts", "Tracking"); // returns: [.3, .6]
|
||||
|
||||
@@ -3,6 +3,7 @@ getData() Netscript Function
|
||||
|
||||
.. js:function:: getData(filename[, hostname=current hostname])
|
||||
|
||||
:RAM cost: 5 GB
|
||||
:param string filename: Filename of the contract
|
||||
:param string hostname: Hostname of the server containing the contract.
|
||||
Optional. Defaults to current server if not provided
|
||||
@@ -10,8 +11,8 @@ getData() Netscript Function
|
||||
contract type.
|
||||
|
||||
Get the data associated with the specific Coding Contract. Note that this is
|
||||
not the same as the contract's description. This is just the data that
|
||||
the contract wants you to act on in order to solve
|
||||
not the same as the contract's description; this is just the data that
|
||||
the contract wants you to act on in order to solve.
|
||||
|
||||
Example:
|
||||
|
||||
@@ -19,4 +20,4 @@ getData() Netscript Function
|
||||
|
||||
data = codingcontract.getData("contract-123.cct", "home");
|
||||
answer = solve(data);
|
||||
codingcontract.attempt(answer, "contract-123.cct", "home");
|
||||
codingcontract.attempt(answer, "contract-123.cct", "home");
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user