Changed the way Corporation valuation is calculated (now based on outstanding shares). Updated gameplay documentation for RTD

This commit is contained in:
danielyxie 2019-01-04 16:50:27 -08:00
parent 3a439d8208
commit f4e0eaeffb
17 changed files with 307 additions and 171698 deletions

60701
dist/engine.bundle.js vendored

File diff suppressed because one or more lines are too long

111098
dist/vendor.bundle.js vendored

File diff suppressed because one or more lines are too long

@ -11,7 +11,7 @@ user's physical and mental faculties.
Augmentations provide persistent upgrades in the form of multipliers. Augmentations provide persistent upgrades in the form of multipliers.
These multipliers apply to a wide variety of things such as stats, These multipliers apply to a wide variety of things such as stats,
experience gain, and hacking, just to name a few. Your multipliers experience gain, and hacking, just to name a few. Your multipliers
can be viewed in the 'Character' page (keyboard shortcut Alt + c) can be viewed in the 'Character' page (:ref:`keyboard shortcut <shortcuts>` Alt + c)
How to acquire Augmentations How to acquire Augmentations
^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

@ -2,3 +2,11 @@
Companies Companies
========= =========
When exploring the :ref:`world <World>`, you can visit various companies. At
these companies, you can apply for jobs.
Working a job lets you earn money, experience, and reputation with that company.
Information about all Companies
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TODO

@ -2,3 +2,28 @@
Crimes Crimes
====== ======
Commiting crimes is an active gameplay mechanic that allows the player to train
their stats and potentially earn money. The player can attempt to commit crimes
by visiting 'The Slums' through the 'City' tab (:ref:`Keyboard shortcut <_shortcuts>` Alt + w).
'The Slums' is available in every city.
Basic Mechanics
^^^^^^^^^^^^^^^
When you visit the 'Slums' you will see a list of buttons that show all of the
available crimes. Simply select one of the options to begin attempting that
crime. Attempting to commit a crime takes a certain amount of time. This time
varies between crimes. During this time, you cannot do anything else.
Crimes are not always successful. Your rate of success is determined by your
stats (and Augmentation multipliers) and can be seen on the crime-selection
page. If you are unsuccessful at committing a crime you will gain EXP,
but you will not earn money. If you are successful at committing the crime
you will gain extra EXP (double of what an unsuccessful attempt would give)
and earn money.
Harder crimes are typically more profitable, and also give more EXP.
Crime details
^^^^^^^^^^^^^
TODO

@ -40,7 +40,7 @@ List of Factions and their Requirements
| | Tian Di Hui | * $1m | | | | Tian Di Hui | * $1m | |
| | | * Hacking Level 50 | | | | | * Hacking Level 50 | |
| | | * Be in Chongqing, New Tokyo, or Ishima | | | | | * Be in Chongqing, New Tokyo, or Ishima | |
+---------------------+----------------+-----------------------------------------+-------------------------------+ + +----------------+-----------------------------------------+-------------------------------+
| | Netburners | * Hacking Level 80 | | | | Netburners | * Hacking Level 80 | |
| | | * Total Hacknet Levels of 100 | | | | | * Total Hacknet Levels of 100 | |
| | | * Total Hacknet RAM of 8 | | | | | * Total Hacknet RAM of 8 | |

@ -78,7 +78,7 @@ Server Security
Each server has a security level, typically between 1 and 100. Each server has a security level, typically between 1 and 100.
A higher number means the server has stronger security. It is A higher number means the server has stronger security. It is
possible for a server to have a security of level 100 or higher, in possible for a server to have a security of level 100 or higher, in
which case hacking a server will become impossible (0% chance for which case hacking that server will become impossible (0% chance for
hack to succeed). hack to succeed).
As mentioned above, a server's security level is an important factor As mentioned above, a server's security level is an important factor

