Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/screepers/screeps-typescript-starter
Starter kit for TypeScript-based Screeps AI codes.
https://github.com/screepers/screeps-typescript-starter
screeps typescript typescript-sample
Last synced: about 2 months ago
JSON representation
Starter kit for TypeScript-based Screeps AI codes.
- Host: GitHub
- URL: https://github.com/screepers/screeps-typescript-starter
- Owner: screepers
- License: unlicense
- Created: 2016-06-27T03:16:10.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2023-02-11T19:40:38.000Z (almost 2 years ago)
- Last Synced: 2024-10-01T12:11:16.738Z (2 months ago)
- Topics: screeps, typescript, typescript-sample
- Language: TypeScript
- Homepage: https://screepers.gitbook.io/screeps-typescript-starter/
- Size: 619 KB
- Stars: 438
- Watchers: 17
- Forks: 314
- Open Issues: 22
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
- stars - screepers/screeps-typescript-starter - based Screeps AI codes. (HarmonyOS / Windows Manager)
README
# Screeps Typescript Starter
Screeps Typescript Starter is a starting point for a Screeps AI written in Typescript. It provides everything you need to start writing your AI whilst leaving `main.ts` as empty as possible.
## Basic Usage
You will need:
- [Node.JS](https://nodejs.org/en/download) (10.x || 12.x)
- A Package Manager ([Yarn](https://yarnpkg.com/en/docs/getting-started) or [npm](https://docs.npmjs.com/getting-started/installing-node))
- Rollup CLI (Optional, install via `npm install -g rollup`)Download the latest source [here](https://github.com/screepers/screeps-typescript-starter/archive/master.zip) and extract it to a folder.
Open the folder in your terminal and run your package manager to install the required packages and TypeScript declaration files:
```bash
# npm
npm install# yarn
yarn
```Fire up your preferred editor with typescript installed and you are good to go!
### Rollup and code upload
Screeps Typescript Starter uses rollup to compile your typescript and upload it to a screeps server.
Move or copy `screeps.sample.json` to `screeps.json` and edit it, changing the credentials and optionally adding or removing some of the destinations.
Running `rollup -c` will compile your code and do a "dry run", preparing the code for upload but not actually pushing it. Running `rollup -c --environment DEST:main` will compile your code, and then upload it to a screeps server using the `main` config from `screeps.json`.
You can use `-cw` instead of `-c` to automatically re-run when your source code changes - for example, `rollup -cw --environment DEST:main` will automatically upload your code to the `main` configuration every time your code is changed.
Finally, there are also NPM scripts that serve as aliases for these commands in `package.json` for IDE integration. Running `npm run push-main` is equivalent to `rollup -c --environment DEST:main`, and `npm run watch-sim` is equivalent to `rollup -cw --dest sim`.
#### Important! To upload code to a private server, you must have [screepsmod-auth](https://github.com/ScreepsMods/screepsmod-auth) installed and configured!
## Typings
The type definitions for Screeps come from [typed-screeps](https://github.com/screepers/typed-screeps). If you find a problem or have a suggestion, please open an issue there.
## Documentation
We've also spent some time reworking the documentation from the ground-up, which is now generated through [Gitbooks](https://www.gitbook.com/). Includes all the essentials to get you up and running with Screeps AI development in TypeScript, as well as various other tips and tricks to further improve your development workflow.
Maintaining the docs will also become a more community-focused effort, which means you too, can take part in improving the docs for this starter kit.
To visit the docs, [click here](https://screepers.gitbook.io/screeps-typescript-starter/).
## Contributing
Issues, Pull Requests, and contribution to the docs are welcome! See our [Contributing Guidelines](CONTRIBUTING.md) for more details.