bitburner-src/src/FactionInfo.ts

230 lines
12 KiB
TypeScript
Raw Normal View History

import { IMap } from "./types";
/**
* Contains the "information" property for all the Factions, which is just a description of each faction
*/
2018-06-26 22:10:04 +02:00
class FactionInfo {
/**
* The multiplier to apply to augmentation base purchase price.
*/
2018-06-26 22:34:14 +02:00
augmentationPriceMult: number;
/**
* The multiplier to apply to augmentation reputation base requirement.
*/
2018-06-26 22:34:14 +02:00
augmentationRepRequirementMult: number;
/**
* The names of all other factions considered to be enemies to this faction.
*/
2018-06-26 22:10:04 +02:00
enemies: string[];
/**
* The descriptive text to show on the faction's page.
*/
2018-06-26 22:34:14 +02:00
infoText: string;
/**
* A flag indicating if the faction supports field work to earn reputation.
*/
2018-06-26 22:34:14 +02:00
offerFieldWork: boolean;
/**
* A flag indicating if the faction supports hacking missions to earn reputation.
*/
2018-06-26 22:10:04 +02:00
offerHackingMission: boolean;
/**
* A flag indicating if the faction supports hacking work to earn reputation.
*/
2018-06-26 22:10:04 +02:00
offerHackingWork: boolean;
/**
* A flag indicating if the faction supports security work to earn reputation.
*/
2018-06-26 22:10:04 +02:00
offerSecurityWork: boolean;
2018-06-26 22:34:14 +02:00
constructor(infoText: string, enemies: string[], offerHackingMission: boolean, offerHackingWork: boolean,
offerFieldWork: boolean, offerSecurityWork: boolean) {
2018-06-26 22:10:04 +02:00
this.infoText = infoText;
this.enemies = enemies;
this.offerHackingMission = offerHackingMission;
this.offerHackingWork = offerHackingWork;
this.offerFieldWork = offerFieldWork;
this.offerSecurityWork = offerSecurityWork;
2018-06-26 22:34:14 +02:00
// These are always all 1 for now.
2018-06-26 22:10:04 +02:00
this.augmentationPriceMult = 1;
2018-06-26 22:34:14 +02:00
this.augmentationRepRequirementMult = 1;
2018-06-26 22:10:04 +02:00
}
}
/**
* A map of all factions and associated info to them.
*/
// tslint:disable-next-line:variable-name
export const FactionInfos: IMap<FactionInfo> = {
2018-06-26 22:34:14 +02:00
// Endgame
Illuminati: new FactionInfo("Humanity never changes. No matter how civilized society becomes, it will eventually " +
2018-06-26 22:34:14 +02:00
"fall back into chaos. And from this chaos, we are the Invisible hand that guides them to order. ",
[], true, true, true, false),
Daedalus: new FactionInfo("Yesterday we obeyed kings and bent our necks to emperors. Today we kneel only to truth.",
[], true, true, true, false),
"The Covenant": new FactionInfo("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 " +
2018-06-26 22:34:14 +02:00
"then can you set yourself free.<br><br> Only then can you discover immortality.",
[], true, true, true, false),
// Megacorporations, each forms its own faction
ECorp: new FactionInfo("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 " +
2018-06-26 22:34:14 +02:00
"the world's information universally accessible.",
[], true, true, true, true),
MegaCorp: new FactionInfo("MegaCorp does things that others don't. We imagine. We create. We invent. We build " +
"things that others have never even dreamed of. Our work fills the world's needs for " +
"food, water, power, and transporation on an unprecendented scale, in ways that no " +
"other company can.<br><br>In our labs and factories and on the ground with customers, " +
2018-06-26 22:34:14 +02:00
"MegaCorp is ushering in a new era for the world.",
[], true, true, true, true),
"Bachman & Associates": new FactionInfo("Where Law and Business meet - thats where we are. <br><br>" +
2018-06-26 22:34:14 +02:00
"Legal Insight - Business Instinct - Experience Innovation",
[], true, true, true, true),
"Blade Industries": new FactionInfo("Augmentation is salvation", [], true, true, true, true),
2018-06-26 22:34:14 +02:00
NWO: new FactionInfo("The human being does not truly desire freedom. It wants " +
"to be observed, understood, and judged. It wants to be given purpose and " +
"direction in its life. That is why humans created God. " +
"And that is why humans created civilization - " +
"not because of willingness, " +
"but because of a need to be incorporated into higher orders of structure and meaning.",
[], true, true, true, true),
2018-06-26 22:34:14 +02:00
"Clarke Incorporated": new FactionInfo("Unlocking the power of the genome",
[], true, true, true, true),
"OmniTek Incorporated": new FactionInfo("Simply put, our mission is to design and build robots that make a difference",
2018-06-26 22:34:14 +02:00
[], true, true, true, true),
"Four Sigma": new FactionInfo("The scientific method is the best way to approach investing. Big strategies backed " +
2018-06-26 22:34:14 +02:00
"up with big data. Driven by deep learning and innovative ideas. And improved by iteration. That's Four Sigma.",
[], true, true, true, true),
2018-06-26 22:34:14 +02:00
"KuaiGong International": new FactionInfo("Dream big. Work hard. Make history.",
[], true, true, true, true),
2018-06-26 22:34:14 +02:00
// Other Corporations
"Fulcrum Secret Technologies": new FactionInfo("The human organism has an innate desire to worship. " +
"That is why they created gods. If there were no gods, " +
2018-06-26 22:34:14 +02:00
"it would be necessary to create them. And now we can.",
[], true, true, false, true),
// Hacker groups
BitRunners: new FactionInfo("Our entire lives are controlled by bits. All of our actions, our thoughts, our " +
"personal information. It's all transformed into bits, stored in bits, communicated through bits. " +
"Its impossible for any person 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 meaningless fragments of information. But these bits can be reconstructed. " +
2018-06-26 22:34:14 +02:00
"Transformed. Used.<br><br>Those who run the bits, run the world",
[], true, true, false, false),
"The Black Hand": new FactionInfo("The world, so afraid of strong government, now has no government. " +
"Only power - Digital power. Financial power. Technological power. And those at the top rule with " +
2018-06-26 22:34:14 +02:00
"an invisible hand. They built a society where the rich get richer, and everyone else suffers." +
"<br><br>So much pain. So many lives. Their darkness must end.",
[], true, true, true, false),
NiteSec: new FactionInfo(
2017-04-19 21:19:33 +02:00
" __..__ <br>" +
" _.nITESECNIt. <br>" +
" .-'NITESECNITESEc. <br>" +
" .' NITESECNITESECn <br>" +
" / NITESECNITESEC; <br>" +
" : :NITESECNITESEC; <br>" +
2017-07-22 00:54:55 +02:00
" ; $ NITESECNITESECN <br>" +
2017-04-19 21:19:33 +02:00
" : _, ,N'ITESECNITESEC <br>" +
2017-07-22 00:54:55 +02:00
" : .+^^`, : `NITESECNIT <br>" +
2017-04-19 21:19:33 +02:00
" ) /), `-,-=,NITESECNI <br>" +
2017-07-22 00:54:55 +02:00
" / ^ ,-;|NITESECN; <br>" +
" / _.' '-';NITESECN <br>" +
" ( , ,-''`^NITE' <br>" +
2017-04-19 21:19:33 +02:00
" )` :`. .' <br>" +
2017-07-22 00:54:55 +02:00
" )-- ; `- / <br>" +
" \' _.-' : <br>" +
2017-04-19 21:19:33 +02:00
" ( _.-' \. \ <br>" +
" \------. \ \ <br>" +
" \. \ \ <br>" +
2017-07-22 00:54:55 +02:00
" \ _.nIt <br>" +
2017-04-19 21:19:33 +02:00
" \ _.nITESECNi <br>" +
" nITESECNIT^' \ <br>" +
" NITE^' ___ \ <br>" +
" / .gP''''Tp. \ <br>" +
" : d' . `b \ <br>" +
" ; d' o `b ; <br>" +
" / d; `b| <br>" +
" /, $; @ `: <br>" +
" /' $$ ; <br>" +
2017-07-22 00:54:55 +02:00
" .' $$b o | <br>" +
2017-04-19 21:19:33 +02:00
" .' d$$$; : <br>" +
" / .d$$$$; , ; <br>" +
2017-07-22 00:54:55 +02:00
" d .dNITESEC $ | <br>" +
" :bp.__.gNITESEC$$ :$ ; <br>" +
2018-06-26 22:34:14 +02:00
" NITESECNITESECNIT $$b : <br>",
[], true, true, false, false),
// City factions, essentially governments
Aevum: new FactionInfo("The Silicon City",
["Chongqing", "New Tokyo", "Ishima", "Volhaven"], true, true, true, true),
Chongqing: new FactionInfo("Serve the people",
["Sector-12", "Aevum", "Volhaven"], true, true, true, true),
Ishima: new FactionInfo("The East Asian Order of the Future",
["Sector-12", "Aevum", "Volhaven"], true, true, true, true),
"New Tokyo": new FactionInfo("Asia's World City",
["Sector-12", "Aevum", "Volhaven"], true, true, true, true),
"Sector-12": new FactionInfo("The City of the Future",
["Chongqing", "New Tokyo", "Ishima", "Volhaven"], true, true, true, true),
Volhaven: new FactionInfo("Benefit, Honour, and Glory",
["Chongqing", "Sector-12", "New Tokyo", "Aevum", "Ishima"], true, true, true, true),
// Criminal Organizations/Gangs
"Speakers for the Dead": new FactionInfo("It is better to reign in hell than to serve in heaven.",
[], true, true, true, true),
"The Dark Army": new FactionInfo("The World doesn't care about right or wrong. It's all about power.",
[], true, true, true, false),
"The Syndicate": new FactionInfo("Honor holds you back", [], true, true, true, true),
Silhouette: new FactionInfo("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 " +
2018-06-26 22:34:14 +02:00
"if you're employed at one of these corporations, you don't even know who you're working for.\n\n" +
"That's terror. Terror, fear, and corruption. All born into the system, all propagated by the " +
2018-06-26 22:34:14 +02:00
"system.",
[], true, true, true, false),
2018-06-26 22:34:14 +02:00
Tetrads: new FactionInfo("Following the Mandate of Heaven and Carrying out the Way", [], false, false, true, true),
"Slum Snakes": new FactionInfo("Slum Snakes rule!", [], false, false, true, true),
2018-06-26 22:34:14 +02:00
// Earlygame factions - factions the player will prestige with early on that don't belong in other categories.
Netburners: new FactionInfo("~~//*>H4CK|\|3T 8URN3R5**>?>\\~~", [], true, true, false, false),
"Tian Di Hui": new FactionInfo("Obey Heaven and Work Righteousness", [], true, true, false, true),
CyberSec: new FactionInfo("The Internet is the first thing that humanity has built that humanity doesnt " +
"understand, the largest experiment in anarchy that we have ever had. And as the world becomes " +
"increasingly dominated by the internet, society approaches the brink of total chaos. We serve only " +
2018-06-26 22:34:14 +02:00
"to protect society, to protect humanity, to protect the world from its imminent collapse.",
[], true, true, false, false),
// Special Factions
Bladeburners: new FactionInfo("It's too bad they won't live. But then again, who does?<br><br>Note that for this " +
2018-06-26 22:34:14 +02:00
"faction, reputation can only be gained through Bladeburner actions. Completing " +
"Bladeburner contracts/operations will increase your reputation.",
[], false, false, false, false),
};