Skip to content

Commit

Permalink
ready to target main
Browse files Browse the repository at this point in the history
  • Loading branch information
Pistonight committed Oct 12, 2024
1 parent 15a1a2a commit 630153d
Show file tree
Hide file tree
Showing 4 changed files with 45 additions and 40 deletions.
4 changes: 2 additions & 2 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@ name: Build
on:
push:
branches:
- next
- main
pull_request:
branches:
- next
- main

jobs:
build-server:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@ name: Check
on:
push:
branches:
- next
- main
pull_request:
branches:
- next
- main

jobs:
check-server:
Expand Down
37 changes: 1 addition & 36 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,39 +1,4 @@
# botw-ist
Simulator for Inventory Slot Transfer in BOTW

Visit the app at https://ist.itntpiston.app

**Notice**

Bug fixes and improvements for the current simulation core will not be continued because of the intrinsic difficulty with the core
to accurately simulate the remaining cases. A rewrite of the core is actively being developed and should be expected to be ready by June 2025


## Contribute
Contributions are welcomed. For small issues, you can open PRs directly. For big issues contact me on discord (username: Pistonight)

## Development
[task](https://taskfile.dev) is recommended to run provided scripts. You can also look at `Taskfile.yml`
and run the scripts manually.

Node v18 and Python 3 are required.

### Install
Run `task install` to install dependencies

### Local
Run `task dev` to start vite dev server. Some features require secure context.
The dev server is configured to look for `cert/cert.pem` and `cert/cert.pfx` for HTTPS certificates.

### Grammar
The simulator uses a LL parser with infinite look ahead to generate an Abstract Syntax Tree from which commands are parsed.

The grammar is at `src/core/command/ast/grammar.txt` and the ast parser is generated with `npm run generate` (Python needed)

If you want to introduce new commands, most of the heavy lifting for the parsers is already done. You should be able to define a new derivation in the grammar and implement the parser by looking at one of the `parse.cmd.*` files. However, you should probably contact the maintainer to have a discussion about the new command.

### Test
Run `task test --watch` to run tests in watch mode

### PR
Run `task check` and `task test` before PR.
**Simulator v4 is under active development!**
40 changes: 40 additions & 0 deletions legacy/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# botw-ist
Simulator for Inventory Slot Transfer in BOTW

Visit the app at https://ist.itntpiston.app

**Notice**

Bug fixes and improvements for the current simulation core will not be continued because of the intrinsic difficulty with the core
to accurately simulate the remaining cases. A rewrite of the core is actively being developed and should be expected to be ready by June 2025


## Contribute
Contributions are welcomed. For small issues, you can open PRs directly. For big issues contact me on discord (username: Pistonight)

## Development
[task](https://taskfile.dev) is recommended to run provided scripts. You can also look at `Taskfile.yml`
and run the scripts manually.

Node v18 and Python 3 are required.

### Install
Run `task install` to install dependencies

### Local
Run `task dev` to start vite dev server. Some features require secure context.
The dev server is configured to look for `cert/cert.pem` and `cert/cert.pfx` for HTTPS certificates.

### Grammar
The simulator uses a LL parser with infinite look ahead to generate an Abstract Syntax Tree from which commands are parsed.

The grammar is at `src/core/command/ast/grammar.txt` and the ast parser is generated with `npm run generate` (Python needed)

If you want to introduce new commands, most of the heavy lifting for the parsers is already done. You should be able to define a new derivation in the grammar and implement the parser by looking at one of the `parse.cmd.*` files. However, you should probably contact the maintainer to have a discussion about the new command.

### Test
Run `task test --watch` to run tests in watch mode

### PR
Run `task check` and `task test` before PR.

0 comments on commit 630153d

Please sign in to comment.