summaryrefslogtreecommitdiff
path: root/docs/Packages/Structure.md
blob: 6a7551e41db3ec68f504b569617ad74df2706df3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# Package structrue

## This documentation is written on 17/3/2026. The API can and WILL change.

The package is the set of assets used in the game. The location of the directory comtainig assets is specified in `Config.json`.
A minimal package is a directory with a file called `Description.json` with the following schema:

```
{
    "name": string,
    "version": {
        "MajorVersion": number,
        "MinorVersion": number,
        "Patch": number
    },
    "type": string,
    "MinimumGameVersion": {
        "MajorVersion": number,
        "MinorVersion": number,
        "Patch": number
    }
}
```
where:
- name: name of the package. It will be used when you reference the contents
- version: The version of the package
- type: the type of the package. The following types are acceptable:
    - "assetpack": contains a list of assets for other packs to use
    - "story": contains both assets and worlds. Marked as bootable for the start of the game
- MinimumGameVersion: the minimal version of the game required to use the package

After that is in place you can start filling the packet with content. The expected structure of the package is as follows:
```
Package
|-Textures
| `- Meta.json
|-Objects
|-Worlds
`-Menus
```
### NOTE: All of the specified directories are optional. If your package doesn't need any of those you can safely ignore them

The instructions for all the types of content could be seen in other .md files