@ -15,15 +15,15 @@ visit a company through the 'World' menu. There will be an option that
says 'Infiltrate Company'. says 'Infiltrate Company'.
When infiltrating a company, you must progress through clearance levels in When infiltrating a company, you must progress through clearance levels in
the facility. Every clearance level has some form of security that the facility. Every clearance level has some form of security that
you must get past. There are several forms of security, ranging from you must get past. There are several forms of security, ranging from
high-tech security systems to armed guards. For each form of security, high-tech security systems to armed guards. For each form of security,
there are a variety of options that you can choose to try and bypass there are a variety of options that you can choose to try and bypass
the security. Examples include hacking the security, engaging in combat, the security. Examples include hacking the security, engaging in combat,
assassination, or sneaking past the security. The chance to succeed for assassination, or sneaking past the security. The chance to succeed for
each option is determined in part by your stats. So, for example, each option is determined in part by your stats. So, for example,
trying to hack the security system relies on your hacking skill, trying to hack the security system relies on your hacking skill,
whereas trying to sneak past the security relies on your agility level. whereas trying to sneak past the security relies on your agility level.
The facility has a 'security level' that affects your chance of success The facility has a 'security level' that affects your chance of success
when trying to get past a clearance level. Every time you advance to the when trying to get past a clearance level. Every time you advance to the

@ -152,6 +152,7 @@ Displays all active scripts and their RAM usage
Working with Scripts in Netscript Working with Scripts in Netscript
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TODO/Coming Soon...
Notes about how Scripts Work Offline Notes about how Scripts Work Offline
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

@ -31,7 +31,7 @@ the hostname "nova-med".
Hostnames and IP addresses are unique. This means that if one Hostnames and IP addresses are unique. This means that if one
server has the IP address "1.1.1.1" and the hostname server has the IP address "1.1.1.1" and the hostname
"some-server", then no other server in the game can have that "some-server", then no other server in the game can have that
IP address or that hostname. IP address or that hostname.
There are many :ref:`Netscript Functions <netscriptfunctions>` There are many :ref:`Netscript Functions <netscriptfunctions>`
and :ref:`terminal` commands in the game and :ref:`terminal` commands in the game
@ -49,7 +49,7 @@ certain locations in the World.
2. The home computer persists through Augmentation Installations. This means 2. The home computer persists through Augmentation Installations. This means
that you will not lose any RAM upgrades or Scripts on your that you will not lose any RAM upgrades or Scripts on your
home computer when you install Augmentations (you will home computer when you install :ref:`gameplay_augmentations` (you will
however, lose programs and messages on your home computer). however, lose programs and messages on your home computer).
The player can also purchase additional servers. This can be The player can also purchase additional servers. This can be

@ -19,6 +19,7 @@ Affects:
* Success rate of Hacking option during Infiltration * Success rate of Hacking option during Infiltration
* Time it takes to create a program * Time it takes to create a program
* Faction reputation gain when carrying out Hacking Contracts or Field Work * Faction reputation gain when carrying out Hacking Contracts or Field Work
* Company reputation gain for certain jobs
Gain experience by: Gain experience by:
@ -27,7 +28,7 @@ Gain experience by:
* Committing certain crimes * Committing certain crimes
* Infiltration * Infiltration
* Carrying out Hacking Contracts or doing Field work for Factions * Carrying out Hacking Contracts or doing Field work for Factions
* Working software/IT-related jobs at a company * Working certain jobs at a company
* Studying at a university * Studying at a university
Strength Strength
@ -47,6 +48,7 @@ Gain experience by:
* Infiltration * Infiltration
* Working out at a gym * Working out at a gym
* Doing Security/Field Work for a faction * Doing Security/Field Work for a faction
* Working certain jobs at a company
Defense Defense
^^^^^^^ ^^^^^^^
@ -67,6 +69,7 @@ Gain experience by:
* Infiltration * Infiltration
* Working out at a gym * Working out at a gym
* Doing Security/Field Work for a faction * Doing Security/Field Work for a faction
* Working certain jobs at a company
Dexterity Dexterity
^^^^^^^^^ ^^^^^^^^^
@ -85,6 +88,7 @@ Gain experience by:
* Infiltration * Infiltration
* Working out at a gym * Working out at a gym
* Doing Security/Field Work for a faction * Doing Security/Field Work for a faction
* Working certain jobs at a company
Agility Agility
^^^^^^^ ^^^^^^^
@ -103,6 +107,7 @@ Gain experience by:
* Infiltration * Infiltration
* Working out at a gym * Working out at a gym
* Doing Security/Field Work for a faction * Doing Security/Field Work for a faction
* Working certain jobs at a company
Charisma Charisma
^^^^^^^^ ^^^^^^^^

