update file description in readme, add level plan
This commit is contained in:
parent
d92c5a2c25
commit
6365af0111
1 changed files with 46 additions and 17 deletions
63
README.md
63
README.md
|
@ -8,6 +8,9 @@ logic mostly like https://git.crispypin.cc/CrispyPin/marble
|
||||||
story/lore
|
story/lore
|
||||||
timestamps in solutions and blueprints
|
timestamps in solutions and blueprints
|
||||||
multiple input/output sets
|
multiple input/output sets
|
||||||
|
tooltips
|
||||||
|
lock tile types for early levels to make it less overwhelming
|
||||||
|
make a gui alternative to pressing R to rotate between tile variants
|
||||||
scroll level list
|
scroll level list
|
||||||
scroll blueprint list
|
scroll blueprint list
|
||||||
make marble movement more consistent (`>o o<` depends on internal marble order)
|
make marble movement more consistent (`>o o<` depends on internal marble order)
|
||||||
|
@ -17,40 +20,43 @@ blueprint rotation?
|
||||||
## file hierarchy
|
## file hierarchy
|
||||||
```
|
```
|
||||||
- assets/
|
- assets/
|
||||||
- storage/
|
- levels/
|
||||||
- levels/
|
- 00_zeroes.json
|
||||||
- 00_zeroes.json
|
- 01_cat.json
|
||||||
- 01_cat.json
|
- 02_parse.json
|
||||||
- 02_parse.json
|
- 99_sandbox.json
|
||||||
- 99_sandbox.json
|
- user/
|
||||||
- solutions/
|
- solutions/
|
||||||
- 00_zeroes/
|
- 00_zeroes/
|
||||||
- solution_0.json
|
- solution_0.json
|
||||||
- solution_1.json
|
- solution_1.json
|
||||||
- factorial_194726/
|
- 01_cat/
|
||||||
- solution_0.json
|
- solution_0.json
|
||||||
- solution_1.json
|
- solution_3.json
|
||||||
- blueprints
|
- blueprints
|
||||||
- blueprint_0.json
|
- blueprint_0.json
|
||||||
- custom_levels/
|
|
||||||
- factorial_194726.json
|
|
||||||
```
|
```
|
||||||
|
## formats
|
||||||
|
### level
|
||||||
`00_zeroes.json`
|
`00_zeroes.json`
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
"id": "00_zeroes",
|
"id": "00_zeroes",
|
||||||
|
"sortorder": 5,
|
||||||
"name": "Zeroes",
|
"name": "Zeroes",
|
||||||
"description": "learn how to output data",
|
"description": "learn how to output data",
|
||||||
"init_board": null,
|
"init_board": null,
|
||||||
"inputs": [],
|
"inputs": [],
|
||||||
"outputs": [0, 0, 0, 0, 0, 0, 0, 0]
|
"outputs": [0, 0, 0, 0, 0, 0, 0, 0],
|
||||||
|
"input_is_text": false,
|
||||||
|
"output_is_text": false
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
### solution
|
||||||
`00_zeroes/solution_0.json`
|
`00_zeroes/solution_0.json`
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
"level_id": "00_zeroes", //redundant, useful if sharing solution files?
|
"level_id": "00_zeroes",
|
||||||
"solution_id": "solution_0",
|
"solution_id": "solution_0",
|
||||||
"name": "unnamed 1",
|
"name": "unnamed 1",
|
||||||
"board": "oo\nP*\n|-",
|
"board": "oo\nP*\n|-",
|
||||||
|
@ -61,11 +67,34 @@ blueprint rotation?
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
### blueprint
|
||||||
`blueprints/blueprint_0.json`
|
`blueprints/blueprint_0.json`
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
"name": "fast printer",
|
"id": "blueprint_0",
|
||||||
"board": "oo\nP*\n|-"
|
"name": "zero_printer",
|
||||||
|
"board": "o -B I\n> * < \n"
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## levels
|
||||||
|
### intro, basic mechanics
|
||||||
|
- output a zero
|
||||||
|
- output two numbers in sequence
|
||||||
|
- output zeroes forever (looping)
|
||||||
|
- copy the input
|
||||||
|
- copy only odd input numbers
|
||||||
|
### 0-terminated list processing
|
||||||
|
- calculate list length
|
||||||
|
- count instances of 5 in a list
|
||||||
|
- copy the second list (ignore input until first zero)
|
||||||
|
- reverse a list
|
||||||
|
### user-friendly numbers
|
||||||
|
- convert a number to decimal ascii
|
||||||
|
- parse an ascii number
|
||||||
|
- convert text to lowercase
|
||||||
|
### advanced list processing
|
||||||
|
- index a list
|
||||||
|
- search a list
|
||||||
|
- add two lists element-wise
|
||||||
|
- sort list
|
||||||
|
|
Loading…
Reference in a new issue