update README
This commit is contained in:
parent
e96578db48
commit
29bd21e489
2 changed files with 62 additions and 56 deletions
60
README.md
60
README.md
|
@ -2,58 +2,8 @@
|
|||
|
||||
Because third time's the charm!
|
||||
|
||||
# pwcli
|
||||
Note: this project is under active development. All file and configuration formats will take some time to stabilize, so be prepared for breakage when you upgrade to a new version.
|
||||
## Building
|
||||
|
||||
The cli comes with a local webserver for visualizing matches.
|
||||
Therefore, you'll have to build the web application first, so that it can be embedded in the binary.
|
||||
|
||||
You will need:
|
||||
- rust
|
||||
- wasm-pack
|
||||
- npm
|
||||
|
||||
First, build the frontend:
|
||||
```bash
|
||||
cd web/pw-frontend
|
||||
npm install
|
||||
npm run build-wasm
|
||||
npm run build
|
||||
```
|
||||
|
||||
Then build the backend:
|
||||
```bash
|
||||
cd planetwars-cli
|
||||
cargo build --bin pwcli --release
|
||||
```
|
||||
|
||||
You can install the binary by running
|
||||
```bash
|
||||
cargo install --path .
|
||||
```
|
||||
|
||||
## Getting started
|
||||
First, initialize your workspace:
|
||||
```bash
|
||||
pwcli init my-planetwars-workspace
|
||||
```
|
||||
This creates all required files and directories for your planetwars workspace:
|
||||
- `pw_workspace.toml`: workspace configuration
|
||||
- `maps/`: for storing maps
|
||||
- `matches/`: match logs will be written here
|
||||
- `bots/simplebot/` an example bot to get started
|
||||
|
||||
All subsequent commands should be run from the root directory of your workspace.
|
||||
|
||||
Try playing an example match:
|
||||
```bash
|
||||
pwcli run-match hex simplebot simplebot
|
||||
```
|
||||
|
||||
You can now watch a visualization of the match in the web interface:
|
||||
```bash
|
||||
pwcli serve
|
||||
```
|
||||
|
||||
You can now try writing your own bot by copying the `simplebot` example. Don't forget to add it in your workspace configuration!
|
||||
Project layout:
|
||||
- `planetwars-server`: rust webserver
|
||||
- `planetwars-matchrunner`: implements the game
|
||||
- `web/pw-server`: frontend
|
||||
- `web/pw-visualizer`: code for the visualizer
|
||||
|
|
|
@ -1 +1,57 @@
|
|||
# planetwars-cli
|
||||
ATTENTION: this package is currently out-of-date.
|
||||
|
||||
Note: this project is under active development. All file and configuration formats will take some time to stabilize, so be prepared for breakage when you upgrade to a new version.
|
||||
## Building
|
||||
|
||||
The cli comes with a local webserver for visualizing matches.
|
||||
Therefore, you'll have to build the web application first, so that it can be embedded in the binary.
|
||||
|
||||
You will need:
|
||||
- rust
|
||||
- wasm-pack
|
||||
- npm
|
||||
|
||||
First, build the frontend:
|
||||
```bash
|
||||
cd web/pw-frontend
|
||||
npm install
|
||||
npm run build-wasm
|
||||
npm run build
|
||||
```
|
||||
|
||||
Then build the backend:
|
||||
```bash
|
||||
cd planetwars-cli
|
||||
cargo build --bin pwcli --release
|
||||
```
|
||||
|
||||
You can install the binary by running
|
||||
```bash
|
||||
cargo install --path .
|
||||
```
|
||||
|
||||
## Getting started
|
||||
First, initialize your workspace:
|
||||
```bash
|
||||
pwcli init my-planetwars-workspace
|
||||
```
|
||||
This creates all required files and directories for your planetwars workspace:
|
||||
- `pw_workspace.toml`: workspace configuration
|
||||
- `maps/`: for storing maps
|
||||
- `matches/`: match logs will be written here
|
||||
- `bots/simplebot/` an example bot to get started
|
||||
|
||||
All subsequent commands should be run from the root directory of your workspace.
|
||||
|
||||
Try playing an example match:
|
||||
```bash
|
||||
pwcli run-match hex simplebot simplebot
|
||||
```
|
||||
|
||||
You can now watch a visualization of the match in the web interface:
|
||||
```bash
|
||||
pwcli serve
|
||||
```
|
||||
|
||||
You can now try writing your own bot by copying the `simplebot` example. Don't forget to add it in your workspace configuration!
|
||||
|
|
Loading…
Reference in a new issue