mirror of
https://github.com/bitburner-official/bitburner-src.git
synced 2024-12-20 13:15:48 +01:00
commit
cb7e319ef7
@ -207,6 +207,43 @@ tr:focus {
|
|||||||
animation: glowing 1500ms infinite;
|
animation: glowing 1500ms infinite;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Blinking Cursor */
|
||||||
|
/* ----- blinking cursor animation ----- */
|
||||||
|
.typed-cursor{
|
||||||
|
opacity: 1;
|
||||||
|
-webkit-animation: blink 0.95s infinite;
|
||||||
|
-moz-animation: blink 0.95s infinite;
|
||||||
|
-ms-animation: blink 0.95s infinite;
|
||||||
|
-o-animation: blink 0.95s infinite;
|
||||||
|
animation: blink 0.95s infinite;
|
||||||
|
}
|
||||||
|
|
||||||
|
@-keyframes blink{
|
||||||
|
0% { opacity:1; }
|
||||||
|
50% { opacity:0; }
|
||||||
|
100% { opacity:1; }
|
||||||
|
}
|
||||||
|
@-webkit-keyframes blink{
|
||||||
|
0% { opacity:1; }
|
||||||
|
50% { opacity:0; }
|
||||||
|
100% { opacity:1; }
|
||||||
|
}
|
||||||
|
@-moz-keyframes blink{
|
||||||
|
0% { opacity:1; }
|
||||||
|
50% { opacity:0; }
|
||||||
|
100% { opacity:1; }
|
||||||
|
}
|
||||||
|
@-ms-keyframes blink{
|
||||||
|
0% { opacity:1; }
|
||||||
|
50% { opacity:0; }
|
||||||
|
100% { opacity:1; }
|
||||||
|
}
|
||||||
|
@-o-keyframes blink{
|
||||||
|
0% { opacity:1; }
|
||||||
|
50% { opacity:0; }
|
||||||
|
100% { opacity:1; }
|
||||||
|
}
|
||||||
|
|
||||||
/* Status text */
|
/* Status text */
|
||||||
@-webkit-keyframes status-text{
|
@-webkit-keyframes status-text{
|
||||||
from{
|
from{
|
||||||
|
@ -1,3 +1,11 @@
|
|||||||
|
#generic-fullscreen-container {
|
||||||
|
color: var(--my-font-color);
|
||||||
|
padding-top: 10px;
|
||||||
|
padding-left: 10px;
|
||||||
|
height: 100%;
|
||||||
|
width: 99%;
|
||||||
|
}
|
||||||
|
|
||||||
#work-in-progress-container {
|
#work-in-progress-container {
|
||||||
color: var(--my-font-color);
|
color: var(--my-font-color);
|
||||||
position: fixed;
|
position: fixed;
|
||||||
|
17
index.html
17
index.html
@ -86,45 +86,35 @@
|
|||||||
<li class="terminal-tab">
|
<li class="terminal-tab">
|
||||||
<a id="terminal-menu-link"> Terminal </a>
|
<a id="terminal-menu-link"> Terminal </a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="character-tab">
|
<li class="character-tab">
|
||||||
<a id="character-menu-link"> Character </a>
|
<a id="character-menu-link"> Character </a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<!-- These scripts stuff should be hidden until level 2, but leave them visible for now to test -->
|
<!-- These scripts stuff should be hidden until level 2, but leave them visible for now to test -->
|
||||||
<li class="create-script-tab">
|
<li class="create-script-tab">
|
||||||
<a id="create-script-menu-link"> Create Script </a>
|
<a id="create-script-menu-link"> Create Script </a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="active-scripts-tab">
|
<li class="active-scripts-tab">
|
||||||
<a id="active-scripts-menu-link"> Active Scripts </a>
|
<a id="active-scripts-menu-link"> Active Scripts </a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="hacknet-nodes-tab">
|
<li class="hacknet-nodes-tab">
|
||||||
<a id="hacknet-nodes-menu-link"> Hacknet Nodes </a>
|
<a id="hacknet-nodes-menu-link"> Hacknet Nodes </a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="world-tab">
|
<li class="world-tab">
|
||||||
<a id="world-menu-link"> World </a>
|
<a id="world-menu-link"> World </a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="create-program-tab">
|
<li class="create-program-tab">
|
||||||
<a id="create-program-menu-link"> Create Program </a>
|
<a id="create-program-menu-link"> Create Program </a>
|
||||||
<span id="create-program-notification" class="notification-off"> </span>
|
<span id="create-program-notification" class="notification-off"> </span>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="factions-tab">
|
<li class="factions-tab">
|
||||||
<a id="factions-menu-link"> Factions </a>
|
<a id="factions-menu-link"> Factions </a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="augmentations-tab">
|
<li class="augmentations-tab">
|
||||||
<a id="augmentations-menu-link" style="overflow: hidden; text-overflow: ellipsis; white-space: nowrap;"> Augmentations </a>
|
<a id="augmentations-menu-link" style="overflow: hidden; text-overflow: ellipsis; white-space: nowrap;"> Augmentations </a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="tutorial-tab">
|
<li class="tutorial-tab">
|
||||||
<a id="tutorial-menu-link"> Tutorial </a>
|
<a id="tutorial-menu-link"> Tutorial </a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="options-tab">
|
<li class="options-tab">
|
||||||
<a id="options-menu-link"> Options </a>
|
<a id="options-menu-link"> Options </a>
|
||||||
</li>
|
</li>
|
||||||
@ -140,7 +130,6 @@
|
|||||||
onfocus="this.value = this.value;"/>
|
onfocus="this.value = this.value;"/>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -473,7 +462,6 @@
|
|||||||
ServerProfiler.exe
|
ServerProfiler.exe
|
||||||
<span class="tooltiptext">This program is used to display hacking and Netscript-related information about servers</span>
|
<span class="tooltiptext">This program is used to display hacking and Netscript-related information about servers</span>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
<a class="create-program-a-link-button tooltip" id="create-program-autolink">
|
<a class="create-program-a-link-button tooltip" id="create-program-autolink">
|
||||||
AutoLink.exe
|
AutoLink.exe
|
||||||
<span class="tooltiptext">This program allows you to directly connect to other servers through the 'scan-analyze' command</span>
|
<span class="tooltiptext">This program allows you to directly connect to other servers through the 'scan-analyze' command</span>
|
||||||
@ -766,8 +754,6 @@
|
|||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- Log Box -->
|
<!-- Log Box -->
|
||||||
<div id="log-box-container">
|
<div id="log-box-container">
|
||||||
<div id="log-box-content">
|
<div id="log-box-content">
|
||||||
@ -849,6 +835,9 @@
|
|||||||
<span id="work-in-progress-cancel-button"> Cancel Work </span>
|
<span id="work-in-progress-cancel-button"> Cancel Work </span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div id="red-pill-container" class="generic-fullscreen-container">
|
||||||
|
</div>
|
||||||
|
|
||||||
<!-- Interactive Tutorial Text Screen -->
|
<!-- Interactive Tutorial Text Screen -->
|
||||||
<div id="interactive-tutorial-wrapper">
|
<div id="interactive-tutorial-wrapper">
|
||||||
<div id="interactive-tutorial-container">
|
<div id="interactive-tutorial-container">
|
||||||
|
48
src/Alias.js
48
src/Alias.js
@ -1,5 +1,6 @@
|
|||||||
/* Alias.js */
|
/* Alias.js */
|
||||||
Aliases = {};
|
Aliases = {};
|
||||||
|
GlobalAliases = {};
|
||||||
|
|
||||||
//Print all aliases to terminal
|
//Print all aliases to terminal
|
||||||
function printAliases() {
|
function printAliases() {
|
||||||
@ -8,21 +9,40 @@ function printAliases() {
|
|||||||
post("alias " + name + "=" + Aliases[name]);
|
post("alias " + name + "=" + Aliases[name]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
for (var name in GlobalAliases) {
|
||||||
|
if (GlobalAliases.hasOwnProperty(name)) {
|
||||||
|
post("global alias " + name + "=" + GlobalAliases[name]);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//True if successful, false otherwise
|
//True if successful, false otherwise
|
||||||
function parseAliasDeclaration(dec) {
|
function parseAliasDeclaration(dec,global=false) {
|
||||||
var re = /([^=]+)="(.+)"/;
|
var re = /^([_|\w|!|%|,|@]+)="(.+)"$/;
|
||||||
var matches = dec.match(re);
|
var matches = dec.match(re);
|
||||||
if (matches == null || matches.length != 3) {return false;}
|
if (matches == null || matches.length != 3) {return false;}
|
||||||
|
if (global){
|
||||||
|
addGlobalAlias(matches[1],matches[2]);
|
||||||
|
} else {
|
||||||
addAlias(matches[1], matches[2]);
|
addAlias(matches[1], matches[2]);
|
||||||
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
function addAlias(name, value) {
|
function addAlias(name, value) {
|
||||||
|
if (name in GlobalAliases){
|
||||||
|
delete GlobalAliases[name];
|
||||||
|
}
|
||||||
Aliases[name] = value;
|
Aliases[name] = value;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function addGlobalAlias(name, value) {
|
||||||
|
if (name in Aliases){
|
||||||
|
delete Aliases[name];
|
||||||
|
}
|
||||||
|
GlobalAliases[name] = value;
|
||||||
|
}
|
||||||
|
|
||||||
function getAlias(name) {
|
function getAlias(name) {
|
||||||
if (Aliases.hasOwnProperty(name)) {
|
if (Aliases.hasOwnProperty(name)) {
|
||||||
return Aliases[name];
|
return Aliases[name];
|
||||||
@ -30,11 +50,22 @@ function getAlias(name) {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function getGlobalAlias(name) {
|
||||||
|
if (GlobalAliases.hasOwnProperty(name)) {
|
||||||
|
return GlobalAliases[name];
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
function removeAlias(name) {
|
function removeAlias(name) {
|
||||||
if (Aliases.hasOwnProperty(name)) {
|
if (Aliases.hasOwnProperty(name)) {
|
||||||
delete Aliases[name];
|
delete Aliases[name];
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
if (GlobalAliases.hasOwnProperty(name)) {
|
||||||
|
delete GlobalAliases[name];
|
||||||
|
return true;
|
||||||
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -42,11 +73,22 @@ function removeAlias(name) {
|
|||||||
//Aliases only applied to "whole words", one level deep
|
//Aliases only applied to "whole words", one level deep
|
||||||
function substituteAliases(origCommand) {
|
function substituteAliases(origCommand) {
|
||||||
var commandArray = origCommand.split(" ");
|
var commandArray = origCommand.split(" ");
|
||||||
|
if (commandArray.length>0){
|
||||||
|
var alias = getAlias(commandArray[0]);
|
||||||
|
if (alias != null) {
|
||||||
|
commandArray[0] = alias;
|
||||||
|
} else {
|
||||||
|
var alias = getGlobalAlias(commandArray[0]);
|
||||||
|
if (alias != null) {
|
||||||
|
commandArray[0] = alias;
|
||||||
|
}
|
||||||
|
}
|
||||||
for (var i = 0; i < commandArray.length; ++i) {
|
for (var i = 0; i < commandArray.length; ++i) {
|
||||||
var alias = getAlias(commandArray[i]);
|
var alias = getGlobalAlias(commandArray[i]);
|
||||||
if (alias != null) {
|
if (alias != null) {
|
||||||
commandArray[i] = alias;
|
commandArray[i] = alias;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
return commandArray.join(" ");
|
return commandArray.join(" ");
|
||||||
}
|
}
|
@ -128,6 +128,7 @@ AugmentationNames = {
|
|||||||
SmartSonar: "SmartSonar Implant",
|
SmartSonar: "SmartSonar Implant",
|
||||||
PowerRecirculator: "Power Recirculation Core",
|
PowerRecirculator: "Power Recirculation Core",
|
||||||
QLink: "QLink",
|
QLink: "QLink",
|
||||||
|
TheRedPill: "The Red Pill",
|
||||||
SPTN97: "SPTN-97 Gene Modification",
|
SPTN97: "SPTN-97 Gene Modification",
|
||||||
HiveMind: "ECorp HVMind Implant",
|
HiveMind: "ECorp HVMind Implant",
|
||||||
CordiARCReactor: "CordiARC Fusion Reactor",
|
CordiARCReactor: "CordiARC Fusion Reactor",
|
||||||
@ -1039,7 +1040,14 @@ initAugmentations = function() {
|
|||||||
AddToAugmentations(QLink);
|
AddToAugmentations(QLink);
|
||||||
|
|
||||||
//Daedalus
|
//Daedalus
|
||||||
//TODO The Red Pill - Second prestige
|
var RedPill = new Augmentation(AugmentationNames.TheRedPill);
|
||||||
|
RedPill.setInfo("It's time to leave the cave");
|
||||||
|
RedPill.setRequirements(1000000, 0);
|
||||||
|
RedPill.addToFactions(["Daedalus"]);
|
||||||
|
if (augmentationExists(AugmentationNames.TheRedPill)) {
|
||||||
|
delete Augmentations[AugmentationNames.TheRedPill];
|
||||||
|
}
|
||||||
|
AddToAugmentations(RedPill);
|
||||||
|
|
||||||
//Covenant
|
//Covenant
|
||||||
var SPTN97 = new Augmentation(AugmentationNames.SPTN97);
|
var SPTN97 = new Augmentation(AugmentationNames.SPTN97);
|
||||||
|
102
src/Company.js
102
src/Company.js
@ -231,8 +231,8 @@ CompanyPositions = {
|
|||||||
//Software
|
//Software
|
||||||
SoftwareIntern: new CompanyPosition("Software Engineering Intern", 1, 0, 0, 0, 0, 0, 0, 13),
|
SoftwareIntern: new CompanyPosition("Software Engineering Intern", 1, 0, 0, 0, 0, 0, 0, 13),
|
||||||
JuniorDev: new CompanyPosition("Junior Software Engineer", 51, 0, 0, 0, 0, 0, 8000, 32),
|
JuniorDev: new CompanyPosition("Junior Software Engineer", 51, 0, 0, 0, 0, 0, 8000, 32),
|
||||||
SeniorDev: new CompanyPosition("Senior Software Engineer", 251, 0, 0, 0, 0, 51, 32000, 63),
|
SeniorDev: new CompanyPosition("Senior Software Engineer", 251, 0, 0, 0, 0, 51, 40000, 63),
|
||||||
LeadDev: new CompanyPosition("Lead Software Developer", 401, 0, 0, 0, 0, 151, 144000, 210),
|
LeadDev: new CompanyPosition("Lead Software Developer", 401, 0, 0, 0, 0, 151, 200000, 210),
|
||||||
|
|
||||||
//TODO Through darkweb, maybe?
|
//TODO Through darkweb, maybe?
|
||||||
FreelanceDeveloper: new CompanyPosition("Freelance Developer", 0, 0, 0, 0, 0, 0, 0, 0),
|
FreelanceDeveloper: new CompanyPosition("Freelance Developer", 0, 0, 0, 0, 0, 0, 0, 0),
|
||||||
@ -242,26 +242,26 @@ CompanyPositions = {
|
|||||||
|
|
||||||
//IT
|
//IT
|
||||||
ITIntern: new CompanyPosition("IT Intern", 1, 0, 0, 0, 0, 0, 0, 11),
|
ITIntern: new CompanyPosition("IT Intern", 1, 0, 0, 0, 0, 0, 0, 11),
|
||||||
ITAnalyst: new CompanyPosition("IT Analyst", 26, 0, 0, 0, 0, 0, 5000, 25),
|
ITAnalyst: new CompanyPosition("IT Analyst", 26, 0, 0, 0, 0, 0, 7000, 25),
|
||||||
ITManager: new CompanyPosition("IT Manager", 151, 0, 0, 0, 0, 51, 22000, 48),
|
ITManager: new CompanyPosition("IT Manager", 151, 0, 0, 0, 0, 51, 35000, 48),
|
||||||
SysAdmin: new CompanyPosition("Systems Administrator", 251, 0, 0, 0, 0, 76, 120000, 165),
|
SysAdmin: new CompanyPosition("Systems Administrator", 251, 0, 0, 0, 0, 76, 175000, 165),
|
||||||
SecurityEngineer: new CompanyPosition("Security Engineer", 151, 0, 0, 0, 0, 26, 28000, 55),
|
SecurityEngineer: new CompanyPosition("Security Engineer", 151, 0, 0, 0, 0, 26, 35000, 55),
|
||||||
NetworkEngineer: new CompanyPosition("Network Engineer", 151, 0, 0, 0, 0, 26, 28000, 55),
|
NetworkEngineer: new CompanyPosition("Network Engineer", 151, 0, 0, 0, 0, 26, 35000, 55),
|
||||||
NetworkAdministrator: new CompanyPosition("Network Administrator", 251, 0, 0, 0, 0, 76, 120000, 165),
|
NetworkAdministrator: new CompanyPosition("Network Administrator", 251, 0, 0, 0, 0, 76, 175000, 165),
|
||||||
|
|
||||||
//Technology management
|
//Technology management
|
||||||
HeadOfSoftware: new CompanyPosition("Head of Software", 501, 0, 0, 0, 0, 251, 288000, 330),
|
HeadOfSoftware: new CompanyPosition("Head of Software", 501, 0, 0, 0, 0, 251, 400000, 330),
|
||||||
HeadOfEngineering: new CompanyPosition("Head of Engineering", 501, 0, 0, 0, 0, 251, 576000, 660),
|
HeadOfEngineering: new CompanyPosition("Head of Engineering", 501, 0, 0, 0, 0, 251, 800000, 660),
|
||||||
VicePresident: new CompanyPosition("Vice President of Technology", 601, 0, 0, 0, 0, 401, 1152000, 990),
|
VicePresident: new CompanyPosition("Vice President of Technology", 601, 0, 0, 0, 0, 401, 1600000, 990),
|
||||||
CTO: new CompanyPosition("Chief Technology Officer", 751, 0, 0, 0, 0, 501, 4608000, 1100),
|
CTO: new CompanyPosition("Chief Technology Officer", 751, 0, 0, 0, 0, 501, 3200000, 1100),
|
||||||
|
|
||||||
//Business
|
//Business
|
||||||
BusinessIntern: new CompanyPosition("Business Intern", 1, 0, 0, 0, 0, 1, 0, 18),
|
BusinessIntern: new CompanyPosition("Business Intern", 1, 0, 0, 0, 0, 1, 0, 18),
|
||||||
BusinessAnalyst: new CompanyPosition("Business Analyst", 6, 0, 0, 0, 0, 51, 8000, 42),
|
BusinessAnalyst: new CompanyPosition("Business Analyst", 6, 0, 0, 0, 0, 51, 8000, 42),
|
||||||
BusinessManager: new CompanyPosition("Business Manager", 51, 0, 0, 0, 0, 101, 32000, 84),
|
BusinessManager: new CompanyPosition("Business Manager", 51, 0, 0, 0, 0, 101, 40000, 84),
|
||||||
OperationsManager: new CompanyPosition("Operations Manager", 51, 0, 0, 0, 0, 226, 144000, 275),
|
OperationsManager: new CompanyPosition("Operations Manager", 51, 0, 0, 0, 0, 226, 200000, 275),
|
||||||
CFO: new CompanyPosition("Chief Financial Officer", 76, 0, 0, 0, 0, 501, 576000, 800),
|
CFO: new CompanyPosition("Chief Financial Officer", 76, 0, 0, 0, 0, 501, 800000, 800),
|
||||||
CEO: new CompanyPosition("Chief Executive Officer", 101, 0, 0, 0, 0, 751, 4608000, 1500),
|
CEO: new CompanyPosition("Chief Executive Officer", 101, 0, 0, 0, 0, 751, 3200000, 1500),
|
||||||
|
|
||||||
BusinessConsultant: new CompanyPosition("Business Consultant", 6, 0, 0, 0, 0, 51, 0, 28),
|
BusinessConsultant: new CompanyPosition("Business Consultant", 6, 0, 0, 0, 0, 51, 0, 28),
|
||||||
SeniorBusinessConsultant: new CompanyPosition("Senior Business Consultant", 51, 0, 0, 0, 0, 226, 0, 175),
|
SeniorBusinessConsultant: new CompanyPosition("Senior Business Consultant", 51, 0, 0, 0, 0, 226, 0, 175),
|
||||||
@ -273,75 +273,75 @@ CompanyPositions = {
|
|||||||
Waiter: new CompanyPosition("Waiter", 0, 0, 0, 0, 0, 0, 0, 11),
|
Waiter: new CompanyPosition("Waiter", 0, 0, 0, 0, 0, 0, 0, 11),
|
||||||
Employee: new CompanyPosition("Employee", 0, 0, 0, 0, 0, 0, 0, 11),
|
Employee: new CompanyPosition("Employee", 0, 0, 0, 0, 0, 0, 0, 11),
|
||||||
PoliceOfficer: new CompanyPosition("Police Officer", 11, 101, 101, 101, 101, 51, 8000, 36),
|
PoliceOfficer: new CompanyPosition("Police Officer", 11, 101, 101, 101, 101, 51, 8000, 36),
|
||||||
PoliceChief: new CompanyPosition("Police Chief", 101, 301, 301, 301, 301, 151, 32000, 175),
|
PoliceChief: new CompanyPosition("Police Chief", 101, 301, 301, 301, 301, 151, 36000, 175),
|
||||||
SecurityGuard: new CompanyPosition("Security Guard", 0, 51, 51, 51, 51, 1, 0, 20),
|
SecurityGuard: new CompanyPosition("Security Guard", 0, 51, 51, 51, 51, 1, 0, 20),
|
||||||
SecurityOfficer: new CompanyPosition("Security Officer", 26, 151, 151, 151, 151, 51, 8000, 75),
|
SecurityOfficer: new CompanyPosition("Security Officer", 26, 151, 151, 151, 151, 51, 8000, 75),
|
||||||
SecuritySupervisor: new CompanyPosition("Security Supervisor", 26, 251, 251, 251, 251, 101, 32000, 275),
|
SecuritySupervisor: new CompanyPosition("Security Supervisor", 26, 251, 251, 251, 251, 101, 36000, 275),
|
||||||
HeadOfSecurity: new CompanyPosition("Head of Security", 51, 501, 501, 501, 501, 151, 144000, 550),
|
HeadOfSecurity: new CompanyPosition("Head of Security", 51, 501, 501, 501, 501, 151, 144000, 550),
|
||||||
FieldAgent: new CompanyPosition("Field Agent", 101, 101, 101, 101, 101, 101, 8000, 55),
|
FieldAgent: new CompanyPosition("Field Agent", 101, 101, 101, 101, 101, 101, 8000, 55),
|
||||||
SecretAgent: new CompanyPosition("Secret Agent", 201, 251, 251, 251, 251, 201, 32000, 190),
|
SecretAgent: new CompanyPosition("Secret Agent", 201, 251, 251, 251, 251, 201, 32000, 190),
|
||||||
SpecialOperative: new CompanyPosition("Special Operative", 251, 501, 501, 501, 501, 251, 144000, 425),
|
SpecialOperative: new CompanyPosition("Special Operative", 251, 501, 501, 501, 501, 251, 162000, 425),
|
||||||
|
|
||||||
init: function() {
|
init: function() {
|
||||||
//Argument order: hack, str, def, dex, agi, cha
|
//Argument order: hack, str, def, dex, agi, cha
|
||||||
//Software
|
//Software
|
||||||
CompanyPositions.SoftwareIntern.setPerformanceParameters(90, 0, 0, 0, 0, 10, 1);
|
CompanyPositions.SoftwareIntern.setPerformanceParameters(85, 0, 0, 0, 0, 15, 0.9);
|
||||||
CompanyPositions.SoftwareIntern.setExperienceGains(.1, 0, 0, 0, 0, .02);
|
CompanyPositions.SoftwareIntern.setExperienceGains(.05, 0, 0, 0, 0, .02);
|
||||||
CompanyPositions.JuniorDev.setPerformanceParameters(85, 0, 0, 0, 0, 15, 1.1);
|
CompanyPositions.JuniorDev.setPerformanceParameters(85, 0, 0, 0, 0, 15, 1.1);
|
||||||
CompanyPositions.JuniorDev.setExperienceGains(.2, 0, 0, 0, 0, .04);
|
CompanyPositions.JuniorDev.setExperienceGains(.1, 0, 0, 0, 0, .05);
|
||||||
CompanyPositions.SeniorDev.setPerformanceParameters(75, 0, 0, 0, 0, 25, 1.2);
|
CompanyPositions.SeniorDev.setPerformanceParameters(80, 0, 0, 0, 0, 20, 1.3);
|
||||||
CompanyPositions.SeniorDev.setExperienceGains(.4, 0, 0, 0, 0, .08);
|
CompanyPositions.SeniorDev.setExperienceGains(.3, 0, 0, 0, 0, .08);
|
||||||
CompanyPositions.LeadDev.setPerformanceParameters(70, 0, 0, 0, 0, 30, 1.3);
|
CompanyPositions.LeadDev.setPerformanceParameters(75, 0, 0, 0, 0, 25, 1.5);
|
||||||
CompanyPositions.LeadDev.setExperienceGains(.5, 0, 0, 0, 0, .1);
|
CompanyPositions.LeadDev.setExperienceGains(.5, 0, 0, 0, 0, .1);
|
||||||
|
|
||||||
CompanyPositions.SoftwareConsultant.setPerformanceParameters(80, 0, 0, 0, 0, 20, 1);
|
CompanyPositions.SoftwareConsultant.setPerformanceParameters(80, 0, 0, 0, 0, 20, 1);
|
||||||
CompanyPositions.SoftwareConsultant.setExperienceGains(.175, 0, 0, 0, 0, .03);
|
CompanyPositions.SoftwareConsultant.setExperienceGains(.08, 0, 0, 0, 0, .03);
|
||||||
CompanyPositions.SeniorSoftwareConsultant.setPerformanceParameters(75, 0, 0, 0, 0, 25, 1.15);
|
CompanyPositions.SeniorSoftwareConsultant.setPerformanceParameters(75, 0, 0, 0, 0, 25, 1.2);
|
||||||
CompanyPositions.SeniorSoftwareConsultant.setExperienceGains(.35, 0, 0, 0, 0, .06);
|
CompanyPositions.SeniorSoftwareConsultant.setExperienceGains(.25, 0, 0, 0, 0, .06);
|
||||||
|
|
||||||
//Security
|
//Security
|
||||||
CompanyPositions.ITIntern.setPerformanceParameters(90, 0, 0, 0, 0, 10, 1);
|
CompanyPositions.ITIntern.setPerformanceParameters(90, 0, 0, 0, 0, 10, 0.9);
|
||||||
CompanyPositions.ITIntern.setExperienceGains(.05, 0, 0, 0, 0, .01);
|
CompanyPositions.ITIntern.setExperienceGains(.04, 0, 0, 0, 0, .01);
|
||||||
CompanyPositions.ITAnalyst.setPerformanceParameters(85, 0, 0, 0, 0, 15, 1.1);
|
CompanyPositions.ITAnalyst.setPerformanceParameters(85, 0, 0, 0, 0, 15, 1.1);
|
||||||
CompanyPositions.ITAnalyst.setExperienceGains(.15, 0, 0, 0, 0, .02);
|
CompanyPositions.ITAnalyst.setExperienceGains(.08, 0, 0, 0, 0, .02);
|
||||||
CompanyPositions.ITManager.setPerformanceParameters(75, 0, 0, 0, 0, 25, 1.2);
|
CompanyPositions.ITManager.setPerformanceParameters(80, 0, 0, 0, 0, 20, 1.3);
|
||||||
CompanyPositions.ITManager.setExperienceGains(.4, 0, 0, 0, 0, .1);
|
CompanyPositions.ITManager.setExperienceGains(.3, 0, 0, 0, 0, .1);
|
||||||
CompanyPositions.SysAdmin.setPerformanceParameters(80, 0, 0, 0, 0, 20, 1.2);
|
CompanyPositions.SysAdmin.setPerformanceParameters(80, 0, 0, 0, 0, 20, 1.4);
|
||||||
CompanyPositions.SysAdmin.setExperienceGains(.5, 0, 0, 0, 0, .05);
|
CompanyPositions.SysAdmin.setExperienceGains(.5, 0, 0, 0, 0, .05);
|
||||||
CompanyPositions.SecurityEngineer.setPerformanceParameters(85, 0, 0, 0, 0, 15, 1.15);
|
CompanyPositions.SecurityEngineer.setPerformanceParameters(85, 0, 0, 0, 0, 15, 1.2);
|
||||||
CompanyPositions.SecurityEngineer.setExperienceGains(0.4, 0, 0, 0, 0, .05);
|
CompanyPositions.SecurityEngineer.setExperienceGains(0.4, 0, 0, 0, 0, .05);
|
||||||
CompanyPositions.NetworkEngineer.setPerformanceParameters(85, 0, 0, 0, 0, 15, 1.15);
|
CompanyPositions.NetworkEngineer.setPerformanceParameters(85, 0, 0, 0, 0, 15, 1.2);
|
||||||
CompanyPositions.NetworkEngineer.setExperienceGains(0.4, 0, 0, 0, 0, .05);
|
CompanyPositions.NetworkEngineer.setExperienceGains(0.4, 0, 0, 0, 0, .05);
|
||||||
CompanyPositions.NetworkAdministrator.setPerformanceParameters(75, 0, 0, 0, 0, 25, 1.25);
|
CompanyPositions.NetworkAdministrator.setPerformanceParameters(80, 0, 0, 0, 0, 20, 1.3);
|
||||||
CompanyPositions.NetworkAdministrator.setExperienceGains(0.5, 0, 0, 0, 0, .1);
|
CompanyPositions.NetworkAdministrator.setExperienceGains(0.5, 0, 0, 0, 0, .1);
|
||||||
|
|
||||||
//Technology management
|
//Technology management
|
||||||
CompanyPositions.HeadOfSoftware.setPerformanceParameters(65, 0, 0, 0, 0, 35, 1.4);
|
CompanyPositions.HeadOfSoftware.setPerformanceParameters(75, 0, 0, 0, 0, 25, 1.6);
|
||||||
CompanyPositions.HeadOfSoftware.setExperienceGains(1, 0, 0, 0, 0, .5);
|
CompanyPositions.HeadOfSoftware.setExperienceGains(1, 0, 0, 0, 0, .5);
|
||||||
CompanyPositions.HeadOfEngineering.setPerformanceParameters(60, 0, 0, 0, 0, 40, 1.4);
|
CompanyPositions.HeadOfEngineering.setPerformanceParameters(75, 0, 0, 0, 0, 25, 1.6);
|
||||||
CompanyPositions.HeadOfEngineering.setExperienceGains(1.1, 0, 0, 0, 0, .5);
|
CompanyPositions.HeadOfEngineering.setExperienceGains(1.1, 0, 0, 0, 0, .5);
|
||||||
CompanyPositions.VicePresident.setPerformanceParameters(60, 0, 0, 0, 0, 40, 1.5);
|
CompanyPositions.VicePresident.setPerformanceParameters(70, 0, 0, 0, 0, 30, 1.75);
|
||||||
CompanyPositions.VicePresident.setExperienceGains(1.2, 0, 0, 0, 0, .6);
|
CompanyPositions.VicePresident.setExperienceGains(1.2, 0, 0, 0, 0, .6);
|
||||||
CompanyPositions.CTO.setPerformanceParameters(50, 0, 0, 0, 0, 50, 1.5);
|
CompanyPositions.CTO.setPerformanceParameters(65, 0, 0, 0, 0, 35, 2);
|
||||||
CompanyPositions.CTO.setExperienceGains(1.5, 0, 0, 0, 1);
|
CompanyPositions.CTO.setExperienceGains(1.5, 0, 0, 0, 1);
|
||||||
|
|
||||||
//Business
|
//Business
|
||||||
CompanyPositions.BusinessIntern.setPerformanceParameters(10, 0, 0, 0, 0, 90, 1);
|
CompanyPositions.BusinessIntern.setPerformanceParameters(10, 0, 0, 0, 0, 90, 0.9);
|
||||||
CompanyPositions.BusinessIntern.setExperienceGains(.01, 0, 0, 0, 0, .1);
|
CompanyPositions.BusinessIntern.setExperienceGains(.01, 0, 0, 0, 0, .08);
|
||||||
CompanyPositions.BusinessAnalyst.setPerformanceParameters(20, 0, 0, 0, 0, 80, 1.1);
|
CompanyPositions.BusinessAnalyst.setPerformanceParameters(15, 0, 0, 0, 0, 85, 1.1);
|
||||||
CompanyPositions.BusinessAnalyst.setExperienceGains(.02, 0, 0, 0, 0, .2);
|
CompanyPositions.BusinessAnalyst.setExperienceGains(.02, 0, 0, 0, 0, .15);
|
||||||
CompanyPositions.BusinessManager.setPerformanceParameters(15, 0, 0, 0, 0, 85, 1.2);
|
CompanyPositions.BusinessManager.setPerformanceParameters(15, 0, 0, 0, 0, 85, 1.3);
|
||||||
CompanyPositions.BusinessManager.setExperienceGains(.02, 0, 0, 0, 0, .4);
|
CompanyPositions.BusinessManager.setExperienceGains(.02, 0, 0, 0, 0, .3);
|
||||||
CompanyPositions.OperationsManager.setPerformanceParameters(15, 0, 0, 0, 0, 85, 1.2);
|
CompanyPositions.OperationsManager.setPerformanceParameters(15, 0, 0, 0, 0, 85, 1.5);
|
||||||
CompanyPositions.OperationsManager.setExperienceGains(.02, 0, 0, 0, 0, .4);
|
CompanyPositions.OperationsManager.setExperienceGains(.02, 0, 0, 0, 0, .4);
|
||||||
CompanyPositions.CFO.setPerformanceParameters(10, 0, 0, 0, 0, 90, 1.3);
|
CompanyPositions.CFO.setPerformanceParameters(10, 0, 0, 0, 0, 90, 1.6);
|
||||||
CompanyPositions.CFO.setExperienceGains(.05, 0, 0, 0, 0, 1);
|
CompanyPositions.CFO.setExperienceGains(.05, 0, 0, 0, 0, 1);
|
||||||
CompanyPositions.CEO.setPerformanceParameters(10, 0, 0, 0, 0, 90, 1.5);
|
CompanyPositions.CEO.setPerformanceParameters(10, 0, 0, 0, 0, 90, 1.75);
|
||||||
CompanyPositions.CEO.setExperienceGains(.1, 0, 0, 0, 0, 1.5);
|
CompanyPositions.CEO.setExperienceGains(.1, 0, 0, 0, 0, 1.5);
|
||||||
|
|
||||||
CompanyPositions.BusinessConsultant.setPerformanceParameters(20, 0, 0, 0, 0, 80, 1);
|
CompanyPositions.BusinessConsultant.setPerformanceParameters(20, 0, 0, 0, 0, 80, 1);
|
||||||
CompanyPositions.BusinessConsultant.setExperienceGains(.015, 0, 0, 0, 0, .15);
|
CompanyPositions.BusinessConsultant.setExperienceGains(.015, 0, 0, 0, 0, .15);
|
||||||
CompanyPositions.SeniorBusinessConsultant.setPerformanceParameters(15, 0, 0, 0, 0, 85, 1.15);
|
CompanyPositions.SeniorBusinessConsultant.setPerformanceParameters(15, 0, 0, 0, 0, 85, 1.2);
|
||||||
CompanyPositions.SeniorBusinessConsultant.setExperienceGains(.015, 0, 0, 0, 0, .3);
|
CompanyPositions.SeniorBusinessConsultant.setExperienceGains(.015, 0, 0, 0, 0, .3);
|
||||||
|
|
||||||
//Non-tech/management jobs
|
//Non-tech/management jobs
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
CONSTANTS = {
|
CONSTANTS = {
|
||||||
Version: "0.24.0",
|
Version: "0.24.1",
|
||||||
|
|
||||||
//Max level for any skill, assuming no multipliers. Determined by max numerical value in javascript for experience
|
//Max level for any skill, assuming no multipliers. Determined by max numerical value in javascript for experience
|
||||||
//and the skill level formula in Player.js. Note that all this means it that when experience hits MAX_INT, then
|
//and the skill level formula in Player.js. Note that all this means it that when experience hits MAX_INT, then
|
||||||
@ -10,7 +10,7 @@ CONSTANTS = {
|
|||||||
CorpFactionRepRequirement: 250000,
|
CorpFactionRepRequirement: 250000,
|
||||||
|
|
||||||
/* Base costs */
|
/* Base costs */
|
||||||
BaseCostFor1GBOfRamHome: 45000,
|
BaseCostFor1GBOfRamHome: 32000,
|
||||||
BaseCostFor1GBOfRamServer: 55000, //1 GB of RAM
|
BaseCostFor1GBOfRamServer: 55000, //1 GB of RAM
|
||||||
BaseCostFor1GBOfRamHacknetNode: 30000,
|
BaseCostFor1GBOfRamHacknetNode: 30000,
|
||||||
|
|
||||||
@ -19,7 +19,7 @@ CONSTANTS = {
|
|||||||
|
|
||||||
/* Hacknet Node constants */
|
/* Hacknet Node constants */
|
||||||
HacknetNodeMoneyGainPerLevel: 1.55,
|
HacknetNodeMoneyGainPerLevel: 1.55,
|
||||||
HacknetNodePurchaseNextMult: 1.42, //Multiplier when purchasing an additional hacknet node
|
HacknetNodePurchaseNextMult: 1.75, //Multiplier when purchasing an additional hacknet node
|
||||||
HacknetNodeUpgradeLevelMult: 1.045, //Multiplier for cost when upgrading level
|
HacknetNodeUpgradeLevelMult: 1.045, //Multiplier for cost when upgrading level
|
||||||
HacknetNodeUpgradeRamMult: 1.28, //Multiplier for cost when upgrading RAM
|
HacknetNodeUpgradeRamMult: 1.28, //Multiplier for cost when upgrading RAM
|
||||||
HacknetNodeUpgradeCoreMult: 1.49, //Multiplier for cost when buying another core
|
HacknetNodeUpgradeCoreMult: 1.49, //Multiplier for cost when buying another core
|
||||||
@ -152,12 +152,12 @@ CONSTANTS = {
|
|||||||
ClassGymDexterity: "training your dexterity at a gym",
|
ClassGymDexterity: "training your dexterity at a gym",
|
||||||
ClassGymAgility: "training your agility at a gym",
|
ClassGymAgility: "training your agility at a gym",
|
||||||
|
|
||||||
ClassDataStructuresBaseCost: 6,
|
ClassDataStructuresBaseCost: 30,
|
||||||
ClassNetworksBaseCost: 30,
|
ClassNetworksBaseCost: 60,
|
||||||
ClassAlgorithmsBaseCost: 120,
|
ClassAlgorithmsBaseCost: 240,
|
||||||
ClassManagementBaseCost: 60,
|
ClassManagementBaseCost: 120,
|
||||||
ClassLeadershipBaseCost: 120,
|
ClassLeadershipBaseCost: 240,
|
||||||
ClassGymBaseCost: 100,
|
ClassGymBaseCost: 120,
|
||||||
|
|
||||||
CrimeShoplift: "shoplift",
|
CrimeShoplift: "shoplift",
|
||||||
CrimeMug: "mug someone",
|
CrimeMug: "mug someone",
|
||||||
@ -170,7 +170,7 @@ CONSTANTS = {
|
|||||||
CrimeHeist: "pull off the ultimate heist",
|
CrimeHeist: "pull off the ultimate heist",
|
||||||
|
|
||||||
//Text that is displayed when the 'help' command is ran in Terminal
|
//Text that is displayed when the 'help' command is ran in Terminal
|
||||||
HelpText: 'alias [name="value"] Create aliases for Terminal commands, or list existing aliases<br>' +
|
HelpText: 'alias [-g] [name="value"] Create aliases for Terminal commands, or list existing aliases<br>' +
|
||||||
"analyze Get statistics and information about current machine <br>" +
|
"analyze Get statistics and information about current machine <br>" +
|
||||||
"cat [message] Display a .msg file<br>" +
|
"cat [message] Display a .msg file<br>" +
|
||||||
"check [script] [args...] Print logs to Terminal for the script with the specified name and arguments<br>" +
|
"check [script] [args...] Print logs to Terminal for the script with the specified name and arguments<br>" +
|
||||||
@ -668,13 +668,17 @@ CONSTANTS = {
|
|||||||
"upgrade your abilities. The Augmentations that are available to unlock vary from faction to faction.",
|
"upgrade your abilities. The Augmentations that are available to unlock vary from faction to faction.",
|
||||||
TutorialAugmentationsText: "Advances in science and medicine have lead to powerful new technologies that allow people to augment themselves " +
|
TutorialAugmentationsText: "Advances in science and medicine have lead to powerful new technologies that allow people to augment themselves " +
|
||||||
"beyond normal human capabilities. There are many different types of Augmentations, ranging from cybernetic to " +
|
"beyond normal human capabilities. There are many different types of Augmentations, ranging from cybernetic to " +
|
||||||
"genetic to biological. Acquiring these Augmentations enhances the user's physical and mental faculties. <br>" +
|
"genetic to biological. Acquiring these Augmentations enhances the user's physical and mental faculties. <br><br>" +
|
||||||
"Because of how powerful these Augmentations are, the technology behind them is kept private and secret by the " +
|
"Because of how powerful these Augmentations are, the technology behind them is kept private and secret by the " +
|
||||||
"corporations and organizations that create them. Therefore, the only way for the player to obtain Augmentations is " +
|
"corporations and organizations that create them. Therefore, the only way for the player to obtain Augmentations is " +
|
||||||
"through Factions. After joining a Faction and earning enough reputation in it, you will be able to purchase " +
|
"through Factions. After joining a Faction and earning enough reputation in it, you will be able to purchase " +
|
||||||
"its Augmentations. Different Factions offer different Augmentations. Augmentations must be purchased in order to be installed, " +
|
"its Augmentations. Different Factions offer different Augmentations. Augmentations must be purchased in order to be installed, " +
|
||||||
"and they are fairly expensive. <br><br>" +
|
"and they are fairly expensive. <br><br>" +
|
||||||
"Unfortunately, installing an Augmentation has side effects. You will lose most of the progress you've made, including your " +
|
"When you purchase an Augmentation, the price of purchasing another Augmentation increases by 90%. This multiplier stacks for " +
|
||||||
|
"each Augmentation you purchase. You will not gain the benefits of your purchased Augmentations until you install them. You can " +
|
||||||
|
"choose to install Augmentations through the 'Augmentations' menu tab. Once you install your purchased Augmentations, " +
|
||||||
|
"their costs are reset back to the original price.<br><br>" +
|
||||||
|
"Unfortunately, installing Augmentations has side effects. You will lose most of the progress you've made, including your " +
|
||||||
"skills, stats, and money. You will have to start over, but you will have all of the Augmentations you have installed to " +
|
"skills, stats, and money. You will have to start over, but you will have all of the Augmentations you have installed to " +
|
||||||
"help you progress. <br><br> " +
|
"help you progress. <br><br> " +
|
||||||
"To summarize, here is a list of everything you will LOSE when you install an Augmentation: <br><br>" +
|
"To summarize, here is a list of everything you will LOSE when you install an Augmentation: <br><br>" +
|
||||||
@ -686,13 +690,33 @@ CONSTANTS = {
|
|||||||
"Company/faction reputation<br>" +
|
"Company/faction reputation<br>" +
|
||||||
"Jobs and Faction memberships<br>" +
|
"Jobs and Faction memberships<br>" +
|
||||||
"Programs<br>" +
|
"Programs<br>" +
|
||||||
|
"Stocks<br>" +
|
||||||
"TOR router<br><br>" +
|
"TOR router<br><br>" +
|
||||||
"Here is everything you will KEEP when you install an Augmentation: <br><br>" +
|
"Here is everything you will KEEP when you install an Augmentation: <br><br>" +
|
||||||
"Every Augmentation you have installed<br>" +
|
"Every Augmentation you have installed<br>" +
|
||||||
"Scripts on your home computer<br>" +
|
"Scripts on your home computer<br>" +
|
||||||
"RAM Upgrades on your home computer",
|
"RAM Upgrades on your home computer<br>" +
|
||||||
|
"World Stock Exchange account and TIX API Access<br>",
|
||||||
|
|
||||||
Changelog:
|
Changelog:
|
||||||
|
"v0.24.1<br>" +
|
||||||
|
"-Adjusted cost of upgrading home computer RAM. Should be a little cheaper for the first few upgrades (up to ~64GB), and " +
|
||||||
|
"then will start being more expensive than before. High RAM upgrades should now be significantly more expensive than before.<br>" +
|
||||||
|
"-Slightly lowered the starting money available on most mid-game and end-game servers (servers with required hacking level " +
|
||||||
|
"greater than 200) by about 10-15%<br>" +
|
||||||
|
"-Rebalanced company/company position reputation gains and requirements<br>" +
|
||||||
|
"-Studying at a university now gives slightly more EXP and early jobs give slightly less EXP<br>" +
|
||||||
|
"-Studying at a university is now considerably more expensive<br>" +
|
||||||
|
"-Rebalanced stock market<br>" +
|
||||||
|
"-Significantly increased cost multiplier for purchasing additional Hacknet Nodes<br>" +
|
||||||
|
"-The rate at which facility security level increases during infiltration for each clearance level " +
|
||||||
|
"was lowered slightly for all companies<br>" +
|
||||||
|
"-Updated Faction descriptions<br>" +
|
||||||
|
"-Changed the way alias works. Normal aliases now only work at the start of a Terminal command (they will only " +
|
||||||
|
"replace the first word in the Terminal command). You can also create global aliases that work on any part of the " +
|
||||||
|
'command, like before. Declare global aliases by entering the optional -g flag: alias -g name="value" - Courtesy of Github user MrNuggelz<br>' +
|
||||||
|
"-'top' Terminal command implemented courtesy of Github user LTCNugget. Currently, the formatting gets screwed up " +
|
||||||
|
"if your script names are really long.<br><br>" +
|
||||||
"v0.24.0<br>" +
|
"v0.24.0<br>" +
|
||||||
"-Players now have HP, which is displayed in the top right. To regain HP, visit the hospital. Currently " +
|
"-Players now have HP, which is displayed in the top right. To regain HP, visit the hospital. Currently " +
|
||||||
"the only way to lose HP is through infiltration<br>" +
|
"the only way to lose HP is through infiltration<br>" +
|
||||||
@ -901,6 +925,24 @@ CONSTANTS = {
|
|||||||
"-You can now see what an Augmentation does and its price even while its locked<br><br>",
|
"-You can now see what an Augmentation does and its price even while its locked<br><br>",
|
||||||
|
|
||||||
LatestUpdate:
|
LatestUpdate:
|
||||||
|
"v0.24.1<br>" +
|
||||||
|
"-Adjusted cost of upgrading home computer RAM. Should be a little cheaper for the first few upgrades (up to ~64GB), and " +
|
||||||
|
"then will start being more expensive than before. High RAM upgrades should now be significantly more expensive than before.<br>" +
|
||||||
|
"-Slightly lowered the starting money available on most mid-game and end-game servers (servers with required hacking level " +
|
||||||
|
"greater than 200) by about 10-15%<br>" +
|
||||||
|
"-Rebalanced company/company position reputation gains and requirements<br>" +
|
||||||
|
"-Studying at a university now gives slightly more EXP and early jobs give slightly less EXP<br>" +
|
||||||
|
"-Studying at a university is now considerably more expensive<br>" +
|
||||||
|
"-Rebalanced stock market<br>" +
|
||||||
|
"-Significantly increased cost multiplier for purchasing additional Hacknet Nodes<br>" +
|
||||||
|
"-The rate at which facility security level increases during infiltration for each clearance level " +
|
||||||
|
"was lowered slightly for all companies<br>" +
|
||||||
|
"-Updated Faction descriptions<br>" +
|
||||||
|
"-Changed the way alias works. Normal aliases now only work at the start of a Terminal command (they will only " +
|
||||||
|
"replace the first word in the Terminal command). You can also create global aliases that work on any part of the " +
|
||||||
|
'command, like before. Declare global aliases by entering the optional -g flag: alias -g name="value" - Courtesy of Github user MrNuggelz<br>' +
|
||||||
|
"-'top' Terminal command implemented courtesy of Github user LTCNugget. Currently, the formatting gets screwed up " +
|
||||||
|
"if your script names are really long.<br><br>" +
|
||||||
"v0.24.0<br>" +
|
"v0.24.0<br>" +
|
||||||
"-Players now have HP, which is displayed in the top right. To regain HP, visit the hospital. Currently " +
|
"-Players now have HP, which is displayed in the top right. To regain HP, visit the hospital. Currently " +
|
||||||
"the only way to lose HP is through infiltration<br>" +
|
"the only way to lose HP is through infiltration<br>" +
|
||||||
|
@ -3,20 +3,14 @@
|
|||||||
FactionInfo = {
|
FactionInfo = {
|
||||||
//Endgame
|
//Endgame
|
||||||
IlluminatiInfo: "Humanity never changes. No matter how civilized society becomes, it will eventually fall back " +
|
IlluminatiInfo: "Humanity never changes. No matter how civilized society becomes, it will eventually fall back " +
|
||||||
"into chaos. And out of this chaos, we will lead them to order. <br><br>" +
|
"into chaos. And from this chaos, we are the Invisible hand that guides them to order. ",
|
||||||
"We are the Invisible Hand. We are forever.",
|
|
||||||
|
|
||||||
DaedalusInfo: "If all of human " +
|
DaedalusInfo: "Yesterday we obeyed kings and bent our necks to emperors. Today we kneel only to truth.",
|
||||||
"history is but a single lesson, it is that the individual may be remembered, but the organization " +
|
|
||||||
"persists and thrives. A single artist, a single general, a single hero or a single villain may all die, " +
|
CovenantInfo: "Surrender yourself. Give up your empty individuality to become part of something great, something eternal. " +
|
||||||
"but it is impossible to kill a people, a nation, an idea -- except when that idea has grown weak and is " +
|
|
||||||
"overpowered by one that is stronger. -- The Doctrine of the Mighty<br><br>" +
|
|
||||||
"Surrender yourself. Give up your empty individuality to become part of something great, something eternal. " +
|
|
||||||
"Become a slave. Submit your mind, body, and soul. Only then can you set yourself free.<br><br> " +
|
"Become a slave. Submit your mind, body, and soul. Only then can you set yourself free.<br><br> " +
|
||||||
"Only then can you discover immortality.",
|
"Only then can you discover immortality.",
|
||||||
|
|
||||||
CovenantInfo: "Yesterday we obeyed kings and bent our necks to emperors. Today we kneel only to truth.",
|
|
||||||
|
|
||||||
//Megacorporations, each forms its own faction
|
//Megacorporations, each forms its own faction
|
||||||
ECorpInfo: "ECorp's mission is simple: to connect the world of today with the technology of tomorrow. " +
|
ECorpInfo: "ECorp's mission is simple: to connect the world of today with the technology of tomorrow. " +
|
||||||
"With our wide range of Internet-related software and commercial hardware, ECorp makes the world's " +
|
"With our wide range of Internet-related software and commercial hardware, ECorp makes the world's " +
|
||||||
@ -51,12 +45,12 @@ FactionInfo = {
|
|||||||
"It's all transformed into bits, stored in bits, communicated through bits. It’s impossible for any person " +
|
"It's all transformed into bits, stored in bits, communicated through bits. It’s impossible for any person " +
|
||||||
"to move, to live, to operate at any level without the use of bits. " +
|
"to move, to live, to operate at any level without the use of bits. " +
|
||||||
"And when a person moves, lives, and operates, they leave behind their bits, mere traces of seemingly " +
|
"And when a person moves, lives, and operates, they leave behind their bits, mere traces of seemingly " +
|
||||||
"meaningly fragments of information. But these bits can be reconstructed. Transformed. Used.<br><br>" +
|
"meaningless fragments of information. But these bits can be reconstructed. Transformed. Used.<br><br>" +
|
||||||
"Those who run the bits, run the world",
|
"Those who run the bits, run the world",
|
||||||
|
|
||||||
|
|
||||||
BlackHandInfo: "This is real freedom, freedom to own property, make a profit, make your life. " +
|
BlackHandInfo: "The world, so afraid of strong government, now has no government. Only power - Digital power. Financial power. " +
|
||||||
"The West, so afraid of strong government, now has no government. Only financial power. " +
|
"Technological power. " +
|
||||||
"And those at the top rule with an invisible hand. They built a society where the rich get richer, " +
|
"And those at the top rule with an invisible hand. They built a society where the rich get richer, " +
|
||||||
"and everyone else suffers.<br><br>" +
|
"and everyone else suffers.<br><br>" +
|
||||||
"So much pain. So many lives. Their darkness must end.",
|
"So much pain. So many lives. Their darkness must end.",
|
||||||
@ -113,7 +107,10 @@ FactionInfo = {
|
|||||||
|
|
||||||
TheSyndicateInfo: "Honor holds you back",
|
TheSyndicateInfo: "Honor holds you back",
|
||||||
|
|
||||||
SilhouetteInfo: "Corporations are so big, you don't even know who you're working for. That's terror. Terror built into the system.",
|
SilhouetteInfo: "Corporations have filled the void of power left behind by the collapse of Western government. The issue is they've become so big " +
|
||||||
|
"that you don't know who they're working for. And if you're employed at one of these corporations, you don't even know who you're working " +
|
||||||
|
"for. <br><br>" +
|
||||||
|
"That's terror. Terror, fear, and corruption. All born into the system, all propagated by the system.",
|
||||||
|
|
||||||
TetradsInfo: "Following the Mandate of Heaven and Carrying out the Way",
|
TetradsInfo: "Following the Mandate of Heaven and Carrying out the Way",
|
||||||
|
|
||||||
|
@ -216,6 +216,9 @@ getMaxNumberLevelUpgrades = function(nodeObj) {
|
|||||||
var min = 1;
|
var min = 1;
|
||||||
var max = CONSTANTS.HacknetNodeMaxLevel-1;
|
var max = CONSTANTS.HacknetNodeMaxLevel-1;
|
||||||
var levelsToMax = CONSTANTS.HacknetNodeMaxLevel - nodeObj.level;
|
var levelsToMax = CONSTANTS.HacknetNodeMaxLevel - nodeObj.level;
|
||||||
|
if (nodeObj.calculateLevelUpgradeCost(levelsToMax) < Player.money) {
|
||||||
|
return levelsToMax;
|
||||||
|
}
|
||||||
|
|
||||||
while (min <= max) {
|
while (min <= max) {
|
||||||
var curr = (min + max) / 2 | 0;
|
var curr = (min + max) / 2 | 0;
|
||||||
|
@ -369,7 +369,7 @@ displayLocationContent = function() {
|
|||||||
purchaseTor.style.display = "block";
|
purchaseTor.style.display = "block";
|
||||||
purchaseHomeRam.style.display = "block";
|
purchaseHomeRam.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.AevumECorp,
|
setInfiltrateButton(infiltrate, Locations.AevumECorp,
|
||||||
6000, 100, 150, 14);
|
6000, 100, 150, 13);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.AevumBachmanAndAssociates:
|
case Locations.AevumBachmanAndAssociates:
|
||||||
@ -382,7 +382,7 @@ displayLocationContent = function() {
|
|||||||
businessJob.style.display = "block";
|
businessJob.style.display = "block";
|
||||||
securityJob.style.display = "block";
|
securityJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.AevumBachmanAndAssociates,
|
setInfiltrateButton(infiltrate, Locations.AevumBachmanAndAssociates,
|
||||||
1500, 36, 60, 10);
|
1500, 36, 60, 9.5);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.AevumClarkeIncorporated:
|
case Locations.AevumClarkeIncorporated:
|
||||||
@ -395,7 +395,7 @@ displayLocationContent = function() {
|
|||||||
businessJob.style.display = "block";
|
businessJob.style.display = "block";
|
||||||
securityJob.style.display = "block";
|
securityJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.AevumClarkeIncorporated,
|
setInfiltrateButton(infiltrate, Locations.AevumClarkeIncorporated,
|
||||||
2400, 28, 75, 9.5);
|
2400, 28, 75, 9);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.AevumFulcrumTechnologies:
|
case Locations.AevumFulcrumTechnologies:
|
||||||
@ -414,7 +414,7 @@ displayLocationContent = function() {
|
|||||||
purchaseTor.style.display = "block";
|
purchaseTor.style.display = "block";
|
||||||
purchaseHomeRam.style.display = "block";
|
purchaseHomeRam.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.AevumFulcrumTechnologies,
|
setInfiltrateButton(infiltrate, Locations.AevumFulcrumTechnologies,
|
||||||
6000, 84, 100, 16);
|
6000, 84, 100, 15);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.AevumAeroCorp:
|
case Locations.AevumAeroCorp:
|
||||||
@ -426,7 +426,7 @@ displayLocationContent = function() {
|
|||||||
networkEngineerJob.style.display = "block";
|
networkEngineerJob.style.display = "block";
|
||||||
securityJob.style.display = "block";
|
securityJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.AevumAeroCorp,
|
setInfiltrateButton(infiltrate, Locations.AevumAeroCorp,
|
||||||
2000, 26, 50, 10.5);
|
2000, 26, 50, 10);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.AevumGalacticCybersystems:
|
case Locations.AevumGalacticCybersystems:
|
||||||
@ -439,7 +439,7 @@ displayLocationContent = function() {
|
|||||||
networkEngineerJob.style.display = "block";
|
networkEngineerJob.style.display = "block";
|
||||||
businessJob.style.display = "block";
|
businessJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.AevumGalacticCybersystems,
|
setInfiltrateButton(infiltrate, Locations.AevumGalacticCybersystems,
|
||||||
1400, 24, 50, 10);
|
1400, 24, 50, 9);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.AevumWatchdogSecurity:
|
case Locations.AevumWatchdogSecurity:
|
||||||
@ -453,7 +453,7 @@ displayLocationContent = function() {
|
|||||||
securityJob.style.display = "block";
|
securityJob.style.display = "block";
|
||||||
agentJob.style.display = "block";
|
agentJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.AevumWatchdogSecurity,
|
setInfiltrateButton(infiltrate, Locations.AevumWatchdogSecurity,
|
||||||
850, 12, 30, 8);
|
850, 12, 30, 7.5);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.AevumRhoConstruction:
|
case Locations.AevumRhoConstruction:
|
||||||
@ -462,7 +462,7 @@ displayLocationContent = function() {
|
|||||||
softwareJob.style.display = "block";
|
softwareJob.style.display = "block";
|
||||||
businessJob.style.display = "block";
|
businessJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.AevumRhoConstruction,
|
setInfiltrateButton(infiltrate, Locations.AevumRhoConstruction,
|
||||||
600, 8, 20, 4.5);
|
600, 8, 20, 4);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.AevumPolice:
|
case Locations.AevumPolice:
|
||||||
@ -471,7 +471,7 @@ displayLocationContent = function() {
|
|||||||
softwareJob.style.display = "block";
|
softwareJob.style.display = "block";
|
||||||
securityJob.style.display = "block";
|
securityJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.AevumPolice,
|
setInfiltrateButton(infiltrate, Locations.AevumPolice,
|
||||||
700, 10, 25, 6);
|
700, 10, 25, 5);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.AevumNetLinkTechnologies:
|
case Locations.AevumNetLinkTechnologies:
|
||||||
@ -489,7 +489,7 @@ displayLocationContent = function() {
|
|||||||
purchaseTor.style.display = "block";
|
purchaseTor.style.display = "block";
|
||||||
purchaseHomeRam.style.display = "block";
|
purchaseHomeRam.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.AevumNetLinkTechnologies,
|
setInfiltrateButton(infiltrate, Locations.AevumNetLinkTechnologies,
|
||||||
150, 5, 15, 3.5);
|
150, 5, 15, 3);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.AevumCrushFitnessGym:
|
case Locations.AevumCrushFitnessGym:
|
||||||
@ -523,7 +523,7 @@ displayLocationContent = function() {
|
|||||||
businessJob.style.display = "block";
|
businessJob.style.display = "block";
|
||||||
securityJob.style.display = "block";
|
securityJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.ChongqingKuaiGongInternational,
|
setInfiltrateButton(infiltrate, Locations.ChongqingKuaiGongInternational,
|
||||||
5500, 42, 100, 15);
|
5500, 42, 100, 14);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.ChongqingSolarisSpaceSystems:
|
case Locations.ChongqingSolarisSpaceSystems:
|
||||||
@ -535,7 +535,7 @@ displayLocationContent = function() {
|
|||||||
networkEngineerJob.style.display = "block";
|
networkEngineerJob.style.display = "block";
|
||||||
securityJob.style.display = "block";
|
securityJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.ChongqingSolarisSpaceSystems,
|
setInfiltrateButton(infiltrate, Locations.ChongqingSolarisSpaceSystems,
|
||||||
3600, 24, 75, 14);
|
3600, 24, 75, 13);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
||||||
@ -564,7 +564,7 @@ displayLocationContent = function() {
|
|||||||
businessJob.style.display = "block";
|
businessJob.style.display = "block";
|
||||||
securityJob.style.display = "block";
|
securityJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.Sector12MegaCorp,
|
setInfiltrateButton(infiltrate, Locations.Sector12MegaCorp,
|
||||||
6000, 100, 125, 15.5);
|
6000, 100, 125, 15);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.Sector12BladeIndustries:
|
case Locations.Sector12BladeIndustries:
|
||||||
@ -577,7 +577,7 @@ displayLocationContent = function() {
|
|||||||
businessJob.style.display = "block";
|
businessJob.style.display = "block";
|
||||||
securityJob.style.display = "block";
|
securityJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.Sector12BladeIndustries,
|
setInfiltrateButton(infiltrate, Locations.Sector12BladeIndustries,
|
||||||
3000, 40, 100, 11);
|
3000, 40, 100, 10);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.Sector12FourSigma:
|
case Locations.Sector12FourSigma:
|
||||||
@ -590,7 +590,7 @@ displayLocationContent = function() {
|
|||||||
businessJob.style.display = "block";
|
businessJob.style.display = "block";
|
||||||
securityJob.style.display = "block";
|
securityJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.Sector12FourSigma,
|
setInfiltrateButton(infiltrate, Locations.Sector12FourSigma,
|
||||||
1500, 50, 100, 16);
|
1500, 50, 100, 14.5);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.Sector12IcarusMicrosystems:
|
case Locations.Sector12IcarusMicrosystems:
|
||||||
@ -603,7 +603,7 @@ displayLocationContent = function() {
|
|||||||
networkEngineerJob.style.display = "block";
|
networkEngineerJob.style.display = "block";
|
||||||
businessJob.style.display = "block";
|
businessJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.Sector12IcarusMicrosystems,
|
setInfiltrateButton(infiltrate, Locations.Sector12IcarusMicrosystems,
|
||||||
900, 28, 70, 12);
|
900, 28, 70, 11);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.Sector12UniversalEnergy:
|
case Locations.Sector12UniversalEnergy:
|
||||||
@ -616,7 +616,7 @@ displayLocationContent = function() {
|
|||||||
networkEngineerJob.style.display = "block";
|
networkEngineerJob.style.display = "block";
|
||||||
businessJob.style.display = "block";
|
businessJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.Sector12UniversalEnergy,
|
setInfiltrateButton(infiltrate, Locations.Sector12UniversalEnergy,
|
||||||
775, 20, 50, 10);
|
775, 20, 50, 9.5);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.Sector12DeltaOne:
|
case Locations.Sector12DeltaOne:
|
||||||
@ -628,7 +628,7 @@ displayLocationContent = function() {
|
|||||||
networkEngineerJob.style.display = "block";
|
networkEngineerJob.style.display = "block";
|
||||||
securityJob.style.display = "block";
|
securityJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.Sector12DeltaOne,
|
setInfiltrateButton(infiltrate, Locations.Sector12DeltaOne,
|
||||||
1200, 30, 75, 11);
|
1200, 30, 75, 10);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.Sector12CIA:
|
case Locations.Sector12CIA:
|
||||||
@ -641,7 +641,7 @@ displayLocationContent = function() {
|
|||||||
securityJob.style.display = "block";
|
securityJob.style.display = "block";
|
||||||
agentJob.style.display = "block";
|
agentJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.Sector12CIA,
|
setInfiltrateButton(infiltrate, Locations.Sector12CIA,
|
||||||
1450, 38, 80, 12.5);
|
1450, 38, 80, 12);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.Sector12NSA:
|
case Locations.Sector12NSA:
|
||||||
@ -654,7 +654,7 @@ displayLocationContent = function() {
|
|||||||
securityJob.style.display = "block";
|
securityJob.style.display = "block";
|
||||||
agentJob.style.display = "block";
|
agentJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.Sector12NSA,
|
setInfiltrateButton(infiltrate, Locations.Sector12NSA,
|
||||||
1400, 34, 80, 12);
|
1400, 34, 80, 11);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.Sector12AlphaEnterprises:
|
case Locations.Sector12AlphaEnterprises:
|
||||||
@ -668,7 +668,7 @@ displayLocationContent = function() {
|
|||||||
purchaseTor.style.display = "block";
|
purchaseTor.style.display = "block";
|
||||||
purchaseHomeRam.style.display = "block";
|
purchaseHomeRam.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.Sector12AlphaEnterprises,
|
setInfiltrateButton(infiltrate, Locations.Sector12AlphaEnterprises,
|
||||||
250, 10, 40, 5);
|
250, 10, 40, 4.5);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.Sector12CarmichaelSecurity:
|
case Locations.Sector12CarmichaelSecurity:
|
||||||
@ -682,7 +682,7 @@ displayLocationContent = function() {
|
|||||||
securityJob.style.display = "block";
|
securityJob.style.display = "block";
|
||||||
agentJob.style.display = "block";
|
agentJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.Sector12CarmichaelSecurity,
|
setInfiltrateButton(infiltrate, Locations.Sector12CarmichaelSecurity,
|
||||||
500, 14, 60, 5);
|
500, 14, 60, 4.5);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.Sector12FoodNStuff:
|
case Locations.Sector12FoodNStuff:
|
||||||
@ -698,7 +698,7 @@ displayLocationContent = function() {
|
|||||||
employeeJob.style.display = "block";
|
employeeJob.style.display = "block";
|
||||||
employeePartTimeJob.style.display = "block";
|
employeePartTimeJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.Sector12JoesGuns,
|
setInfiltrateButton(infiltrate, Locations.Sector12JoesGuns,
|
||||||
100, 4, 20, 4);
|
100, 4, 20, 3.5);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.Sector12IronGym:
|
case Locations.Sector12IronGym:
|
||||||
@ -731,7 +731,7 @@ displayLocationContent = function() {
|
|||||||
securityEngineerJob.style.display = "block";
|
securityEngineerJob.style.display = "block";
|
||||||
networkEngineerJob.style.display = "block";
|
networkEngineerJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.NewTokyoDefComm,
|
setInfiltrateButton(infiltrate, Locations.NewTokyoDefComm,
|
||||||
1300, 24, 70, 9.5);
|
1300, 24, 70, 9);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.NewTokyoVitaLife:
|
case Locations.NewTokyoVitaLife:
|
||||||
@ -744,7 +744,7 @@ displayLocationContent = function() {
|
|||||||
networkEngineerJob.style.display = "block";
|
networkEngineerJob.style.display = "block";
|
||||||
businessJob.style.display = "block";
|
businessJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.NewTokyoVitaLife,
|
setInfiltrateButton(infiltrate, Locations.NewTokyoVitaLife,
|
||||||
750, 18, 100, 9);
|
750, 18, 100, 8);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.NewTokyoGlobalPharmaceuticals:
|
case Locations.NewTokyoGlobalPharmaceuticals:
|
||||||
@ -758,7 +758,7 @@ displayLocationContent = function() {
|
|||||||
businessJob.style.display = "block";
|
businessJob.style.display = "block";
|
||||||
securityJob.style.display = "block";
|
securityJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.NewTokyoGlobalPharmaceuticals,
|
setInfiltrateButton(infiltrate, Locations.NewTokyoGlobalPharmaceuticals,
|
||||||
900, 20, 80, 9);
|
900, 20, 80, 8.5);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.NewTokyoNoodleBar:
|
case Locations.NewTokyoNoodleBar:
|
||||||
@ -797,7 +797,7 @@ displayLocationContent = function() {
|
|||||||
purchase256gb.style.display = "block";
|
purchase256gb.style.display = "block";
|
||||||
purchaseHomeRam.style.display = "block";
|
purchaseHomeRam.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.IshimaStormTechnologies,
|
setInfiltrateButton(infiltrate, Locations.IshimaStormTechnologies,
|
||||||
700, 20, 100, 10.5);
|
700, 20, 100, 10);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.IshimaNovaMedical:
|
case Locations.IshimaNovaMedical:
|
||||||
@ -810,7 +810,7 @@ displayLocationContent = function() {
|
|||||||
networkEngineerJob.style.display = "block";
|
networkEngineerJob.style.display = "block";
|
||||||
businessJob.style.display = "block";
|
businessJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.IshimaNovaMedical,
|
setInfiltrateButton(infiltrate, Locations.IshimaNovaMedical,
|
||||||
600, 16, 50, 8);
|
600, 16, 50, 7.5);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.IshimaOmegaSoftware:
|
case Locations.IshimaOmegaSoftware:
|
||||||
@ -828,7 +828,7 @@ displayLocationContent = function() {
|
|||||||
purchaseTor.style.display = "block";
|
purchaseTor.style.display = "block";
|
||||||
purchaseHomeRam.style.display = "block";
|
purchaseHomeRam.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.IshimaOmegaSoftware,
|
setInfiltrateButton(infiltrate, Locations.IshimaOmegaSoftware,
|
||||||
200, 5, 40, 4.5);
|
200, 5, 40, 4);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.VolhavenTravelAgency:
|
case Locations.VolhavenTravelAgency:
|
||||||
@ -861,7 +861,7 @@ displayLocationContent = function() {
|
|||||||
purchase512gb.style.display = "block";
|
purchase512gb.style.display = "block";
|
||||||
purchase1tb.style.display = "block";
|
purchase1tb.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.VolhavenOmniTekIncorporated,
|
setInfiltrateButton(infiltrate, Locations.VolhavenOmniTekIncorporated,
|
||||||
1500, 38, 100, 10);
|
1500, 38, 100, 9.5);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.VolhavenNWO:
|
case Locations.VolhavenNWO:
|
||||||
@ -874,7 +874,7 @@ displayLocationContent = function() {
|
|||||||
businessJob.style.display = "block";
|
businessJob.style.display = "block";
|
||||||
securityJob.style.display = "block";
|
securityJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.VolhavenNWO,
|
setInfiltrateButton(infiltrate, Locations.VolhavenNWO,
|
||||||
1800, 48, 200, 12);
|
1800, 48, 200, 11);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.VolhavenHeliosLabs:
|
case Locations.VolhavenHeliosLabs:
|
||||||
@ -886,7 +886,7 @@ displayLocationContent = function() {
|
|||||||
securityEngineerJob.style.display = "block";
|
securityEngineerJob.style.display = "block";
|
||||||
networkEngineerJob.style.display = "block";
|
networkEngineerJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.VolhavenHeliosLabs,
|
setInfiltrateButton(infiltrate, Locations.VolhavenHeliosLabs,
|
||||||
1200, 24, 75, 9.5);
|
1200, 24, 75, 9);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.VolhavenOmniaCybersystems:
|
case Locations.VolhavenOmniaCybersystems:
|
||||||
@ -898,7 +898,7 @@ displayLocationContent = function() {
|
|||||||
networkEngineerJob.style.display = "block";
|
networkEngineerJob.style.display = "block";
|
||||||
securityJob.style.display = "block";
|
securityJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.VolhavenOmniaCybersystems,
|
setInfiltrateButton(infiltrate, Locations.VolhavenOmniaCybersystems,
|
||||||
900, 24, 90, 10);
|
900, 24, 90, 9.5);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.VolhavenLexoCorp:
|
case Locations.VolhavenLexoCorp:
|
||||||
@ -912,7 +912,7 @@ displayLocationContent = function() {
|
|||||||
businessJob.style.display = "block";
|
businessJob.style.display = "block";
|
||||||
securityJob.style.display = "block";
|
securityJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.VolhavenLexoCorp,
|
setInfiltrateButton(infiltrate, Locations.VolhavenLexoCorp,
|
||||||
500, 10, 40, 6);
|
500, 10, 40, 5.5);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.VolhavenSysCoreSecurities:
|
case Locations.VolhavenSysCoreSecurities:
|
||||||
@ -923,7 +923,7 @@ displayLocationContent = function() {
|
|||||||
securityEngineerJob.style.display = "block";
|
securityEngineerJob.style.display = "block";
|
||||||
networkEngineerJob.style.display = "block";
|
networkEngineerJob.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.VolhavenSysCoreSecurities,
|
setInfiltrateButton(infiltrate, Locations.VolhavenSysCoreSecurities,
|
||||||
600, 12, 50, 7);
|
600, 12, 50, 6);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.VolhavenCompuTek:
|
case Locations.VolhavenCompuTek:
|
||||||
@ -944,7 +944,7 @@ displayLocationContent = function() {
|
|||||||
purchaseTor.style.display = "block";
|
purchaseTor.style.display = "block";
|
||||||
purchaseHomeRam.style.display = "block";
|
purchaseHomeRam.style.display = "block";
|
||||||
setInfiltrateButton(infiltrate, Locations.VolhavenCompuTek,
|
setInfiltrateButton(infiltrate, Locations.VolhavenCompuTek,
|
||||||
300, 8, 35, 6);
|
300, 8, 35, 5);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Locations.VolhavenMilleniumFitnessGym:
|
case Locations.VolhavenMilleniumFitnessGym:
|
||||||
|
@ -938,13 +938,13 @@ PlayerObject.prototype.startClass = function(costMult, expMult, className) {
|
|||||||
var gameCPS = 1000 / Engine._idleSpeed;
|
var gameCPS = 1000 / Engine._idleSpeed;
|
||||||
|
|
||||||
//Base exp gains per second
|
//Base exp gains per second
|
||||||
var baseStudyComputerScienceExp = 0.05;
|
var baseStudyComputerScienceExp = 0.25;
|
||||||
var baseDataStructuresExp = 0.2;
|
var baseDataStructuresExp = 0.5;
|
||||||
var baseNetworksExp = 0.8;
|
var baseNetworksExp = 1;
|
||||||
var baseAlgorithmsExp = 2.0;
|
var baseAlgorithmsExp = 2;
|
||||||
var baseManagementExp = 1.0;
|
var baseManagementExp = 1;
|
||||||
var baseLeadershipExp = 2.0;
|
var baseLeadershipExp = 2;
|
||||||
var baseGymExp = 1.0;
|
var baseGymExp = 1;
|
||||||
|
|
||||||
//Find cost and exp gain per game cycle
|
//Find cost and exp gain per game cycle
|
||||||
var cost = 0;
|
var cost = 0;
|
||||||
|
38
src/RedPill.js
Normal file
38
src/RedPill.js
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
/* RedPill.js
|
||||||
|
* Implements what happens when you have Red Pill augmentation and then hack the world daemon */
|
||||||
|
|
||||||
|
//Returns promise
|
||||||
|
function writeRedPillLine(line) {
|
||||||
|
return new Promise(function(resolve, reject) {
|
||||||
|
|
||||||
|
var container = document.getElementById("red-pill-container");
|
||||||
|
var pElem = document.createElement("p");
|
||||||
|
container.appendChild(pElem);
|
||||||
|
|
||||||
|
var promise = writeRedPillLetter(pElem, line, 0);
|
||||||
|
promise.then(function(res) {
|
||||||
|
resolve(res);
|
||||||
|
}, function(e) {
|
||||||
|
reject(e);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function writeRedPillLetter(pElem, line, i=0) {
|
||||||
|
return new Promise(function(resolve, reject) {
|
||||||
|
setTimeout(function() {
|
||||||
|
if (i >= line.length) {
|
||||||
|
resolve(true);
|
||||||
|
}
|
||||||
|
var textToShow = line.substring(0, i);
|
||||||
|
pElem.innerHTML = "> " + textToShow + "<span class='typed-cursor'> █ </span>";
|
||||||
|
var promise = writeRedPillLetter(pElem, line, i+1);
|
||||||
|
promise.then(function(res) {
|
||||||
|
resolve(res);
|
||||||
|
}, function(e) {
|
||||||
|
reject(e);
|
||||||
|
});
|
||||||
|
}, 50);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
@ -10,6 +10,7 @@ function BitburnerSaveObject() {
|
|||||||
this.FactionsSave = "";
|
this.FactionsSave = "";
|
||||||
this.SpecialServerIpsSave = "";
|
this.SpecialServerIpsSave = "";
|
||||||
this.AliasesSave = "";
|
this.AliasesSave = "";
|
||||||
|
this.GlobalAliasesSave = "";
|
||||||
this.MessagesSave = "";
|
this.MessagesSave = "";
|
||||||
this.StockMarketSave = "";
|
this.StockMarketSave = "";
|
||||||
this.VersionSave = "";
|
this.VersionSave = "";
|
||||||
@ -36,6 +37,7 @@ BitburnerSaveObject.prototype.saveGame = function() {
|
|||||||
this.FactionsSave = JSON.stringify(Factions);
|
this.FactionsSave = JSON.stringify(Factions);
|
||||||
this.SpecialServerIpsSave = JSON.stringify(SpecialServerIps);
|
this.SpecialServerIpsSave = JSON.stringify(SpecialServerIps);
|
||||||
this.AliasesSave = JSON.stringify(Aliases);
|
this.AliasesSave = JSON.stringify(Aliases);
|
||||||
|
this.GlobalAliasesSave = JSON.stringify(GlobalAliases);
|
||||||
this.MessagesSave = JSON.stringify(Messages);
|
this.MessagesSave = JSON.stringify(Messages);
|
||||||
this.StockMarketSave = JSON.stringify(StockMarket);
|
this.StockMarketSave = JSON.stringify(StockMarket);
|
||||||
this.VersionSave = JSON.stringify(CONSTANTS.Version);
|
this.VersionSave = JSON.stringify(CONSTANTS.Version);
|
||||||
@ -69,6 +71,15 @@ loadGame = function(saveObj) {
|
|||||||
} else {
|
} else {
|
||||||
Aliases = {};
|
Aliases = {};
|
||||||
}
|
}
|
||||||
|
if (saveObj.hasOwnProperty("GlobalAliasesSave")) {
|
||||||
|
try {
|
||||||
|
GlobalAliases = JSON.parse(saveObj.GlobalAliasesSave, Reviver);
|
||||||
|
} catch(e) {
|
||||||
|
GlobalAliases = {};
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
GlobalAliases = {};
|
||||||
|
}
|
||||||
if (saveObj.hasOwnProperty("MessagesSave")) {
|
if (saveObj.hasOwnProperty("MessagesSave")) {
|
||||||
try {
|
try {
|
||||||
Messages = JSON.parse(saveObj.MessagesSave, Reviver);
|
Messages = JSON.parse(saveObj.MessagesSave, Reviver);
|
||||||
@ -129,6 +140,7 @@ loadImportedGame = function(saveObj, saveString) {
|
|||||||
var tempSpecialServerIps = null;
|
var tempSpecialServerIps = null;
|
||||||
var tempAugmentations = null;
|
var tempAugmentations = null;
|
||||||
var tempAliases = null;
|
var tempAliases = null;
|
||||||
|
var tempGlobalAliases = null;
|
||||||
var tempMessages = null;
|
var tempMessages = null;
|
||||||
var tempStockMarket = null;
|
var tempStockMarket = null;
|
||||||
try {
|
try {
|
||||||
@ -151,6 +163,15 @@ loadImportedGame = function(saveObj, saveString) {
|
|||||||
} else {
|
} else {
|
||||||
tempAliases = {};
|
tempAliases = {};
|
||||||
}
|
}
|
||||||
|
if (tempSaveObj.hasOwnProperty("GlobalAliases")) {
|
||||||
|
try {
|
||||||
|
tempGlobalAliases = JSON.parse(tempSaveObj.AliasesSave, Reviver);
|
||||||
|
} catch(e) {
|
||||||
|
tempGlobalAliases = {};
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
tempGlobalAliases = {};
|
||||||
|
}
|
||||||
if (tempSaveObj.hasOwnProperty("MessagesSave")) {
|
if (tempSaveObj.hasOwnProperty("MessagesSave")) {
|
||||||
try {
|
try {
|
||||||
tempMessages = JSON.parse(tempSaveObj.MessagesSave, Reviver);
|
tempMessages = JSON.parse(tempSaveObj.MessagesSave, Reviver);
|
||||||
@ -215,6 +236,10 @@ loadImportedGame = function(saveObj, saveString) {
|
|||||||
Aliases = tempAliases;
|
Aliases = tempAliases;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (tempGlobalAliases) {
|
||||||
|
GlobalAliases = tempGlobalAliases;
|
||||||
|
}
|
||||||
|
|
||||||
if (tempMessages) {
|
if (tempMessages) {
|
||||||
Messages = tempMessages;
|
Messages = tempMessages;
|
||||||
}
|
}
|
||||||
@ -291,6 +316,7 @@ BitburnerSaveObject.prototype.exportGame = function() {
|
|||||||
this.SpecialServerIpsSave = JSON.stringify(SpecialServerIps);
|
this.SpecialServerIpsSave = JSON.stringify(SpecialServerIps);
|
||||||
this.AugmentationsSave = JSON.stringify(Augmentations);
|
this.AugmentationsSave = JSON.stringify(Augmentations);
|
||||||
this.AliasesSave = JSON.stringify(Aliases);
|
this.AliasesSave = JSON.stringify(Aliases);
|
||||||
|
this.GlobalAliasesSave = JSON.stringify(GlobalAliasesSave);
|
||||||
this.MessagesSave = JSON.stringify(Messages);
|
this.MessagesSave = JSON.stringify(Messages);
|
||||||
this.VersionSave = JSON.stringify(CONSTANTS.Version);
|
this.VersionSave = JSON.stringify(CONSTANTS.Version);
|
||||||
|
|
||||||
|
@ -141,62 +141,62 @@ initForeignServers = function() {
|
|||||||
//MegaCorporations
|
//MegaCorporations
|
||||||
var ECorpServer = new Server();
|
var ECorpServer = new Server();
|
||||||
ECorpServer.init(createRandomIp(), "ecorp", "ECorp", true, false, false, false, 0);
|
ECorpServer.init(createRandomIp(), "ecorp", "ECorp", true, false, false, false, 0);
|
||||||
ECorpServer.setHackingParameters(getRandomInt(900, 950), 100000000000, 99, 99);
|
ECorpServer.setHackingParameters(getRandomInt(900, 950), 90000000000, 99, 99);
|
||||||
ECorpServer.setPortProperties(5);
|
ECorpServer.setPortProperties(5);
|
||||||
AddToAllServers(ECorpServer);
|
AddToAllServers(ECorpServer);
|
||||||
|
|
||||||
var MegaCorpServer = new Server();
|
var MegaCorpServer = new Server();
|
||||||
MegaCorpServer.init(createRandomIp(), "megacorp", "MegaCorp", true, false, false, false, 0);
|
MegaCorpServer.init(createRandomIp(), "megacorp", "MegaCorp", true, false, false, false, 0);
|
||||||
MegaCorpServer.setHackingParameters(getRandomInt(900, 950), 80000000000, 99, 99);
|
MegaCorpServer.setHackingParameters(getRandomInt(900, 950), 75000000000, 99, 99);
|
||||||
MegaCorpServer.setPortProperties(5);
|
MegaCorpServer.setPortProperties(5);
|
||||||
AddToAllServers(MegaCorpServer);
|
AddToAllServers(MegaCorpServer);
|
||||||
|
|
||||||
var BachmanAndAssociatesServer = new Server();
|
var BachmanAndAssociatesServer = new Server();
|
||||||
BachmanAndAssociatesServer.init(createRandomIp(), "b-and-a", "Bachman & Associates", true, false, false, false, 0);
|
BachmanAndAssociatesServer.init(createRandomIp(), "b-and-a", "Bachman & Associates", true, false, false, false, 0);
|
||||||
BachmanAndAssociatesServer.setHackingParameters(getRandomInt(875, 925), 32000000000, getRandomInt(75, 85), getRandomInt(65, 75));
|
BachmanAndAssociatesServer.setHackingParameters(getRandomInt(875, 925), 30000000000, getRandomInt(75, 85), getRandomInt(65, 75));
|
||||||
BachmanAndAssociatesServer.setPortProperties(5);
|
BachmanAndAssociatesServer.setPortProperties(5);
|
||||||
AddToAllServers(BachmanAndAssociatesServer);
|
AddToAllServers(BachmanAndAssociatesServer);
|
||||||
|
|
||||||
var BladeIndustriesServer = new Server();
|
var BladeIndustriesServer = new Server();
|
||||||
BladeIndustriesServer.init(createRandomIp(), "blade", "Blade Industries", true, false, false, false, 0);
|
BladeIndustriesServer.init(createRandomIp(), "blade", "Blade Industries", true, false, false, false, 0);
|
||||||
BladeIndustriesServer.setHackingParameters(getRandomInt(875, 925), 20000000000, getRandomInt(90, 95), getRandomInt(60, 75));
|
BladeIndustriesServer.setHackingParameters(getRandomInt(875, 925), 18000000000, getRandomInt(90, 95), getRandomInt(60, 75));
|
||||||
BladeIndustriesServer.setPortProperties(5);
|
BladeIndustriesServer.setPortProperties(5);
|
||||||
AddToAllServers(BladeIndustriesServer);
|
AddToAllServers(BladeIndustriesServer);
|
||||||
|
|
||||||
var NWOServer = new Server();
|
var NWOServer = new Server();
|
||||||
NWOServer.init(createRandomIp(), "nwo", "New World Order", true, false, false, false, 0);
|
NWOServer.init(createRandomIp(), "nwo", "New World Order", true, false, false, false, 0);
|
||||||
NWOServer.setHackingParameters(getRandomInt(900, 920), 40000000000, 99, getRandomInt(75, 85));
|
NWOServer.setHackingParameters(getRandomInt(900, 920), 36000000000, 99, getRandomInt(75, 85));
|
||||||
NWOServer.setPortProperties(5);
|
NWOServer.setPortProperties(5);
|
||||||
AddToAllServers(NWOServer);
|
AddToAllServers(NWOServer);
|
||||||
|
|
||||||
var ClarkeIncorporatedServer = new Server();
|
var ClarkeIncorporatedServer = new Server();
|
||||||
ClarkeIncorporatedServer.init(createRandomIp(), "clarkeinc", "Clarke Incorporated", true, false, false, false, 0);
|
ClarkeIncorporatedServer.init(createRandomIp(), "clarkeinc", "Clarke Incorporated", true, false, false, false, 0);
|
||||||
ClarkeIncorporatedServer.setHackingParameters(getRandomInt(875, 950), 15000000000, getRandomInt(50, 60), getRandomInt(50, 70));
|
ClarkeIncorporatedServer.setHackingParameters(getRandomInt(875, 950), 13000000000, getRandomInt(50, 60), getRandomInt(50, 70));
|
||||||
ClarkeIncorporatedServer.setPortProperties(5);
|
ClarkeIncorporatedServer.setPortProperties(5);
|
||||||
AddToAllServers(ClarkeIncorporatedServer);
|
AddToAllServers(ClarkeIncorporatedServer);
|
||||||
|
|
||||||
var OmniTekIncorporatedServer = new Server();
|
var OmniTekIncorporatedServer = new Server();
|
||||||
OmniTekIncorporatedServer.init(createRandomIp(), "omnitek", "OmniTek Incorporated", true, false, false, false, 0);
|
OmniTekIncorporatedServer.init(createRandomIp(), "omnitek", "OmniTek Incorporated", true, false, false, false, 0);
|
||||||
OmniTekIncorporatedServer.setHackingParameters(getRandomInt(870, 930), 50000000000, getRandomInt(90, 99), getRandomInt(95, 99));
|
OmniTekIncorporatedServer.setHackingParameters(getRandomInt(870, 930), 45000000000, getRandomInt(90, 99), getRandomInt(95, 99));
|
||||||
OmniTekIncorporatedServer.setPortProperties(5);
|
OmniTekIncorporatedServer.setPortProperties(5);
|
||||||
AddToAllServers(OmniTekIncorporatedServer);
|
AddToAllServers(OmniTekIncorporatedServer);
|
||||||
|
|
||||||
var FourSigmaServer = new Server();
|
var FourSigmaServer = new Server();
|
||||||
FourSigmaServer.init(createRandomIp(), "4sigma", "FourSigma", true, false, false, false, 0);
|
FourSigmaServer.init(createRandomIp(), "4sigma", "FourSigma", true, false, false, false, 0);
|
||||||
FourSigmaServer.setHackingParameters(getRandomInt(875, 925), 25000000000, getRandomInt(60, 70), getRandomInt(75, 85));
|
FourSigmaServer.setHackingParameters(getRandomInt(875, 925), 24000000000, getRandomInt(60, 70), getRandomInt(75, 99));
|
||||||
FourSigmaServer.setPortProperties(5);
|
FourSigmaServer.setPortProperties(5);
|
||||||
AddToAllServers(FourSigmaServer);
|
AddToAllServers(FourSigmaServer);
|
||||||
|
|
||||||
var KuaiGongInternationalServer = new Server();
|
var KuaiGongInternationalServer = new Server();
|
||||||
KuaiGongInternationalServer.init(createRandomIp(), "kuai-gong", "KuaiGong International", true, false, false, false, 0);
|
KuaiGongInternationalServer.init(createRandomIp(), "kuai-gong", "KuaiGong International", true, false, false, false, 0);
|
||||||
KuaiGongInternationalServer.setHackingParameters(getRandomInt(900, 950), 75000000000, getRandomInt(95, 99), getRandomInt(90, 99));
|
KuaiGongInternationalServer.setHackingParameters(getRandomInt(900, 950), 70000000000, getRandomInt(95, 99), getRandomInt(90, 99));
|
||||||
KuaiGongInternationalServer.setPortProperties(5);
|
KuaiGongInternationalServer.setPortProperties(5);
|
||||||
AddToAllServers(KuaiGongInternationalServer);
|
AddToAllServers(KuaiGongInternationalServer);
|
||||||
|
|
||||||
//Technology and communications companies (large targets)
|
//Technology and communications companies (large targets)
|
||||||
var FulcrumTechnologiesServer = new Server();
|
var FulcrumTechnologiesServer = new Server();
|
||||||
FulcrumTechnologiesServer.init(createRandomIp(), "fulcrumtech", "Fulcrum Technologies", true, false, false, false, 64);
|
FulcrumTechnologiesServer.init(createRandomIp(), "fulcrumtech", "Fulcrum Technologies", true, false, false, false, 64);
|
||||||
FulcrumTechnologiesServer.setHackingParameters(getRandomInt(900, 1000), 2000000000, getRandomInt(85, 95), getRandomInt(80, 99));
|
FulcrumTechnologiesServer.setHackingParameters(getRandomInt(900, 1000), 1500000000, getRandomInt(85, 95), getRandomInt(80, 99));
|
||||||
FulcrumTechnologiesServer.setPortProperties(5);
|
FulcrumTechnologiesServer.setPortProperties(5);
|
||||||
AddToAllServers(FulcrumTechnologiesServer);
|
AddToAllServers(FulcrumTechnologiesServer);
|
||||||
|
|
||||||
@ -209,148 +209,148 @@ initForeignServers = function() {
|
|||||||
|
|
||||||
var StormTechnologiesServer = new Server();
|
var StormTechnologiesServer = new Server();
|
||||||
StormTechnologiesServer.init(createRandomIp(), "stormtech", "Storm Technologies", true, false, false, false, 0);
|
StormTechnologiesServer.init(createRandomIp(), "stormtech", "Storm Technologies", true, false, false, false, 0);
|
||||||
StormTechnologiesServer.setHackingParameters(getRandomInt(825, 875), 1500000000, getRandomInt(80, 90), getRandomInt(70, 90));
|
StormTechnologiesServer.setHackingParameters(getRandomInt(825, 875), 1300000000, getRandomInt(80, 90), getRandomInt(70, 90));
|
||||||
StormTechnologiesServer.setPortProperties(5);
|
StormTechnologiesServer.setPortProperties(5);
|
||||||
AddToAllServers(StormTechnologiesServer);
|
AddToAllServers(StormTechnologiesServer);
|
||||||
|
|
||||||
var DefCommServer = new Server();
|
var DefCommServer = new Server();
|
||||||
DefCommServer.init(createRandomIp(), "defcomm", "DefComm", true, false, false, false, 0);
|
DefCommServer.init(createRandomIp(), "defcomm", "DefComm", true, false, false, false, 0);
|
||||||
DefCommServer.setHackingParameters(getRandomInt(800, 850), 900000000, getRandomInt(85, 95), getRandomInt(50, 70));
|
DefCommServer.setHackingParameters(getRandomInt(800, 850), 850000000, getRandomInt(85, 95), getRandomInt(50, 70));
|
||||||
DefCommServer.setPortProperties(5);
|
DefCommServer.setPortProperties(5);
|
||||||
AddToAllServers(DefCommServer);
|
AddToAllServers(DefCommServer);
|
||||||
|
|
||||||
var InfoCommServer = new Server();
|
var InfoCommServer = new Server();
|
||||||
InfoCommServer.init(createRandomIp(), "infocomm", "InfoComm", true, false, false, false, 0);
|
InfoCommServer.init(createRandomIp(), "infocomm", "InfoComm", true, false, false, false, 0);
|
||||||
InfoCommServer.setHackingParameters(getRandomInt(800, 850), 750000000, getRandomInt(70, 90), getRandomInt(35, 75));
|
InfoCommServer.setHackingParameters(getRandomInt(800, 850), 700000000, getRandomInt(70, 90), getRandomInt(35, 75));
|
||||||
InfoCommServer.setPortProperties(5);
|
InfoCommServer.setPortProperties(5);
|
||||||
AddToAllServers(InfoCommServer);
|
AddToAllServers(InfoCommServer);
|
||||||
|
|
||||||
var HeliosLabsServer = new Server();
|
var HeliosLabsServer = new Server();
|
||||||
HeliosLabsServer.init(createRandomIp(), "helios", "Helios Labs", true, false, false, false, 0);
|
HeliosLabsServer.init(createRandomIp(), "helios", "Helios Labs", true, false, false, false, 0);
|
||||||
HeliosLabsServer.setHackingParameters(getRandomInt(775, 825), 500000000, getRandomInt(85, 95), getRandomInt(70, 80));
|
HeliosLabsServer.setHackingParameters(getRandomInt(775, 825), 450000000, getRandomInt(85, 95), getRandomInt(70, 80));
|
||||||
HeliosLabsServer.setPortProperties(5);
|
HeliosLabsServer.setPortProperties(5);
|
||||||
AddToAllServers(HeliosLabsServer);
|
AddToAllServers(HeliosLabsServer);
|
||||||
|
|
||||||
var VitaLifeServer = new Server();
|
var VitaLifeServer = new Server();
|
||||||
VitaLifeServer.init(createRandomIp(), "vitalife", "VitaLife", true, false, false, false, 32);
|
VitaLifeServer.init(createRandomIp(), "vitalife", "VitaLife", true, false, false, false, 32);
|
||||||
VitaLifeServer.setHackingParameters(getRandomInt(750, 800), 800000000, getRandomInt(80, 90), getRandomInt(60, 80));
|
VitaLifeServer.setHackingParameters(getRandomInt(750, 800), 720000000, getRandomInt(80, 90), getRandomInt(60, 80));
|
||||||
VitaLifeServer.setPortProperties(5);
|
VitaLifeServer.setPortProperties(5);
|
||||||
AddToAllServers(VitaLifeServer);
|
AddToAllServers(VitaLifeServer);
|
||||||
|
|
||||||
var IcarusMicrosystemsServer = new Server();
|
var IcarusMicrosystemsServer = new Server();
|
||||||
IcarusMicrosystemsServer.init(createRandomIp(), "icarus", "Icarus Microsystems", true, false, false, false, 0);
|
IcarusMicrosystemsServer.init(createRandomIp(), "icarus", "Icarus Microsystems", true, false, false, false, 0);
|
||||||
IcarusMicrosystemsServer.setHackingParameters(getRandomInt(800, 820), 1100000000, getRandomInt(85, 95), getRandomInt(85, 95));
|
IcarusMicrosystemsServer.setHackingParameters(getRandomInt(800, 820), 1000000000, getRandomInt(85, 95), getRandomInt(85, 95));
|
||||||
IcarusMicrosystemsServer.setPortProperties(5);
|
IcarusMicrosystemsServer.setPortProperties(5);
|
||||||
AddToAllServers(IcarusMicrosystemsServer);
|
AddToAllServers(IcarusMicrosystemsServer);
|
||||||
|
|
||||||
var UniversalEnergyServer = new Server();
|
var UniversalEnergyServer = new Server();
|
||||||
UniversalEnergyServer.init(createRandomIp(), "univ-energy", "Universal Energy", true, false, false, false, 32);
|
UniversalEnergyServer.init(createRandomIp(), "univ-energy", "Universal Energy", true, false, false, false, 32);
|
||||||
UniversalEnergyServer.setHackingParameters(getRandomInt(780, 800), 1500000000, getRandomInt(80, 90), getRandomInt(80, 90));
|
UniversalEnergyServer.setHackingParameters(getRandomInt(780, 800), 1300000000, getRandomInt(80, 90), getRandomInt(80, 90));
|
||||||
UniversalEnergyServer.setPortProperties(4);
|
UniversalEnergyServer.setPortProperties(4);
|
||||||
AddToAllServers(UniversalEnergyServer);
|
AddToAllServers(UniversalEnergyServer);
|
||||||
|
|
||||||
var TitanLabsServer = new Server();
|
var TitanLabsServer = new Server();
|
||||||
TitanLabsServer.init(createRandomIp(), "titan-labs", "Titan Laboratories", true, false, false, false, 32);
|
TitanLabsServer.init(createRandomIp(), "titan-labs", "Titan Laboratories", true, false, false, false, 32);
|
||||||
TitanLabsServer.setHackingParameters(getRandomInt(790, 800), 1000000000, getRandomInt(70, 80), getRandomInt(60, 80));
|
TitanLabsServer.setHackingParameters(getRandomInt(790, 800), 900000000, getRandomInt(70, 80), getRandomInt(60, 80));
|
||||||
TitanLabsServer.setPortProperties(5);
|
TitanLabsServer.setPortProperties(5);
|
||||||
AddToAllServers(TitanLabsServer);
|
AddToAllServers(TitanLabsServer);
|
||||||
|
|
||||||
var MicrodyneTechnologiesServer = new Server();
|
var MicrodyneTechnologiesServer = new Server();
|
||||||
MicrodyneTechnologiesServer.init(createRandomIp(), "microdyne", "Microdyne Technologies", true, false, false, false, 16);
|
MicrodyneTechnologiesServer.init(createRandomIp(), "microdyne", "Microdyne Technologies", true, false, false, false, 16);
|
||||||
MicrodyneTechnologiesServer.setHackingParameters(getRandomInt(780, 820), 900000000, getRandomInt(65, 75), getRandomInt(70, 90));
|
MicrodyneTechnologiesServer.setHackingParameters(getRandomInt(780, 820), 750000000, getRandomInt(65, 75), getRandomInt(70, 90));
|
||||||
MicrodyneTechnologiesServer.setPortProperties(5);
|
MicrodyneTechnologiesServer.setPortProperties(5);
|
||||||
AddToAllServers(MicrodyneTechnologiesServer);
|
AddToAllServers(MicrodyneTechnologiesServer);
|
||||||
|
|
||||||
var TaiYangDigitalServer = new Server();
|
var TaiYangDigitalServer = new Server();
|
||||||
TaiYangDigitalServer.init(createRandomIp(), "taiyang-digital", "Taiyang Digital", true, false, false, false, 0);
|
TaiYangDigitalServer.init(createRandomIp(), "taiyang-digital", "Taiyang Digital", true, false, false, false, 0);
|
||||||
TaiYangDigitalServer.setHackingParameters(getRandomInt(800, 900), 1100000000, getRandomInt(70, 80), getRandomInt(70, 80));
|
TaiYangDigitalServer.setHackingParameters(getRandomInt(800, 900), 1000000000, getRandomInt(70, 80), getRandomInt(70, 80));
|
||||||
TaiYangDigitalServer.setPortProperties(5);
|
TaiYangDigitalServer.setPortProperties(5);
|
||||||
AddToAllServers(TaiYangDigitalServer);
|
AddToAllServers(TaiYangDigitalServer);
|
||||||
|
|
||||||
var GalacticCyberSystemsServer = new Server();
|
var GalacticCyberSystemsServer = new Server();
|
||||||
GalacticCyberSystemsServer.init(createRandomIp(), "galactic-cyber", "Galactic Cybersystems", true, false, false, false, 0);
|
GalacticCyberSystemsServer.init(createRandomIp(), "galactic-cyber", "Galactic Cybersystems", true, false, false, false, 0);
|
||||||
GalacticCyberSystemsServer.setHackingParameters(getRandomInt(800, 850), 500000000, getRandomInt(55, 65), getRandomInt(70, 90));
|
GalacticCyberSystemsServer.setHackingParameters(getRandomInt(800, 850), 450000000, getRandomInt(55, 65), getRandomInt(70, 90));
|
||||||
GalacticCyberSystemsServer.setPortProperties(5);
|
GalacticCyberSystemsServer.setPortProperties(5);
|
||||||
AddToAllServers(GalacticCyberSystemsServer);
|
AddToAllServers(GalacticCyberSystemsServer);
|
||||||
|
|
||||||
//Defense Companies ("Large" Companies)
|
//Defense Companies ("Large" Companies)
|
||||||
var AeroCorpServer = new Server();
|
var AeroCorpServer = new Server();
|
||||||
AeroCorpServer.init(createRandomIp(), "aerocorp", "AeroCorp", true, false, false, false, 0);
|
AeroCorpServer.init(createRandomIp(), "aerocorp", "AeroCorp", true, false, false, false, 0);
|
||||||
AeroCorpServer.setHackingParameters(getRandomInt(825, 875), 1500000000, getRandomInt(80, 90), getRandomInt(55, 65));
|
AeroCorpServer.setHackingParameters(getRandomInt(825, 875), 1300000000, getRandomInt(80, 90), getRandomInt(55, 65));
|
||||||
AeroCorpServer.setPortProperties(5);
|
AeroCorpServer.setPortProperties(5);
|
||||||
AddToAllServers(AeroCorpServer);
|
AddToAllServers(AeroCorpServer);
|
||||||
|
|
||||||
var OmniaCybersystemsServer = new Server();
|
var OmniaCybersystemsServer = new Server();
|
||||||
OmniaCybersystemsServer.init(createRandomIp(), "omnia", "Omnia Cybersystems", true, false, false, false, 0);
|
OmniaCybersystemsServer.init(createRandomIp(), "omnia", "Omnia Cybersystems", true, false, false, false, 0);
|
||||||
OmniaCybersystemsServer.setHackingParameters(getRandomInt(800, 850), 1200000000, getRandomInt(85, 95), getRandomInt(60, 70));
|
OmniaCybersystemsServer.setHackingParameters(getRandomInt(800, 850), 1100000000, getRandomInt(85, 95), getRandomInt(60, 70));
|
||||||
OmniaCybersystemsServer.setPortProperties(5);
|
OmniaCybersystemsServer.setPortProperties(5);
|
||||||
AddToAllServers(OmniaCybersystemsServer);
|
AddToAllServers(OmniaCybersystemsServer);
|
||||||
|
|
||||||
var ZBDefenseServer = new Server();
|
var ZBDefenseServer = new Server();
|
||||||
ZBDefenseServer.init(createRandomIp(), "zb-def", "ZB Defense Industries", true, false, false, false, 0);
|
ZBDefenseServer.init(createRandomIp(), "zb-def", "ZB Defense Industries", true, false, false, false, 0);
|
||||||
ZBDefenseServer.setHackingParameters(getRandomInt(775, 825), 1000000000, getRandomInt(55, 65), getRandomInt(65, 75));
|
ZBDefenseServer.setHackingParameters(getRandomInt(775, 825), 900000000, getRandomInt(55, 65), getRandomInt(65, 75));
|
||||||
ZBDefenseServer.setPortProperties(4);
|
ZBDefenseServer.setPortProperties(4);
|
||||||
AddToAllServers(ZBDefenseServer);
|
AddToAllServers(ZBDefenseServer);
|
||||||
|
|
||||||
var AppliedEnergeticsServer = new Server();
|
var AppliedEnergeticsServer = new Server();
|
||||||
AppliedEnergeticsServer.init(createRandomIp(), "applied-energetics", "Applied Energetics", true, false, false, false, 0);
|
AppliedEnergeticsServer.init(createRandomIp(), "applied-energetics", "Applied Energetics", true, false, false, false, 0);
|
||||||
AppliedEnergeticsServer.setHackingParameters(getRandomInt(750, 800), 1200000000, getRandomInt(60, 80), getRandomInt(70, 75));
|
AppliedEnergeticsServer.setHackingParameters(getRandomInt(750, 800), 1100000000, getRandomInt(60, 80), getRandomInt(70, 75));
|
||||||
AppliedEnergeticsServer.setPortProperties(4);
|
AppliedEnergeticsServer.setPortProperties(4);
|
||||||
AddToAllServers(AppliedEnergeticsServer);
|
AddToAllServers(AppliedEnergeticsServer);
|
||||||
|
|
||||||
var SolarisSpaceSystemsServer = new Server();
|
var SolarisSpaceSystemsServer = new Server();
|
||||||
SolarisSpaceSystemsServer.init(createRandomIp(), "solaris", "Solaris Space Systems", true, false, false, false, 0);
|
SolarisSpaceSystemsServer.init(createRandomIp(), "solaris", "Solaris Space Systems", true, false, false, false, 0);
|
||||||
SolarisSpaceSystemsServer.setHackingParameters(getRandomInt(790, 810), 900000000, getRandomInt(70, 80), getRandomInt(70, 80));
|
SolarisSpaceSystemsServer.setHackingParameters(getRandomInt(790, 810), 800000000, getRandomInt(70, 80), getRandomInt(70, 80));
|
||||||
SolarisSpaceSystemsServer.setPortProperties(5);
|
SolarisSpaceSystemsServer.setPortProperties(5);
|
||||||
AddToAllServers(SolarisSpaceSystemsServer);
|
AddToAllServers(SolarisSpaceSystemsServer);
|
||||||
|
|
||||||
var DeltaOneServer = new Server();
|
var DeltaOneServer = new Server();
|
||||||
DeltaOneServer.init(createRandomIp(), "deltaone", "Delta One", true, false, false, false, 0);
|
DeltaOneServer.init(createRandomIp(), "deltaone", "Delta One", true, false, false, false, 0);
|
||||||
DeltaOneServer.setHackingParameters(getRandomInt(800, 820), 1500000000, getRandomInt(75, 85), getRandomInt(50, 70));
|
DeltaOneServer.setHackingParameters(getRandomInt(800, 820), 1400000000, getRandomInt(75, 85), getRandomInt(50, 70));
|
||||||
DeltaOneServer.setPortProperties(5);
|
DeltaOneServer.setPortProperties(5);
|
||||||
AddToAllServers(DeltaOneServer);
|
AddToAllServers(DeltaOneServer);
|
||||||
|
|
||||||
//Health, medicine, pharmaceutical companies ("Large" targets)
|
//Health, medicine, pharmaceutical companies ("Large" targets)
|
||||||
var GlobalPharmaceuticalsServer = new Server();
|
var GlobalPharmaceuticalsServer = new Server();
|
||||||
GlobalPharmaceuticalsServer.init(createRandomIp(), "global-pharm", "Global Pharmaceuticals", true, false, false, false, 16);
|
GlobalPharmaceuticalsServer.init(createRandomIp(), "global-pharm", "Global Pharmaceuticals", true, false, false, false, 16);
|
||||||
GlobalPharmaceuticalsServer.setHackingParameters(getRandomInt(750, 800), 2000000000, getRandomInt(75, 85), getRandomInt(80, 90));
|
GlobalPharmaceuticalsServer.setHackingParameters(getRandomInt(750, 800), 1800000000, getRandomInt(75, 85), getRandomInt(80, 90));
|
||||||
GlobalPharmaceuticalsServer.setPortProperties(4);
|
GlobalPharmaceuticalsServer.setPortProperties(4);
|
||||||
AddToAllServers(GlobalPharmaceuticalsServer);
|
AddToAllServers(GlobalPharmaceuticalsServer);
|
||||||
|
|
||||||
var NovaMedicalServer = new Server();
|
var NovaMedicalServer = new Server();
|
||||||
NovaMedicalServer.init(createRandomIp(), "nova-med", "Nova Medical", true, false, false, false, 0);
|
NovaMedicalServer.init(createRandomIp(), "nova-med", "Nova Medical", true, false, false, false, 0);
|
||||||
NovaMedicalServer.setHackingParameters(getRandomInt(775, 825), 1500000000, getRandomInt(60, 80), getRandomInt(65, 85));
|
NovaMedicalServer.setHackingParameters(getRandomInt(775, 825), 1350000000, getRandomInt(60, 80), getRandomInt(65, 85));
|
||||||
NovaMedicalServer.setPortProperties(4);
|
NovaMedicalServer.setPortProperties(4);
|
||||||
AddToAllServers(NovaMedicalServer);
|
AddToAllServers(NovaMedicalServer);
|
||||||
|
|
||||||
var ZeusMedicalServer = new Server();
|
var ZeusMedicalServer = new Server();
|
||||||
ZeusMedicalServer.init(createRandomIp(), "zeud-med", "Zeus Medical", true, false, false, false, 0);
|
ZeusMedicalServer.init(createRandomIp(), "zeud-med", "Zeus Medical", true, false, false, false, 0);
|
||||||
ZeusMedicalServer.setHackingParameters(getRandomInt(800, 825), 1750000000, getRandomInt(70, 90), getRandomInt(70, 80));
|
ZeusMedicalServer.setHackingParameters(getRandomInt(800, 825), 1600000000, getRandomInt(70, 90), getRandomInt(70, 80));
|
||||||
ZeusMedicalServer.setPortProperties(5);
|
ZeusMedicalServer.setPortProperties(5);
|
||||||
AddToAllServers(ZeusMedicalServer);
|
AddToAllServers(ZeusMedicalServer);
|
||||||
|
|
||||||
var UnitaLifeGroupServer = new Server();
|
var UnitaLifeGroupServer = new Server();
|
||||||
UnitaLifeGroupServer.init(createRandomIp(), "unitalife", "UnitaLife Group", true, false, false, false, 32);
|
UnitaLifeGroupServer.init(createRandomIp(), "unitalife", "UnitaLife Group", true, false, false, false, 32);
|
||||||
UnitaLifeGroupServer.setHackingParameters(getRandomInt(780, 800), 1400000000, getRandomInt(70, 80), getRandomInt(70, 80));
|
UnitaLifeGroupServer.setHackingParameters(getRandomInt(780, 800), 1200000000, getRandomInt(70, 80), getRandomInt(70, 80));
|
||||||
UnitaLifeGroupServer.setPortProperties(4);
|
UnitaLifeGroupServer.setPortProperties(4);
|
||||||
AddToAllServers(UnitaLifeGroupServer);
|
AddToAllServers(UnitaLifeGroupServer);
|
||||||
|
|
||||||
//"Medium level" targets
|
//"Medium level" targets
|
||||||
var LexoCorpServer = new Server();
|
var LexoCorpServer = new Server();
|
||||||
LexoCorpServer.init(createRandomIp(), "lexo-corp", "Lexo Corporation", true, false, false, false, 16);
|
LexoCorpServer.init(createRandomIp(), "lexo-corp", "Lexo Corporation", true, false, false, false, 16);
|
||||||
LexoCorpServer.setHackingParameters(getRandomInt(680, 720), 1000000000, getRandomInt(60, 80), getRandomInt(55, 65));
|
LexoCorpServer.setHackingParameters(getRandomInt(680, 720), 800000000, getRandomInt(60, 80), getRandomInt(55, 65));
|
||||||
LexoCorpServer.setPortProperties(4);
|
LexoCorpServer.setPortProperties(4);
|
||||||
AddToAllServers(LexoCorpServer);
|
AddToAllServers(LexoCorpServer);
|
||||||
|
|
||||||
var RhoConstructionServer = new Server();
|
var RhoConstructionServer = new Server();
|
||||||
RhoConstructionServer.init(createRandomIp(), "rho-construction", "Rho Construction", true, false, false, false, 0);
|
RhoConstructionServer.init(createRandomIp(), "rho-construction", "Rho Construction", true, false, false, false, 0);
|
||||||
RhoConstructionServer.setHackingParameters(getRandomInt(480, 520), 750000000, getRandomInt(40, 60), getRandomInt(40, 60));
|
RhoConstructionServer.setHackingParameters(getRandomInt(480, 520), 700000000, getRandomInt(40, 60), getRandomInt(40, 60));
|
||||||
RhoConstructionServer.setPortProperties(3);
|
RhoConstructionServer.setPortProperties(3);
|
||||||
AddToAllServers(RhoConstructionServer);
|
AddToAllServers(RhoConstructionServer);
|
||||||
|
|
||||||
var AlphaEnterprisesServer = new Server();
|
var AlphaEnterprisesServer = new Server();
|
||||||
AlphaEnterprisesServer.init(createRandomIp(), "alpha-ent", "Alpha Enterprises", true, false, false, false, 0);
|
AlphaEnterprisesServer.init(createRandomIp(), "alpha-ent", "Alpha Enterprises", true, false, false, false, 0);
|
||||||
AlphaEnterprisesServer.setHackingParameters(getRandomInt(500, 600), 800000000, getRandomInt(50, 70), getRandomInt(50, 60));
|
AlphaEnterprisesServer.setHackingParameters(getRandomInt(500, 600), 750000000, getRandomInt(50, 70), getRandomInt(50, 60));
|
||||||
AlphaEnterprisesServer.setPortProperties(4);
|
AlphaEnterprisesServer.setPortProperties(4);
|
||||||
AddToAllServers(AlphaEnterprisesServer);
|
AddToAllServers(AlphaEnterprisesServer);
|
||||||
|
|
||||||
@ -363,7 +363,7 @@ initForeignServers = function() {
|
|||||||
|
|
||||||
var RothmanUniversityServer = new Server();
|
var RothmanUniversityServer = new Server();
|
||||||
RothmanUniversityServer.init(createRandomIp(), "rothman-uni", "Rothman University Network", true, false, false, false, 4);
|
RothmanUniversityServer.init(createRandomIp(), "rothman-uni", "Rothman University Network", true, false, false, false, 4);
|
||||||
RothmanUniversityServer.setHackingParameters(getRandomInt(370, 430), 250000000, getRandomInt(45, 55), getRandomInt(35, 45));
|
RothmanUniversityServer.setHackingParameters(getRandomInt(370, 430), 200000000, getRandomInt(45, 55), getRandomInt(35, 45));
|
||||||
RothmanUniversityServer.setPortProperties(3);
|
RothmanUniversityServer.setPortProperties(3);
|
||||||
AddToAllServers(RothmanUniversityServer);
|
AddToAllServers(RothmanUniversityServer);
|
||||||
|
|
||||||
@ -375,43 +375,43 @@ initForeignServers = function() {
|
|||||||
|
|
||||||
var SummitUniversityServer = new Server();
|
var SummitUniversityServer = new Server();
|
||||||
SummitUniversityServer.init(createRandomIp(), "summit-uni", "Summit University Network", true, false, false, false, 4);
|
SummitUniversityServer.init(createRandomIp(), "summit-uni", "Summit University Network", true, false, false, false, 4);
|
||||||
SummitUniversityServer.setHackingParameters(getRandomInt(425, 475), 200000000, getRandomInt(45, 65), getRandomInt(40, 60));
|
SummitUniversityServer.setHackingParameters(getRandomInt(425, 475), 160000000, getRandomInt(45, 65), getRandomInt(40, 60));
|
||||||
SummitUniversityServer.setPortProperties(3);
|
SummitUniversityServer.setPortProperties(3);
|
||||||
AddToAllServers(SummitUniversityServer);
|
AddToAllServers(SummitUniversityServer);
|
||||||
|
|
||||||
var SysCoreSecuritiesServer = new Server();
|
var SysCoreSecuritiesServer = new Server();
|
||||||
SysCoreSecuritiesServer.init(createRandomIp(), "syscore", "SysCore Securities", true, false, false, false, 0);
|
SysCoreSecuritiesServer.init(createRandomIp(), "syscore", "SysCore Securities", true, false, false, false, 0);
|
||||||
SysCoreSecuritiesServer.setHackingParameters(getRandomInt(550, 650), 600000000, getRandomInt(60, 80), getRandomInt(60, 70));
|
SysCoreSecuritiesServer.setHackingParameters(getRandomInt(550, 650), 500000000, getRandomInt(60, 80), getRandomInt(60, 70));
|
||||||
SysCoreSecuritiesServer.setPortProperties(4);
|
SysCoreSecuritiesServer.setPortProperties(4);
|
||||||
AddToAllServers(SysCoreSecuritiesServer);
|
AddToAllServers(SysCoreSecuritiesServer);
|
||||||
|
|
||||||
var CatalystVenturesServer = new Server();
|
var CatalystVenturesServer = new Server();
|
||||||
CatalystVenturesServer.init(createRandomIp(), "catalyst", "Catalyst Ventures", true, false, false, false, 0);
|
CatalystVenturesServer.init(createRandomIp(), "catalyst", "Catalyst Ventures", true, false, false, false, 0);
|
||||||
CatalystVenturesServer.setHackingParameters(getRandomInt(400, 450), 900000000, getRandomInt(60, 70), getRandomInt(25, 55));
|
CatalystVenturesServer.setHackingParameters(getRandomInt(400, 450), 750000000, getRandomInt(60, 70), getRandomInt(25, 55));
|
||||||
CatalystVenturesServer.setPortProperties(3);
|
CatalystVenturesServer.setPortProperties(3);
|
||||||
AddToAllServers(CatalystVenturesServer);
|
AddToAllServers(CatalystVenturesServer);
|
||||||
|
|
||||||
var TheHubServer = new Server();
|
var TheHubServer = new Server();
|
||||||
TheHubServer.init(createRandomIp(), "the-hub", "The Hub", true, false, false, false, 0);
|
TheHubServer.init(createRandomIp(), "the-hub", "The Hub", true, false, false, false, 0);
|
||||||
TheHubServer.setHackingParameters(getRandomInt(275, 325), 250000000, getRandomInt(35, 45), getRandomInt(45, 55));
|
TheHubServer.setHackingParameters(getRandomInt(275, 325), 225000000, getRandomInt(35, 45), getRandomInt(45, 55));
|
||||||
TheHubServer.setPortProperties(2);
|
TheHubServer.setPortProperties(2);
|
||||||
AddToAllServers(TheHubServer);
|
AddToAllServers(TheHubServer);
|
||||||
|
|
||||||
var CompuTekServer = new Server();
|
var CompuTekServer = new Server();
|
||||||
CompuTekServer.init(createRandomIp(), "comptek", "CompuTek", true, false, false, false, 8);
|
CompuTekServer.init(createRandomIp(), "comptek", "CompuTek", true, false, false, false, 8);
|
||||||
CompuTekServer.setHackingParameters(getRandomInt(300, 400), 300000000, getRandomInt(55, 65), getRandomInt(50, 60));
|
CompuTekServer.setHackingParameters(getRandomInt(300, 400), 275000000, getRandomInt(55, 65), getRandomInt(50, 60));
|
||||||
CompuTekServer.setPortProperties(3);
|
CompuTekServer.setPortProperties(3);
|
||||||
AddToAllServers(CompuTekServer);
|
AddToAllServers(CompuTekServer);
|
||||||
|
|
||||||
var NetLinkTechnologiesServer = new Server();
|
var NetLinkTechnologiesServer = new Server();
|
||||||
NetLinkTechnologiesServer.init(createRandomIp(), "netlink", "NetLink Technologies", true, false, false, false, 0);
|
NetLinkTechnologiesServer.init(createRandomIp(), "netlink", "NetLink Technologies", true, false, false, false, 0);
|
||||||
NetLinkTechnologiesServer.setHackingParameters(getRandomInt(375, 425), 350000000, getRandomInt(60, 80), getRandomInt(50, 70));
|
NetLinkTechnologiesServer.setHackingParameters(getRandomInt(375, 425), 320000000, getRandomInt(60, 80), getRandomInt(50, 70));
|
||||||
NetLinkTechnologiesServer.setPortProperties(3);
|
NetLinkTechnologiesServer.setPortProperties(3);
|
||||||
AddToAllServers(NetLinkTechnologiesServer);
|
AddToAllServers(NetLinkTechnologiesServer);
|
||||||
|
|
||||||
var JohnsonOrthopedicsServer = new Server();
|
var JohnsonOrthopedicsServer = new Server();
|
||||||
JohnsonOrthopedicsServer.init(createRandomIp(), "johnson-ortho", "Johnson Orthopedics", true, false, false, false, 4);
|
JohnsonOrthopedicsServer.init(createRandomIp(), "johnson-ortho", "Johnson Orthopedics", true, false, false, false, 4);
|
||||||
JohnsonOrthopedicsServer.setHackingParameters(getRandomInt(250, 300), 100000000, getRandomInt(40, 60), getRandomInt(40, 60));
|
JohnsonOrthopedicsServer.setHackingParameters(getRandomInt(250, 300), 80000000, getRandomInt(40, 60), getRandomInt(40, 60));
|
||||||
JohnsonOrthopedicsServer.setPortProperties(2);
|
JohnsonOrthopedicsServer.setPortProperties(2);
|
||||||
AddToAllServers(JohnsonOrthopedicsServer);
|
AddToAllServers(JohnsonOrthopedicsServer);
|
||||||
|
|
||||||
@ -454,7 +454,7 @@ initForeignServers = function() {
|
|||||||
|
|
||||||
var SilverHelixServer = new Server();
|
var SilverHelixServer = new Server();
|
||||||
SilverHelixServer.init(createRandomIp(), "silver-helix", "Silver Helix", true, false, false, false, 2);
|
SilverHelixServer.init(createRandomIp(), "silver-helix", "Silver Helix", true, false, false, false, 2);
|
||||||
SilverHelixServer.setHackingParameters(150, 55000000, 30, 30);
|
SilverHelixServer.setHackingParameters(150, 50000000, 30, 30);
|
||||||
SilverHelixServer.setPortProperties(2);
|
SilverHelixServer.setPortProperties(2);
|
||||||
AddToAllServers(SilverHelixServer);
|
AddToAllServers(SilverHelixServer);
|
||||||
|
|
||||||
@ -484,7 +484,7 @@ initForeignServers = function() {
|
|||||||
|
|
||||||
var OmegaSoftwareServer = new Server();
|
var OmegaSoftwareServer = new Server();
|
||||||
OmegaSoftwareServer.init(createRandomIp(), "omega-net", "Omega Software", true, false, false, false, 8);
|
OmegaSoftwareServer.init(createRandomIp(), "omega-net", "Omega Software", true, false, false, false, 8);
|
||||||
OmegaSoftwareServer.setHackingParameters(getRandomInt(180, 220), 85000000, getRandomInt(25, 35), getRandomInt(30, 40));
|
OmegaSoftwareServer.setHackingParameters(getRandomInt(180, 220), 75000000, getRandomInt(25, 35), getRandomInt(30, 40));
|
||||||
OmegaSoftwareServer.setPortProperties(2);
|
OmegaSoftwareServer.setPortProperties(2);
|
||||||
AddToAllServers(OmegaSoftwareServer);
|
AddToAllServers(OmegaSoftwareServer);
|
||||||
|
|
||||||
@ -703,7 +703,10 @@ processSingleServerGrowth = function(server, numCycles) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
server.moneyAvailable *= serverGrowth;
|
server.moneyAvailable *= serverGrowth;
|
||||||
if (server.moneyMax && server.moneyAvailable >= server.moneyMax) {
|
if (server.moneyMax && isNaN(server.moneyAvailable)) {
|
||||||
|
server.moneyAvailable = server.moneyMax;
|
||||||
|
}
|
||||||
|
if (server.moneyMax && server.moneyAvailable > server.moneyMax) {
|
||||||
server.moneyAvailable = server.moneyMax;
|
server.moneyAvailable = server.moneyMax;
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
@ -63,67 +63,67 @@ function initStockMarket() {
|
|||||||
StockMarket = {};
|
StockMarket = {};
|
||||||
|
|
||||||
var ecorp = Locations.AevumECorp;
|
var ecorp = Locations.AevumECorp;
|
||||||
var ecorpStk = new Stock(ecorp, StockSymbols[ecorp], 0.5, true, 20, getRandomInt(20000, 25000));
|
var ecorpStk = new Stock(ecorp, StockSymbols[ecorp], 0.5, true, 16, getRandomInt(20000, 25000));
|
||||||
StockMarket[ecorp] = ecorpStk;
|
StockMarket[ecorp] = ecorpStk;
|
||||||
|
|
||||||
var megacorp = Locations.Sector12MegaCorp;
|
var megacorp = Locations.Sector12MegaCorp;
|
||||||
var megacorpStk = new Stock(megacorp, StockSymbols[megacorp], 0.5, true, 20, getRandomInt(25000, 33000));
|
var megacorpStk = new Stock(megacorp, StockSymbols[megacorp], 0.5, true, 16, getRandomInt(25000, 33000));
|
||||||
StockMarket[megacorp] = megacorpStk;
|
StockMarket[megacorp] = megacorpStk;
|
||||||
|
|
||||||
var blade = Locations.Sector12BladeIndustries;
|
var blade = Locations.Sector12BladeIndustries;
|
||||||
var bladeStk = new Stock(blade, StockSymbols[blade], 0.75, true, 16, getRandomInt(15000, 22000));
|
var bladeStk = new Stock(blade, StockSymbols[blade], 0.75, true, 13, getRandomInt(15000, 22000));
|
||||||
StockMarket[blade] = bladeStk;
|
StockMarket[blade] = bladeStk;
|
||||||
|
|
||||||
var clarke = Locations.AevumClarkeIncorporated;
|
var clarke = Locations.AevumClarkeIncorporated;
|
||||||
var clarkeStk = new Stock(clarke, StockSymbols[clarke], 0.7, true, 15, getRandomInt(15000, 20000));
|
var clarkeStk = new Stock(clarke, StockSymbols[clarke], 0.7, true, 12, getRandomInt(15000, 20000));
|
||||||
StockMarket[clarke] = clarkeStk;
|
StockMarket[clarke] = clarkeStk;
|
||||||
|
|
||||||
var omnitek = Locations.VolhavenOmniTekIncorporated;
|
var omnitek = Locations.VolhavenOmniTekIncorporated;
|
||||||
var omnitekStk = new Stock(omnitek, StockSymbols[omnitek], 0.65, true, 15, getRandomInt(35000, 40000));
|
var omnitekStk = new Stock(omnitek, StockSymbols[omnitek], 0.65, true, 12, getRandomInt(35000, 40000));
|
||||||
StockMarket[omnitek] = omnitekStk;
|
StockMarket[omnitek] = omnitekStk;
|
||||||
|
|
||||||
var foursigma = Locations.Sector12FourSigma;
|
var foursigma = Locations.Sector12FourSigma;
|
||||||
var foursigmaStk = new Stock(foursigma, StockSymbols[foursigma], 1.25, true, 20, getRandomInt(75000, 80000));
|
var foursigmaStk = new Stock(foursigma, StockSymbols[foursigma], 1.1, true, 18, getRandomInt(60000, 70000));
|
||||||
StockMarket[foursigma] = foursigmaStk;
|
StockMarket[foursigma] = foursigmaStk;
|
||||||
|
|
||||||
var kuaigong = Locations.ChongqingKuaiGongInternational;
|
var kuaigong = Locations.ChongqingKuaiGongInternational;
|
||||||
var kuaigongStk = new Stock(kuaigong, StockSymbols[kuaigong], 0.8, true, 12, getRandomInt(20000, 24000));
|
var kuaigongStk = new Stock(kuaigong, StockSymbols[kuaigong], 0.8, true, 10, getRandomInt(20000, 24000));
|
||||||
StockMarket[kuaigong] = kuaigongStk;
|
StockMarket[kuaigong] = kuaigongStk;
|
||||||
|
|
||||||
var fulcrum = Locations.AevumFulcrumTechnologies;
|
var fulcrum = Locations.AevumFulcrumTechnologies;
|
||||||
var fulcrumStk = new Stock(fulcrum, StockSymbols[fulcrum], 1.25, true, 21, getRandomInt(30000, 35000));
|
var fulcrumStk = new Stock(fulcrum, StockSymbols[fulcrum], 1.25, true, 17, getRandomInt(30000, 35000));
|
||||||
StockMarket[fulcrum] = fulcrumStk;
|
StockMarket[fulcrum] = fulcrumStk;
|
||||||
|
|
||||||
var storm = Locations.IshimaStormTechnologies;
|
var storm = Locations.IshimaStormTechnologies;
|
||||||
var stormStk = new Stock(storm, StockSymbols[storm], 0.85, true, 9, getRandomInt(21000, 24000));
|
var stormStk = new Stock(storm, StockSymbols[storm], 0.85, true, 7, getRandomInt(21000, 24000));
|
||||||
StockMarket[storm] = stormStk;
|
StockMarket[storm] = stormStk;
|
||||||
|
|
||||||
var defcomm = Locations.NewTokyoDefComm;
|
var defcomm = Locations.NewTokyoDefComm;
|
||||||
var defcommStk = new Stock(defcomm, StockSymbols[defcomm], 0.65, true, 12, getRandomInt(10000, 15000));
|
var defcommStk = new Stock(defcomm, StockSymbols[defcomm], 0.65, true, 10, getRandomInt(10000, 15000));
|
||||||
StockMarket[defcomm] = defcommStk;
|
StockMarket[defcomm] = defcommStk;
|
||||||
|
|
||||||
var helios = Locations.VolhavenHeliosLabs;
|
var helios = Locations.VolhavenHeliosLabs;
|
||||||
var heliosStk = new Stock(helios, StockSymbols[helios], 0.6, true, 11, getRandomInt(12000, 16000));
|
var heliosStk = new Stock(helios, StockSymbols[helios], 0.6, true, 9, getRandomInt(12000, 16000));
|
||||||
StockMarket[helios] = heliosStk;
|
StockMarket[helios] = heliosStk;
|
||||||
|
|
||||||
var vitalife = Locations.NewTokyoVitaLife;
|
var vitalife = Locations.NewTokyoVitaLife;
|
||||||
var vitalifeStk = new Stock(vitalife, StockSymbols[vitalife], 0.75, true, 7.5, getRandomInt(10000, 12000));
|
var vitalifeStk = new Stock(vitalife, StockSymbols[vitalife], 0.75, true, 7, getRandomInt(10000, 12000));
|
||||||
StockMarket[vitalife] = vitalifeStk;
|
StockMarket[vitalife] = vitalifeStk;
|
||||||
|
|
||||||
var icarus = Locations.Sector12IcarusMicrosystems;
|
var icarus = Locations.Sector12IcarusMicrosystems;
|
||||||
var icarusStk = new Stock(icarus, StockSymbols[icarus], 0.65, true, 9, getRandomInt(16000, 20000));
|
var icarusStk = new Stock(icarus, StockSymbols[icarus], 0.65, true, 7.5, getRandomInt(16000, 20000));
|
||||||
StockMarket[icarus] = icarusStk;
|
StockMarket[icarus] = icarusStk;
|
||||||
|
|
||||||
var universalenergy = Locations.Sector12UniversalEnergy;
|
var universalenergy = Locations.Sector12UniversalEnergy;
|
||||||
var universalenergyStk = new Stock(universalenergy, StockSymbols[universalenergy], 0.55, true, 12, getRandomInt(20000, 25000));
|
var universalenergyStk = new Stock(universalenergy, StockSymbols[universalenergy], 0.55, true, 10, getRandomInt(20000, 25000));
|
||||||
StockMarket[universalenergy] = universalenergyStk;
|
StockMarket[universalenergy] = universalenergyStk;
|
||||||
|
|
||||||
var galactic = Locations.AevumGalacticCybersystems;
|
var galactic = Locations.AevumGalacticCybersystems;
|
||||||
var galacticStk = new Stock(galactic, StockSymbols[galactic], 0.6, true, 6, getRandomInt(8000, 10000));
|
var galacticStk = new Stock(galactic, StockSymbols[galactic], 0.6, true, 5, getRandomInt(8000, 10000));
|
||||||
StockMarket[galactic] = galacticStk;
|
StockMarket[galactic] = galacticStk;
|
||||||
|
|
||||||
var aerocorp = Locations.AevumAeroCorp;
|
var aerocorp = Locations.AevumAeroCorp;
|
||||||
var aerocorpStk = new Stock(aerocorp, StockSymbols[aerocorp], 0.6, true, 7, getRandomInt(10000, 15000));
|
var aerocorpStk = new Stock(aerocorp, StockSymbols[aerocorp], 0.6, true, 6, getRandomInt(10000, 15000));
|
||||||
StockMarket[aerocorp] = aerocorpStk;
|
StockMarket[aerocorp] = aerocorpStk;
|
||||||
|
|
||||||
var omnia = Locations.VolhavenOmniaCybersystems;
|
var omnia = Locations.VolhavenOmniaCybersystems;
|
||||||
@ -131,19 +131,19 @@ function initStockMarket() {
|
|||||||
StockMarket[omnia] = omniaStk;
|
StockMarket[omnia] = omniaStk;
|
||||||
|
|
||||||
var solaris = Locations.ChongqingSolarisSpaceSystems;
|
var solaris = Locations.ChongqingSolarisSpaceSystems;
|
||||||
var solarisStk = new Stock(solaris, StockSymbols[solaris], 0.75, true, 10, getRandomInt(18000, 24000));
|
var solarisStk = new Stock(solaris, StockSymbols[solaris], 0.75, true, 8.5, getRandomInt(18000, 24000));
|
||||||
StockMarket[solaris] = solarisStk;
|
StockMarket[solaris] = solarisStk;
|
||||||
|
|
||||||
var globalpharm = Locations.NewTokyoGlobalPharmaceuticals;
|
var globalpharm = Locations.NewTokyoGlobalPharmaceuticals;
|
||||||
var globalpharmStk = new Stock(globalpharm, StockSymbols[globalpharm], 0.6, true, 12, getRandomInt(18000, 24000));
|
var globalpharmStk = new Stock(globalpharm, StockSymbols[globalpharm], 0.6, true, 10.5, getRandomInt(18000, 24000));
|
||||||
StockMarket[globalpharm] = globalpharmStk;
|
StockMarket[globalpharm] = globalpharmStk;
|
||||||
|
|
||||||
var nova = Locations.IshimaNovaMedical;
|
var nova = Locations.IshimaNovaMedical;
|
||||||
var novaStk = new Stock(nova, StockSymbols[nova], 0.75, true, 6, getRandomInt(18000, 24000));
|
var novaStk = new Stock(nova, StockSymbols[nova], 0.75, true, 5, getRandomInt(18000, 24000));
|
||||||
StockMarket[nova] = novaStk;
|
StockMarket[nova] = novaStk;
|
||||||
|
|
||||||
var watchdog = Locations.AevumWatchdogSecurity;
|
var watchdog = Locations.AevumWatchdogSecurity;
|
||||||
var watchdogStk = new Stock(watchdog, StockSymbols[watchdog], 1, true, 2, getRandomInt(5000, 7500));
|
var watchdogStk = new Stock(watchdog, StockSymbols[watchdog], 1, true, 1.5, getRandomInt(5000, 7500));
|
||||||
StockMarket[watchdog] = watchdogStk;
|
StockMarket[watchdog] = watchdogStk;
|
||||||
|
|
||||||
var lexocorp = Locations.VolhavenLexoCorp;
|
var lexocorp = Locations.VolhavenLexoCorp;
|
||||||
@ -356,7 +356,7 @@ function displayStockMarketContent() {
|
|||||||
|
|
||||||
if (!stockMarketContentCreated && Player.hasWseAccount) {
|
if (!stockMarketContentCreated && Player.hasWseAccount) {
|
||||||
console.log("Creating Stock Market UI");
|
console.log("Creating Stock Market UI");
|
||||||
document.getElementById("stock-market-commission").innerText =
|
document.getElementById("stock-market-commission").innerHTML =
|
||||||
"Commission Fees: Every transaction you make has a $" +
|
"Commission Fees: Every transaction you make has a $" +
|
||||||
formatNumber(CONSTANTS.StockMarketCommission, 2) + " commission fee.<br><br>" +
|
formatNumber(CONSTANTS.StockMarketCommission, 2) + " commission fee.<br><br>" +
|
||||||
"WARNING: When you reset after installing Augmentations, the Stock Market is reset. " +
|
"WARNING: When you reset after installing Augmentations, the Stock Market is reset. " +
|
||||||
@ -491,15 +491,22 @@ function displayStockMarketContent() {
|
|||||||
li.appendChild(sharesTxt);
|
li.appendChild(sharesTxt);
|
||||||
li.appendChild(returnTxt);
|
li.appendChild(returnTxt);
|
||||||
stockList.appendChild(li);
|
stockList.appendChild(li);
|
||||||
|
|
||||||
updateStockTicker(stock, true);
|
|
||||||
updateStockPlayerPosition(stock);
|
|
||||||
}()); //Immediate invocation
|
}()); //Immediate invocation
|
||||||
}//End if
|
}//End if
|
||||||
|
|
||||||
}
|
}
|
||||||
stockMarketContentCreated = true;
|
stockMarketContentCreated = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (Player.hasWseAccount) {
|
||||||
|
for (var name in StockMarket) {
|
||||||
|
if (StockMarket.hasOwnProperty(name)) {
|
||||||
|
var stock = StockMarket[name];
|
||||||
|
updateStockTicker(stock, true);
|
||||||
|
updateStockPlayerPosition(stock);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//'increase' argument is a boolean indicating whether the price increased or decreased
|
//'increase' argument is a boolean indicating whether the price increased or decreased
|
||||||
|
@ -243,7 +243,7 @@ function determineAllPossibilitiesForTabCompletion(input, index=0) {
|
|||||||
return ["alias", "analyze", "cat", "check", "clear", "cls", "connect", "free",
|
return ["alias", "analyze", "cat", "check", "clear", "cls", "connect", "free",
|
||||||
"hack", "help", "home", "hostname", "ifconfig", "kill", "killall",
|
"hack", "help", "home", "hostname", "ifconfig", "kill", "killall",
|
||||||
"ls", "mem", "nano", "ps", "rm", "run", "scan", "scan-analyze",
|
"ls", "mem", "nano", "ps", "rm", "run", "scan", "scan-analyze",
|
||||||
"scp", "sudov", "tail", "theme", "top"].concat(Object.keys(Aliases));
|
"scp", "sudov", "tail", "theme", "top"].concat(Object.keys(Aliases)).concat(Object.keys(GlobalAliases));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (input.startsWith ("buy ")) {
|
if (input.startsWith ("buy ")) {
|
||||||
@ -581,15 +581,21 @@ var Terminal = {
|
|||||||
case "alias":
|
case "alias":
|
||||||
if (commandArray.length == 1) {
|
if (commandArray.length == 1) {
|
||||||
printAliases();
|
printAliases();
|
||||||
} else if (commandArray.length == 2) {
|
return;
|
||||||
|
}
|
||||||
|
if (commandArray.length == 2) {
|
||||||
|
if (commandArray[1].startsWith("-g ")) {
|
||||||
|
var alias = commandArray[1].substring(3);
|
||||||
|
if (parseAliasDeclaration(alias, true)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
if (parseAliasDeclaration(commandArray[1])) {
|
if (parseAliasDeclaration(commandArray[1])) {
|
||||||
|
return;
|
||||||
} else {
|
|
||||||
post('Incorrect usage of alias command. Usage: alias [aliasname="value"]'); return;
|
|
||||||
}
|
}
|
||||||
} else {
|
|
||||||
post('Incorrect usage of alias command. Usage: alias [aliasname="value"]'); return;
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
post('Incorrect usage of alias command. Usage: alias [-g] [aliasname="value"]');
|
||||||
break;
|
break;
|
||||||
case "analyze":
|
case "analyze":
|
||||||
if (commandArray.length != 1) {
|
if (commandArray.length != 1) {
|
||||||
@ -1036,8 +1042,32 @@ var Terminal = {
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case "top":
|
case "top":
|
||||||
//TODO List each's script RAM usage
|
if(commandArray.length != 1) {
|
||||||
post("Not yet implemented");
|
post("Incorrect usage of top command. Usage: top"); return;
|
||||||
|
}
|
||||||
|
|
||||||
|
post("Script Threads RAM Usage");
|
||||||
|
|
||||||
|
var currRunningScripts = Player.getCurrentServer().runningScripts;
|
||||||
|
//Iterate through scripts on current server
|
||||||
|
for(var i = 0; i < currRunningScripts.length; i++) {
|
||||||
|
var script = currRunningScripts[i];
|
||||||
|
|
||||||
|
//Calculate name padding
|
||||||
|
var numSpacesScript = 32 - script.filename.length; //26 -> width of name column
|
||||||
|
if (numSpacesScript < 0) {numSpacesScript = 0;}
|
||||||
|
var spacesScript = Array(numSpacesScript+1).join(" ");
|
||||||
|
|
||||||
|
//Calculate thread padding
|
||||||
|
var numSpacesThread = 16 - (script.threads + "").length; //16 -> width of thread column
|
||||||
|
var spacesThread = Array(numSpacesThread+1).join(" ");
|
||||||
|
|
||||||
|
//Calculate and transform RAM usage
|
||||||
|
ramUsage = formatNumber(script.scriptRef.ramUsage * script.threads, 2).toString() + "GB";
|
||||||
|
|
||||||
|
var entry = [script.filename, spacesScript, script.threads, spacesThread, ramUsage];
|
||||||
|
post(entry.join(""));
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case "unalias":
|
case "unalias":
|
||||||
if (commandArray.length != 2) {
|
if (commandArray.length != 2) {
|
||||||
@ -1300,6 +1330,19 @@ var Terminal = {
|
|||||||
post("Netscript hack() execution time: " + formatNumber(scriptCalculateHackingTime(serv), 1) + "s");
|
post("Netscript hack() execution time: " + formatNumber(scriptCalculateHackingTime(serv), 1) + "s");
|
||||||
post("Netscript grow() execution time: " + formatNumber(scriptCalculateGrowTime(serv)/1000, 1) + "s");
|
post("Netscript grow() execution time: " + formatNumber(scriptCalculateGrowTime(serv)/1000, 1) + "s");
|
||||||
post("Netscript weaken() execution time: " + formatNumber(scriptCalculateWeakenTime(serv)/1000, 1) + "s");
|
post("Netscript weaken() execution time: " + formatNumber(scriptCalculateWeakenTime(serv)/1000, 1) + "s");
|
||||||
|
break;
|
||||||
|
case Programs.AutoLink:
|
||||||
|
post("This executable cannot be run.");
|
||||||
|
post("AutoLink.exe lets you automatically connect to other servers when using 'scan-analyze'.");
|
||||||
|
post("When using scan-analyze, click on a server's hostname to connect to it.");
|
||||||
|
break;
|
||||||
|
case Programs.DeepscanV1:
|
||||||
|
post("This executable cannot be run.");
|
||||||
|
post("DeepscanV1.exe lets you run 'scan-analyze' with a depth up to 5.");
|
||||||
|
break;
|
||||||
|
case Programs.DeepscanV2:
|
||||||
|
post("This executable cannot be run.");
|
||||||
|
post("DeepscanV2.exe lets you run 'scan-analyze' with a depth up to 10.");
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
post("Invalid executable. Cannot be run");
|
post("Invalid executable. Cannot be run");
|
||||||
|
@ -58,6 +58,7 @@ var Engine = {
|
|||||||
stockMarketContent: null,
|
stockMarketContent: null,
|
||||||
locationContent: null,
|
locationContent: null,
|
||||||
workInProgressContent: null,
|
workInProgressContent: null,
|
||||||
|
redPillContent: null,
|
||||||
|
|
||||||
//Character info
|
//Character info
|
||||||
characterInfo: null,
|
characterInfo: null,
|
||||||
@ -81,6 +82,7 @@ var Engine = {
|
|||||||
Tutorial: "Tutorial",
|
Tutorial: "Tutorial",
|
||||||
Location: "Location",
|
Location: "Location",
|
||||||
workInProgress: "WorkInProgress",
|
workInProgress: "WorkInProgress",
|
||||||
|
RedPill: "RedPill",
|
||||||
Infiltration: "Infiltration",
|
Infiltration: "Infiltration",
|
||||||
StockMarket: "StockMarket",
|
StockMarket: "StockMarket",
|
||||||
},
|
},
|
||||||
@ -187,6 +189,14 @@ var Engine = {
|
|||||||
Engine.currentPage = Engine.Page.WorkInProgress;
|
Engine.currentPage = Engine.Page.WorkInProgress;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
loadRedPillContent: function() {
|
||||||
|
Engine.hideAllContent();
|
||||||
|
var mainMenu = document.getElementById("mainmenu-container");
|
||||||
|
mainMenu.style.visibility = "hidden";
|
||||||
|
Engine.Display.redPillContent.style.visibility = "visible";
|
||||||
|
Engine.currentPage = Engine.Page.RedPill;
|
||||||
|
},
|
||||||
|
|
||||||
loadInfiltrationContent: function() {
|
loadInfiltrationContent: function() {
|
||||||
Engine.hideAllContent();
|
Engine.hideAllContent();
|
||||||
Engine.Display.infiltrationContent.style.visibility = "visible";
|
Engine.Display.infiltrationContent.style.visibility = "visible";
|
||||||
@ -216,6 +226,7 @@ var Engine = {
|
|||||||
Engine.Display.tutorialContent.style.visibility = "hidden";
|
Engine.Display.tutorialContent.style.visibility = "hidden";
|
||||||
Engine.Display.locationContent.style.visibility = "hidden";
|
Engine.Display.locationContent.style.visibility = "hidden";
|
||||||
Engine.Display.workInProgressContent.style.visibility = "hidden";
|
Engine.Display.workInProgressContent.style.visibility = "hidden";
|
||||||
|
Engine.Display.redPillContent.style.visibility = "hidden";
|
||||||
Engine.Display.infiltrationContent.style.visibility = "hidden";
|
Engine.Display.infiltrationContent.style.visibility = "hidden";
|
||||||
Engine.Display.stockMarketContent.style.visibility = "hidden";
|
Engine.Display.stockMarketContent.style.visibility = "hidden";
|
||||||
|
|
||||||
@ -833,6 +844,10 @@ var Engine = {
|
|||||||
Engine.Display.workInProgressContent = document.getElementById("work-in-progress-container");
|
Engine.Display.workInProgressContent = document.getElementById("work-in-progress-container");
|
||||||
Engine.Display.workInProgressContent.style.visibility = "hidden";
|
Engine.Display.workInProgressContent.style.visibility = "hidden";
|
||||||
|
|
||||||
|
//Red Pill / Hack World Daemon
|
||||||
|
Engine.Display.redPillContent = document.getElementById("red-pill-container");
|
||||||
|
Engine.Display.redPillContent.style.visibility = "hidden";
|
||||||
|
|
||||||
//Init Location buttons
|
//Init Location buttons
|
||||||
initLocationButtons();
|
initLocationButtons();
|
||||||
|
|
||||||
|
@ -36,7 +36,7 @@ purchaseRamForHomeBoxCreate = function() {
|
|||||||
//Calculate cost
|
//Calculate cost
|
||||||
//Have cost increase by some percentage each time RAM has been upgraded
|
//Have cost increase by some percentage each time RAM has been upgraded
|
||||||
var cost = currentRam * CONSTANTS.BaseCostFor1GBOfRamHome;
|
var cost = currentRam * CONSTANTS.BaseCostFor1GBOfRamHome;
|
||||||
var mult = Math.pow(1.44, numUpgrades);
|
var mult = Math.pow(1.52, numUpgrades);
|
||||||
cost = cost * mult;
|
cost = cost * mult;
|
||||||
|
|
||||||
purchaseRamForHomeBoxSetText("Would you like to purchase additional RAM for your home computer? <br><br>" +
|
purchaseRamForHomeBoxSetText("Would you like to purchase additional RAM for your home computer? <br><br>" +
|
||||||
|
Loading…
Reference in New Issue
Block a user