diff --git a/css/menupages.css b/css/menupages.css
index 73217ba4f..dfb60e9d4 100644
--- a/css/menupages.css
+++ b/css/menupages.css
@@ -151,6 +151,7 @@
#hacknet-nodes-container li{
padding: 6px;
margin: 6px;
+ width: 70%;
}
#hacknet-nodes-text,
diff --git a/src/Constants.js b/src/Constants.js
index 142e71b4c..40256b00e 100644
--- a/src/Constants.js
+++ b/src/Constants.js
@@ -18,7 +18,7 @@ CONSTANTS = {
BaseCostForHacknetNodeCore: 400000,
/* Hacknet Node constants */
- HacknetNodeMoneyGainPerLevel: 1,
+ HacknetNodeMoneyGainPerLevel: 1.25,
HacknetNodePurchaseNextMult: 1.33, //Multiplier when purchasing an additional hacknet node
HacknetNodeUpgradeLevelMult: 1.06, //Multiplier for cost when upgrading level
HacknetNodeUpgradeRamMult: 1.23, //Multiplier for cost when upgrading RAM
@@ -210,7 +210,14 @@ CONSTANTS = {
"run [script] - Run a script
" +
"tail [script] - Displays a script's logs
" +
"top - Displays all active scripts and their RAM usage
" +
- "Note that because of the way the Netscript interpreter is implemented, " +
+ " Notes about how scripts work offline
" +
+ " The scripts that you write and execute are interpreted in Javascript. For this " +
+ "reason, it is not possible for these scripts to run while offline (when the game is closed). " +
+ "It is important to note that for this reason, conditionals such as if/else statements and certain " +
+ "commands such as purchaseHacknetNode() or nuke() will not work while the game is offline.
" +
+ "However, Scripts WILL continue to generate money and hacking exp for you while the game is offline. This " +
+ "offline production is based off of the scripts' production while the game is online.
" +
+ "Also, note that because of the way the Netscript interpreter is implemented, " +
"whenever you reload or re-open the game all of the scripts that you are running will " +
"start running from the BEGINNING of the code. The game does not keep track of where exactly " +
"the execution of a script is when it saves/loads.
",
@@ -255,23 +262,23 @@ CONSTANTS = {
"there is no required hacking level to run the command. The grow() command takes a flat 2 minutes to execute " +
"and grants 1 hacking exp when it completes.
Example: grow('foodnstuff');
" +
"print(x)
Prints a value or a variable to the scripts logs (which can be viewed with the 'tail [script]' terminal command )
" +
- "nuke(hostname/ip)
Run NUKE.exe on the target server. NUKE.exe must exist on your home computer.
Example: nuke('foodnstuff');
" +
- "brutessh(hostname/ip)
Run BruteSSH.exe on the target server. BruteSSH.exe must exist on your home computer
Example: brutessh('foodnstuff');
" +
- "ftpcrack(hostname/ip)
Run FTPCrack.exe on the target server. FTPCrack.exe must exist on your home computer
Example: ftpcrack('foodnstuff');
" +
- "relaysmtp(hostname/ip)
Run relaySMTP.exe on the target server. relaySMTP.exe must exist on your home computer
Example: relaysmtp('foodnstuff');
" +
- "httpworm(hostname/ip)
Run HTTPWorm.exe on the target server. HTTPWorm.exe must exist on your home computer
Example: httpworm('foodnstuff');
" +
- "sqlinject(hostname/ip)
Run SQLInject.exe on the target server. SQLInject.exe must exist on your home computer
Example: sqlinject('foodnstuff');
" +
+ "nuke(hostname/ip)
Run NUKE.exe on the target server. NUKE.exe must exist on your home computer. Does NOT work while offline
Example: nuke('foodnstuff');
" +
+ "brutessh(hostname/ip)
Run BruteSSH.exe on the target server. BruteSSH.exe must exist on your home computer. Does NOT work while offline
Example: brutessh('foodnstuff');
" +
+ "ftpcrack(hostname/ip)
Run FTPCrack.exe on the target server. FTPCrack.exe must exist on your home computer. Does NOT work while offline
Example: ftpcrack('foodnstuff');
" +
+ "relaysmtp(hostname/ip)
Run relaySMTP.exe on the target server. relaySMTP.exe must exist on your home computer. Does NOT work while offline
Example: relaysmtp('foodnstuff');
" +
+ "httpworm(hostname/ip)
Run HTTPWorm.exe on the target server. HTTPWorm.exe must exist on your home computer. Does NOT work while offline
Example: httpworm('foodnstuff');
" +
+ "sqlinject(hostname/ip)
Run SQLInject.exe on the target server. SQLInject.exe must exist on your home computer. Does NOT work while offline
Example: sqlinject('foodnstuff');
" +
"run(script)
Run a script as a separate process. The argument that is passed in is the name of the script as a string. This function can only " +
"be used to run scripts located on the same server. Returns true if the script is successfully started, and false otherwise. Requires a significant amount " +
- "of RAM to run this command.
Example: run('hack-foodnstuff.script');
The example above will try and launch the 'hack-foodnstuff.script' script on " +
+ "of RAM to run this command. Does NOT work while offline
Example: run('hack-foodnstuff.script');
The example above will try and launch the 'hack-foodnstuff.script' script on " +
"the current server, if it exists.
" +
- "getHackingLevel()
Returns the Player's current hacking level
" +
+ "getHackingLevel()
Returns the Player's current hacking level. Does NOT work while offline
" +
"getServerMoneyAvailable(hostname/ip)
Returns the amount of money available on a server. The argument passed in must be a string with either the " +
- "hostname or IP of the target server.
Example: getServerMoneyAvailable('foodnstuff');
" +
+ "hostname or IP of the target server. Does NOT work while offline
Example: getServerMoneyAvailable('foodnstuff');
" +
"purchaseHacknetNode()
Purchases a new Hacknet Node. Returns a string with the name of the new Hacknet Node. If the player cannot afford to purchase " +
- "a new hacknet node then the function will return an empty string
" +
+ "a new hacknet node then the function will return an empty string. Does NOT work offline
" +
"upgradeHacknetNode(name)
Upgrades the level of a Hacknet Node. The argument passed in must be a string with the name of the Hacknet Node to upgrade. " +
- "If the Hacknet Node is successfully upgraded the function will return true. It will return false otherwise. Example:
" +
+ "If the Hacknet Node is successfully upgraded the function will return true. It will return false otherwise. Does NOT work offline. Example:
" +
"var node = purchaseHacknetNode();
" +
"if (node != '') {
" +
" var i = 0;
" +
diff --git a/src/Player.js b/src/Player.js
index 494c0b0b4..f04f7ef8b 100644
--- a/src/Player.js
+++ b/src/Player.js
@@ -363,6 +363,8 @@ PlayerObject.prototype.resetWorkStatus = function() {
this.currentWorkFactionDescription = "";
this.createProgramName = "";
this.className = "";
+
+ document.getElementById("work-in-progress-text").innerHTML = "";
}
PlayerObject.prototype.gainWorkExp = function(divMult = 1) {