summaryrefslogtreecommitdiff
path: root/docs/Packages/Structure.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/Packages/Structure.md')
-rw-r--r--docs/Packages/Structure.md43
1 files changed, 43 insertions, 0 deletions
diff --git a/docs/Packages/Structure.md b/docs/Packages/Structure.md
new file mode 100644
index 0000000..6a7551e
--- /dev/null
+++ b/docs/Packages/Structure.md
@@ -0,0 +1,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