@ -2,3 +2,67 @@
Stock Market Stock Market
============ ============
The Stock Market refers to the World Stock Exchange (WSE), through which you can
buy and sell stocks in order to make money.
The WSE can be found in the 'City' tab, and is accessible in every city.
Positions: Long vs Short
^^^^^^^^^^^^^^^^^^^^^^^^
When making a transaction on the stock market, there are two types of positions:
Long and Short. A Long position is the typical scenario where you buy a stock and
earn a profit if the price of that stock increases. Meanwhile, a Short position
is the exact opposite. In a Short position you purchase shares of a stock and
earn a profit if the price of that stock decreases. This is also called 'shorting'
a stock.
NOTE: Shorting stocks is not available immediately, and must be unlocked later in the
game.
Order Types
^^^^^^^^^^^
There are three different types of orders you can make to buy or sell stocks on the exchange:
Market Order, Limit Order, and Stop Order.
Note that Limit Orders and Stop Orders are not available immediately, and must be unlocked
later in the game.
When you place a Market Order to buy or sell a stock, the order executes immediately at
whatever the current price of the stock is. For example if you choose to short a stock
with 5000 shares using a Market Order, you immediately purchase those 5000 shares in a
Short position at whatever the current market price is for that stock.
A Limit Order is an order that only executes under certain conditions. A Limit Order is
used to buy or sell a stock at a specified price or better. For example, lets say you
purchased a Long position of 100 shares of some stock at a price of $10 per share. You
can place a Limit Order to sell those 100 shares at $50 or better. The Limit Order will
execute when the price of the stock reaches a value of $50 or higher.
A Stop Order is the opposite of a Limit Order. It is used to buy or sell a stock at a
specified price (before the price gets 'worse'). For example, lets say you purchased a
Short position of 100 shares of some stock at a price of $100 per share. The current
price of the stock is $80 (a profit of $20 per share). You can place a Stop Order to
sell the Short position if the stock's price reaches $90 or higher. This can be used
to lock in your profits and limit any losses.
Here is a summary of how each order works and when they execute:
**In a LONG Position:**
A Limit Order to buy will execute if the stock's price <= order's price
A Limit Order to sell will execute if the stock's price >= order's price
A Stop Order to buy will execute if the stock's price >= order's price
A Stop Order to sell will execute if the stock's price <= order's price
**In a SHORT Position:**
A Limit Order to buy will execute if the stock's price >= order's price
A Limit Order to sell will execute if the stock's price <= order's price
A Stop Order to buy will execute if the stock's price <= order's price
A Stop Order to sell will execute if the stock's price >= order's price.

@ -5,8 +5,8 @@ Terminal
The Terminal is a console emulator program that lets you interface with all of the The Terminal is a console emulator program that lets you interface with all of the
Servers in the game. The Terminal can be accessed by clicking the 'Terminal' tab Servers in the game. The Terminal can be accessed by clicking the 'Terminal' tab
on the navigation menu on the left-hand side of the game (you may need to expand on the navigation menu on the left-hand side of the game (you may need to expand
the 'Hacking' header in order to see the 'Terminal' tab). Alternatively, the keyboard the 'Hacking' header in order to see the 'Terminal' tab). Alternatively, the :ref:`keyboard
shortcut Alt + t can be used to open the Terminal. shortcut <shortcuts>` Alt + t can be used to open the Terminal.
Configuration Configuration
------------- -------------

@ -75,7 +75,7 @@ weaken
weaken("foodnstuff"); weaken("foodnstuff");
hackAnalyzeThreads hackAnalyzeThreads
^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^
.. js:function:: hackAnalyzeThreads(hostname/ip, hackAmount) .. js:function:: hackAnalyzeThreads(hostname/ip, hackAmount)
@ -118,7 +118,7 @@ hackAnalyzePercent
This means that if hack the `foodnstuff` server, then you will steal 1% of its This means that if hack the `foodnstuff` server, then you will steal 1% of its
total money. If you `hack()` using N threads, then you will steal N% of its total total money. If you `hack()` using N threads, then you will steal N% of its total
money. money.
hackChance hackChance
^^^^^^^^^^ ^^^^^^^^^^

