diff --git a/css/menupages.css b/css/menupages.css index f6d8f943a..4d9bde93a 100644 --- a/css/menupages.css +++ b/css/menupages.css @@ -239,6 +239,7 @@ background-color: #555; background-color: #555; width: auto; display: none; + margin-bottom: 6px; } .active-scripts-script-panel p, @@ -251,6 +252,26 @@ background-color: #555; margin-left: 5%; } +.active-scripts-button { + color: #aaa; + font-size: 16px; + font-weight: bold; + -webkit-border-radius: 12px; + -moz-border-radius: 12px; + border-radius: 12px; + -moz-box-shadow: 1px 1px 3px #000; + -webkit-box-shadow: 1px 1px 3px #000; + box-shadow: 1px 1px 3px #000; + margin: 4px; + padding: 4px; +} + +.active-scripts-button:hover, +.active-scripts-button:focus { + color: white; + text-decoration: none; + cursor: pointer; +} /* Hacknet Nodes */ #hacknet-nodes-container { diff --git a/css/popupboxes.css b/css/popupboxes.css index 8676f0da7..4c338addd 100644 --- a/css/popupboxes.css +++ b/css/popupboxes.css @@ -52,7 +52,7 @@ #log-box-close { position: fixed; - right: 27%; + right: 26%; } .dialog-box-close-button:hover, diff --git a/src/ActiveScriptsUI.js b/src/ActiveScriptsUI.js index a76382968..628258467 100644 --- a/src/ActiveScriptsUI.js +++ b/src/ActiveScriptsUI.js @@ -232,6 +232,24 @@ function createActiveScriptsText(workerscript, item) { item.appendChild(itemText); + var logButton = document.createElement("span"); + logButton.innerHTML = "Log"; + var killButton = document.createElement("span"); + killButton.innerHTML = "Kill script"; + logButton.setAttribute("class", "active-scripts-button"); + killButton.setAttribute("class", "active-scripts-button"); + logButton.addEventListener("click", function() { + logBoxCreate(workerscript.scriptRef); + return false; + }); + killButton.addEventListener("click", function() { + killWorkerScript(workerscript.scriptRef, workerscript.scriptRef.scriptRef.server); + dialogBoxCreate("Killing script, may take a few minutes to complete..."); + return false; + }); + item.appendChild(logButton); + item.appendChild(killButton); + //Return total online production rate return onlineMps; } \ No newline at end of file diff --git a/src/Augmentations.js b/src/Augmentations.js index e9891be53..39a3618ef 100644 --- a/src/Augmentations.js +++ b/src/Augmentations.js @@ -209,7 +209,7 @@ initAugmentations = function() { SyntheticHeart.setRequirements(300000, 575000000); SyntheticHeart.setInfo("This advanced artificial heart, created from plasteel and graphene, is capable of pumping more blood " + "at much higher efficiencies than a normal human heart.

This augmentation increases the player's agility " + - "and strength by 80%"); + "and strength by 50%"); SyntheticHeart.addToFactions(["KuaiGong International", "Fulcrum Secret Technologies", "Speakers for the Dead", "NWO", "The Covenant", "Daedalus", "Illuminati"]); if (augmentationExists(AugmentationNames.SyntheticHeart)) { @@ -223,7 +223,7 @@ initAugmentations = function() { SynfibrilMuscle.setInfo("The myofibrils in human muscles are injected with special chemicals that react with the proteins inside " + "the myofibrils, altering their underlying structure. The end result is muscles that are stronger and more elastic. " + "Scientists have named these artificially enhanced units 'synfibrils'.

This augmentation increases the player's " + - "strength and defense by 50%."); + "strength and defense by 35%."); SynfibrilMuscle.addToFactions(["KuaiGong International", "Fulcrum Secret Technologies", "Speakers for the Dead", "NWO", "The Covenant", "Daedalus", "Illuminati", "Blade Industries"]); if (augmentationExists(AugmentationNames.SynfibrilMuscle)) { @@ -315,7 +315,7 @@ initAugmentations = function() { GrapheneBoneLacings.setRequirements(450000, 850000000); GrapheneBoneLacings.setInfo("A graphene-based material is grafted and fused into the user's bones, significantly increasing " + "their density and tensile strength.

" + - "This augmentation increases the player's strength and defense by 85%."); + "This augmentation increases the player's strength and defense by 75%."); GrapheneBoneLacings.addToFactions(["Fulcrum Secret Technologies", "The Covenant"]); if (augmentationExists(AugmentationNames.GrapheneBoneLacings)) { GrapheneBoneLacings.owned = Augmentations[AugmentationNames.GrapheneBoneLacings].owned; @@ -1167,7 +1167,7 @@ initAugmentations = function() { "and integumentary system. The drug permanently modifies the DNA of the " + "body's skin and bone cells, granting them the ability to repair " + "and restructure themselves.

