https://github.com/littlesound/screeps-arena
screeps-arena
https://github.com/littlesound/screeps-arena
Last synced: 2 months ago
JSON representation
screeps-arena
- Host: GitHub
- URL: https://github.com/littlesound/screeps-arena
- Owner: LittleSound
- License: unlicense
- Created: 2022-04-19T13:49:31.000Z (about 4 years ago)
- Default Branch: develop
- Last Pushed: 2022-04-23T15:19:05.000Z (about 4 years ago)
- Last Synced: 2026-01-26T08:47:01.077Z (5 months ago)
- Language: JavaScript
- Size: 51.8 KB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# Screeps Arena Typescript Starter
## This repo is a WIP starter template for the current Closed Alpha of [Screeps Arena](https://store.steampowered.com/app/1137320/Screeps_Arena/)
## Screeps Arena is a new game _under active development_, this repo is unoffcial and maintained by the screepers community
### Any issues you experience with this repo should be created as an issue in this repo, _the Screeps Arena devs should NOT be contacted!_
---
TODO:
- [ ] A way to push code to a specific arena `npm run push alpha-capture-the-flag`
- Will probably be a copy of files to the correct location, depending on what location has been choosen in the arena client.
- If we can't detect the locations, we will probably need a `screeps-arena.json` file where people can set up their desired output destinations
Current Issues:
None
---
# Screeps Arena Typescript Starter
Screeps Arena Typescript Starter is a starting point for a Screeps Arena AI written in Typescript. It provides everything you need to start writing your AI whilst leaving `main.ts` as empty as possible.
The initial example code from the steam forum is included in `src/alpha-capture_the_flag/main.ts`
## 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`)
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!
- arenas are located in `src/arena_*`any folder you create in `src` with a name starting with `arena_` will result in a `main.mjs` in the `dist/arena_*` folder.
- Run `npm run build` to generate all arenas to `/dist/*`
- `npm run build` - everything is build, the player can change their arena to look at the specific `/dist/arena*` directory
- this template produces the following as an example `/dist/alpha_capture_the_flag/main.mjs`
- `npm run build capture` - a specific arena is build, the player can change their arena to look at the specific `/dist/arena*` directory knowing only that arena was updated
- Copy the `main.mjs` file to your desired location or change the location in the Screeps Arena client to point to the desired `/dist/*` folder.
~~- `npm run push` builds all arenas, then pushes all arenas to their respective folders where the client is pointed at.~~
~~- `npm run push capture` builds the specific arena, then pushes the capture arena to their respective folders where the client is pointed at.~~
## Typings
It uses the following project for typings https://github.com/screepers/typed-screeps-arena
When the typings are updated and you need to get the newest types
- delete node_modules/@types/screeps-arena
- run `npm i` to reinstall the packages. You might need to delete package-lock.json to get the types.
## Contributing
Issues, Pull Requests, and contribution to the docs are welcome! See our [Contributing Guidelines](CONTRIBUTING.md) for more details.