@ -2,7 +2,7 @@
<html lang="en"> <html lang="en">
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<title>Bitburner - development</title> <title>Bitburner</title>
<link rel="apple-touch-icon" sizes="180x180" href="dist/apple-touch-icon.png"> <link rel="apple-touch-icon" sizes="180x180" href="dist/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="dist/favicon-32x32.png"> <link rel="icon" type="image/png" sizes="32x32" href="dist/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="dist/favicon-16x16.png"> <link rel="icon" type="image/png" sizes="16x16" href="dist/favicon-16x16.png">
@ -112,7 +112,7 @@
<div id="script-editor-filename-wrapper"> <div id="script-editor-filename-wrapper">
<p id="script-editor-filename-tag"> <strong style="background-color:#555;">Script name: </strong></p> <p id="script-editor-filename-tag"> <strong style="background-color:#555;">Script name: </strong></p>
<input id="script-editor-filename" type="text" maxlength="30" tabindex="1" /> <input id="script-editor-filename" type="text" maxlength="30" tabindex="1"/>
</div> </div>
<div id="javascript-editor"></div> <div id="javascript-editor"></div>
@ -162,7 +162,7 @@
<fieldset> <fieldset>
<label for="script-editor-option-maxerr" class="tooltip">Max Error Count</label> <label for="script-editor-option-maxerr" class="tooltip">Max Error Count</label>
<input type="range" max="1000" min="50" value="200" step="1" name="script-editor-option-maxerr" id="script-editor-option-maxerr" /> <input type="range" max="1000" min="50" value="200" step="1" name="script-editor-option-maxerr" id="script-editor-option-maxerr"/>
<em id="script-editor-option-maxerror-value-label" style="font-style: normal;"></em> <em id="script-editor-option-maxerror-value-label" style="font-style: normal;"></em>
</fieldset> </fieldset>
</div> <!-- End script editor options panel --> </div> <!-- End script editor options panel -->
@ -173,7 +173,7 @@
<table id="terminal"> <table id="terminal">
<tr id="terminal-input"> <tr id="terminal-input">
<td id="terminal-input-td" tabindex="2">$ <td id="terminal-input-td" tabindex="2">$
<input type="text" id="terminal-input-text-box" class="terminal-input" tabindex="1" onfocus="this.value = this.value;" /> <input type="text" id="terminal-input-text-box" class="terminal-input" tabindex="1" onfocus="this.value = this.value;"/>
</td> </td>
</tr> </tr>
</table> </table>
@ -190,7 +190,7 @@
provides information about each script's production. The scripts are categorized by the hostname of the servers on which provides information about each script's production. The scripts are categorized by the hostname of the servers on which
they are running. </p> they are running. </p>
<p id="active-scripts-total-prod">Total online production of <p id="active-scripts-total-prod">Total online production of
Active scripts: <span class="money-gold"><span id="active-scripts-total-production-active">$0.000</span> / sec</span><br /> Active scripts: <span class="money-gold"><span id="active-scripts-total-production-active">$0.000</span> / sec</span><br/>
Total online production since last Aug installation: <span id="active-scripts-total-prod-aug-total" class="money-gold">$0.000</span> Total online production since last Aug installation: <span id="active-scripts-total-prod-aug-total" class="money-gold">$0.000</span>
(<span class="money-gold"><span id="active-scripts-total-prod-aug-avg" class="money-gold">$0.000</span> / sec</span>)</p> (<span class="money-gold"><span id="active-scripts-total-prod-aug-avg" class="money-gold">$0.000</span> / sec</span>)</p>
<ul class="active-scripts-list" id="active-scripts-list" style="list-style: none;"> <ul class="active-scripts-list" id="active-scripts-list" style="list-style: none;">
@ -204,19 +204,19 @@
The Hacknet is a global, decentralized network of machines. It is used by hackers all around The Hacknet is a global, decentralized network of machines. It is used by hackers all around
the world to anonymously share computing power and perform distributed cyberattacks without the the world to anonymously share computing power and perform distributed cyberattacks without the
fear of being traced. fear of being traced.
<br /><br /> <br/><br/>
Here, you can purchase a Hacknet Node, a specialized machine that can connect and contribute its Here, you can purchase a Hacknet Node, a specialized machine that can connect and contribute its
resources to the Hacknet network. This allows you to take a small percentage of profits resources to the Hacknet network. This allows you to take a small percentage of profits
from hacks performed on the network. Essentially, you are renting out your Node's computing power. from hacks performed on the network. Essentially, you are renting out your Node's computing power.
<br /><br /> <br/><br/>
Each Hacknet Node you purchase will passively earn you money. Each Hacknet Node can be upgraded Each Hacknet Node you purchase will passively earn you money. Each Hacknet Node can be upgraded
in order to increase its computing power and thereby increase the profit you earn from it. in order to increase its computing power and thereby increase the profit you earn from it.
</p> </p>
<a id="hacknet-nodes-purchase-button" class="a-link-button"> Purchase Hacknet Node </a> <a id="hacknet-nodes-purchase-button" class="a-link-button"> Purchase Hacknet Node </a>
<br /> <br/>
<div id="hacknet-nodes-money-multipliers-div"> <div id="hacknet-nodes-money-multipliers-div">
<p id="hacknet-nodes-money"> <p id="hacknet-nodes-money">
<span>Money:</span><span id="hacknet-nodes-player-money" class="money-gold"></span><br /> <span>Money:</span><span id="hacknet-nodes-player-money" class="money-gold"></span><br/>
<span>Total Hacknet Node Production:</span><span id="hacknet-nodes-total-production" class="money-gold"></span> <span>Total Hacknet Node Production:</span><span id="hacknet-nodes-total-production" class="money-gold"></span>
</p> </p>
<span id="hacknet-nodes-multipliers"> <span id="hacknet-nodes-multipliers">
@ -474,8 +474,7 @@
<!-- Tutorial content --> <!-- Tutorial content -->
<div id="tutorial-container" class="generic-menupage-container"> <div id="tutorial-container" class="generic-menupage-container">
<a id="tutorial-getting-started-link" class="a-link-button" <a id="tutorial-getting-started-link" class="a-link-button" href="http://bitburner.wikia.com/wiki/Chapt3rs_Guide_to_Getting_Started_with_Bitburner" target="_blank"> Getting Started </a>
href="http://bitburner.wikia.com/wiki/Chapt3rs_Guide_to_Getting_Started_with_Bitburner" target="_blank"> Getting Started </a>
<a id="tutorial-networking-link" class="a-link-button"> Servers & Networking </a> <a id="tutorial-networking-link" class="a-link-button"> Servers & Networking </a>
<a id="tutorial-hacking-link" class="a-link-button"> Hacking </a> <a id="tutorial-hacking-link" class="a-link-button"> Hacking </a>
<a id="tutorial-scripts-link" class="a-link-button"> Scripts </a> <a id="tutorial-scripts-link" class="a-link-button"> Scripts </a>
@ -484,8 +483,7 @@
<a id="tutorial-jobs-link" class="a-link-button"> Companies and Infiltration </a> <a id="tutorial-jobs-link" class="a-link-button"> Companies and Infiltration </a>
<a id="tutorial-factions-link" class="a-link-button"> Factions </a> <a id="tutorial-factions-link" class="a-link-button"> Factions </a>
<a id="tutorial-augmentations-link" class="a-link-button"> Augmentations </a> <a id="tutorial-augmentations-link" class="a-link-button"> Augmentations </a>
<a id="tutorial-shortcuts-link" class="a-link-button" <a id="tutorial-shortcuts-link" class="a-link-button" href="https://bitburner.wikia.com/wiki/Shortcuts" target="_blank"> Keyboard Shortcuts </a>
href="https://bitburner.wikia.com/wiki/Shortcuts" target="_blank"> Keyboard Shortcuts </a>
<a id="tutorial-back-button" class="a-link-button"> Back </a> <a id="tutorial-back-button" class="a-link-button"> Back </a>
<p id="tutorial-text"> </p> <p id="tutorial-text"> </p>
@ -576,7 +574,7 @@
<p id="location-slums-description"> <p id="location-slums-description">
You have entered the Slums, a poverty-ridden district filled with gangs, criminals, and You have entered the Slums, a poverty-ridden district filled with gangs, criminals, and
other shadowy entities. The city's government and police have neglected this area for years... other shadowy entities. The city's government and police have neglected this area for years...
<br /><br /><br /> <br/><br/><br/>
In the Slums, you can commit crimes to earn money and experience. Crime attempts are not always In the Slums, you can commit crimes to earn money and experience. Crime attempts are not always
successful. Your chance at successfully committing a crime is determined by your stats. successful. Your chance at successfully committing a crime is determined by your stats.
</p> </p>
@ -623,7 +621,7 @@
<div id="stock-market-container" class="generic-menupage-container"> <div id="stock-market-container" class="generic-menupage-container">
<p> <p>
Welcome to the World Stock Exchange (WSE)! <br /><br /> Welcome to the World Stock Exchange (WSE)! <br/><br/>
To begin trading, you must first purchase an account. WSE accounts will persist To begin trading, you must first purchase an account. WSE accounts will persist
after you 'reset' by installing Augmentations. after you 'reset' by installing Augmentations.
@ -636,7 +634,7 @@
TIX, short for Trade Information eXchange, is the communications protocol supported by the WSE. TIX, short for Trade Information eXchange, is the communications protocol supported by the WSE.
Purchasing access to the TIX API lets you write code to create your own algorithmic/automated Purchasing access to the TIX API lets you write code to create your own algorithmic/automated
trading strategies. trading strategies.
<br /><br /> <br/><br/>
If you purchase access to the TIX API, you will retain that access even after If you purchase access to the TIX API, you will retain that access even after
you 'reset' by installing Augmentations. you 'reset' by installing Augmentations.
</p> </p>
@ -646,7 +644,7 @@
<p> <p>
Four Sigma's (4S) Market Data Feed provides information about stocks Four Sigma's (4S) Market Data Feed provides information about stocks
that will help your trading strategies. that will help your trading strategies.
<br /><br /> <br/><br/>
If you purchase access to 4S Market Data and/or the 4S TIX API, you will If you purchase access to 4S Market Data and/or the 4S TIX API, you will
retain that access even after you 'reset' by installing Augmentations. retain that access even after you 'reset' by installing Augmentations.
</p> </p>
@ -664,7 +662,7 @@
<a id="stock-market-mode" class="a-link-button tooltip"></a> <a id="stock-market-mode" class="a-link-button tooltip"></a>
<a id="stock-market-expand-tickers" class="a-link-button tooltip">Expand tickers</a> <a id="stock-market-expand-tickers" class="a-link-button tooltip">Expand tickers</a>
<a id="stock-market-collapse-tickers" class="a-link-button tooltip">Collapse tickers</a> <a id="stock-market-collapse-tickers" class="a-link-button tooltip">Collapse tickers</a>
<br /><br /> <br/><br/>
<input id="stock-market-watchlist-filter" type="text" placeholder="Filter Stocks by symbol (comma-separated list)"/> <input id="stock-market-watchlist-filter" type="text" placeholder="Filter Stocks by symbol (comma-separated list)"/>
<a id="stock-market-watchlist-filter-update" class="a-link-button"> Update Watchlist </a> <a id="stock-market-watchlist-filter-update" class="a-link-button"> Update Watchlist </a>
<ul id="stock-market-list" style="list-style:none;"> <ul id="stock-market-list" style="list-style:none;">
@ -694,7 +692,7 @@
<div id="yes-no-text-input-box-container" class="popup-box-container"> <div id="yes-no-text-input-box-container" class="popup-box-container">
<div id="yes-no-text-input-box-content" class="popup-box-content"> <div id="yes-no-text-input-box-content" class="popup-box-content">
<p id="yes-no-text-input-box-text"> </p> <p id="yes-no-text-input-box-text"> </p>
<input type="text" id="yes-no-text-input-box-input" pattern="[a-zA-Z0-9-_]" maxlength="30" /> <input type="text" id="yes-no-text-input-box-input" pattern="[a-zA-Z0-9-_]" maxlength="30"/>
<button id="yes-no-text-input-box-yes" class="popup-box-button"> Yes </button> <button id="yes-no-text-input-box-yes" class="popup-box-button"> Yes </button>
<button id="yes-no-text-input-box-no" class="popup-box-button"> No </button> <button id="yes-no-text-input-box-no" class="popup-box-button"> No </button>
</div> </div>
@ -706,7 +704,7 @@
<p id="faction-invitation-box-text"> </p> <p id="faction-invitation-box-text"> </p>
<p id="faction-invitation-box-message"> </p> <p id="faction-invitation-box-message"> </p>
<p id="faction-invitation-box-warning"> <p id="faction-invitation-box-warning">
Would you like to join? <br /> <br /> Would you like to join? <br/> <br/>
Warning: Joining this faction may prevent you from joining other factions during this run! Warning: Joining this faction may prevent you from joining other factions during this run!
</p> </p>
<button id="faction-invitation-box-yes" class="popup-box-button"> Yes </button> <button id="faction-invitation-box-yes" class="popup-box-button"> Yes </button>
@ -719,8 +717,8 @@
<div id="infiltration-box-content" class="popup-box-content"> <div id="infiltration-box-content" class="popup-box-content">
<p id="infiltration-box-text"> </p> <p id="infiltration-box-text"> </p>
<button id="infiltration-box-sell" class="a-link-button"> Sell on Black Market </button> <br /><br /> <button id="infiltration-box-sell" class="a-link-button"> Sell on Black Market </button> <br/><br/>
<select id="infiltration-faction-select"> </select> <br /> <select id="infiltration-faction-select"> </select> <br/>
<button id="infiltration-box-faction" class="a-link-button"> Give to Faction for Reputation </button> <button id="infiltration-box-faction" class="a-link-button"> Give to Faction for Reputation </button>
</div> </div>
@ -806,7 +804,7 @@
<div id="game-options-content" class="game-options-box"> <div id="game-options-content" class="game-options-box">
<button id="game-options-close-button">&times;</button> <button id="game-options-close-button">&times;</button>
<h1> Game Options </h1> <h1> Game Options </h1>
<br /> <br/>
<div id="game-options-left-panel"> <div id="game-options-left-panel">
<!-- Netscript execution time --> <!-- Netscript execution time -->
<fieldset> <fieldset>
@ -818,7 +816,7 @@
</span> </span>
</label> </label>
<input type ="range" max="100" min="10" step="1" name="settingsNSExecTimeRangeVal" id="settingsNSExecTimeRangeVal" value="25" /> <input type="range" max="100" min="10" step="1" name="settingsNSExecTimeRangeVal" id="settingsNSExecTimeRangeVal" value="25"/>
<em id="settingsNSExecTimeRangeValLabel" style="font-style: normal;"></em> <em id="settingsNSExecTimeRangeValLabel" style="font-style: normal;"></em>
</fieldset> </fieldset>
@ -832,7 +830,7 @@
</span> </span>
</label> </label>
<input type="range" max="100" min="20" step="1" name="settingsNSLogRangeVal" id="settingsNSLogRangeVal" value="50" /> <input type="range" max="100" min="20" step="1" name="settingsNSLogRangeVal" id="settingsNSLogRangeVal" value="50"/>
<em id="settingsNSLogRangeValLabel" style="font-style: normal;"></em> <em id="settingsNSLogRangeValLabel" style="font-style: normal;"></em>
</fieldset> </fieldset>
@ -846,7 +844,7 @@
</span> </span>
</label> </label>
<input type="range" max="100" min="20" step="1" name="settingsNSPortRangeVal" id="settingsNSPortRangeVal" value="50" /> <input type="range" max="100" min="20" step="1" name="settingsNSPortRangeVal" id="settingsNSPortRangeVal" value="50"/>
<em id="settingsNSPortRangeValLabel" style="font-style: normal;"></em> <em id="settingsNSPortRangeValLabel" style="font-style: normal;"></em>
</fieldset> </fieldset>
@ -858,7 +856,7 @@
</span> </span>
</label> </label>
<input type="range" max="600" min="0" step="1" name="settingsAutosaveIntervalVal" id="settingsAutosaveIntervalVal" value="60" /> <input type="range" max="600" min="0" step="1" name="settingsAutosaveIntervalVal" id="settingsAutosaveIntervalVal" value="60"/>
<em id="settingsAutosaveIntervalValLabel" style="font-style: normal;"></em> <em id="settingsAutosaveIntervalValLabel" style="font-style: normal;"></em>
</fieldset> </fieldset>
@ -970,7 +968,7 @@
<button id="save-game-link" class="a-link-button"> Save Game </button> <button id="save-game-link" class="a-link-button"> Save Game </button>
<button id="delete-game-link" class="a-link-button"> Delete Game </button> <button id="delete-game-link" class="a-link-button"> Delete Game </button>
<button id="export-game-link" class="a-link-button"> Export Game </button> <button id="export-game-link" class="a-link-button"> Export Game </button>
<input type="file" id="import-game-file-selector" name="file" /> <input type="file" id="import-game-file-selector" name="file"/>
<button id="import-game-link" class="a-link-button"> Import Game </button> <button id="import-game-link" class="a-link-button"> Import Game </button>
<button id="copy-save-to-clipboard-link" class="std-button"> <button id="copy-save-to-clipboard-link" class="std-button">
Copy Save data to Clipboard Copy Save data to Clipboard
@ -1012,11 +1010,5 @@
<!-- Misc Scripts --> <!-- Misc Scripts -->
<script src="src/ThirdParty/raphael.min.js"></script> <script src="src/ThirdParty/raphael.min.js"></script>
<script src="src/ThirdParty/Treant.js"></script> <script src="src/ThirdParty/Treant.js"></script>
<!--
<script src="/bitburner/src/ThirdParty/raphael.min.js"></script>
<script src="/bitburner/src/ThirdParty/Treant.js"></script>
<script src="/bitburner-beta/src/ThirdParty/raphael.min.js"></script>
<script src="/bitburner-beta/src/ThirdParty/Treant.js"></script>
-->
</html> </html>

