diff --git a/doc/source/netscript/formulasapi/hacknetServers/hashGainRate.rst b/doc/source/netscript/formulasapi/hacknetServers/hashGainRate.rst index 4258cad10..b6a530e52 100644 --- a/doc/source/netscript/formulasapi/hacknetServers/hashGainRate.rst +++ b/doc/source/netscript/formulasapi/hacknetServers/hashGainRate.rst @@ -1,11 +1,12 @@ hashGainRate() Netscript Function ========================================== -.. js:function:: hashGainRate(level, ram, core[, mult]) +.. js:function:: hashGainRate(level, ramUsed, maxRam, core[, mult]) :RAM cost: 0 GB :param number level: level of the server. - :param number ram: ram of the server. + :param number ramUsed: ram used on the server. + :param number maxRam: max ram of the server. :param number core: cores of the server. :returns: Money per second that a server with those stats would gain per second. @@ -18,7 +19,7 @@ hashGainRate() Netscript Function .. code-block:: javascript server = hacknet.getNodeStats(1); - currentRate = formulas.hacknetNodes.hashGainRate(server.level, server.ram, server.cores); - levelRate = formulas.hacknetNodes.hashGainRate(server.level+1, server.ram, server.cores); - ramRate = formulas.hacknetNodes.hashGainRate(server.level, server.ram*2, server.cores); - coresRate = formulas.hacknetNodes.hashGainRate(server.level, server.ram, server.cores+1); \ No newline at end of file + currentRate = formulas.hacknetNodes.hashGainRate(server.level, 0, server.ram, server.cores); + levelRate = formulas.hacknetNodes.hashGainRate(server.level+1, 0, server.ram, server.cores); + ramRate = formulas.hacknetNodes.hashGainRate(server.level, 0, server.ram*2, server.cores); + coresRate = formulas.hacknetNodes.hashGainRate(server.level, 0, server.ram, server.cores+1); \ No newline at end of file diff --git a/src/NetscriptFunctions.js b/src/NetscriptFunctions.js index 60d2e37fb..10e921009 100644 --- a/src/NetscriptFunctions.js +++ b/src/NetscriptFunctions.js @@ -4447,9 +4447,9 @@ function NetscriptFunctions(workerScript) { }, }, hacknetServers: { - hashGainRate: function(level, ram, cores, mult=1) { + hashGainRate: function(level, ramUsed, maxRam, cores, mult=1) { checkFormulasAccess("hacknetServers.hashGainRate", 9); - return HScalculateHashGainRate(level, ram, cores, mult); + return HScalculateHashGainRate(level, ramUsed, maxRam, cores, mult=1); }, levelUpgradeCost: function(startingLevel, extraLevels=1, costMult=1) { checkFormulasAccess("hacknetServers.levelUpgradeCost", 9); diff --git a/src/Terminal.jsx b/src/Terminal.jsx index 1d8000331..1d52f8482 100644 --- a/src/Terminal.jsx +++ b/src/Terminal.jsx @@ -586,7 +586,8 @@ let Terminal = { const org = currServ.organizationName post("Organization name: " + (!isHacknet ? org : "Player")); const admin = currServ.hasAdminRights; - post("Root Access: " + (!isHacknet ? "YES" : "NO")); + let hasAdminRights = !isHacknet && currServ.hasAdminRights || isHacknet; + post("Root Access: " + (hasAdminRights ? "YES" : "NO")); const hackingSkill = currServ.requiredHackingSkill post("Required hacking skill: " + (!isHacknet ? hackingSkill : "N/A")); const security = currServ.hackDifficulty; @@ -965,7 +966,8 @@ let Terminal = { } const server = Player.getCurrentServer(); - if(!server.scripts.some(script => script.filename.startsWith(evaledDir))) { + if(!server.scripts.some(script => script.filename.startsWith(evaledDir)) && + !server.textFiles.some(file => file.fn.startsWith(evaledDir))) { postError("Invalid path. Failed to change directories"); return; } diff --git a/src/data/codingcontracttypes.ts b/src/data/codingcontracttypes.ts index 36a620dbc..f767e2c0f 100644 --- a/src/data/codingcontracttypes.ts +++ b/src/data/codingcontracttypes.ts @@ -107,10 +107,10 @@ export const codingContractTypesMetadata: ICodingContractTypeMetadata[] = [ { desc: (n: number): string => { return ["It is possible write four as a sum in exactly four different ways:\n\n", - " 3 + 1\n", - " 2 + 2\n", - " 2 + 1 + 1\n", - " 1 + 1 + 1 + 1\n\n", + "    3 + 1\n", + "    2 + 2\n", + "    2 + 1 + 1\n", + "    1 + 1 + 1 + 1\n\n", `How many different ways can the number ${n} be written as a sum of at least`, "two positive integers?"].join(" "); }, @@ -142,17 +142,17 @@ export const codingContractTypesMetadata: ICodingContractTypeMetadata[] = [ } d += ["\nHere is an example of what spiral order should be:", "\nExample:", - " [\n", - " [1, 2, 3],\n", - " [4, 5, 6],\n", - " [7, 8, 9]\n", - " ] should result in [1, 2, 3, 6, 9, 8 ,7, 4, 5]\n\n", + "    [\n", + "        [1, 2, 3],\n", + "        [4, 5, 6],\n", + "        [7, 8, 9]\n", + "    ] should result in [1, 2, 3, 6, 9, 8 ,7, 4, 5]\n\n", "Note that the matrix will not always be square:\n", - " [\n", - " [1, 2, 3, 4]\n", - " [5, 6, 7, 8]\n", - " [9, 10, 11, 12]\n", - " ] should result in [1, 2, 3, 4, 8, 12, 11, 10, 9, 5, 6, 7"].join(" "); + "    [\n", + "        [1, 2, 3, 4]\n", + "        [5, 6, 7, 8]\n", + "        [9, 10, 11, 12]\n", + "    ] should result in [1, 2, 3, 4, 8, 12, 11, 10, 9, 5, 6, 7"].join(" "); return d; }, diff --git a/src/engine.jsx b/src/engine.jsx index 5e7dae147..c64141f2c 100644 --- a/src/engine.jsx +++ b/src/engine.jsx @@ -63,7 +63,7 @@ import { scriptEditorInit, updateScriptEditorContent, } from "./Script/ScriptHelpers"; -import { initForeignServers } from "./Server/AllServers"; +import { initForeignServers, AllServers } from "./Server/AllServers"; import { Settings } from "./Settings/Settings"; import { updateSourceFileFlags } from "./SourceFile/SourceFileFlags"; import { initSpecialServerIps } from "./Server/SpecialServerIps"; @@ -1542,8 +1542,10 @@ const Engine = { // DEBUG Delete active Scripts on home document.getElementById("debug-delete-scripts-link").addEventListener("click", function() { - Player.getHomeComputer().runningScripts = []; - dialogBoxCreate("Forcefully deleted all running scripts on home computer. Please save and refresh page"); + for(const hostname of Object.keys(AllServers)) { + AllServers[hostname].runningScripts = []; + } + dialogBoxCreate("Forcefully deleted all running scripts. Please save and refresh page."); gameOptionsBoxClose(); return false; }); diff --git a/src/index.html b/src/index.html index 87f0044e1..c39ae82a0 100644 --- a/src/index.html +++ b/src/index.html @@ -600,14 +600,14 @@ if (htmlWebpackPlugin.options.googleAnalytics.trackingId) { %> Copy Save data to Clipboard