Commit Graph

47 Commits

Author SHA1 Message Date
catloversg
783120c886
FEATURE: BitNode options (#1411) 2024-07-14 14:30:30 -07:00
David Walker
06553d9700
BUGFIX: Fix "Router called before initialization" race (#1474)
If the game takes long enough to load, certain counters can become
eligible to run as soon as Engine.start() runs. When this happens,
eventually Router.page() is called, which throws an Error since Router
isn't initialized yet. (Dropping a breakpoint before Engine.start() and
waiting at least 30 seconds is enough to reliably repro, but I have seen
this both live and in tests.)

This fixes it so that Router.page() is valid immediately, returning a
value of Page.LoadingScreen. It also removes the isInitialized field,
since this is now redundant. Trying to switch pages is still an error,
but that doesn't happen without user input, whereas checking the current
page is quite common.

This also consolidates a check for "should we show toasts" behind a
function in Router, making the logic central and equal for a few
usecases. This means (for instance) that the "autosave is disabled"
logic won't run during infiltration. (The toast should have already been
suppressed.)
2024-07-07 22:13:37 -07:00
Jesse Clark
ecc63eb07e
FACTIONS: Fix for faction names staying scrambled after joining (#968) 2023-12-07 20:53:28 -05:00
Jesse Clark
fdcb8306d9
FACTIONS: Add "Rumors" system for learning about faction join requirements (#888) 2023-11-02 10:20:24 -04:00
Michael Ficocelli
79b677973b
MESSAGES: Re-implement limit on Icarus messages after a bitnode is completed (#742) 2023-08-28 14:38:15 -04:00
Snarling
6732549196
ENUMS: Initial Enum Helper rework + Reorganization (#596) 2023-06-12 00:34:20 -04:00
Snarling
e0272ad4af
FILES: Path rework & typesafety (#479)
* Added new types for various file paths, all in the Paths folder.
* TypeSafety and other helper functions related to these types
* Added basic globbing support with * and ?. Currently only implemented for Script/Text, on nano and download terminal commands
* Enforcing the new types throughout the codebase, plus whatever rewrites happened along the way
* Server.textFiles is now a map
* TextFile no longer uses a fn property, now it is filename
* Added a shared ContentFile interface for shared functionality between TextFile and Script.
* related to ContentFile change above, the player is now allowed to move a text file to a script file and vice versa.
* File paths no longer conditionally start with slashes, and all directory names other than root have ending slashes. The player is still able to provide paths starting with / but this now indicates that the player is specifying an absolute path instead of one relative to root.
* Singularized the MessageFilename and LiteratureName enums
* Because they now only accept correct types, server.writeToXFile functions now always succeed (the only reasons they could fail before were invalid filepath).
* Fix several issues with tab completion, which included pretty much a complete rewrite
* Changed the autocomplete display options so there's less chance it clips outside the display area.
* Turned CompletedProgramName into an enum.
* Got rid of programsMetadata, and programs and DarkWebItems are now initialized immediately instead of relying on initializers called from the engine.
* For any executable (program, cct, or script file) pathing can be used directly to execute without using the run command (previously the command had to start with ./ and it wasn't actually using pathing).
2023-04-24 10:26:57 -04:00
Snarling
0df984eea0
CODEBASE: Add Jsonable Map and Set types, move player.sourceFiles to a map (#473) 2023-04-18 03:19:45 -04:00
lucebac
1ec5ab9898
reduce level of jumper3 to 325 (#291) 2023-01-03 18:39:41 -05:00
Mughur
addcee73fc
Tutorial: Remove NS1 tutorial, change getting started guide to .js (#258) 2022-12-21 17:49:12 -05:00
omuretsu
6ac04717fe Add missing line breaks on showMessage 2022-11-03 11:31:25 -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
Olivier Gagnon
f6f023eeb4 Fix tons of typos 2022-10-09 01:25:31 -04:00
Snarling
5798c4c7d3 Unify error handling 2022-09-27 15:32:09 -04:00
Mughur
4b859131b4 TRP message is sent only after installing 2022-09-14 16:14:32 +03:00
Olivier Gagnon
326d9fd7ef Move player skills and exp to their struct 2022-07-26 23:54:17 -04:00
Undeemiss
3dfb2afb58 Added the name of NiteSec's server to their .msg 2022-04-14 18:14:15 -05:00
Olivier Gagnon
501b69bbc2 tighten messages types wth enums 2022-04-13 11:10:56 -04:00
Olivier Gagnon
c21223ca40 Added type declaration to Messages 2022-04-13 11:06:49 -04:00
Undeemiss
dfadfcea09 Smarter icarus.msg, new truthgazer.msg, fix long-standing message bug
Sorry for putting this all in one commit; it all happened at the same time
as a direct conscequence of trying to get icarus.msg to be smarter.
There's a compilation error on MessageHelpers.ts:24, but the game
seems to run fine so I'm committing and coming back to it later.
2022-04-13 01:53:22 -05:00
Undeemiss
64a5cd038e Formatted and linted 2022-04-12 20:56:21 -05:00
Undeemiss
0d26976f1a Refactored icarus.msg check 2022-04-12 20:47:00 -05:00
Undeemiss
001e8f6d06 Removed redPillFlag and minor refactors to MessageHelpers.ts
Removed redPillFlag, replacing its use with appropriate UI checks.
converted MessageFilenames to enum and removed unnecessary type checks.
2022-04-12 20:32:01 -05:00
Olivier Gagnon
48f80f25d6 fmt and lint 2022-04-06 19:30:08 -04:00
phyzical
44ea479043 update constants
* added OperationNames
* added faction names
* used citynames where appropriate
2022-03-19 16:09:59 +08:00
Olivier Gagnon
88b4a7d862 bugfix 2021-11-05 17:12:52 -04:00
Olivier Gagnon
6b114fab7d remove unused stuff 2021-10-14 18:45:50 -04:00
Olivier Gagnon
e245c2d3a7 fixed a few things 2021-10-14 02:07:05 -04:00
Olivier Gagnon
a7dfb1a537 more convertion from ip to hostname 2021-10-07 16:56:01 -04:00
Olivier Gagnon
9cbb525da3 remove hacking missions 2021-10-01 15:26:12 -04:00
Olivier Gagnon
06f716c0fa moved a bunch of files 2021-09-25 14:42:57 -04:00
Olivier Gagnon
8b15adda8a lint 2021-09-25 02:36:49 -04:00
Olivier Gagnon
b0f20c8c8f lint 2021-09-25 01:26:03 -04:00
Olivier Gagnon
47f54a11c3 ts convertion 2021-09-24 16:02:38 -04:00
Olivier Gagnon
3a7c64872a fix messge problem 2021-09-22 12:38:13 -04:00
Olivier Gagnon
f9a4eadb71 removed some of fconf 2021-09-22 01:36:17 -04:00
Olivier Gagnon
2922e42055 most terminal converted to ts 2021-09-16 18:10:28 -04:00
Olivier Gagnon
2a13db39c7 fix sleeve memory bug 2021-09-08 23:47:34 -04:00
Olivier Gagnon
a18bdd6afc prettify, sorry for the big ass commit 2021-09-04 19:09:30 -04:00
Olivier Gagnon
d6b349b6ff dialogBoxCreate now uses the same logic as other popups, now all popup can be dismissed with escape. 2021-08-18 00:51:51 -04:00
Olivier Gagnon
d745150c45 all the lints 2021-05-01 03:17:31 -04:00
Olivier Gagnon
3fad505096 run auto fix lint 2021-04-29 23:52:56 -04:00
hydroflame
52a80ad236
v0.51.6 (#905)
* Make command `cd` without arguments an alias for `cd /` (#853)

In most shells `cd` without arguments takes you to the home directory
of the current user. I keep trying to do this due to muscle memory
from working in terminals, so I figured I'd make it do something useful.

There is no home directory in the game, but going to / is the closest
thing we have, since that is the starting point for the user in the
game.

* Add new `backdoor` terminal command (#852)

* Add the backdoor command to the terminal

This command will perform a manual hack without rewarding money. It will be used for the story, mainly for faction hacking tests

* Add tab completion for backdoor command

* Add help text for backdoor command

* Change condition syntax to be more consistent with others

* Extract reused code block so it is always called after actions

* Update documentation for new backdoor command

Modified references to manual hack as it isn't for factions anymore

* Remove extra parenthesis

* Rename manuallyHacked to backdoorInstalled

* Fix typo

* Change faction test messages to use backdoor instad of hack

* Rename more instances of manuallyHacked

* fixed typo in helptext of darkweb buy (#858)

* Fix typos and unify descriptions of augmentations (#859)

Made an attempt to...
- give all "+rep% company/faction" the same text
- make all augmentations with a single effect use a single line to describe the effect
- make all effects end with a period

* Made Cashroot starter kit display its tooltip with the money formatted properly and in gold

* fix typo in docs (#860)

* Initial code for Casino Card Deck implementation

* Casino Blackjack Implementation

* Update some tools (eslint, typescript)

* Blackjack code cleanup

* Update README_contribution

* Update ScriptHelpers.js (#861)

expand error message

* More augmentation typo fixes (#862)

* Add Netscript function getCurrentScript (#856)

Add netscript function that returns the current script.

* Added milestones menu to guide new players. (#865)

Milestone menu

* fix typos in milestones (#866)

Co-authored-by: sschmidTU <s.schmid@phonicscore.com>

* Corrupt location title when backdoor is installed (#864)

* Add corruptableText component

* Corrupt location title if backdoor is installed

* Formatting

* Add helper to check value of backdoorInstalled

Helper could be oneline but it would make it less readable

* Fix some formatting

* Add settings option to disable text effects

* Import useState

* getRunningScript (#867)

* Replaced getCurrentScript with getRunningScript

* Bunch of smaller fixes (#904)

Fix #884
Fix #879
Fix #878
Fix #876
Fix #874
Fix #873
Fix #887
Fix #891
Fix #895

* rework the early servers to be more noob friendly (#903)

* v0.51.6

Co-authored-by: Andreas Eriksson <2691182+AndreasTPC@users.noreply.github.com>
Co-authored-by: Jack <jackdewinter1@gmail.com>
Co-authored-by: Teun Pronk <5228255+Crownie88@users.noreply.github.com>
Co-authored-by: Pimvgd <Pimvgd@gmail.com>
Co-authored-by: Daniel Xie <daniel.xie@flockfreight.com>
Co-authored-by: Simon <33069673+sschmidTU@users.noreply.github.com>
Co-authored-by: sschmidTU <s.schmid@phonicscore.com>
2021-04-28 20:07:26 -04:00
danielyxie
580a7fac24 Bug fixes for v0.47.0. Fixed the BUY MAX feature for new stock market. Added collapse/expand tickers buttons for new stock market UI 2019-04-29 20:54:20 -07:00
danielyxie
3ce2e83dd8 Finished rudimentary filesystem implementation for Terminal 2019-04-09 23:07:12 -07:00
danielyxie
473f0f1447 Refactored Server/Script/Files code to TypeScript 2019-03-04 17:40:28 -08:00
danielyxie
e1b8a23f1e Started server code refactor 2019-03-02 19:15:10 -08:00