@ -518,6 +518,7 @@ export let CONSTANTS: IMap<any> = {
** Slightly reduced the amount of money offered to you by investment firms ** Slightly reduced the amount of money offered to you by investment firms
** Employee salaries now slowly increase over time ** Employee salaries now slowly increase over time
** Slightly reduced the effect "Real Estate" has on the Production Multiplier for the Agriculture industry ** Slightly reduced the effect "Real Estate" has on the Production Multiplier for the Agriculture industry
** Changed the way your Corporation's value is calculated (this is what determines stock price)
* Added getOrders() Netscript function to the TIX API * Added getOrders() Netscript function to the TIX API
* Added getAugmentationPrereq() Singularity function (by havocmayhem) * Added getAugmentationPrereq() Singularity function (by havocmayhem)

@ -2938,8 +2938,6 @@ Corporation.prototype.goPublic = function() {
"and you will no longer own them. Your Corporation will receive " + "and you will no longer own them. Your Corporation will receive " +
numeralWrapper.format(initialSharePrice, '$0.000a') + " per share " + numeralWrapper.format(initialSharePrice, '$0.000a') + " per share " +
"(the IPO money will be deposited directly into your Corporation's funds).<br><br>" + "(the IPO money will be deposited directly into your Corporation's funds).<br><br>" +
"Furthermore, issuing more shares now will help drive up " +
"your company's stock price in the future.<br><br>" +
"You have a total of " + numeralWrapper.format(this.numShares, "0.000a") + " of shares that you can issue.", "You have a total of " + numeralWrapper.format(this.numShares, "0.000a") + " of shares that you can issue.",
}); });
var yesBtn; var yesBtn;
@ -2988,7 +2986,7 @@ Corporation.prototype.goPublic = function() {
} }
Corporation.prototype.updateSharePrice = function() { Corporation.prototype.updateSharePrice = function() {
var targetPrice = this.determineValuation() / (TOTALSHARES - this.issuedShares); var targetPrice = this.determineValuation() / (1.5 * TOTALSHARES - this.numShares);
if (this.sharePrice <= targetPrice) { if (this.sharePrice <= targetPrice) {
this.sharePrice *= (1 + (Math.random() * 0.01)); this.sharePrice *= (1 + (Math.random() * 0.01));
} else { } else {