Update Design Doc: `level` tool
parent
81289ee437
commit
e8093027fc
|
@ -8,27 +8,15 @@ This document details some approaches for implementing the `level` tool.
|
|||
## What is `level`?
|
||||
`level` is a tool for reskit that converts [Tiled Map Editor](https://www.mapeditor.org/) tilesets and maps to a binary format accessible to C or assembly language engines. It distinguishes itself from other available homebrew tools by offering support for Tiled's native tmx/tsx XML formats, and user-specified event objects (e.g. "drop enemy", "open door") that your custom engine can read and apply.
|
||||
|
||||
## Events
|
||||
By adding an object layer and object in Tiled, and adding the property `reskit-event`, you can define an event triggered in certain scenarios depending on additional `reskit-*` properties. Reskit assumes a best-practice entity-component engine design and the objects defined in your .tmx file effectively serve as the entities.
|
||||
|
||||
| Object Property | Type | Description |
|
||||
|-------------------------|------------|-------------------------------------------------------------------------------------------------|
|
||||
| reskit-component[x] | Array/String | List of components to attach to this entity. |
|
||||
| reskit-character | String | Target character defined for a particular event type. |
|
||||
|
||||
## Entity-Component System
|
||||
Reskit assumes a best-practice entity-component engine design and the objects defined in your .tmx file effectively serve as the entities. By adding a property `reskit-component[x]`, where x is the index of the component in an array, you can attach various components to the target entity. What your game does with this information is entirely up to you: reskit just compiles the information on which entities are where and what components are attached to them.
|
||||
|
||||
## Map TOML
|
||||
This is provided on the command line via `--map-config-file`. The Map TOML primarily is a mapping of string identifiers to numeric identifiers, which are better suited for use on 8-bit and 16-bit systems. You must define numeric identifiers for each string you use as a `reskit-character` or similar.
|
||||
This is provided on the command line via `--map-config-file`. The Map TOML primarily is a mapping of string identifiers to numeric identifiers, which are better suited for use on 8-bit and 16-bit systems. You must define numeric identifiers for each string you use as a `reskit-component[x]`.
|
||||
|
||||
### Example
|
||||
```toml
|
||||
[components]
|
||||
player = 0
|
||||
health = 1
|
||||
|
||||
[characters]
|
||||
stinkhead = 1
|
||||
frankie = 2
|
||||
the_object = 3
|
||||
dolan = 4
|
||||
```
|
Loading…
Reference in New Issue