Compare commits

..

85 Commits

Author SHA1 Message Date
Olivier Gagnon
123628ec0b update changelog and build 0.49 2021-03-11 20:39:31 -05:00
Olivier Gagnon
cae28e2d25 softReset now accepts a callback script like installAugmentations 2021-03-11 20:37:58 -05:00
Olivier Gagnon
486d025572 Gang ascension is less effective as the multiplier goes up, Gang territory gain scales with Gang power. 2021-03-11 20:19:00 -05:00
Olivier Gagnon
d4816ad0c4 Remove remaining shouldLog calls. 2021-03-11 17:01:28 -05:00
Olivier Gagnon
e7dbc08e18 fix documentation for Bladeburner API. 2021-03-11 16:48:00 -05:00
hydroflame
0483c809ff Merge pull request #812 from danielyxie/loglinenumber
log stack trace
2021-03-11 03:05:34 -05:00
Olivier Gagnon
cd972dabe3 crash now prints ns stack trace, workerscript now does the shouldLog check on its own, many ns function are way simpler. 2021-03-11 03:02:05 -05:00
Olivier Gagnon
e2a353fc8a Attempt at logging line number on netscript error 2021-03-10 01:27:14 -05:00
Olivier Gagnon
1b8214b6fa removed filter from checkbox, update changelog to say 2021 instead of 2020 2021-03-09 23:40:33 -05:00
Olivier Gagnon
af584e8c87 Removed CharacterInfo maximum hacknet, styling in the options, comments in exploits 2021-03-09 23:22:05 -05:00
Olivier Gagnon
250841df66 Added sf minus 1, exploits 2021-03-08 20:31:34 -05:00
Olivier Gagnon
d9aef91ea3 Fix changelog 2021-03-08 15:30:05 -05:00
Olivier Gagnon
c285d494b9 update lodash 2021-03-07 22:49:55 -05:00
Olivier Gagnon
316a1aa475 Most console.log have been changed to console.warn or removed if they were debug 2021-03-07 22:46:50 -05:00
Olivier Gagnon
56a3660d38 update patch notes 2021-03-07 22:23:42 -05:00
Olivier Gagnon
e1aec379c1 getCrimeStats returns the inner stats of a crime 2021-03-07 22:22:23 -05:00
Olivier Gagnon
381ea915f7 update patch notes and getTaskStats documentation 2021-03-07 22:13:04 -05:00
Olivier Gagnon
619db14622 Added gang.getTaskStats which returns the stats of a gang task 2021-03-07 22:12:02 -05:00
Olivier Gagnon
84423e6309 gang.getEquipmentStats added, returns equipment multipliers 2021-03-07 22:01:31 -05:00
Olivier Gagnon
1d2136da4b Minor space formatting in Hacking,Active Scripts 2021-03-07 21:40:30 -05:00
Olivier Gagnon
56441b8e34 run build for 0.48 2021-03-07 18:45:23 -05:00
Olivier Gagnon
5106315128 Character,Factions has a badge indicating how many pending invite the player has, Character,Augmentations has a badge indicating how many augs the player has bought but not installed. 2021-03-07 18:41:04 -05:00
Olivier Gagnon
6ca7f10faf Current stamina will scale as max stamina increases, this prevents players from having very high penalty when they gain huge amount of exp at the start of a reset. 2021-03-07 16:48:48 -05:00
Olivier Gagnon
56802fc85e The players gang is always listed first in gang terrority screen. 2021-03-07 16:35:17 -05:00
Olivier Gagnon
700583a739 fix broken color from character overview 2021-03-07 16:33:46 -05:00
Olivier Gagnon
a290b0bef5 Bladeburner can be accessed from other bitnodes if the player has SF7 2021-03-07 16:32:56 -05:00
Olivier Gagnon
79a06dd91c Character,Augmentations now display by how much the stats will increase. 2021-03-07 16:32:16 -05:00
Olivier Gagnon
6cd6f28820 Cities are now top-down view of metro maps in ascii 2021-03-07 16:14:08 -05:00
Olivier Gagnon
dabb5016fc Added maxNumNodes to the hacknet API 2021-03-07 16:03:21 -05:00
Olivier Gagnon
58e38faad6 Character percentages are aligned, server and hacknet limit are displayed, if the player has SF5 the reduces stats are shown. 2021-03-07 15:58:52 -05:00
Olivier Gagnon
31e8ca8c8d BN12 now reduces coding contract money 2021-03-07 13:27:21 -05:00
Olivier Gagnon
c72519e3ea Formatting and typo 2021-03-07 13:25:09 -05:00
Olivier Gagnon
58333c1b46 corporation textbox now match the rest of the game. 2021-03-07 13:21:00 -05:00
Olivier Gagnon
f0ad090cdc All BonusTime now displays in the H M S format 2021-03-07 13:19:36 -05:00
Olivier Gagnon
4bd1fce1f6 Fixed an issue where the gang equipment screen would freeze the game if a script installed augmentations while it is open. 2021-03-07 13:15:15 -05:00
Olivier Gagnon
b35e25e5dc New .ns scripts start with a main function. 2021-03-07 13:11:29 -05:00
Olivier Gagnon
a8bb345c88 Faction donation text-input style now matches the rest of the game. 2021-03-07 13:09:32 -05:00
Olivier Gagnon
bbe4f9c286 Pid resets to 1 when installing or destroying a BitNode. 2021-03-07 13:08:12 -05:00
Olivier Gagnon
f9dcefd6ea Merge branch 'dev' of github.com:danielyxie/bitburner into dev 2021-03-07 12:58:59 -05:00
Olivier Gagnon
44c2bab557 Travel Agency now displays a world map. 2021-03-07 12:58:49 -05:00
Olivier Gagnon
fbca5a4d8f Travel Agency now displays a world map. 2021-03-07 12:58:04 -05:00
Olivier Gagnon
c2ceaa9bdd getCharacterInformation now additionally returns stat experience 2021-03-07 05:01:24 -05:00
Olivier Gagnon
dc402bef68 added getAugmentationStats to netscript, it returns the stat boost of an aug 2021-03-07 04:57:49 -05:00
Olivier Gagnon
64272c99fb Added softReset to netscript 2021-03-07 04:49:57 -05:00
Olivier Gagnon
c8377c0bb3 Fix SF3 listed with a limit level of infinity 2021-03-07 04:43:31 -05:00
hydroflame
4145ddad39 0.47.3 patch 2 fix documentation (#810) 2021-03-07 04:37:56 -05:00
hydroflame
e9dfe3c389 v0.47.3 (#808)
* Updated ram cost of documentation

* v0.47.3

Co-authored-by: Samuel A. Lamb <samuei@users.noreply.github.com>
2021-03-07 04:13:37 -05:00
kalobkalob
f9162e4d30 Update ls.rst (#734)
* Update ls.rst

Modified ram cost.

Co-authored-by: hydroflame <79246165+hydroflame@users.noreply.github.com>
2021-03-07 03:10:53 -05:00
danielyxie
b97fab2bf4 Fixed gym bug 2019-07-16 09:52:43 -07:00
danielyxie
3c9ebb75fe Merge pull request #647 from danielyxie/dev
v0.47.2-patch-1
2019-07-16 01:33:35 -07:00
danielyxie
434a522429 Merge branch 'dev' of https://github.com/danielyxie/bitburner into dev 2019-07-16 01:32:02 -07:00
danielyxie
49fa63971b Minor typo fixes for v0.47.2 2019-07-16 01:31:48 -07:00
Kalumniatoris
8dfc563c86 stockmarket.rst typo very -> every
fixed typo: "Stock prices are updated very ~6 seconds." -> "Stock prices are updated every ~6 seconds."
2019-07-16 01:31:47 -07:00
danielyxie
dded9103cb Minor typo fixes for v0.47.2 2019-07-16 01:30:35 -07:00
Kalumniatoris
741f57e9e2 stockmarket.rst typo very -> every
fixed typo: "Stock prices are updated very ~6 seconds." -> "Stock prices are updated every ~6 seconds."
2019-07-15 21:41:03 -07:00
danielyxie
59cf1d5baf v0.47.2 2019-07-15 21:40:43 -07:00
danielyxie
916ef06913 isBusy() now returns true if you are in a hacking mission 2019-07-15 21:40:43 -07:00
danielyxie
91ee65a101 Converted everything to use acorn npm package. Updated acorn packages to latest version. Updated acorn parsing to use ES9 2019-07-15 21:40:43 -07:00
danielyxie
042f926700 Minor bugfixes with killing Netscript scripts, and cleaned up text 2019-07-15 21:40:43 -07:00
danielyxie
c0432359c3 Implemented 'kill by PID' functionality 2019-07-15 21:40:43 -07:00
danielyxie
fbf5545708 Color-coded BitNode selection screen and added SF information 2019-07-15 21:40:43 -07:00
danielyxie
6ae7b0136c Minor bugfixes for a variety of NS functions. After infiltration, UI returns to corp page rather than city page 2019-07-15 21:40:43 -07:00
danielyxie
200ccd3ad0 Renamed getNoSuchRunningScriptErrorMessage() function 2019-07-15 21:40:43 -07:00
danielyxie
31f97f74fd Fix GH Issue #621: workForFaction() now properly accounts for disabled/enabled logs 2019-07-15 21:40:43 -07:00
danielyxie
4cabd2e4ed Implement GH Issue #620: Add tail() Netscript function 2019-07-15 21:40:43 -07:00
danielyxie
8be7fa9157 Implemented GH Issue #599: Added 'solarized dark' theme to CodeMirror 2019-07-15 21:40:43 -07:00
danielyxie
8ddf7dfbd4 Fix GH Issue #616: Stock Market UI throws error for certain locales because the price format length is too high 2019-07-15 21:40:43 -07:00
danielyxie
571ddb109a Fix GH Issue #632: 'Create Program' link visibility should now be properly dynamically evaluated 2019-07-15 21:40:43 -07:00
danielyxie
b2772bbfc1 Fixed GH Issue #641 2019-07-15 21:40:43 -07:00
danielyxie
57815ac6a0 v0.47.2 2019-07-15 21:40:13 -07:00
danielyxie
758f329d14 isBusy() now returns true if you are in a hacking mission 2019-07-13 22:44:53 -07:00
danielyxie
096f984d6b Converted everything to use acorn npm package. Updated acorn packages to latest version. Updated acorn parsing to use ES9 2019-07-13 22:36:12 -07:00
danielyxie
06cd584f10 Minor bugfixes with killing Netscript scripts, and cleaned up text 2019-07-13 20:55:58 -07:00
danielyxie
4f2f75762c Implemented 'kill by PID' functionality 2019-07-11 19:37:17 -07:00
danielyxie
d94516f39b Color-coded BitNode selection screen and added SF information 2019-07-08 18:41:59 -07:00
danielyxie
b479a3570e Minor bugfixes for a variety of NS functions. After infiltration, UI returns to corp page rather than city page 2019-07-08 18:41:59 -07:00
danielyxie
ac49b8074f Renamed getNoSuchRunningScriptErrorMessage() function 2019-07-04 18:14:34 -07:00
danielyxie
7a49a5b3e8 Fix GH Issue #621: workForFaction() now properly accounts for disabled/enabled logs 2019-07-04 18:14:34 -07:00
danielyxie
6d9e6e6466 Implement GH Issue #620: Add tail() Netscript function 2019-07-04 18:14:34 -07:00
danielyxie
2d179199ed Implemented GH Issue #599: Added 'solarized dark' theme to CodeMirror 2019-07-04 18:14:34 -07:00
danielyxie
dc928828e2 Fix GH Issue #616: Stock Market UI throws error for certain locales because the price format length is too high 2019-07-04 18:14:34 -07:00
danielyxie
658df9fb01 Fix GH Issue #632: 'Create Program' link visibility should now be properly dynamically evaluated 2019-07-01 21:15:11 -07:00
danielyxie
44bf3cb101 Fixed GH Issue #641 2019-07-01 20:39:12 -07:00
Papayaman1000
b82d7c12af Removed outdated information
Firefox added flagless support for dynamic imports in version 67, so it no longer needs special mention.
2019-06-28 13:23:24 -07:00
danielyxie
4476d6b258 Merge pull request #642 from danielyxie/dev
Dev
2019-06-28 13:22:53 -07:00
248 changed files with 21565 additions and 6413 deletions

View File

@@ -59,10 +59,16 @@
}
#character-hp-wrapper { color: $my-stat-hp-color; }
.character-hp-cell { color: $my-stat-hp-color; }
#character-money-wrapper { color: $my-stat-money-color; }
.character-money-cell { color: $my-stat-money-color; }
#character-hack-wrapper { color: $my-stat-hack-color; }
.character-hack-cell { color: $my-stat-hack-color; }
#character-cha-wrapper { color: $my-stat-cha-color; }
.character-cha-cell { color: $my-stat-cha-color; }
#character-int-wrapper { color: $my-stat-int-color; }
.character-int-cell { color: $my-stat-int-color; }
.character-combat-cell { color: $my-stat-physical; }
.character-overview-btn {
@include borderRadius(12px);

View File

@@ -7,16 +7,28 @@
position: fixed;
}
.bitnode {
color: #00f;
}
&.level-0 {
color: red;
}
.bitnode-destroyed {
color: #f00;
}
&.level-1 {
color: yellow;
}
.bitnode:hover,
.bitnode-destroyed:hover {
color: #fff;
&.level-2 {
color: #48D1CC;
}
&.level-3 {
color: blue;
}
&.unimplemented {
color: gray;
}
&:hover {
color: #fff;
}
}

View File

@@ -17,7 +17,8 @@ body {
p,
pre,
h2,
.text {
.text,
td {
color: var(--my-font-color);
}
@@ -79,6 +80,28 @@ a:visited {
right: 0;
}
#factions-tab {
position: relative;
}
#factions-notification {
font-size: $defaultFontSize * 0.625;
position: absolute; /* Position the badge within the relatively positioned button */
top: 0;
right: 0;
}
#augmentations-tab {
position: relative;
}
#augmentations-notification {
font-size: $defaultFontSize * 0.625;
position: absolute; /* Position the badge within the relatively positioned button */
top: 0;
right: 0;
}
.notification-on {
background-color: #fa3e3e;
color: #fff;
@@ -336,3 +359,38 @@ a:visited {
.smallfont {
font-size: $defaultFontSize * 0.8125;
}
.optionCheckbox {
filter: invert(1) sepia(1) hue-rotate(41deg) brightness(100%) saturate(10);
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;
}
.optionRange::-webkit-slider-thumb {
-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;
}

20
dist/engine.bundle.js vendored

File diff suppressed because one or more lines are too long

View File

@@ -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([361,0]),o()}({304:function(n,t,o){},306:function(n,t,o){},308:function(n,t,o){},310:function(n,t,o){},312:function(n,t,o){},314:function(n,t,o){},316:function(n,t,o){},318:function(n,t,o){},320:function(n,t,o){},322:function(n,t,o){},324:function(n,t,o){},326:function(n,t,o){},328:function(n,t,o){},330:function(n,t,o){},332:function(n,t,o){},334:function(n,t,o){},336:function(n,t,o){},338:function(n,t,o){},340:function(n,t,o){},342:function(n,t,o){},344:function(n,t,o){},346:function(n,t,o){},348:function(n,t,o){},350:function(n,t,o){},352:function(n,t,o){},354:function(n,t,o){},356:function(n,t,o){},358:function(n,t,o){},361:function(n,t,o){"use strict";o.r(t);o(360),o(358),o(356),o(354),o(352),o(350),o(348),o(346),o(344),o(342),o(340),o(338),o(336),o(334),o(332),o(330),o(328),o(326),o(324),o(322),o(320),o(318),o(316),o(314),o(312),o(310),o(308),o(306),o(304)}});
!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([364,0]),o()}({307:function(n,t,o){},309:function(n,t,o){},311:function(n,t,o){},313:function(n,t,o){},315:function(n,t,o){},317:function(n,t,o){},319:function(n,t,o){},321:function(n,t,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){},364:function(n,t,o){"use strict";o.r(t);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),o(321),o(319),o(317),o(315),o(313),o(311),o(309),o(307)}});
//# sourceMappingURL=engineStyle.bundle.js.map

