e0272ad4af
* 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). |
||
---|---|---|
.github | ||
assets | ||
dist | ||
doc | ||
electron | ||
lore | ||
markdown | ||
src | ||
test | ||
tools | ||
.browserslistrc | ||
.dockerignore | ||
.editorconfig | ||
.eslintignore | ||
.eslintrc.js | ||
.gitattributes | ||
.gitignore | ||
.nojekyll | ||
.npmrc | ||
.prettierignore | ||
.prettierrc | ||
api-extractor.json | ||
babel.config.js | ||
CODE_OF_CONDUCT.md | ||
favicon.ico | ||
FixJSDOMEnvironment.ts | ||
jest.config.js | ||
license.txt | ||
package-lock.json | ||
package.json | ||
README.md | ||
requirements.txt | ||
tsconfig.json | ||
tsdoc-metadata.json | ||
webpack.config.js |
Bitburner
Bitburner is a programming-based incremental game that revolves around hacking and cyberpunk themes. The game can be played at https://danielyxie.github.io/bitburner/ (release build), https://bitburner-official.github.io/bitburner-src/ (development build), or installed through Steam. The location of the release build may change in the near future.
See the frequently asked questions for more information . To discuss the game or get help, join the official Discord server.
Documentation
The game's official documentation can be found on Read The Docs. Please note that this is still a work-in-progress.
The in-game documentation is generated from the TypeScript definitions.
Anyone is welcome to contribute to the documentation by editing the source files and then making a pull request with your contributions. For further guidance, please refer to the "As A Documenter" section of CONTRIBUTING.
Contribution
There are many ways to contribute to the game. It can be as simple as fixing a typo, correcting a bug, or improving the UI. For guidance on doing so, please refer to the CONTRIBUTING document.
You will retain all ownership of the Copyright of any contributions you make, and will have the same rights to use or license your contributions. By submitting a pull request you agree to grant me perpetual, worldwide, non-exclusive, transferable, royalty-free, and irrevocable rights to use, publish, and distribute your contributions to the project. A formal Contributor's License Agreement will be drawn up in the future.
If you would like to make significant contributions to the project as a collaborator, please reach out in #suggestions or #development on Discord to help coordinate the effort.