Buffed base production of Hacknet Nodes. Re-calibrated hacker faction invites to account for starting with 8GB of RAM. BruteSSH only takes 10 minutes at most to complete now

This commit is contained in:
Daniel Xie 2017-05-24 10:32:45 -05:00
parent 5c16759908
commit d00211a4ff
4 changed files with 12 additions and 9 deletions

@ -18,7 +18,7 @@ CONSTANTS = {
BaseCostForHacknetNodeCore: 500000, BaseCostForHacknetNodeCore: 500000,
/* Hacknet Node constants */ /* Hacknet Node constants */
HacknetNodeMoneyGainPerLevel: 1.5, HacknetNodeMoneyGainPerLevel: 1.75,
HacknetNodePurchaseNextMult: 1.33, //Multiplier when purchasing an additional hacknet node HacknetNodePurchaseNextMult: 1.33, //Multiplier when purchasing an additional hacknet node
HacknetNodeUpgradeLevelMult: 1.04, //Multiplier for cost when upgrading level HacknetNodeUpgradeLevelMult: 1.04, //Multiplier for cost when upgrading level
HacknetNodeUpgradeRamMult: 1.22, //Multiplier for cost when upgrading RAM HacknetNodeUpgradeRamMult: 1.22, //Multiplier for cost when upgrading RAM
@ -88,6 +88,9 @@ CONSTANTS = {
MillisecondsPerQuarterHour: 900000, MillisecondsPerQuarterHour: 900000,
GameCyclesPerQuarterHour: 900000 / 200, GameCyclesPerQuarterHour: 900000 / 200,
MillisecondsPerFiveMinutes: 300000,
GameCyclesPerFiveMinutes: 300000 / 200,
FactionWorkHacking: "Faction Hacking Work", FactionWorkHacking: "Faction Hacking Work",
FactionWorkField: "Faction Field Work", FactionWorkField: "Faction Field Work",
FactionWorkSecurity: "Faction Security Work", FactionWorkSecurity: "Faction Security Work",

@ -305,7 +305,7 @@ PlayerObject.prototype.checkForFactionInvitations = function() {
var bitrunnersFac = Factions["BitRunners"]; var bitrunnersFac = Factions["BitRunners"];
var homeComp = Player.getHomeComputer(); var homeComp = Player.getHomeComputer();
if (bitrunnersFac.isBanned == false && bitrunnersFac.isMember == false && if (bitrunnersFac.isBanned == false && bitrunnersFac.isMember == false &&
this.hacking_skill >= 600 && homeComp.maxRam >= 32) { this.hacking_skill >= 600 && homeComp.maxRam >= 128) {
invitedFactions.push(bitrunnersFac); invitedFactions.push(bitrunnersFac);
} }
@ -313,14 +313,14 @@ PlayerObject.prototype.checkForFactionInvitations = function() {
var theblackhandFac = Factions["The Black Hand"]; var theblackhandFac = Factions["The Black Hand"];
if (theblackhandFac.isBanned == false && theblackhandFac.isMember == false && if (theblackhandFac.isBanned == false && theblackhandFac.isMember == false &&
this.hacking_skill >= 400 && this.strength >= 200 && this.defense >= 200 && this.hacking_skill >= 400 && this.strength >= 200 && this.defense >= 200 &&
this.agility >= 200 && this.dexterity >= 200 && homeComp.maxRam >= 16) { this.agility >= 200 && this.dexterity >= 200 && homeComp.maxRam >= 64) {
invitedFactions.push(theblackhandFac); invitedFactions.push(theblackhandFac);
} }
//NiteSec //NiteSec
var nitesecFac = Factions["NiteSec"]; var nitesecFac = Factions["NiteSec"];
if (nitesecFac.isBanned == false && nitesecFac.isMember == false && if (nitesecFac.isBanned == false && nitesecFac.isMember == false &&
this.hacking_skill >= 200 && homeComp.maxRam >= 8) { this.hacking_skill >= 200 && homeComp.maxRam >= 32) {
invitedFactions.push(nitesecFac); invitedFactions.push(nitesecFac);
} }

@ -1141,6 +1141,6 @@ function scriptCalculatePercentMoneyHacked(server) {
function scriptCalculateGrowTime(server) { function scriptCalculateGrowTime(server) {
var difficultyMult = server.requiredHackingSkill * server.hackDifficulty; var difficultyMult = server.requiredHackingSkill * server.hackDifficulty;
var skillFactor = (2.5 * difficultyMult + 500) / (Player.hacking_skill + 50); var skillFactor = (2.5 * difficultyMult + 500) / (Player.hacking_skill + 50);
var growTime = skillFactor * 20; //This is in seconds var growTime = skillFactor * 16; //This is in seconds
return growTime * 1000; return growTime * 1000;
} }

@ -999,17 +999,17 @@ var Engine = {
}); });
//Create Program buttons //Create Program buttons
var portHackALink = document.getElementById("create-program-nuke"); var nukeALink = document.getElementById("create-program-nuke");
var bruteSshALink = document.getElementById("create-program-brutessh"); var bruteSshALink = document.getElementById("create-program-brutessh");
var ftpCrackALink = document.getElementById("create-program-ftpcrack"); var ftpCrackALink = document.getElementById("create-program-ftpcrack");
var relaySmtpALink = document.getElementById("create-program-relaysmtp"); var relaySmtpALink = document.getElementById("create-program-relaysmtp");
var httpWormALink = document.getElementById("create-program-httpworm"); var httpWormALink = document.getElementById("create-program-httpworm");
var sqlInjectALink = document.getElementById("create-program-sqlinject"); var sqlInjectALink = document.getElementById("create-program-sqlinject");
portHackALink.addEventListener("click", function() { nukeALink.addEventListener("click", function() {
Player.startCreateProgramWork(Programs.NukeProgram, CONSTANTS.MillisecondsPerQuarterHour, 1); Player.startCreateProgramWork(Programs.NukeProgram, CONSTANTS.MillisecondsPerFiveMinutes, 1);
}); });
bruteSshALink.addEventListener("click", function() { bruteSshALink.addEventListener("click", function() {
Player.startCreateProgramWork(Programs.BruteSSHProgram, CONSTANTS.MillisecondsPerQuarterHour, 50); Player.startCreateProgramWork(Programs.BruteSSHProgram, CONSTANTS.MillisecondsPerFiveMinutes * 2, 50);
}); });
ftpCrackALink.addEventListener("click", function() { ftpCrackALink.addEventListener("click", function() {
Player.startCreateProgramWork(Programs.FTPCrackProgram, CONSTANTS.MillisecondsPerHalfHour, 100); Player.startCreateProgramWork(Programs.FTPCrackProgram, CONSTANTS.MillisecondsPerHalfHour, 100);