Commit Graph

185 Commits

Author SHA1 Message Date
catloversg
81e068ba9c
MISC: Include React component stack in Recovery Mode report (#1750) 2024-11-04 16:20:02 -08:00
catloversg
f6502dd490
CODEBASE: Fix lint errors 1 (#1732) 2024-11-03 22:35:14 -08:00
catloversg
bc51733fbe
MISC: Improve exception alert (#1709) 2024-10-21 20:36:29 -07:00
David Walker
bedd398789
CCT: Add new Square Root coding contract (#1656)
To make this simpler, there is now a general-purpose util for getting
random bigints. I don't know if anyone else will use it, but it makes
this code simpler.

I also rejiggered the type-checking on contracts a little more, because
the previous refactor didn't quite catch all the mistakes that could be
made.
2024-09-30 20:18:58 -07:00
Denis Čahuk
cde5e3f6ae
MISC: Refactor BLADEBURNER Identifier Lookup (#1646) 2024-09-14 17:39:18 -07:00
catloversg
818d7446be
MISC: Rename getRandomArbitrary (#1605) 2024-08-21 16:50:51 -07:00
catloversg
289f60d8c8
BLADEBURNER: Add API to calculate max upgrade count of skill (#1475) 2024-08-16 13:15:20 -07:00
Tom Prince
2f95d21503
UI: Sync UI updates to game updates. (#1512)
There are a bunch of React components that update at the same rate
that the game engine processes cycles. Rather than have each place
that does so start its own timer to update that often, add a new
react hook that triggers an update shortly after the engine completes
a cycle.
2024-08-01 23:57:43 -07:00
Tom Prince
c3dc275d34
MISC: Show values of constants in type hints. (#1515) 2024-07-26 01:56:09 -07:00
catloversg
ceaf27714b
MISC: Remove testing code in ScriptTransformer (#1499) 2024-07-17 23:23:18 -07:00
David Walker
abe7a43eec
MISC: Always include stack trace in Recovery Mode (#1487)
We are getting some more error reports coming in that don't have enough
info in them. It turns out that populating the stack trace was gated
behind the dev flag; in reality, production builds are where we need it
most. Even if it ends up being obfuscated (source maps should prevent
this), we can figure out the actual source lines with enough effort if
need be.

This also changes to using the actual stack trace, rather than the
"component" trace (the tree of JSX objects), since knowing where the
code failed is far more valuable. Also, it ensures we get the full error
details when things go wrong in savefile loading.
2024-07-14 22:51:18 -07:00
catloversg
864613c616
MISC: Support JSX, TS, TSX script files (#1216) 2024-07-14 14:47:10 -07:00
catloversg
f18d28fc6e
DOCUMENTATION: Add link to NS API documentation (#1460) 2024-07-06 12:54:56 -07:00
catloversg
b8f03cb50b
BLADEBURNER: Remove unused code (#1368) 2024-06-08 13:51:05 -07:00
Yichi Zhang
54d099e552
TERMINAL: Fix autocomplete for mixed case strings (#1323) 2024-05-29 11:34:46 -07:00
gmcew
fe14d4fef3
CCT: Minor simplification of 'Shortest Path' solver (#1288)
BFS shouldn't need some checks.
Also allows deletion of a helper file used by this function only.
2024-05-23 00:44:41 -07:00
catloversg
175af0bd28
BUGFIX: Improve implementation of getRandomInt (#1282) 2024-05-18 15:12:06 -07:00
Snarling
574c284321
API: Add API break utilities, and add an API break for bladeburner.getCurrentAction (#1248) 2024-05-14 19:24:03 -04:00
gmcew
1b8205e9d5
UI: Bladeburner console to use Settings.TimestampsFormat for logging (#1265) 2024-05-11 19:10:55 -04:00
David Walker
384d1c1a2b
NETSCRIPT: A minorly breaking change around script launch, and refactoring. (#1213) 2024-04-23 20:21:05 -04:00
catloversg
7b993f3550
MISC: Remove file-saver (#1217)
Also refactor to dedup our own download code
2024-04-19 13:38:44 -07:00
Snarling
6669c4da6a
BLADEBURNER: Typesafety / refactoring (#1154) 2024-03-28 21:52:37 -04:00
catloversg
8553bcb8fc
MISC: Support compression of save data (#1162)
* Use Compression Streams API instead of jszip or other libraries.
* Remove usage of base64 in the new binary format.
* Do not convert binary data to string and back. The type of save data is SaveData, it's either string (old base64 format) or Uint8Array (new binary format).
* Proper support for interacting with electron-related code. Electron-related code assumes that save data is in the base64 format.
* Proper support for other tools (DevMenu, pretty-save.js). Full support for DevMenu will be added in a follow-up PR. Check the comments in src\DevMenu\ui\SaveFileDev.tsx for details.
2024-03-27 21:08:09 -07:00
catloversg
db226ce0b8
MISC: Remove isString utility function (#1185) 2024-03-23 02:46:52 -07:00
Snarling
e9d1ddfaf3
SAVEGAME: Reduce size of savefile (#1148)
Storing less info in the save for Factions/Companies if it's still the default info
2024-03-11 08:58:10 -04:00
Caldwell
3d6692b292
MISC: clamping numbers (#1104) 2024-02-27 09:47:00 -05:00
Snarling
373ced2efe
GO: Various changes before 2.6.0 (#1120) 2024-02-26 08:05:10 -05:00
deansvendsen
cb7c75a3ce
MISC: Gang Expenses category in MoneySource (#1043) 2024-01-23 18:18:56 -05:00
Snarling
97d679bdac
MISC: Protect against reassigning certain globals (#972) 2023-12-16 05:03:52 -05:00
Snarling
36312c660d
CODE: Enable es2023 features (#870) 2023-10-23 04:49:12 -04:00
Caldwell
e992cb966a
CORPORATION: adding prevState and changed state display in the warehouse UI (#861) 2023-10-23 04:48:06 -04:00
missymae#2783
ff0118f2f4
UI: Update general devmenu page (#835) 2023-10-23 04:01:21 -04:00
Snarling
38f693e2c1
ENUMS: Followup for #859 (#868) 2023-10-17 07:19:32 -04:00
Caldwell
269a74d5c0
CODEBASE: update dependencies (#852) 2023-10-07 18:52:48 -04:00
Snarling
48e7bd6471
CODEBASE: Follow-up for lint rules PR + address some eslint disables (#651) 2023-06-29 13:22:10 -04:00
Snarling
9a0a843ffc
TYPESAFETY: FactionName (#644) 2023-06-25 22:53:35 -04:00
Snarling
a4b826683e
TYPESAFETY: Strict internal typing for AugmentationName (#608) 2023-06-16 17:52:42 -04:00
Aleksei Bezrodnov
192c1947a6
fix enum value deserialization (#609) 2023-06-13 15:04:56 -04:00
Snarling
6732549196
ENUMS: Initial Enum Helper rework + Reorganization (#596) 2023-06-12 00:34:20 -04:00
David Walker
e51527aa86
BUGFIX: More savegame loading fixes (#543)
* Fix loading issues back to pre-1.0
* Be more robust about issues with files not being maps
* Avoid non-fatal error when there's no LastExportBonus
2023-05-29 07:10:26 -04:00
Snarling
5f2a1c3f27 TERMINAL: Fix original alias syntax (#545) 2023-05-29 06:54:51 -04:00
omuretsu
ae8f26f03b More hotfix
* Fix empty solution for all valid math expressions
2023-05-28 05:25:44 -04:00
David Walker
db26d054fc
Various fixes to our upgrade logic (#536)
Stuff broke over time, especially with the major changes we made leading
up to 2.3. We should test with older saves if/when we make large changes
in the future.

Fixes #532
2023-05-27 00:16:31 -04:00
omuretsu
b44050cfec Fix oldcorp loading 2023-05-16 08:36:14 -04:00
Snarling
2ae3ac52f1
CORPORATION: Corp changes prior to 2.3 finalization (#503) 2023-05-15 18:06:57 -04:00
Snarling
ebae35b1fb
CODEBASE: Expand lint rules, and Aliases are stored as maps (#501) 2023-05-05 03:55:59 -04:00
omuretsu
3c996a47ea Fully remove formatCode function (trim on script save) 2023-05-03 07:21:23 -04:00
David Walker
ad5a1c4bac
NETSCRIPT: Revert FormattedCode type (#500) 2023-05-03 07:13:35 -04:00
David Walker
aa7facd4ba
NETSCRIPT: Greatly speed up script launching, and remove the limitation unique args per script (#440)
* Remove the limitation unique args per script
* Internal changes to how runningScripts are stored on the server, to make common usage faster.
2023-04-27 18:21:06 -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