Commit Graph

5440 Commits

Author SHA1 Message Date
Snarling
d74c380e42
WIP: Crimes streamlining. (#138)
* streamline crimes

* Crimes object is now indexed by CrimeType enum instead of an entirely new set of keys that aren't used for anything else. This eliminated a lot of instances of iterating to find the right crime for a given CrimeType.
* Removed unused `None` CrimeType which allowed typing Crimes as a Record<CrimeType, Crime>.
* Added slums tooltip text as a crime property, to allow streamlining slums.
* Refactor slums location - removed repetitive code, rerenders 1/sec to update chances
* Fix bugged descriptive text when sleeve is committing a crime (was "is attempting to DRUGS", now uses correct text e.g. "to deal drugs").
* Remove unused and now unneeded NewCrimeType enum. Values were identical to existing CrimeType values after removing unused None.

* Add CrimeType enum in NetscriptDefinition.d.ts

* Also update broken ToastVariant type. Better support for enums in player scripts.
* Still todo is modifying some NS functions to expect CrimeType as input (rough crime names will continue to work to avoid breaking scripts)

* Expect enum use for crime functions

Affected functions:
* ns.singularity.commitCrime
* ns.singularity.getCrimeChance
* ns.singularity.getCrimeStats
* ns.sleeve.setToCommitCrime
* formulas.work.crimeGains (param type only)

- Affected functions still will fall back to rough names, except formulas.work.crimeGains which already only accepted the enum members.
- Some documentation changes:
  * examples updated to use uppercase expected form.
  * Note on sleeve.setToCommitCrime that it only accepts exact matches removed. It already, and still does, accept any rough crime name (but the enum is expected input).
  * note about needing to use isBusy to schedule crimes remove - crimes autoloop now.
  * Since expected string inputs are documented directly on the type, removed list of crimes from sleeve.setToCommitCrimes
2022-10-21 11:57:37 -04:00
Snarling
19e8946d9a
fix Stock Initializer (#137)
* stock symbols initializer is called by stockmarket initializer
* remove redundant second initStockMarketFn function
2022-10-20 00:38:19 -04:00
Snarling
1d0d4f8da6
fix grow doc (#136) 2022-10-19 17:25:54 -04:00
Snarling
3af6e7db45
Remove incorrect note about disableLog (#135) 2022-10-19 17:20:31 -04:00
Snarling
2cc6e41a7e
uncaught promises no longer spam console (#134) 2022-10-19 17:13:15 -04:00
Snarling
124e64379a
Improve unexpected error message (#133)
* Add ws details if available
* Add likely cause of error
* Attempt to display error
2022-10-19 16:32:39 -04:00
Snarling
b6efe46d4c
slashGame fix (#132)
* difficulty scales correct phase
* player loses game immediately after guard attacks
2022-10-19 15:24:29 -04:00
Olivier Gagnon
af1a1ac58d Rename lots of reference from old to new repo 2022-10-20 03:56:59 +11:00
hydroflame
0f46d72a01
Merge pull request #4245 from dbachran/4239-adjust-write-documentation
MISC: Adjust write() documentation, only accepts strings now
2022-10-19 11:46:08 -04:00
hydroflame
51f8d29e7a
Merge pull request #4247 from quacksouls/doc-prompt
DOC: `ns.prompt()`: some cleanup and examples
2022-10-19 11:45:49 -04:00
hydroflame
532b32c51a
Merge pull request #4248 from borisflagell/hospital
UI: #4242 Fix hospital ReactComponent
2022-10-19 11:45:20 -04:00
hydroflame
1b7b4fa466
Merge pull request #4249 from Snarling/typeAssertion
NETSCRIPT: Fix ns.prompt typechecking
2022-10-19 11:44:59 -04:00
hydroflame
b25b4b5e27
Merge pull request #4255 from quacksouls/doc-gang-canRecruitMember
DOC: `gang.canRecruitMember()`: typo fix and elaboration
2022-10-19 11:44:03 -04:00
Olivier Gagnon
c3b2c6396c lint and made a some code more robust to older save file 2022-10-16 14:25:42 -04:00
Duck McSouls
6f1822bf4d DOC: gang.canRecruitMember(): when this returns true or false
Elaborate on the conditions under which the function would return true or false.  In particular, after a gang is successfully created the function always return true so the player can recruit a number of founding members to their gang.  When the gang is at capacity, the function always return false.  In between, the function returns true or false depending on the amount of respect the player has.
2022-10-16 18:34:34 +11:00
Duck McSouls
ac0e7c9595 DOC: gang.canRecruitMember(): typo fixes
Some typographical fixes.
2022-10-16 17:56:45 +11:00
Duck McSouls
93090691b5 DOC: ns.prompt(): some examples
Add some examples to illustrate the use of the various options.  As per suggestion by @Snarling, simplify the examples on free-form text box and drop-down list.
2022-10-15 11:27:56 +11:00
Duck McSouls
473e6a2674 DOC: ns.prompt(): explain the various options
Elaborate on the effects of `options.type` and `options.choices`.  Break the explanation into bullet points for clearer presentation.  Thanks to @Snarling for pointing out that the default is to create a boolean dialog box.
2022-10-15 11:03:36 +11:00
omuretsu
9908f4aaa5 Error message fixes 2022-10-14 11:08:24 -04:00
omuretsu
7683990d17 format and lint 2022-10-14 11:03:50 -04:00
omuretsu
ad0be471ce fix ns.prompt typechecking
Introduced some new type assertion functions, initial step in larger type safety rework.
2022-10-14 11:00:29 -04:00
borisflagell
baa149fa80 Update HospitalLocation.tsx
Add auto-refreshing to the component
2022-10-14 14:13:53 +03:00
borisflagell
1b61ec0e12 Update HospitalLocation.tsx 2022-10-14 13:59:56 +03:00
Duck McSouls
a368c6904e DOC: ns.prompt(): a typo fix
A simple typographical fix.
2022-10-14 14:50:35 +11:00
Daniel Bachran
5acd5e84a3 #4239 Adjust write() documentation
write() only accepts strings now.
2022-10-13 17:45:40 +02:00
Olivier Gagnon
6c84d64e67 rm unecessary return type 2022-10-13 01:07:10 -04:00
Olivier Gagnon
4c4f050214 simplify get money source 2022-10-13 00:55:57 -04:00
Olivier Gagnon
8ff840edfa getBitnodeM takes 2 arg 2022-10-13 00:51:53 -04:00
Olivier Gagnon
ae5fc168bf Add getMoneySources 2022-10-13 00:10:59 -04:00
hydroflame
d0fe28f8fb
Merge pull request #4220 from cptpiepmatz/fix-nano-not-opening-root-script-if-in-dir
UI: Fixed `nano` not correctly opening a script in root of a server if `cd`'d into a directory
2022-10-12 23:58:59 -04:00
hydroflame
14914eb190
Merge pull request #4229 from borisflagell/wxsQDSSQF
SLEEVE: Fix #4194 Bladeburner Contract in Sleeve were not giving proper reward.
2022-10-12 23:54:15 -04:00
hydroflame
93769c7089
Merge pull request #4224 from quacksouls/doc-scan
DOC: `ns.scan()`: typo fixes and add 2 examples
2022-10-12 23:52:34 -04:00
hydroflame
aa39728f67
Merge pull request #4230 from borisflagell/SoA_RepCost
SOA: Fix #3884 Implement unused SoARepMult constant to SoA's augmentations price + linked UI modification
2022-10-12 23:52:14 -04:00
hydroflame
50bc41bf5b
Merge pull request #4231 from borisflagell/TypoRepReq#3811
API: Fix #3811 Update NetscriptDefinitions.d.ts
2022-10-12 23:51:39 -04:00
hydroflame
c1ab4e82f2
Merge pull request #4232 from borisflagell/UI_reputation_color
UI: Fix #3719 Inconsistent colors of reputation gains on Install Augmentations screen
2022-10-12 23:51:23 -04:00
hydroflame
74a1b9b180
Merge pull request #4234 from Jakob002/Jakob002-patch-1
MISC: Fixed typo in Literatures.ts
2022-10-12 23:51:10 -04:00
hydroflame
68e90b8e6e
Merge pull request #4236 from Snarling/typeFix
NETSCRIPT: Fix internal typechecking of functions
2022-10-12 23:50:22 -04:00
omuretsu
e192ad53ec Actually format + lint 2022-10-12 10:18:56 -04:00
Jakob002
c2ed9067e0
MISC: message formatting
Replaced someArray.toString() with someArray.join(", "). This will return "foo, bar, baz" (with spaces) instead of "foo,bar,baz" (no spaces).
2022-10-12 15:16:10 +02:00
omuretsu
7a384d53f4 typefix netscriptFunctions (see desc)
* Types for InternalFunction and ExternalFunction have been modified to actually typecheck ns functions against docs.
* Internal functions are required to use unknown for any params on the inner function.
* Return types for internal function inner-function must match the respective external function.
* Added new typecheck assertion function for asserting dynamic object types, to allow unknownifying params that were previously hardcoded objec structures.
* Because type assertion for parameter types and return types is enforced by InternalAPI, removed all duplicate type declarations on NetscriptFunction params and returns.
2022-10-12 08:49:27 -04:00
Jakob002
fc50625dcf
Fixed typo in Literatures.ts 2022-10-12 08:47:03 +02:00
omuretsu
41b6f0b87b add hoop before exposing 2022-10-11 21:02:04 -04:00
omuretsu
7d07f44b3e move to global scope 2022-10-11 20:01:10 -04:00
omuretsu
84b99c569a extra printRaw function 2022-10-11 16:07:45 -04:00
borisflagell
b3f2fe5e02 Update PlayerMultipliers.tsx 2022-10-11 19:22:06 +03:00
borisflagell
def2cb281b Update AugmentationsPage.tsx 2022-10-11 19:03:58 +03:00
borisflagell
b2886ba623 Update NetscriptDefinitions.d.ts 2022-10-11 18:45:38 +03:00
borisflagell
6c625a5ca3 Update AugmentationsPage.tsx 2022-10-11 18:30:41 +03:00
borisflagell
5c1777a6d4 Update AugmentationsPage.tsx
Tooltip's text refining
2022-10-11 18:29:17 +03:00
borisflagell
125cd04383 Fix #3884
Fix #3884
2022-10-11 18:12:06 +03:00
borisflagell
bbe6421b06 Update Bladeburner.tsx
Prettier
2022-10-11 15:33:55 +03:00
borisflagell
f3becee15b Fix Bladeburner Contract in Sleeve 2022-10-11 15:25:16 +03:00
Duck McSouls
b03288a700 DOC: ns.scan(): add 2 examples
The first example shows how to use `ns.scan()` without passing an argument.  The second example uses `ns.scan()` by passing the hostname of a target server.  Both examples can be written more succinctly by using the `forEach()` method of array, but for the purposes of illustration the `for` loop should be easier for beginners to read.
2022-10-11 18:48:47 +11:00
Duck McSouls
afe6a837c3 DOC: ns.sleeve.setToCommitCrime(): add 1 example
An example on how to set a sleeve to commit a crime.  The example shows that sleeves are indexed from 0.
2022-10-10 20:49:33 +11:00
Duck McSouls
c728c550f5 DOC: ns.sleeve.setToCommitCrime(): add all crimes a sleeve can commit
Add a list of crimes that a sleeve can commit.  Update the parameter documentation to refer to this list.
2022-10-10 13:18:00 +11:00
Duck McSouls
304b7645b0 DOC: ns.sleeve.setToCommitCrime(): starting index of sleeves
Document the index of the first sleeve.  Sleeves are indexed starting from zero, i.e. 0.  Increment by 1 to get the index of the next sleeve.  And so on.
2022-10-10 12:47:20 +11:00
Duck McSouls
67f5d60116 DOC: ns.scan(): typo fixes
Some typographical fixes in the documentation of the function `ns.scan()`.  The function returns an array, not a string.
2022-10-10 09:55:31 +11:00
Olivier Gagnon
f803355335 fix doc 2022-10-09 18:48:58 -04:00
Olivier Gagnon
7a89c0a1bb regen doc 2022-10-09 18:46:13 -04:00
Olivier Gagnon
cbb7f58231 Make the main player object an alias, makes it easier to import 2022-10-09 18:42:14 -04:00
Tim Hesse
7121b456f4 fix: nano does not open root script if cd'd into a dir 2022-10-09 14:49:18 +02:00
Olivier Gagnon
3c03ac4f18 fix fileExists not finding coding contrafcts 2022-10-09 02:57:43 -04:00
Olivier Gagnon
f4668b21ca functions to generate dummy contracts 2022-10-09 02:56:11 -04:00
Olivier Gagnon
5d4b72e1d1 Added some purchased server functions 2022-10-09 02:32:13 -04:00
Olivier Gagnon
0fdf74ceeb typo 2022-10-09 01:32:44 -04:00
Olivier Gagnon
f6f023eeb4 Fix tons of typos 2022-10-09 01:25:31 -04:00
hydroflame
f8a3a046de
Merge pull request #4156 from G4mingJon4s/contractFix
Coding Contract: Saving and reloading no longer generates extra coding contracts.
2022-10-09 00:31:42 -04:00
hydroflame
608ea0ba59
Merge pull request #4196 from connertennery/4125
INFILTRATION: Slash minigame fixed so attacking when the guard is preparing doesn't cause failure, fixed indicator when player has Might of Ares augmentation
2022-10-09 00:29:59 -04:00
hydroflame
87ad634859
Merge pull request #4201 from stalefishies/has-augmentation-fix
MISC: Fix bug in person.hasAugmentation
2022-10-09 00:27:05 -04:00
hydroflame
b0ba0b30b5
Merge pull request #4211 from fdellwing/patch-2
FACTION: Include BN multiplier in faction donation
2022-10-09 00:26:16 -04:00
hydroflame
0e26515c81
Merge pull request #4213 from borisflagell/SleeveZOE
STANEK: Reapply aug's multiplier to sleeve when applying Stanek gift to them
2022-10-09 00:25:52 -04:00
hydroflame
c930487c21
Merge pull request #4215 from borisflagell/crime-sleeve
SLEEVE: Fixes 2 issues in Sleeve's implementation of crime work
2022-10-09 00:25:13 -04:00
hydroflame
a5b2512269
Merge pull request #4205 from Snarling/ramTestFix
TESTS: Refined ram calculation tests
2022-10-09 00:23:04 -04:00
hydroflame
b4d6ead5d2
Merge pull request #4206 from quacksouls/doc-exec
DOC: `ns.exec()`: typo fixes and clean presentation
2022-10-09 00:22:54 -04:00
hydroflame
ed0a28d292
Merge pull request #4207 from quacksouls/doc-prettier
DOC: no trailing whitespace
2022-10-09 00:22:25 -04:00
borisflagell
6d86852969 FIX crime by sleeve
Bitnode multiplier was applied twice in th UI.
Sleeve's multiplier weren't applied (neither in UI, nor engine).
2022-10-08 17:19:20 +03:00
borisflagell
08b6c7a177 Fix #4195
Whenever StanekGift updated Sleeve's mult,
all mult were reset to default value (1.0 usually).
then stanek mult were merged.
but aug's mults never were.

=> Added a small loop to StanekGift updateMults() which reapply Aug's mult.
2022-10-08 15:28:51 +03:00
Duck McSouls
1d739f295c DOC: gang task: typo fix
The current version `black mail` should be `blackmail` because the description is referring to the crime of blackmail.
2022-10-08 14:21:30 +11:00
Fabian Dellwing
ea39e5e1f4
Include BN multiplier in faction donation 2022-10-07 21:28:19 +02:00
Duck McSouls
351d769122 DOC: no trailing whitespace
Remove some trailing whitespaces in `src/ScriptEditor/NetscriptDefinitions.d.ts` because `npm run format` complains about them.  The trailing whitespaces were introduced in one of my earlier patches.  Sorry about this :-(
2022-10-06 23:29:06 +11:00
Duck McSouls
e3ace9f6d5 DOC: ns.exec(): break example comments into multiple lines
The comment of each example is so long that, in the generated documentation for `ns.exec()` shown at

https://github.com/danielyxie/bitburner/blob/dev/markdown/bitburner.ns.exec.md

you must use the horizontal scrollbar to read the whole comment.  Even if you maximize the browser window, you must still use the horizontal scrollbar to read the whole comment.  Tested on Brave, Chrome, Firefox, and Opera.  Fix this by limiting each line of comment to at most 90 characters.
2022-10-06 22:56:01 +11:00
Duck McSouls
5edcdaad81 DOC: ns.exec(): typo fixes
Some typographical fixes in the documentation of `ns.exec()`.  Link to the function `ns.run()`.  Currently, the line `* * @example` causes API Extractor to output an asterisk (i.e. `*`) between the two code examples.  The function `ns.exec()` calls the function `runScriptFromScript()` from `src/NetscriptWorker.ts`, which uses the floor function to round down the number of threads.
2022-10-06 22:34:00 +11:00
Snarling
0310a98237 Lint+format fix? 2022-10-05 15:29:56 -04:00
Snarling
068533cd2f format, lint, more enums, revert fn rename 2022-10-05 14:52:48 -04:00
Snarling
8bb88a5080 Better RamCost testing (see desc)
* RamCostGenerator will have an error if ramcosts are defined for nonexistent functions, in addition to error if not all functions have ram costs defined
* Removed a few random blank comment lines in NetscriptDefinitions.d.ts
* RamCalculation.test.ts checks exact expected static and dynamic ram usage from (almost) every function, based on defined RamCosts in RamCostGenerator.
2022-10-05 10:42:07 -04:00
Staszek Welsh
ad8c7b7ffe Fix change in behaviour of person.hasAugmentation 2022-10-04 22:55:35 +01:00
Conner Tennery
40e8e82b6d
Merge branch 'dev' into 4125 2022-10-04 09:39:12 -07:00
hydroflame
4d1e72bf7a
Merge pull request #4172 from Snarling/IPs-fix
CCT: Generate IPs contract type accepts properly formatted js array
2022-10-04 11:58:26 -04:00
hydroflame
075daf6fac
Merge pull request #4175 from mycroftjr/patch-2
BLADEBURNER: Make Datamancer apply to Tracking
2022-10-04 11:47:46 -04:00
hydroflame
5b699fa19f
Merge pull request #4188 from quacksouls/doc-stock
DOC: `stock.getPrice()`: typo fixes and update examples
2022-10-04 11:47:24 -04:00
hydroflame
2b8ced4fff
Merge pull request #4182 from OverlordQ/patch-1
MISC: Remove spurious console spam
2022-10-04 11:45:09 -04:00
hydroflame
774c3ef402
Merge pull request #4185 from quacksouls/doc-print
DOC: `print()` and friends: typo fixes and examples
2022-10-04 11:45:01 -04:00
Snarling
361466b7fa unasync trywriteport 2022-10-04 07:59:50 -04:00
Snarling
aa80cf6451 See description
Reverted ToastVariant back to an enum internally. Still exposed to player as just possible strings.
Changed all 1-line documentation comments to actually be 1-line. Moved some because they were not providing documentation for the thing they were trying to.
2022-10-04 06:40:10 -04:00
Snarling
50f14b4f58 Commit1 2022-10-03 12:12:16 -04:00
Conner Tennery
0d6b6b404d
fix "Slash when his guard is down!" actually means "Slash when he's attacking!" Also the Might of Ares timer is wrong. #4125
- Added ignoreAugment_WKSharmonizer to GameTimer to allow for strict, unmodified timers
- Changed SlashGame failure check
- Changed `timeUntilAttacking` value so the progress bar in SlashGame is accurate
2022-10-03 01:42:17 -07:00
Duck McSouls
01e7ce2a05 DOC: stock.getPrice(): a simple example
Fixes #4184. The hard-coded stock symbol `"FISG"` should be `"FSIG"`.
2022-10-02 11:39:54 +11:00
Snarling
ab56d18e1e group initializers 2022-10-01 15:49:23 -04:00
Snarling
3addda7173 format and lint 2022-10-01 15:15:36 -04:00
Snarling
9774235404 initial test fix attempt 2022-10-01 15:03:47 -04:00