" + - "This augmentation increases the player's strength and defense by 65%"); + "This augmentation increases the player's strength and defense by 55%"); Neotra.setRequirements(225000, 550000000); Neotra.addToFactions(["Blade Industries"]); if (augmentationExists(AugmentationNames.Neotra)) { @@ -1468,12 +1468,12 @@ applyAugmentation = function(aug, reapply=false) { Player.dexterity_mult *= 1.40; break; case AugmentationNames.SyntheticHeart: //High level - Player.agility_mult *= 1.8; - Player.strength_mult *= 1.8; + Player.agility_mult *= 1.5; + Player.strength_mult *= 1.5; break; case AugmentationNames.SynfibrilMuscle: //Medium-high level - Player.strength_mult *= 1.5; - Player.defense_mult *= 1.5; + Player.strength_mult *= 1.35; + Player.defense_mult *= 1.35; break; case AugmentationNames.CombatRib1: Player.strength_mult *= 1.1; @@ -1499,8 +1499,8 @@ applyAugmentation = function(aug, reapply=false) { Player.dexterity_mult *= 1.05; break; case AugmentationNames.GrapheneBoneLacings: //High level - Player.strength_mult *= 1.85; - Player.defense_mult *= 1.85; + Player.strength_mult *= 1.75; + Player.defense_mult *= 1.75; break; case AugmentationNames.BionicSpine: //Med level Player.strength_mult *= 1.18; @@ -1824,8 +1824,8 @@ applyAugmentation = function(aug, reapply=false) { Player.faction_rep_mult *= 1.25; break; case AugmentationNames.Neotra: - Player.strength_mult *= 1.65; - Player.defense_mult *= 1.65; + Player.strength_mult *= 1.55; + Player.defense_mult *= 1.55; break; case AugmentationNames.Xanipher: Player.hacking_mult *= 1.2; diff --git a/src/Constants.js b/src/Constants.js index 7ce76c819..44e610c14 100644 --- a/src/Constants.js +++ b/src/Constants.js @@ -645,6 +645,8 @@ CONSTANTS = { Changelog: "v0.21.2
" + "-Significantly nerfed most augmentations
" + + "-Almost every server with a required hacking level of 200 or more now has slightly randomized server parameters. This means that after every Augmentation " + + "purchase, the required hacking level, base security level, and growth factor of these servers will all be slightly different
" + "-The hacking speed multiplier now increases rather than decreases. The hacking time is divided by your hacking speed " + "multiplier rather than multiplied. In other words, a higher hacking speed multiplier is better now
" + "-Servers now have a minimum server security, which is approximately one third of their starting server security
" + @@ -655,6 +657,7 @@ CONSTANTS = { "-Slightly reduced amount of exp gained from hack(), weaken(), and grow()
" + "-Rebalanced formulas that determine crime success
" + "-Reduced RAM cost for multithreading a script. The RAM multiplier for each thread was reduced from 1.02 to 1.01
" + + "-Optimized Script objects so they take less space in the save file
" + "v0.21.1
" + "-IF YOUR GAME BREAKS, DO THE FOLLOWING: Options -> Soft Reset -> Save Game -> Reload Page. Sorry about that!
" + "-Autocompletion for aliases - courtesy of Github user LTCNugget