90
dist/engineStyle.css vendored
View File

@@ -26,7 +26,8 @@ body {
p,
pre,
h2,
.text {
.text,
td {
color: var(--my-font-color); }
h1 {
@@ -78,6 +79,26 @@ a:visited {
top: 0;
right: 0; }
#factions-tab {
position: relative; }
#factions-notification {
font-size: 10px;
position: absolute;
/* Position the badge within the relatively positioned button */
top: 0;
right: 0; }
#augmentations-tab {
position: relative; }
#augmentations-notification {
font-size: 10px;
position: absolute;
/* Position the badge within the relatively positioned button */
top: 0;
right: 0; }
.notification-on {
background-color: #fa3e3e;
color: #fff;
@@ -335,6 +356,35 @@ a:visited {
.smallfont {
font-size: 13px; }
.optionCheckbox {
filter: invert(1) sepia(1) hue-rotate(41deg) brightness(100%) saturate(10);
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; }
.optionRange::-webkit-slider-thumb {
-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; }
/* COLORS */
/* Attributes */
/* Styling for tooltip-style elements */
@@ -684,18 +734,36 @@ button {
#character-hp-wrapper {
color: #dd3434; }
.character-hp-cell {
color: #dd3434; }
#character-money-wrapper {
color: #ffd700; }
.character-money-cell {
color: #ffd700; }
#character-hack-wrapper {
color: #adff2f; }
.character-hack-cell {
color: #adff2f; }
#character-cha-wrapper {
color: #a671d1; }
.character-cha-cell {
color: #a671d1; }
#character-int-wrapper {
color: #6495ed; }
.character-int-cell {
color: #6495ed; }
.character-combat-cell {
color: #faffdf; }
.character-overview-btn {
-webkit-border-radius: 12px;
-moz-border-radius: 12px;
@@ -1279,14 +1347,22 @@ button {
#red-pill-container {
position: fixed; }
.bitnode {
color: #00f; }
.bitnode.level-0 {
color: red; }
.bitnode-destroyed {
color: #f00; }
.bitnode.level-1 {
color: yellow; }
.bitnode:hover,
.bitnode-destroyed:hover {
.bitnode.level-2 {
color: #48D1CC; }
.bitnode.level-3 {
color: blue; }
.bitnode.unimplemented {
color: gray; }
.bitnode:hover {
color: #fff; }
/* COLORS */

26
dist/vendor.bundle.js vendored

File diff suppressed because one or more lines are too long

View File

@@ -204,8 +204,8 @@ The list contains the name of (i.e. the value returned by
| | | the string, the result should be an array with only an empty string. |
| | | |
| | | Examples: |
| | | ()())() -> ["()()()", "(())()"] |
| | | (a)())() -> ["(a)()()", "(a())()"] |
| | | ()())() -> [()()(), (())()] |
| | | (a)())() -> [(a)()(), (a())()] |
| | | )( -> [""] |
+------------------------------------+------------------------------------------------------------------------------------------+
| Find All Valid Math Expressions | | You are given a string which contains only digits between 0 and 9 as well as a target |
@@ -214,10 +214,12 @@ The list contains the name of (i.e. the value returned by
| | | |
| | | The answer should be provided as an array of strings containing the valid expressions. |
| | | |
| | | NOTE: Numbers in an expression cannot have leading 0's |
| | | |
| | | Examples: |
| | | Input: digits = "123", target = 6 |
| | | Output: ["1+2+3", "1*2*3"] |
| | | Output: [1+2+3, 1*2*3] |
| | | |
| | | Input: digits = "105", target = 5 |
| | | Output: ["1*0+5", "10-5"] |
| | | Output: [1*0+5, 10-5] |
+------------------------------------+------------------------------------------------------------------------------------------+

View File

@@ -184,7 +184,7 @@ See :ref:`netscript_tixapi` for more details.
Under the Hood
--------------
Stock prices are updated very ~6 seconds.
Stock prices are updated every ~6 seconds.
Whether a stock's price moves up or down is determined by RNG. However,
stocks have properties that can influence the way their price moves. These properties

View File

@@ -312,9 +312,12 @@ kill
^^^^
$ kill [script name] [args...]
$ kill [pid]
Kill the script specified by the script name and arguments. Each argument must
be separated by a space. Remember that a running script is uniquely identified
Kill the script specified by the script filename and arguments OR by its PID.
If you are killing the script using its filename and arguments, then each argument
must be separated by a space. Remember that a running script is uniquely identified
by both its name and the arguments that are used to start it. So, if a script
was ran with the following arguments::
@@ -324,8 +327,7 @@ Then to kill this script the same arguments would have to be used::
$ kill foo.script 50e3 sigma-cosmetics
Note that after issuing the 'kill' command for a script, it may take a few seconds for
the script to actually stop running.
If you are killing the script using its PID, then the PID argument must be numeric.
killall
^^^^^^^
@@ -403,7 +405,7 @@ to convert from script to text file, or vice versa.
This function can also be used to rename files.
.. note:: Unlike the Linux :code:`mv` command, the *destination* argument must be the
full filepath. It cannot be a directory.
full filepath. It cannot be a directory.
Examples::
@@ -511,6 +513,8 @@ sudov
Prints whether or not you have root access to the current server.
.. _tail_terminal_command:
tail
^^^^
@@ -584,7 +588,7 @@ The data can only be downloaded to a script (.script, .ns, .js) or a text file
(.txt). If the target file already exists, it will be overwritten by this command.
Note that will not be possible to download data from many websites because they
do not allow cross-origin origin sharing (CORS). This includes websites such
do not allow cross-origin resource sharing (CORS). This includes websites such
as gist and pastebin. One notable site it will work on is rawgithub. Example::
$ wget https://raw.githubusercontent.com/danielyxie/bitburner/master/README.md game_readme.txt

View File

@@ -3,6 +3,113 @@
Changelog
=========
v0.49.0 - 2021-03-11 Source-File -1 (hydroflame)
-------
**Source-File -1**
* For advanced players: The game now embraces exploits and will reward
players for doing so.
**Gang**
* ascension is less effective as the ascension multiplier goes up.
* territory gain scales with power difference.
**Netscript**
* 'gang.getEquipmentStats' returns the stats of the equipment.
* 'gang.getTaskStats' returns the stats of a task.
* 'getCrimeStats' returns the stats of a crime.
* Crashes should now print the ns stack trace.
* Log messages are now more consistent.
* 'softReset' now accepts a callback script like 'installAugmentations'
**Misc.**
* Minor formatting under Hacking>Active Scripts
* option menu colors now match the rest of the game, kinda.
v0.48.0 - ASCII - 2021-03-07 (hydroflame)
-------
**ASCII**
* Travel Agency now displays a world map
* Cities are now top view of metro station maps
**Netscript**
* 'softReset' is a new netscript function that performs a soft reset
regardless of if the player has bought augmentations or not.
* 'getAugmentationStats' is a new netscript function that returns the stats of
an augmentation.
* getCharacterInformation now additionally returns exp
* pid resets back to 1 when installing or destroying a BitNode.
* New '.ns' scripts start with a main function.
* 'hacknet.maxNumNodes' returns the maximum number of hacknet nodes.
**Bladeburner**
* Current stamina will scale as max stamina increases, this prevents players
from having very high penalty when they gain huge amount of exp at the
start of a reset.
**Misc.**
* Fixed an issue where SF3 was listed as infinitly repeatable and SF12 as
having a limit of 3.
* Fixed an issue where the gang equipment screen would freeze the game if a
script installed augmentations while it is open.
* All BonusTime now displays in the 'H M S' format.
* Donation textbox style updated to match the rest of the game.
* Corporation name style updated to match the rest of the game.
* minor formatting under Hacking>Active Scripts
* typo in BN12 description
* BN12 now reduces contract money
* Character>Stats percentages are aligned, server and hacknet limit are
displayed, if the player has SF5 the reduces stats are shown.
* Character>Augmentations now displays by how much the player stats will
increase.
* Character>Augmentations has a badge indicating how many augs the player
has bought but not installed
* Character>Factions has a badge indicating how many factions have pending
invites.
v0.47.2 - 7/15/2019
-------------------
**Netscript Changes**
* Added tail() Netscript function
* hacknet.getNodeStats() function now returns an additional property for Hacknet Servers: hashCapacity
* When writing to a file, the write() function now casts the data being written to a string (using String())
* BitNode-selection page now shows what Source-File level you have for each BitNode
* Overloaded kill() function so that you can kill a script by its PID
* spawn() now only takes 10 seconds to run (decreased from 20 seconds)
* run() and exec() now return the PID of the newly-executed scripts, rather than a boolean
* (A PID is just a positive integer)
* run(), exec(), and spawn() no longer need to be await-ed in NetscriptJS
* Script parsing and RAM calculations now support ES9
* installAugmentations() no longer has a return value since it causes all scripts to die
* isBusy() now returns true if you are in a Hacking Mission
* Bug fix: workForFaction() function now properly accounts for disabled logs
* Bug fix: RAM should now be properly calculated when running a callback script with installAugmentations()
* Bug fix: Fixed bug that caused scripts killed by exit()/spawn() to "clean up" twice
**Misc Changes**
* The 'kill' Terminal command can now kill a script by its PID
* Added 'Solarized Dark' theme to CodeMirror editor
* After Infiltration, you will now return to the company page rather than the city page
* Bug fix: Stock Market UI should no longer crash for certain locale settings
* Bug fix: You can now properly remove unfinished programs (the *.exe-N%-INC files)
* Bug fix: Fixed an issue that allowed you to increase money on servers with a 'maxMoney' of 0 (like CSEC)
* Bug fix: Scripts no longer persist if they were started with syntax/import errors
* Bug fix: 'hack' and 'analyze' Terminal commands are now blocking
* Bug fix: Exp earned by duplicate sleeves at universities/gyms now takes hash upgrades into account
v0.47.1 - 6/27/2019
-------------------
* Stock Market changes:

View File

@@ -18,3 +18,5 @@ getBitNodeMultipliers() Netscript Function
mults = getBitNodeMultipliers();
print(mults.ServerMaxMoney);
print(mults.HackExpGain);
:RAM cost: 4 GB

View File

@@ -4,7 +4,7 @@ brutessh() Netscript Function
.. js:function:: brutessh(hostname/ip)
:param string hostname/ip: IP or hostname of the target server
:RAM cost: 0 GB
:RAM cost: 0.05 GB
Runs the BruteSSH.exe program on the target server. BruteSSH.exe must exist on your home computer.

View File

@@ -6,7 +6,7 @@ clear() Netscript Function
:param string/number port/fn: Port or text file to clear
:RAM cost: 1 GB
This function is used to clear data in a `Netscript Ports <http://bitburner.wikia.com/wiki/Netscript_Ports>`_ or a text file.
This function is used to clear data in a :ref:`Netscript Port <netscript_ports>` or a text file.
If the *port/fn* argument is a number between 1 and 20, then it specifies a port and will clear it (deleting all data from the underlying queue).

View File

@@ -14,10 +14,15 @@ exec() Netscript Function
Run a script as a separate process on a specified server. This is similar to the *run* function except
that it can be used to run a script on any server, instead of just the current server.
Returns true if the script is successfully started, and false otherwise.
If the script was successfully started, then this functions returns the PID
of that script. Otherwise, it returns 0.
Running this function with a *numThreads* argument of 0 will return false without running the script.
However, running this function with a negative *numThreads* argument will cause a runtime error.
.. note:: PID stands for Process ID. The PID is a unique identifier for each script.
The PID will always be a positive integer.
.. 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.
The simplest way to use the *exec* command is to call it with just the script name and the target server.
The following example will try to run *generic-hack.script* on the *foodnstuff* server::

View File

@@ -4,7 +4,7 @@ ftpcrack() Netscript Function
.. js:function:: ftpcrack(hostname/ip)
:param string hostname/ip: IP or hostname of the target server
:RAM cost: 0 GB
:RAM cost: 0.05 GB
Runs the FTPCrack.exe program on the target server. FTPCrack.exe must exist on your home computer.

View File

@@ -11,3 +11,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.
.. note:: For Hacknet Servers (the upgraded version of a Hacknet Node), this function will
return :code:`Infinity`.

View File

@@ -11,3 +11,6 @@ getHackTime() Netscript Function
The function takes in an optional *hackLvl* parameter that can be specified
to see what the hack time would be at different hacking levels.
.. note:: For Hacknet Servers (the upgraded version of a Hacknet Node), this function will
return :code:`Infinity`.

View File

@@ -11,3 +11,6 @@ getWeakenTime() Netscript Function
The function takes in an optional *hackLvl* parameter that can be specified
to see what the weaken time would be at different hacking levels.
.. note:: For Hacknet Servers (the upgraded version of a Hacknet Node), this function will
return :code:`Infinity`.

View File

@@ -4,7 +4,7 @@ growthAnalyze() Netscript Function
.. js:function:: growthAnalyze(hostname/ip, growthAmount)
:param string hostname/ip: IP or hostname of server to analyze
:param number growthAmount: Multiplicative factor by which the server is grown. Decimal form.
:param number growthAmount: Multiplicative factor by which the server is grown. Decimal form. Must be >= 1.
:returns: The amount of grow() calls needed to grow the specified server by the specified amount
:RAM cost: 1 GB

View File

@@ -4,7 +4,7 @@ httpworm() Netscript Function
.. js:function:: httpworm(hostname/ip)
:param string hostname/ip: IP or hostname of the target server
:RAM cost: 0 GB
:RAM cost: 0.05 GB
Runs the HTTPWorm.exe program on the target server. HTTPWorm.exe must exist on your home computer.

View File

@@ -27,3 +27,22 @@ kill() Netscript Function
The following will try to kill a script named *foo.script* on the current server that was ran with the arguments 1 and "foodnstuff"::
kill("foo.script", getHostname(), 1, "foodnstuff");
.. js:function:: kill(scriptPid)
:param number scriptPid: PID of the script to kill
:RAM cost: 0.5 GB
Kills the script with the specified PID. Killing a script by its PID will typically
have better performance, especially if you have many scripts running.
If this function successfully kills the specified script, then it will return true.
Otherwise, it will return false.
*Examples:*
The following example will try to kill the script with the PID 10::
if (kill(10)) {
print("Killed script with PID 10!");
}

View File

@@ -5,7 +5,7 @@ ls() Netscript Function
:param string hostname/ip: Hostname or IP of the target server
:param string grep: a substring to search for in the filename
:RAM cost: 0 GB
:RAM cost: 0.2 GB
Returns an array with the filenames of all files on the specified server (as strings). The returned array
is sorted in alphabetic order

View File

@@ -5,6 +5,7 @@ nFormat() Netscript Function
:param number n: Number to format
:param string format: Formatter
:RAM cost: 0 GB
Converts a number into a string with the specified formatter. This uses the
`numeraljs <http://numeraljs.com/>`_ library, so the formatters must be compatible

View File

@@ -4,7 +4,7 @@ nuke() Netscript Function
.. js:function:: nuke(hostname/ip)
:param string hostname/ip: IP or hostname of the target server
:RAM cost: 0 GB
:RAM cost: 0.05 GB
Runs the NUKE.exe program on the target server. NUKE.exe must exist on your home computer.

View File

@@ -4,7 +4,7 @@ relaysmtp() Netscript Function
.. js:function:: relaysmtp(hostname/ip)
:param string hostname/ip: IP or hostname of the target server
:RAM cost: 0 GB
:RAM cost: 0.05 GB
Runs the relaySMTP.exe program on the target server. relaySMTP.exe must exist on your home computer.

View File

@@ -13,10 +13,15 @@ run() Netscript Function
Run a script as a separate process. This function can only be used to run scripts located on the current server (the server
running the script that calls this function).
Returns true if the script is successfully started, and false otherwise.
If the script was successfully started, then this functions returns the PID
of that script. Otherwise, it returns 0.
Running this function with a *numThreads* argument of 0 will return false without running the script.
However, running this function with a negative *numThreads* argument will cause a runtime error.
.. note:: PID stands for Process ID. The PID is a unique identifier for each script.
The PID will always be a positive integer.
.. 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.
The simplest way to use the *run* command is to call it with just the script name. The following example will run
'foo.script' single-threaded with no arguments::

View File

@@ -9,7 +9,7 @@ spawn() Netscript Function
Additional arguments to pass into the new script that is being run.
:RAM cost: 2 GB
Terminates the current script, and then after a delay of about 20 seconds it will execute the newly-specified script.
Terminates the current script, and then after a delay of about 10 seconds it will execute the newly-specified script.
The purpose of this function is to execute a new script without being constrained by the RAM usage of the current one.
This function can only be used to run scripts on the local server.

View File

@@ -4,7 +4,7 @@ sqlinject() Netscript Function
.. js:function:: sqlinject(hostname/ip)
:param string hostname/ip: IP or hostname of the target server
:RAM cost: 0 GB
:RAM cost: 0.05 GB
Runs the SQLInject.exe program on the target server. SQLInject.exe must exist on your home computer.

View File

@@ -0,0 +1,29 @@
tail() Netscript Function
==================================
.. js:function:: tail([fn], [hostname/ip=current ip], [...args])
:param string fn: Optional. Filename of script to get logs from.
:param string ip: Optional. IP or hostname of the server that the script is on
:param args...: Arguments to identify which scripts to get logs for
:RAM cost: 0 GB
Opens a script's logs. This is functionally the same as the
:ref:`tail_terminal_command` Terminal command.
If the function is called with no arguments, it will open the current script's logs.
Otherwise, the `fn`, `hostname/ip,` and `args...` arguments can be used to get the logs
from another script. Remember that scripts are uniquely identified by both
their names and arguments.
Examples::
// Open logs from foo.script on the current server that was run with no args
tail("foo.script");
// Open logs from foo.script on the foodnstuff server that was run with no args
tail("foo.script", "foodnstuff");
// Open logs from foo.script on the foodnstuff server that was run with the arguments [1, "test"]
tail("foo.script", "foodnstuff", 1, "test");

View File

@@ -3,6 +3,8 @@ getActionAutolevel() Netscript Function
.. js:function:: getActionAutolevel(type, name)
: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

View File

@@ -3,6 +3,8 @@ getActionCountRemaining() Netscript Function
.. js:function:: getActionCountRemaining(type, name)
: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

View File

@@ -3,6 +3,8 @@ getActionCurrentLevel() Netscript Function
.. js:function:: getActionCurrentLevel(type, name)
: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

View File

@@ -3,6 +3,8 @@ getActionEstimatedSuccessChance() Netscript Function
.. js:function:: getActionEstimatedSuccessChance(type, name)
: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

View File

@@ -3,6 +3,8 @@ getActionMaxLevel() Netscript Function
.. js:function:: getActionMaxLevel(type, name)
: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

View File

@@ -3,6 +3,8 @@ getActionRepGain() Netscript Function
.. js:function:: getActionRepGain(type, name[, level=current level])
: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
:param number level: Optional action level at which to calculate the gain

View File

@@ -3,6 +3,8 @@ getActionTime() Netscript Function
.. js:function:: getActionTime(type, name)
: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

View File

@@ -3,4 +3,6 @@ getBlackOpNames() Netscript Function
.. js:function:: getBlackOpNames()
:RAM cost: 0.4 GB
Returns an array of strings containing the names of all Bladeburner Black Ops

View File

@@ -3,6 +3,8 @@ getBlackOpRank() Netscript Function
.. js:function:: getBlackOpRank(name)
:RAM cost: 2 GB
:param string name: name of the BlackOp. Must be an exact match.
Returns the rank required to complete this BlackOp.

View File

@@ -3,6 +3,8 @@ getBonusTime() Netscript Function
.. js:function:: getBonusTime()
:RAM cost: 0 GB
Returns the amount of accumulated "bonus time" (seconds) for the Bladeburner mechanic.
"Bonus time" is accumulated when the game is offline or if the game is

View File

@@ -3,4 +3,6 @@ getCity() Netscript Function
.. js:function:: getCity()
:RAM cost: 4 GB
Returns the city that the player is currently in (for Bladeburner).

View File

@@ -3,6 +3,8 @@ getCityChaos() Netscript Function
.. js:function:: getCityChaos(cityName)
:RAM cost: 4 GB
:param string cityName: Name of city. Case-sensitive
Returns the chaos in the specified city, or -1 if an invalid city was specified

View File

@@ -3,6 +3,8 @@ getCityEstimatedCommunities() Netscript Function
.. js:function:: getCityEstimatedCommunities(cityName)
:RAM cost: 4 GB
:param string cityName: Name of city. Case-sensitive
Returns the estimated number of Synthoid communities in the specified city,

View File

@@ -3,6 +3,8 @@ getCityEstimatedPopulation() Netscript Function
.. js:function:: getCityEstimatedPopulation(cityName)
:RAM cost: 4 GB
:param string cityName: Name of city. Case-sensitive
Returns the estimated number of Synthoids in the specified city, or -1

View File

@@ -3,4 +3,6 @@ getContractNames() Netscript Function
.. js:function:: getContractNames()
:RAM cost: 0.4 GB
Returns an array of strings containing the names of all Bladeburner contracts

View File

@@ -3,6 +3,8 @@ getCurrentAction() Netscript Function
.. js:function:: getCurrentAction()
:RAM cost: 1 GB
Returns an object that represents the player's current Bladeburner action::
{

View File

@@ -3,4 +3,6 @@ getGeneralActionNames() Netscript Function
.. js:function:: getGeneralActionNames()
:RAM cost: 0.4 GB
Returns an array of strings containing the names of all general Bladeburner actions

View File

@@ -3,4 +3,6 @@ getOperationNames() Netscript Function
.. js:function:: getOperationNames()
:RAM cost: 0.4 GB
Returns an array of strings containing the names of all Bladeburner operations

View File

@@ -3,4 +3,6 @@ getRank() Netscript Function
.. js:function:: getRank()
:RAM cost: 4 GB
Returns the player's Bladeburner Rank

View File

@@ -3,6 +3,8 @@ getSkillLevel() Netscript Function
.. js:function:: getSkillLevel(skillName="")
:RAM cost: 4 GB
:param string skillName: Name of skill. Case-sensitive and must be an exact match
This function returns your level in the specified skill.

View File

@@ -3,4 +3,6 @@ getSkillNames() Netscript Function
.. js:function:: getSkillNames()
:RAM cost: 0.4 GB
Returns an array of strings containing the names of all Bladeburner skills

View File

@@ -3,4 +3,6 @@ getSkillPoints() Netscript Function
.. js:function:: getSkillPoints()
:RAM cost: 4 GB
Returns the number of Bladeburner skill points you have

View File

@@ -3,6 +3,8 @@ getSkillUpgradeCost() Netscript Function
.. js:function:: getSkillUpgradeCost(skillName="")
:RAM cost: 4 GB
:param string skillName: Name of skill. Case-sensitive and must be an exact match
This function returns the number of skill points needed to upgrade the

View File

@@ -3,6 +3,8 @@ getStamina() Netscript Function
.. js:function:: getStamina()
:RAM cost: 4 GB
Returns an array with two elements:
[Current stamina, Max stamina]

View File

@@ -3,6 +3,8 @@ getTeamSize() Netscript Function
.. js:function:: getTeamSize(type, name)
: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

View File

@@ -3,6 +3,8 @@ joinBladeburnerDivision() Netscript Function
.. js:function:: joinBladeburnerDivision()
:RAM cost: 4 GB
Attempts to join the Bladeburner division.
Returns true if you successfully join the Bladeburner division, or if you

View File

@@ -3,6 +3,8 @@ joinBladeburnerFaction() Netscript Function
.. js:function:: joinBladeburnerFaction()
:RAM cost: 4 GB
Attempts to join the Bladeburner faction.
Returns true if you successfully join the Bladeburner faction, or if

View File

@@ -3,6 +3,8 @@ setActionAutolevel() Netscript Function
.. js:function:: setActionAutolevel(type, name, autoLevel)
: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
:param boolean autoLevel: Whether or not to autolevel this action

View File

@@ -3,6 +3,8 @@ setActionLevel() Netscript Function
.. js:function:: setActionLevel(type, name, level)
: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
:param level int: Level to set this action to

View File

@@ -3,6 +3,8 @@ setTeamSize() Netscript Function
.. js:function:: setTeamSize(type, name, size)
: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
:param int size: Number of team members to set. Will be converted using Math.round()

View File

@@ -3,6 +3,8 @@ startAction() Netscript Function
.. js:function:: startAction(type, name)
: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

View File

@@ -3,4 +3,6 @@ stopBladeburnerAction() Netscript Function
.. js:function:: stopBladeburnerAction()
:RAM cost: 2 GB
Stops the current Bladeburner action

View File

@@ -3,6 +3,8 @@ switchCity() Netscript Function
.. js:function:: switchCity(cityName)
:RAM cost: 4 GB
:param string cityName: Name of city
Attempts to switch to the specified city (for Bladeburner only).

View File

@@ -3,6 +3,8 @@ upgradeSkill() Netscript Function
.. js:function:: upgradeSkill(skillName)
:RAM cost: 4 GB
:param string skillName: Name of Skill to be upgraded. Case-sensitive and must be an exact match
Attempts to upgrade the specified Bladeburner skill. Returns true if the

View File

@@ -18,3 +18,5 @@ attempt() Netscript Function
option is configured, then the function will instead return a string. If the
contract is successfully solved, the string will contain a description of the
contract's reward. Otherwise, it will be an empty string.
:RAM cost: 10 GB

View File

@@ -11,3 +11,5 @@ getContractType() Netscript Function
(e.g. Find Largest Prime Factor, Total Ways to Sum, etc.)
:returns: A string with the contract's problem type
:RAM cost: 5 GB

View File

@@ -10,3 +10,5 @@ getDescription() Netscript Function
Get the full text description for the problem posed by the Coding Contract
:returns: A string with the contract's text description
:RAM cost: 5 GB

View File

@@ -11,3 +11,5 @@ getNumTriesRemaining() Netscript Function
self-destructs.
:returns: Number indicating how many attempts are remaining
:RAM cost: 2 GB

View File

@@ -3,6 +3,8 @@ ascendMember() Netscript Function
.. js:function:: ascendMember(name)
:RAM cost: 4 GB
:param string name: Name of member to ascend
Ascend the specified Gang Member.

View File

@@ -3,4 +3,6 @@ canRecruitMember() Netscript Function
.. js:function:: canRecruitMember()
:RAM cost: 1 GB
:returns: Boolean indicating whether a member can currently be recruited

View File

@@ -3,6 +3,8 @@ getBonusTime() Netscript Function
.. js:function:: getBonusTime()
:RAM cost: 0 GB
Returns the amount of accumulated "bonus time" (seconds) for the Gang mechanic.
"Bonus time" is accumulated when the game is offline or if the game is

View File

@@ -3,6 +3,8 @@ getChanceToWinClash() Netscript Function
.. js:function:: getChanceToWinClash(gangName)
:RAM cost: 4 GB
:param string gangName: Target gang
Returns the chance you have to win a clash with the specified gang. The chance

View File

@@ -3,6 +3,8 @@ getEquipmentCost() Netscript Function
.. js:function:: getEquipmentCost(equipName)
:RAM cost: 2 GB
:param string equipName: Name of equipment
Get the amount of money it takes to purchase a piece of Equipment or an Augmentation.

View File

@@ -3,6 +3,8 @@ getEquipmentNames() Netscript Function
.. js:function:: getEquipmentNames()
:RAM cost: 1 GB
Get the name of all possible equipment/upgrades you can purchase for your
Gang Members. This includes Augmentations.

View File

@@ -0,0 +1,17 @@
getEquipmentStats() Netscript Function
=====================================
.. js:function:: getEquipmentStats(equipName)
:RAM cost: 2 GB
:param string equipName: Name of equipment
:returns: A dictionary containing the stats of the equipment.
Get the specified equipment stats.
{
"str":1.04,
"def":1.04
}

View File

@@ -3,6 +3,8 @@ getEquipmentType() Netscript Function
.. js:function:: getEquipmentType(equipName)
:RAM cost: 2 GB
:param string equipName: Name of equipment
Get the specified equipment type, which can be one of the following:

View File

@@ -3,6 +3,8 @@ getGangInformation() Netscript Function
.. js:function:: getGangInformation()
:RAM cost: 2 GB
Get general information about the gang
:returns: An object with the gang information.

View File

@@ -3,6 +3,8 @@ getMemberInformation() Netscript Function
.. js:function:: getMemberInformation(name)
:RAM cost: 2 GB
:param string name: Name of member
Get stat and equipment-related information about a Gang Member

View File

@@ -3,6 +3,8 @@ getMemberNames() Netscript Function
.. js:function:: getMemberNames()
:RAM cost: 1 GB
Get the names of all Gang members
:returns: An array of the names of all Gang members as strings

View File

@@ -3,6 +3,8 @@ getOtherGangInformation() Netscript Function
.. js:function:: getOtherGangInformation()
:RAM cost: 2 GB
Get territory and power information about all gangs
:returns: An object with information about all gangs

View File

@@ -3,6 +3,8 @@ getTaskNames() Netscript Function
.. js:function:: getTaskNames()
:RAM cost: 1 GB
Get the name of all valid tasks that Gang members can be assigned to
:returns: Array of strings of all task names

View File

@@ -0,0 +1,35 @@
getTaskStats() Netscript Function
======================================
.. js:function:: getTaskStats(taskName)
:RAM cost: 1 GB
:param string name: Name of the task.
Get the stats of a gang member stats. This is typically used to evaluate
which action should be executed next.
{
name: Terrorism,
desc: "Assign this gang member to commit acts of terrorism
Greatly increases respect - Greatly increases wanted level - Scales heavily with territory",
isHacking: false,
isCombat: true,
baseRespect: 0.01,
baseWanted: 6,
baseMoney: 0,
hackWeight: 20,
strWeight: 20,
defWeight: 20,
dexWeight: 20,
agiWeight: 0,
chaWeight: 20,
difficulty: 36,
territory: {
money: 1,
respect: 2,
wanted: 2
}
}

View File

@@ -3,6 +3,8 @@ purchaseEquipment() Netscript Function
.. js:function:: purchaseEquipment(memberName, equipName)
:RAM cost: 4 GB
:param string memberName: Name of Gang member to purchase the equipment for
:param string equipName: Name of Equipment/Augmentation to purchase

View File

@@ -3,6 +3,8 @@ recruitMember() Netscript Function
.. js:function:: recruitMember(name)
:RAM cost: 2 GB
:param string name: Name of member to recruit
Attempt to recruit a new gang member.

View File

@@ -3,6 +3,8 @@ setMemberTask() Netscript Function
.. js:function:: setMemberTask(memberName, taskName)
:RAM cost: 2 GB
:param string memberName: Name of Gang member to assign
:param string taskName: Task to assign

View File

@@ -3,6 +3,8 @@ setTerritoryWarfare() Netscript Function
.. js:function:: setTerritoryWarfare(engage)
:RAM cost: 2 GB
:param bool engage: Whether or not to engage in territory warfare
Set whether or not the gang should engage in territory warfare

View File

@@ -5,6 +5,8 @@ getCacheUpgradeCost() Netscript Function
.. js:function:: getCacheUpgradeCost(i, n)
:RAM cost: 0 GB
:param number i: Index/Identifier of Hacknet Node. :ref:`See here for details <netscript_hacknetnodeapi_referencingahacknetnode>`
:param number n: Number of times to upgrade cache. Must be positive. Rounded to nearest integer

View File

@@ -3,6 +3,8 @@ getCoreUpgradeCost() Netscript Function
.. js:function:: getCoreUpgradeCost(i, n)
:RAM cost: 0 GB
:param number i: Index/Identifier of Hacknet Node. :ref:`See here for details <netscript_hacknetnodeapi_referencingahacknetnode>`
:param number n: Number of times to upgrade cores. Must be positive. Rounded to nearest integer

View File

@@ -3,6 +3,8 @@ getLevelUpgradeCost() Netscript Function
.. js:function:: getLevelUpgradeCost(i, n)
:RAM cost: 0 GB
:param number i: Index/Identifier of Hacknet Node. :ref:`See here for details <netscript_hacknetnodeapi_referencingahacknetnode>`
:param number n: Number of levels to upgrade. Must be positive. Rounded to nearest integer

View File

@@ -5,6 +5,8 @@ getNodeStats() Netscript Function
.. js:function:: getNodeStats(i)
:RAM cost: 0 GB
:param number i: Index/Identifier of Hacknet Node. :ref:`See here for details <netscript_hacknetnodeapi_referencingahacknetnode>`
Returns an object containing a variety of stats about the specified Hacknet Node::
@@ -15,11 +17,12 @@ getNodeStats() Netscript Function
ram: Node's RAM,
cores: Node's number of cores,
cache: Cache level. Only applicable for Hacknet Servers
hashCapacity: Hash Capacity provided by this Node. Only applicable for Hacknet Servers
production: Node's production per second
timeOnline: Number of seconds since Node has been purchased,
totalProduction: Total amount that the Node has produced
}
.. note:: Note that for Hacknet Nodes, production refers to the amount of money the node generates.
For Hacknet Servers (the upgraded version of Hacknet Nodes), production refers to the amount
of hashes the node generates.

View File

@@ -3,4 +3,6 @@ getPurchaseNodeCost() Netscript Function
.. js:function:: getPurchaseNodeCost()
:RAM cost: 0 GB
Returns the cost of purchasing a new Hacknet Node

View File

@@ -3,6 +3,8 @@ getRamUpgradeCost() Netscript Function
.. js:function:: getRamUpgradeCost(i, n)
:RAM cost: 0 GB
:param number i: Index/Identifier of Hacknet Node. :ref:`See here for details <netscript_hacknetnodeapi_referencingahacknetnode>`
:param number n: Number of times to upgrade RAM. Must be positive. Rounded to nearest integer

View File

@@ -5,6 +5,8 @@ hashCost() Netscript Function
.. js:function:: hashCost(upgName)
:RAM cost: 0 GB
:param string upgName: Name of upgrade to get the cost of. Must be an exact match
.. note:: This function is only applicable for Hacknet Servers (the upgraded version

View File

@@ -0,0 +1,8 @@
maxNumNodes() Netscript Function
=============================
.. js:function:: maxNumNodes()
:RAM cost: 0 GB
Returns the maximum number of Hacknet Nodes you can own.

View File

@@ -5,6 +5,8 @@ numHashes() Netscript Function
.. js:function:: numHashes()
:RAM cost: 0 GB
.. note:: This function is only applicable for Hacknet Servers (the upgraded version
of a Hacknet Node).

View File

@@ -3,4 +3,6 @@ numNodes() Netscript Function
.. js:function:: numNodes()
:RAM cost: 0 GB
Returns the number of Hacknet Nodes you own.

View File

@@ -3,6 +3,8 @@ purchaseNode() Netscript Function
.. js:function:: purchaseNode()
:RAM cost: 0 GB
Purchases a new Hacknet Node. Returns a number with the index of the Hacknet Node.
This index is equivalent to the number at the end of the Hacknet Node's name
(e.g The Hacknet Node named 'hacknet-node-4' will have an index of 4).

View File

@@ -5,6 +5,8 @@ spendHashes() Netscript Function
.. js:function:: spendHashes(upgName, upgTarget)
:RAM cost: 0 GB
:param string upgName: Name of upgrade to spend hashes on. Must be an exact match
:param string upgTarget: Object to which upgrade applies. Required for certain upgrades

View File

@@ -5,6 +5,8 @@ upgradeCache() Netscript Function
.. js:function:: upgradeCache(i, n)
:RAM cost: 0 GB
:param number i: Index/Identifier of Hacknet Node. :ref:`See here for details <netscript_hacknetnodeapi_referencingahacknetnode>`
:param number n: Number of cache levels to purchase. Must be positive. Rounded to nearest integer

View File

@@ -3,6 +3,8 @@ upgradeCore() Netscript Function
.. js:function:: upgradeCore(i, n)
:RAM cost: 0 GB
:param number i: Index/Identifier of Hacknet Node. :ref:`See here for details <netscript_hacknetnodeapi_referencingahacknetnode>`
:param number n: Number of cores to purchase. Must be positive. Rounded to nearest integer

Some files were not shown because too many files have changed in this diff Show More