" + diff --git a/src/Faction.js b/src/Faction.js index c7cbbafdb..a6c1433a2 100644 --- a/src/Faction.js +++ b/src/Faction.js @@ -175,10 +175,6 @@ initFactions = function() { //those requirements and will return an array of all factions that the Player should //receive an invitation to PlayerObject.prototype.checkForFactionInvitations = function() { - if (Engine.Debug) { - console.log("checkForFactionInvitations() called"); - console.log("karma: " + this.karma); - } invitedFactions = []; //Array which will hold all Factions th eplayer should be invited to var company = Companies[this.companyName]; @@ -190,39 +186,35 @@ PlayerObject.prototype.checkForFactionInvitations = function() { //Illuminati var illuminatiFac = Factions["Illuminati"]; if (!illuminatiFac.isBanned && !illuminatiFac.isMember && !illuminatiFac.alreadyInvited && - this.numAugmentations >= 10 && - this.money >= 10000000000 && this.total_money >= 20000000000 && - this.hacking_skill >= 800 && this.total_hacking >= 7000 && - this.strength >= 900 && this.total_strength >= 10000 && - this.defense >= 900 && this.total_defense >= 10000 && - this.dexterity >= 900 && this.total_dexterity >= 10000 && - this.agility >= 900 && this.total_agility >= 10000) { + this.numAugmentations >= 30 && + this.money >= 150000000000 && + this.hacking_skill >= 1200 && + this.strength >= 1000 && this.defense >= 1000 && + this.dexterity >= 1000 && this.agility >= 1000) { invitedFactions.push(illuminatiFac); } //Daedalus var daedalusFac = Factions["Daedalus"]; if (!daedalusFac.isBanned && !daedalusFac.isMember && !daedalusFac.alreadyInvited && - this.numAugmentations >= 15 && - this.money >= 1000000000 && this.total_money >= 10000000000 && - this.hacking_skill >= 1000 && this.total_hacking >= 10000 && - this.strength >= 500 && this.total_strength >= 8000 && - this.defense >= 500 && this.total_defense >= 8000 && - this.dexterity >= 500 && this.total_dexterity >= 8000 && - this.agility >= 500 && this.total_agility >= 8000) { + this.numAugmentations >= 30 && + this.money >= 100000000000 && + (this.hacking_skill >= 2500 || + (this.strength >= 1500 && this.defense >= 1500 && + this.dexterity >= 1500 && this.agility >= 1500))) { invitedFactions.push(daedalusFac); } //The Covenant var covenantFac = Factions["The Covenant"]; if (!covenantFac.isBanned && !covenantFac.isMember && !covenantFac.alreadyInvited && - this.numAugmentations >= 12 && - this.money >= 5000000000 && this.total_money >= 10000000000 && - this.hacking_skill >= 850 && this.total_hacking >= 5000 && - this.strength >= 850 && this.total_strength >= 5000 && - this.defense >= 850 && this.total_defense >= 5000 && - this.dexterity >= 850 && this.total_dexterity >= 5000 && - this.agility >= 850 && this.total_agility >= 5000) { + this.numAugmentations >= 30 && + this.money >= 75000000000 && + this.hacking_skill >= 850 && + this.strength >= 850 && + this.defense >= 850 && + this.dexterity >= 850 && + this.agility >= 850) { invitedFactions.push(covenantFac); } diff --git a/src/NetscriptEvaluator.js b/src/NetscriptEvaluator.js index 9c1be9ce5..3d3403661 100644 --- a/src/NetscriptEvaluator.js +++ b/src/NetscriptEvaluator.js @@ -1032,7 +1032,7 @@ function scriptCalculateExpGain(server) { if (server.baseDifficulty == null) { server.baseDifficulty = server.hackDifficulty; } - return (server.baseDifficulty * Player.hacking_exp_mult * 0.5 + 1); + return (server.baseDifficulty * Player.hacking_exp_mult * 0.5 + 3); } //The same as Player's calculatePercentMoneyHacked() function but takes in the server as an argument diff --git a/src/Player.js b/src/Player.js index df9eb4f89..217db6769 100644 --- a/src/Player.js +++ b/src/Player.js @@ -259,7 +259,7 @@ PlayerObject.prototype.calculateExpGain = function() { if (s.baseDifficulty == null) { s.baseDifficulty = s.hackDifficulty; } - return (s.baseDifficulty * this.hacking_exp_mult * 0.5 + 1); + return (s.baseDifficulty * this.hacking_exp_mult * 0.5 + 3); } //Hack/Analyze a server. Return the amount of time the hack will take. This lets the Terminal object know how long to disable itself for diff --git a/src/Prestige.js b/src/Prestige.js index c903bb523..ff8a91178 100644 --- a/src/Prestige.js +++ b/src/Prestige.js @@ -200,5 +200,7 @@ function prestigeAugmentation() { //Messages initMessages(); + Player.playtimeSinceLastAug = 0; + Engine.loadTerminalContent(); } \ No newline at end of file diff --git a/src/SaveObject.js b/src/SaveObject.js index 9e29a7ead..e2d600d82 100644 --- a/src/SaveObject.js +++ b/src/SaveObject.js @@ -19,7 +19,8 @@ BitburnerSaveObject.prototype.saveGame = function() { this.PlayerSave = JSON.stringify(Player); //Delete all logs from all running scripts - TempAllServers = jQuery.extend(true, {}, AllServers); //Deep copy + var TempAllServers = JSON.parse(JSON.stringify(AllServers), Reviver); + //var TempAllServers = jQuery.extend(true, {}, AllServers); //Deep copy for (var ip in TempAllServers) { var server = TempAllServers[ip]; if (server == null) {continue;} diff --git a/src/Script.js b/src/Script.js index f93b1a6f2..ba4dc109a 100644 --- a/src/Script.js +++ b/src/Script.js @@ -424,16 +424,14 @@ RunningScript.fromJSON = function(value) { //Creates an object that creates a map/dictionary with the IP of each existing server as //a key. Initializes every key with a specified value that can either by a number or an array -function AllServersMap(init = 0) { - if (init.constructor === Array || init instanceof Array) { - this.initValue = init.splice(); //Make a copy - } else { - this.initValue = 0; - } - +function AllServersMap(arr=false) { for (var ip in AllServers) { if (AllServers.hasOwnProperty(ip)) { - this[ip] = this.initValue; + if (arr) { + this[ip] = [0, 0, 0, 0]; + } else { + this[ip] = 0; + } } } } diff --git a/src/Server.js b/src/Server.js index fdd724956..eea331b7e 100644 --- a/src/Server.js +++ b/src/Server.js @@ -141,277 +141,277 @@ initForeignServers = function() { //MegaCorporations var ECorpServer = new Server(); ECorpServer.init(createRandomIp(), "ecorp", "ECorp", true, false, false, false, 0); - ECorpServer.setHackingParameters(900, 100000000000, 99, 99); + ECorpServer.setHackingParameters(getRandomInt(900, 950), 100000000000, 99, 99); ECorpServer.setPortProperties(5); AddToAllServers(ECorpServer); var MegaCorpServer = new Server(); MegaCorpServer.init(createRandomIp(), "megacorp", "MegaCorp", true, false, false, false, 0); - MegaCorpServer.setHackingParameters(900, 80000000000, 99, 99); + MegaCorpServer.setHackingParameters(getRandomInt(900, 950), 80000000000, 99, 99); MegaCorpServer.setPortProperties(5); AddToAllServers(MegaCorpServer); var BachmanAndAssociatesServer = new Server(); BachmanAndAssociatesServer.init(createRandomIp(), "b-and-a", "Bachman & Associates", true, false, false, false, 0); - BachmanAndAssociatesServer.setHackingParameters(900, 32000000000, 80, 70); + BachmanAndAssociatesServer.setHackingParameters(getRandomInt(875, 925), 32000000000, getRandomInt(75, 85), getRandomInt(65, 75)); BachmanAndAssociatesServer.setPortProperties(5); AddToAllServers(BachmanAndAssociatesServer); var BladeIndustriesServer = new Server(); BladeIndustriesServer.init(createRandomIp(), "blade", "Blade Industries", true, false, false, false, 0); - BladeIndustriesServer.setHackingParameters(900, 20000000000, 90, 65); + BladeIndustriesServer.setHackingParameters(getRandomInt(875, 925), 20000000000, getRandomInt(90, 95), getRandomInt(60, 75)); BladeIndustriesServer.setPortProperties(5); AddToAllServers(BladeIndustriesServer); var NWOServer = new Server(); NWOServer.init(createRandomIp(), "nwo", "New World Order", true, false, false, false, 0); - NWOServer.setHackingParameters(900, 40000000000, 99, 80); + NWOServer.setHackingParameters(getRandomInt(900, 920), 40000000000, 99, getRandomInt(75, 85)); NWOServer.setPortProperties(5); AddToAllServers(NWOServer); var ClarkeIncorporatedServer = new Server(); ClarkeIncorporatedServer.init(createRandomIp(), "clarkeinc", "Clarke Incorporated", true, false, false, false, 0); - ClarkeIncorporatedServer.setHackingParameters(900, 15000000000, 50, 60); + ClarkeIncorporatedServer.setHackingParameters(getRandomInt(875, 950), 15000000000, getRandomInt(50, 60), getRandomInt(50, 70)); ClarkeIncorporatedServer.setPortProperties(5); AddToAllServers(ClarkeIncorporatedServer); var OmniTekIncorporatedServer = new Server(); OmniTekIncorporatedServer.init(createRandomIp(), "omnitek", "OmniTek Incorporated", true, false, false, false, 0); - OmniTekIncorporatedServer.setHackingParameters(900, 50000000000, 95, 99); + OmniTekIncorporatedServer.setHackingParameters(getRandomInt(870, 930), 50000000000, getRandomInt(90, 99), getRandomInt(95, 99)); OmniTekIncorporatedServer.setPortProperties(5); AddToAllServers(OmniTekIncorporatedServer); var FourSigmaServer = new Server(); FourSigmaServer.init(createRandomIp(), "4sigma", "FourSigma", true, false, false, false, 0); - FourSigmaServer.setHackingParameters(900, 25000000000, 60, 80); + FourSigmaServer.setHackingParameters(getRandomInt(875, 925), 25000000000, getRandomInt(60, 70), getRandomInt(75, 85)); FourSigmaServer.setPortProperties(5); AddToAllServers(FourSigmaServer); var KuaiGongInternationalServer = new Server(); KuaiGongInternationalServer.init(createRandomIp(), "kuai-gong", "KuaiGong International", true, false, false, false, 0); - KuaiGongInternationalServer.setHackingParameters(925, 75000000000, 99, 99); + KuaiGongInternationalServer.setHackingParameters(getRandomInt(900, 950), 75000000000, getRandomInt(95, 99), getRandomInt(90, 99)); KuaiGongInternationalServer.setPortProperties(5); AddToAllServers(KuaiGongInternationalServer); //Technology and communications companies (large targets) var FulcrumTechnologiesServer = new Server(); FulcrumTechnologiesServer.init(createRandomIp(), "fulcrumtech", "Fulcrum Technologies", true, false, false, false, 64); - FulcrumTechnologiesServer.setHackingParameters(900, 2000000000, 90, 85); + FulcrumTechnologiesServer.setHackingParameters(getRandomInt(900, 1000), 2000000000, getRandomInt(85, 95), getRandomInt(80, 99)); FulcrumTechnologiesServer.setPortProperties(5); AddToAllServers(FulcrumTechnologiesServer); var FulcrumSecretTechnologiesServer = new Server(); FulcrumSecretTechnologiesServer.init(createRandomIp(), "fulcrumassets", "Fulcrum Technologies Assets", true, false, false, false, 0); - FulcrumSecretTechnologiesServer.setHackingParameters(999, 1000000, 99, 1); + FulcrumSecretTechnologiesServer.setHackingParameters(getRandomInt(1000, 1250), 1000000, 99, 1); FulcrumSecretTechnologiesServer.setPortProperties(5); AddToAllServers(FulcrumSecretTechnologiesServer); SpecialServerIps.addIp(SpecialServerNames.FulcrumSecretTechnologies, FulcrumSecretTechnologiesServer.ip); var StormTechnologiesServer = new Server(); StormTechnologiesServer.init(createRandomIp(), "stormtech", "Storm Technologies", true, false, false, false, 0); - StormTechnologiesServer.setHackingParameters(850, 1500000000, 85, 80); + StormTechnologiesServer.setHackingParameters(getRandomInt(825, 875), 1500000000, getRandomInt(80, 90), getRandomInt(70, 90)); StormTechnologiesServer.setPortProperties(5); AddToAllServers(StormTechnologiesServer); var DefCommServer = new Server(); DefCommServer.init(createRandomIp(), "defcomm", "DefComm", true, false, false, false, 0); - DefCommServer.setHackingParameters(825, 900000000, 90, 60); + DefCommServer.setHackingParameters(getRandomInt(800, 850), 900000000, getRandomInt(85, 95), getRandomInt(50, 70)); DefCommServer.setPortProperties(5); AddToAllServers(DefCommServer); var InfoCommServer = new Server(); InfoCommServer.init(createRandomIp(), "infocomm", "InfoComm", true, false, false, false, 0); - InfoCommServer.setHackingParameters(830, 750000000, 80, 50); + InfoCommServer.setHackingParameters(getRandomInt(800, 850), 750000000, getRandomInt(70, 90), getRandomInt(35, 75)); InfoCommServer.setPortProperties(5); AddToAllServers(InfoCommServer); var HeliosLabsServer = new Server(); HeliosLabsServer.init(createRandomIp(), "helios", "Helios Labs", true, false, false, false, 0); - HeliosLabsServer.setHackingParameters(800, 500000000, 90, 75); + HeliosLabsServer.setHackingParameters(getRandomInt(775, 825), 500000000, getRandomInt(85, 95), getRandomInt(70, 80)); HeliosLabsServer.setPortProperties(5); AddToAllServers(HeliosLabsServer); var VitaLifeServer = new Server(); VitaLifeServer.init(createRandomIp(), "vitalife", "VitaLife", true, false, false, false, 32); - VitaLifeServer.setHackingParameters(775, 800000000, 85, 70); + VitaLifeServer.setHackingParameters(getRandomInt(750, 800), 800000000, getRandomInt(80, 90), getRandomInt(60, 80)); VitaLifeServer.setPortProperties(5); AddToAllServers(VitaLifeServer); var IcarusMicrosystemsServer = new Server(); IcarusMicrosystemsServer.init(createRandomIp(), "icarus", "Icarus Microsystems", true, false, false, false, 0); - IcarusMicrosystemsServer.setHackingParameters(810, 1100000000, 90, 90); + IcarusMicrosystemsServer.setHackingParameters(getRandomInt(800, 820), 1100000000, getRandomInt(85, 95), getRandomInt(85, 95)); IcarusMicrosystemsServer.setPortProperties(5); AddToAllServers(IcarusMicrosystemsServer); var UniversalEnergyServer = new Server(); UniversalEnergyServer.init(createRandomIp(), "univ-energy", "Universal Energy", true, false, false, false, 32); - UniversalEnergyServer.setHackingParameters(790, 1500000000, 85, 85); + UniversalEnergyServer.setHackingParameters(getRandomInt(780, 800), 1500000000, getRandomInt(80, 90), getRandomInt(80, 90)); UniversalEnergyServer.setPortProperties(4); AddToAllServers(UniversalEnergyServer); var TitanLabsServer = new Server(); TitanLabsServer.init(createRandomIp(), "titan-labs", "Titan Laboratories", true, false, false, false, 32); - TitanLabsServer.setHackingParameters(795, 1000000000, 75, 70); + TitanLabsServer.setHackingParameters(getRandomInt(790, 800), 1000000000, getRandomInt(70, 80), getRandomInt(60, 80)); TitanLabsServer.setPortProperties(5); AddToAllServers(TitanLabsServer); var MicrodyneTechnologiesServer = new Server(); MicrodyneTechnologiesServer.init(createRandomIp(), "microdyne", "Microdyne Technologies", true, false, false, false, 16); - MicrodyneTechnologiesServer.setHackingParameters(800, 900000000, 70, 80); + MicrodyneTechnologiesServer.setHackingParameters(getRandomInt(780, 820), 900000000, getRandomInt(65, 75), getRandomInt(70, 90)); MicrodyneTechnologiesServer.setPortProperties(5); AddToAllServers(MicrodyneTechnologiesServer); var TaiYangDigitalServer = new Server(); TaiYangDigitalServer.init(createRandomIp(), "taiyang-digital", "Taiyang Digital", true, false, false, false, 0); - TaiYangDigitalServer.setHackingParameters(850, 1100000000, 75, 75); + TaiYangDigitalServer.setHackingParameters(getRandomInt(800, 900), 1100000000, getRandomInt(70, 80), getRandomInt(70, 80)); TaiYangDigitalServer.setPortProperties(5); AddToAllServers(TaiYangDigitalServer); var GalacticCyberSystemsServer = new Server(); GalacticCyberSystemsServer.init(createRandomIp(), "galactic-cyber", "Galactic Cybersystems", true, false, false, false, 0); - GalacticCyberSystemsServer.setHackingParameters(825, 500000000, 60, 80); + GalacticCyberSystemsServer.setHackingParameters(getRandomInt(800, 850), 500000000, getRandomInt(55, 65), getRandomInt(70, 90)); GalacticCyberSystemsServer.setPortProperties(5); AddToAllServers(GalacticCyberSystemsServer); //Defense Companies ("Large" Companies) var AeroCorpServer = new Server(); AeroCorpServer.init(createRandomIp(), "aerocorp", "AeroCorp", true, false, false, false, 0); - AeroCorpServer.setHackingParameters(850, 1500000000, 85, 60); + AeroCorpServer.setHackingParameters(getRandomInt(825, 875), 1500000000, getRandomInt(80, 90), getRandomInt(55, 65)); AeroCorpServer.setPortProperties(5); AddToAllServers(AeroCorpServer); var OmniaCybersystemsServer = new Server(); OmniaCybersystemsServer.init(createRandomIp(), "omnia", "Omnia Cybersystems", true, false, false, false, 0); - OmniaCybersystemsServer.setHackingParameters(825, 1200000000, 90, 65); + OmniaCybersystemsServer.setHackingParameters(getRandomInt(800, 850), 1200000000, getRandomInt(85, 95), getRandomInt(60, 70)); OmniaCybersystemsServer.setPortProperties(5); AddToAllServers(OmniaCybersystemsServer); var ZBDefenseServer = new Server(); ZBDefenseServer.init(createRandomIp(), "zb-def", "ZB Defense Industries", true, false, false, false, 0); - ZBDefenseServer.setHackingParameters(800, 1000000000, 60, 70); + ZBDefenseServer.setHackingParameters(getRandomInt(775, 825), 1000000000, getRandomInt(55, 65), getRandomInt(65, 75)); ZBDefenseServer.setPortProperties(4); AddToAllServers(ZBDefenseServer); var AppliedEnergeticsServer = new Server(); AppliedEnergeticsServer.init(createRandomIp(), "applied-energetics", "Applied Energetics", true, false, false, false, 0); - AppliedEnergeticsServer.setHackingParameters(775, 1200000000, 70, 72); + AppliedEnergeticsServer.setHackingParameters(getRandomInt(750, 800), 1200000000, getRandomInt(60, 80), getRandomInt(70, 75)); AppliedEnergeticsServer.setPortProperties(4); AddToAllServers(AppliedEnergeticsServer); var SolarisSpaceSystemsServer = new Server(); SolarisSpaceSystemsServer.init(createRandomIp(), "solaris", "Solaris Space Systems", true, false, false, false, 0); - SolarisSpaceSystemsServer.setHackingParameters(800, 900000000, 75, 75); + SolarisSpaceSystemsServer.setHackingParameters(getRandomInt(790, 810), 900000000, getRandomInt(70, 80), getRandomInt(70, 80)); SolarisSpaceSystemsServer.setPortProperties(5); AddToAllServers(SolarisSpaceSystemsServer); var DeltaOneServer = new Server(); DeltaOneServer.init(createRandomIp(), "deltaone", "Delta One", true, false, false, false, 0); - DeltaOneServer.setHackingParameters(810, 1500000000, 80, 60); + DeltaOneServer.setHackingParameters(getRandomInt(800, 820), 1500000000, getRandomInt(75, 85), getRandomInt(50, 70)); DeltaOneServer.setPortProperties(5); AddToAllServers(DeltaOneServer); //Health, medicine, pharmaceutical companies ("Large" targets) var GlobalPharmaceuticalsServer = new Server(); GlobalPharmaceuticalsServer.init(createRandomIp(), "global-pharm", "Global Pharmaceuticals", true, false, false, false, 16); - GlobalPharmaceuticalsServer.setHackingParameters(775, 2000000000, 80, 85); + GlobalPharmaceuticalsServer.setHackingParameters(getRandomInt(750, 800), 2000000000, getRandomInt(75, 85), getRandomInt(80, 90)); GlobalPharmaceuticalsServer.setPortProperties(4); AddToAllServers(GlobalPharmaceuticalsServer); var NovaMedicalServer = new Server(); NovaMedicalServer.init(createRandomIp(), "nova-med", "Nova Medical", true, false, false, false, 0); - NovaMedicalServer.setHackingParameters(800, 1500000000, 70, 75); + NovaMedicalServer.setHackingParameters(getRandomInt(775, 825), 1500000000, getRandomInt(60, 80), getRandomInt(65, 85)); NovaMedicalServer.setPortProperties(4); AddToAllServers(NovaMedicalServer); var ZeusMedicalServer = new Server(); ZeusMedicalServer.init(createRandomIp(), "zeud-med", "Zeus Medical", true, false, false, false, 0); - ZeusMedicalServer.setHackingParameters(810, 1750000000, 80, 75); + ZeusMedicalServer.setHackingParameters(getRandomInt(800, 825), 1750000000, getRandomInt(70, 90), getRandomInt(70, 80)); ZeusMedicalServer.setPortProperties(5); AddToAllServers(ZeusMedicalServer); var UnitaLifeGroupServer = new Server(); UnitaLifeGroupServer.init(createRandomIp(), "unitalife", "UnitaLife Group", true, false, false, false, 32); - UnitaLifeGroupServer.setHackingParameters(790, 1400000000, 75, 75); + UnitaLifeGroupServer.setHackingParameters(getRandomInt(780, 800), 1400000000, getRandomInt(70, 80), getRandomInt(70, 80)); UnitaLifeGroupServer.setPortProperties(4); AddToAllServers(UnitaLifeGroupServer); //"Medium level" targets var LexoCorpServer = new Server(); LexoCorpServer.init(createRandomIp(), "lexo-corp", "Lexo Corporation", true, false, false, false, 16); - LexoCorpServer.setHackingParameters(700, 1000000000, 70, 60); + LexoCorpServer.setHackingParameters(getRandomInt(680, 720), 1000000000, getRandomInt(60, 80), getRandomInt(55, 65)); LexoCorpServer.setPortProperties(4); AddToAllServers(LexoCorpServer); var RhoConstructionServer = new Server(); RhoConstructionServer.init(createRandomIp(), "rho-construction", "Rho Construction", true, false, false, false, 0); - RhoConstructionServer.setHackingParameters(500, 750000000, 50, 50); + RhoConstructionServer.setHackingParameters(getRandomInt(480, 520), 750000000, getRandomInt(40, 60), getRandomInt(40, 60)); RhoConstructionServer.setPortProperties(3); AddToAllServers(RhoConstructionServer); var AlphaEnterprisesServer = new Server(); AlphaEnterprisesServer.init(createRandomIp(), "alpha-ent", "Alpha Enterprises", true, false, false, false, 0); - AlphaEnterprisesServer.setHackingParameters(550, 800000000, 60, 55); + AlphaEnterprisesServer.setHackingParameters(getRandomInt(500, 600), 800000000, getRandomInt(50, 70), getRandomInt(50, 60)); AlphaEnterprisesServer.setPortProperties(4); AddToAllServers(AlphaEnterprisesServer); var AevumPoliceServer = new Server(); AevumPoliceServer.init(createRandomIp(), "aevum-police", "Aevum Police Network", true, false, false, false, 0); - AevumPoliceServer.setHackingParameters(425, 100000000, 75, 40); + AevumPoliceServer.setHackingParameters(getRandomInt(400, 450), 100000000, getRandomInt(70, 80), getRandomInt(30, 50)); AevumPoliceServer.setPortProperties(4); AddToAllServers(AevumPoliceServer); var RothmanUniversityServer = new Server(); RothmanUniversityServer.init(createRandomIp(), "rothman-uni", "Rothman University Network", true, false, false, false, 4); - RothmanUniversityServer.setHackingParameters(400, 250000000, 50, 40); + RothmanUniversityServer.setHackingParameters(getRandomInt(370, 430), 250000000, getRandomInt(45, 55), getRandomInt(35, 45)); RothmanUniversityServer.setPortProperties(3); AddToAllServers(RothmanUniversityServer); var ZBInstituteOfTechnologyServer = new Server(); ZBInstituteOfTechnologyServer.init(createRandomIp(), "zb-institute", "ZB Institute of Technology Network", true, false, false, false, 4); - ZBInstituteOfTechnologyServer.setHackingParameters(750, 1000000000, 75, 80); + ZBInstituteOfTechnologyServer.setHackingParameters(getRandomInt(725, 775), 1000000000, getRandomInt(65, 85), getRandomInt(75, 85)); ZBInstituteOfTechnologyServer.setPortProperties(5); AddToAllServers(ZBInstituteOfTechnologyServer); var SummitUniversityServer = new Server(); SummitUniversityServer.init(createRandomIp(), "summit-uni", "Summit University Network", true, false, false, false, 4); - SummitUniversityServer.setHackingParameters(450, 200000000, 55, 50); + SummitUniversityServer.setHackingParameters(getRandomInt(425, 475), 200000000, getRandomInt(45, 65), getRandomInt(40, 60)); SummitUniversityServer.setPortProperties(3); AddToAllServers(SummitUniversityServer); var SysCoreSecuritiesServer = new Server(); SysCoreSecuritiesServer.init(createRandomIp(), "syscore", "SysCore Securities", true, false, false, false, 0); - SysCoreSecuritiesServer.setHackingParameters(600, 600000000, 70, 65); + SysCoreSecuritiesServer.setHackingParameters(getRandomInt(550, 650), 600000000, getRandomInt(60, 80), getRandomInt(60, 70)); SysCoreSecuritiesServer.setPortProperties(4); AddToAllServers(SysCoreSecuritiesServer); var CatalystVenturesServer = new Server(); CatalystVenturesServer.init(createRandomIp(), "catalyst", "Catalyst Ventures", true, false, false, false, 0); - CatalystVenturesServer.setHackingParameters(425, 900000000, 65, 40); + CatalystVenturesServer.setHackingParameters(getRandomInt(400, 450), 900000000, getRandomInt(60, 70), getRandomInt(25, 55)); CatalystVenturesServer.setPortProperties(3); AddToAllServers(CatalystVenturesServer); var TheHubServer = new Server(); TheHubServer.init(createRandomIp(), "the-hub", "The Hub", true, false, false, false, 0); - TheHubServer.setHackingParameters(300, 250000000, 40, 50); + TheHubServer.setHackingParameters(getRandomInt(275, 325), 250000000, getRandomInt(35, 45), getRandomInt(45, 55)); TheHubServer.setPortProperties(2); AddToAllServers(TheHubServer); var CompuTekServer = new Server(); CompuTekServer.init(createRandomIp(), "comptek", "CompuTek", true, false, false, false, 8); - CompuTekServer.setHackingParameters(350, 300000000, 60, 55); + CompuTekServer.setHackingParameters(getRandomInt(300, 400), 300000000, getRandomInt(55, 65), getRandomInt(50, 60)); CompuTekServer.setPortProperties(3); AddToAllServers(CompuTekServer); var NetLinkTechnologiesServer = new Server(); NetLinkTechnologiesServer.init(createRandomIp(), "netlink", "NetLink Technologies", true, false, false, false, 0); - NetLinkTechnologiesServer.setHackingParameters(400, 350000000, 70, 60); + NetLinkTechnologiesServer.setHackingParameters(getRandomInt(375, 425), 350000000, getRandomInt(60, 80), getRandomInt(50, 70)); NetLinkTechnologiesServer.setPortProperties(3); AddToAllServers(NetLinkTechnologiesServer); var JohnsonOrthopedicsServer = new Server(); JohnsonOrthopedicsServer.init(createRandomIp(), "johnson-ortho", "Johnson Orthopedics", true, false, false, false, 4); - JohnsonOrthopedicsServer.setHackingParameters(275, 100000000, 50, 50); + JohnsonOrthopedicsServer.setHackingParameters(getRandomInt(250, 300), 100000000, getRandomInt(40, 60), getRandomInt(40, 60)); JohnsonOrthopedicsServer.setPortProperties(2); AddToAllServers(JohnsonOrthopedicsServer); @@ -484,14 +484,14 @@ initForeignServers = function() { var OmegaSoftwareServer = new Server(); OmegaSoftwareServer.init(createRandomIp(), "omega-net", "Omega Software", true, false, false, false, 8); - OmegaSoftwareServer.setHackingParameters(200, 85000000, 30, 35); + OmegaSoftwareServer.setHackingParameters(getRandomInt(180, 220), 85000000, getRandomInt(25, 35), getRandomInt(30, 40)); OmegaSoftwareServer.setPortProperties(2); AddToAllServers(OmegaSoftwareServer); //Gyms var CrushFitnessGymServer = new Server(); CrushFitnessGymServer.init(createRandomIp(), "crush-fitness", "Crush Fitness", true, false, false, false, 0); - CrushFitnessGymServer.setHackingParameters(250, 40000000, 40, 30); + CrushFitnessGymServer.setHackingParameters(getRandomInt(225, 275), 40000000, getRandomInt(35, 45), getRandomInt(27, 33)); CrushFitnessGymServer.setPortProperties(2); AddToAllServers(CrushFitnessGymServer); @@ -503,19 +503,19 @@ initForeignServers = function() { var MilleniumFitnessGymServer = new Server(); MilleniumFitnessGymServer.init(createRandomIp(), "millenium-fitness", "Millenium Fitness Network", true, false, false, false, 0); - MilleniumFitnessGymServer.setHackingParameters(500, 100000000, 50, 35); + MilleniumFitnessGymServer.setHackingParameters(getRandomInt(475, 525), 100000000, getRandomInt(45, 55), getRandomInt(25, 45)); MilleniumFitnessGymServer.setPortProperties(3); AddToAllServers(MilleniumFitnessGymServer); var PowerhouseGymServer = new Server(); PowerhouseGymServer.init(createRandomIp(), "powerhouse-fitness", "Powerhouse Fitness", true, false, false, false, 0); - PowerhouseGymServer.setHackingParameters(1000, 300000000, 60, 55); + PowerhouseGymServer.setHackingParameters(getRandomInt(950, 1100), 300000000, getRandomInt(55, 65), getRandomInt(50, 60)); PowerhouseGymServer.setPortProperties(5); AddToAllServers(PowerhouseGymServer); var SnapFitnessGymServer = new Server(); SnapFitnessGymServer.init(createRandomIp(), "snap-fitness", "Snap Fitness", true, false, false, false, 0); - SnapFitnessGymServer.setHackingParameters(750, 150000000, 50, 50); + SnapFitnessGymServer.setHackingParameters(getRandomInt(675, 800), 150000000, getRandomInt(40, 60), getRandomInt(40, 60)); SnapFitnessGymServer.setPortProperties(4); AddToAllServers(SnapFitnessGymServer); diff --git a/src/Terminal.js b/src/Terminal.js index 03612336d..5a2d318f1 100644 --- a/src/Terminal.js +++ b/src/Terminal.js @@ -648,7 +648,7 @@ var Terminal = { post("Error: No such script exists"); return; } - logBoxCreate(runningScript); + runningScript.displayLog(); } break; case "clear": diff --git a/utils/HelperFunctions.js b/utils/HelperFunctions.js index dbda8e4df..0cc6c03d8 100644 --- a/utils/HelperFunctions.js +++ b/utils/HelperFunctions.js @@ -31,6 +31,7 @@ function clearEventListeners(elemId) { } function getRandomInt(min, max) { + if (min > max) {return getRandomInt(max, min);} return Math.floor(Math.random() * (max - min + 1)) + min; }